社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

吴恩达出手,开源最新Python包,一个接口调用OpenAI等模型

机器之心 • 6 天前 • 43 次点击  

机器之心报道

编辑:陈陈

在构建应用程序时,与多个提供商集成很麻烦,现在 aisuite 给解决了。


用相同的代码方式调用 OpenAI、Anthropic、Google 等发布的大模型,还能实现便捷的模型切换和对比测试。


刚刚,AI 著名学者、斯坦福大学教授吴恩达最新开源项目实现了。



吴恩达在推文中宣布了这一好消息开源新的 Python 包:aisuite!


这个工具可以让开发者轻松使用来自多个提供商的大型语言模型。


在谈到为何构建这个项目时,吴恩达表示构建应用时,发现与多个提供商集成非常麻烦。aisuite 正是为了解决这个问题而诞生的,用户只需通过更改一个字符串(如 openai:gpt-4o、anthropic:claude-3-5-sonnet-20241022、ollama:llama3.1:8b 等),即可选择不同提供商的模型。



项目地址:https://github.com/andrewyng/aisuite


项目一上线,大家纷纷表示「这对开发人员来说非常有用。」



「超级方便!简化集成总是有益的,非常好的研究!」



统一接口设计,支持多个 AI 提供商的模型

aisuite 使开发者能够通过标准化的接口轻松使用多个 LLM。其接口与 OpenAI 的类似,aisuite 可以很容易地与最流行的 LLM 交互并比较结果。


aisuite 是一个轻量级的包装器,它基于 Python 客户端库构建,允许用户在不修改代码的情况下,轻松切换并测试来自不同 LLM 提供商的响应。


目前,这个项目主要集中在聊天补全功能,未来将扩展到更多使用场景。


当前,aisuite 支持的提供商包括:


  • OpenAI
  • Anthropic
  • Azure
  • Google
  • AWS
  • Groq
  • Mistral
  • HuggingFace 
  • Ollama


为了确保稳定性,aisuite 使用 HTTP 端点或 SDK 来与提供商进行调用。


安装

安装过程有多种选择。


下面是只安装基础包,而不安装任何提供商的 SDK。


pip install aisuite

带 Anthropic 支持的安装方式


pip install 'aisuite [anthropic]'

下面是将安装所有特定于提供商的库。


pip install 'aisuite [all]'

设置

开始使用时,你需要为打算使用的提供商获取 API 密钥。API 密钥可以作为环境变量设置,具体的使用方式可以参考 aisuite 的 examples 文件夹。


如果大家还不是很明白,可以参考下面简短的示例展示,即如何使用 aisuite 生成来自 GPT-4o 和 Claude-3-5-Sonnet 的聊天补全响应。


先设置 API 密钥:


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

使用 Python 客户端:

import aisuite as aiclient = 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)

想要尝试的读者可以跟着原项目进行配置。如今,我们身处大模型时代,对于开发者而言,用一个统一的接口就能调用各种大模型,这给开发者们节省了大量的时间成本。


我们期待这种实用的开源项目越来越多,如果你有好的项目推荐,欢迎大家评论区留言。


© THE END 
转载请联系本公众号获得授权
投稿或寻求报道:liyazhou@jiqizhixin.com


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/176289
 
43 次点击