社区所有版块导航
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包!助力开发者大模型开发!

江大白 • 3 天前 • 18 次点击  

以下章来源于微信公众号:Datawhale

作者:Datawhale

链接:https://mp.weixin.qq.com/s/aImIxlIyCHCESjVb9hmLsw

本文仅用于学术分享,如有侵权,请联系台作删文处理

导读
各个公司的大模型五花八门,最近著名AI学者为此开源了一个项目能够便捷的实现大模型的切换和对比测试,让开发者轻松使用来自多个提供商的大型语言模型,本文对此做了详细介绍。
在构建应用程序时,与多个提供商集成很麻烦,现在 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)
想要尝试的读者可以跟着原项目进行配置。如今,我们身处大模型时代,对于开发者而言,用一个统一的接口就能调用各种大模型,这给开发者们节省了大量的时间成本。

推荐阅读

    江大白 | 这些年从0转行AI行业的一些感悟

    AI项目应用 | 万字长文教你一步步实现离岗识别


    AI行业大家有想问的,欢迎来《AI未来星球》,一起成长
    扫描下方二维码即可加入~


    你可以获得什么? 

    1、AI行业创业/工作/生活中遇到的各类问题,都可获高质量解答, 有效期一年,无限次提问,有问必答。

    2、购买过的,数万元的各类数据集的分享;

    3、定期邀请AI行业各类嘉宾分享,创业/商业等方面的经验!

    4、AI行业研发、产品、商业落地方面专业分享(大白主业,也在负责公司AI业务板块)

    帮助你解决遇到的实际问题,升职加薪!

    大家一起加油! 

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