当前位置: 首页 > article >正文

aisuite - 一个接口调用多个大模型

更多AI开源软件:

AI开源 - 小众AIicon-default.png?t=O83Ahttps://www.aiinn.cn/sources

​aisuite​使开发人员能够通过标准化接口轻松使用多个 LLM。使用类似于 OpenAI 的界面,可以轻松地与最流行的 LLM 进行交互并比较结果。它是 python 客户端库的精简包装器,允许创建者无缝交换和测试来自不同 LLM 提供程序的响应,而无需更改其代码。如今,该库主要专注于聊天完成。我们将在不久的将来将其扩展到更多使用案例。

5100 Stars 434 Forks 19 Issues 6 贡献者 MIT License Python 语言

代码: GitHub - andrewyng/aisuite: Simple, unified interface to multiple Generative AI providers

主要功能

  • 统一接口:通过一个标准化的接口调用多个生成式AI提供商。
  • 多提供商支持:支持OpenAI、Anthropic、Azure、Google、AWS、Groq、Mistral、HuggingFace和Ollama。
  • 易于安装:提供简单的安装命令,可以选择安装基础包或包含特定提供商的包。
  • 环境变量配置:支持通过环境变量配置API密钥,方便管理和使用。
  • 示例代码:提供丰富的示例代码,帮助用户快速上手。
  • 开源项目:代码开源,允许用户自由使用、修改和分发。

安装使用

安装

您可以只安装基本软件包,也可以将提供商的软件包与 一起安装。aisuiteaisuite​

这将仅安装基础包,而不安装任何提供商的 SDK。

pip install aisuite

这将安装 aisuite 以及 anthropic 的库。

pip install 'aisuite[anthropic]'

这将安装所有特定于提供程序的库

pip install 'aisuite[all]'
使用

首先,您需要要使用的提供商的 API 密钥。您需要 单独安装提供程序特定的库,或在安装 AISUITE 时安装。

API Key 可以设置为环境变量,也可以作为 config 传递给 aisuite Client 构造函数。 您可以使用 python-dotenv 或 direnv 等工具手动设置环境变量。请查看该文件夹以查看使用情况。examples​

下面是一个用于从 gpt-4o 和 claude-3-5-sonnet 生成聊天完成响应的简短示例。aisuite​

设置 API 密钥。

export OPENAI_API_KEY="your-openai-api-key"
export ANTHROPIC_API_KEY="your-anthropic-api-key"

使用 python 客户端。

import aisuite as ai
client = ai.Client()

models = ["openai:gpt-4o", "anthropic:claude-3-5-sonnet-20240620"]

messages = [
    {"role": "system", "content": "Respond in Pirate English."},
    {"role": "user", "content": "Tell me a joke."},
]

for model in models:
    response = client.chat.completions.create(
        model=model,
        messages=messages,
        temperature=0.75
    )
    print(response.choices[0].message.content)

请注意,create() 调用中的模型名称使用格式 - 。 将根据 provider 值使用正确的参数调用相应的提供程序。 有关提供程序值的列表,您可以查看目录 - 。支持的提供程序列表的格式为 - 在该目录中。我们欢迎提供商通过在此目录中添加 implementation 文件来添加对此库的支持。请参阅下面的部分了解如何做出贡献。<provider>:<model-name>aisuiteaisuite/providers/<provider>_provider.py​

有关更多示例,请查看目录,您将在其中找到几个笔记本,您可以运行这些笔记本来试验界面。examples​

例子:
  • Hugging Face: provider 类应定义为:

    class HuggingfaceProvider(BaseProvider)
    

    在 providers/huggingface_provider.py。

  • OpenAI: provider 类应定义为:

    class OpenaiProvider(BaseProvider)
    

    在 提供商/openai_provider.py

此约定简化了新提供程序的添加,并确保了提供程序实现之间的一致性。


http://www.kler.cn/a/422017.html

相关文章:

  • openEuler安装UKUI桌面
  • 【工具变量】上市公司企业所在地城市等级直辖市、副省级城市、省会城市 计划单列市(2005-2022年)
  • Linux 权限管理:用户分类、权限解读与常见问题剖析
  • C语言练习作业1204
  • 设计模式10:观察者模式(订阅-发布)
  • Git操作学习2
  • 大语言模型在研究领域的应用---下
  • MySQL、Oracle、SQL Server 和 PostgreSQL 的分页查询
  • Dxf2Map:跨平台 BIM、GIS、CAD 和 AR 应用程序
  • 故障诊断 | Transformer-GRU-Adaboost组合模型的故障诊断(Matlab)
  • 语言模型测试系列【11】
  • Springfox迁移到 Springdoc OpenAPI 3
  • 基于智能语音交互的智能呼叫中心工作机制
  • C语言标准的演进与应用:C89与C99的比较
  • yolo辅助我们健身锻炼
  • WPF软件花屏的解决方法
  • 基于云模型和遗传算法的建设工程风险决策多目标优化研究
  • (译)提示词工程指南:如何写出让AI更听话的提示词(Prompt)?| 附完整示例和小学生版本
  • 安装使用Ubuntu18.04超级大全集最初版(anaconda,pycharm,代理,c/c++环境)
  • 我的创作纪念日—128天的坚持|分享|成长
  • vue+uniapp+echarts的使用(H5环境下echarts)
  • JVM 之垃圾回收器
  • 大数据量接口的异步处理方案详解
  • git lfs 上传超大文件
  • 【SpringBoot】整合篇
  • 第一部分:基础知识 4. 约束 --[MySQL轻松入门教程]