生成式人工智能 (Gen AI) 正在凭借其创造力、解决问题和自动化的潜力重塑行业。然而,由于 API 和配置分散,开发人员在集成来自不同提供商的大型语言模型 (LLM) 时经常面临重大挑战。互操作性的缺乏使工作流程变得复杂,延长了开发时间,并阻碍了有效的 Gen AI 应用程序的创建。
为了解决这个问题,Andrew Ng 的团队推出了 AISuite,这是一个开源 Python 库,可以简化 OpenAI、Anthropic 和 Ollama 等提供商之间的法学硕士集成。 AISuite 使开发人员能够使用简单的“provider:model”字符串(例如 openai:gpt-4o 或 anthropic:claude-3-5)在模型之间进行切换,从而无需进行大量代码重写。通过提供统一的接口,AISuite 显着降低了复杂性,加速了开发,并为构建多功能 Gen AI 应用程序开辟了新的可能性。
在本文中,我们将探讨 AISuite 的工作原理、实际应用以及它在解决与不同法学硕士合作的挑战方面的有效性。
入门
目录
- 什么是AISuite
- 为什么AISuite很重要
- 使用 AISuite 进行实验
- 创建聊天完成
- 创建通用查询函数
什么是AISuite
AISuite 是由 Andrew Ng 团队开发的开源 Python 库,用于简化来自多个提供商的大型语言模型 (LLM) 的集成和管理。它抽象化了使用不同 API、配置和数据格式的复杂性,为开发人员提供了一个统一的框架来简化他们的工作流程。
AISuite的主要特点:
- 简单的界面:AISuite 提供了一个简单且一致的界面来管理各种 LLM。开发者只需几行代码就可以将模型集成到他们的应用程序中,大大降低了 Gen AI 项目的进入门槛。
- 统一框架:通过抽象多个API之间的差异,AISuite无缝处理不同类型的请求和响应。这减少了开发开销并加速了原型设计和部署。
- 轻松模型切换:使用AISuite,模型之间的切换就像更改代码中的单个字符串一样简单。例如,开发人员可以指定“provider:model”组合,如 openai:gpt-4o 或 anthropic:claude-3-5,而无需重写应用程序的重要部分。
- 可扩展性:AISuite 旨在适应不断发展的 Gen AI 环境。开发人员可以在新模型和提供程序可用时添加它们,确保应用程序保持最新的人工智能功能。
为什么AISuite很重要?
AISuite 解决了 Gen AI 生态系统中的一个关键痛点:不同提供商的法学硕士之间缺乏互操作性。通过提供统一的接口,它简化了开发过程,节省了时间并降低了成本。这种灵活性允许团队通过为特定任务选择最佳模型来优化性能。
早期基准测试和社区反馈凸显了 AISuite 减少多模型应用程序集成时间、提高开发人员效率和生产力的能力。随着 Gen AI 生态系统的发展,AISuite 降低了实验、构建和扩展人工智能驱动的解决方案的障碍。
尝试 AISuite
让我们通过安装必要的依赖项开始探索 AISuite。
安装依赖项
- 通过执行以下命令创建并激活虚拟环境。
python -m venv venv source venv/bin/activate #for ubuntu venv/Scripts/activate #for windows
- 使用 pip 安装 aisuite、openai 和 python-dotenv 库。
pip install aisuite[all] openai python-dotenv
设置环境和凭据
创建一个名为 .env 的文件。该文件将存储您的环境变量,包括 OpenAI 密钥。
- 打开 .env 文件并添加以下代码来指定您的 OpenAI API 密钥:
OPENAI_API_KEY=sk-proj-7XyPjkdaG_gDl0_... GROQ_API_KEY=gsk_8NIgj24k2P0J5RwrwoOBW...
- 将 API 密钥添加到环境变量中。
import os from dotenv import load_dotenv load_dotenv() os.environ['OPENAI_API_KEY'] = os.getenv('OPENAI_API_KEY') os.environ['ANTHROPIC_API_KEY'] = getpass('Enter your ANTHROPIC API key: ')
初始化AISuite客户端
创建 AISuite 客户端实例,实现与多个 LLM 的标准化交互。
python -m venv venv source venv/bin/activate #for ubuntu venv/Scripts/activate #for windows
查询型号
用户可以使用AISuite查询模型,如下。
pip install aisuite[all] openai python-dotenv
- model="openai:gpt-4o":指定模型的类型和版本。
- messages=messages:将之前定义的提示发送到模型。
- 温度=0.75:调整响应的随机性。较高的值鼓励创造性产出,而较低的值会产生更具确定性的结果。
- response.choices[0].message.content:从模型的响应中检索文本内容。
创建聊天完成
让我们使用 OpenAI 模型创建聊天完成代码。
OPENAI_API_KEY=sk-proj-7XyPjkdaG_gDl0_... GROQ_API_KEY=gsk_8NIgj24k2P0J5RwrwoOBW...
- 使用以下命令运行应用程序。
import os from dotenv import load_dotenv load_dotenv() os.environ['OPENAI_API_KEY'] = os.getenv('OPENAI_API_KEY') os.environ['ANTHROPIC_API_KEY'] = getpass('Enter your ANTHROPIC API key: ')
您将得到如下输出,
创建用于查询的通用函数
与其编写单独的代码来调用不同的模型,不如创建一个通用函数来消除代码重复并提高效率。
client = ai.Client() Defining the prompt The prompt syntax closely resembles OpenAI’s structure, incorporating roles and content. messages = [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Tell a joke in 1 line."} ]
ask 函数是一个可重用的实用程序,设计用于向 AI 模型发送查询。它接受以下参数:
- 消息:用户的查询或提示。 sys_message(可选):指导模型行为的系统级指令。
- model:指定要使用的AI模型。 该函数处理输入参数,将其发送到指定模型,并返回 AI 的响应,使其成为与各种模型交互的多功能工具。
下面是使用通用询问函数与 OpenAI 模型交互的完整代码。
# openai model response = client.chat.completions.create(model="openai:gpt-4o", messages=messages, temperature=0.75) # ollama model response = client.chat.completions.create(model="ollama:llama3.1:8b", messages=messages, temperature=0.75) # anthropic model response = client.chat.completions.create(model="anthropic:claude-3-5-sonnet-20241022", messages=messages, temperature=0.75) # groq model response = client.chat.completions.create(model="groq:llama-3.2-3b-preview", messages=messages, temperature=0.75) print(response.choices[0].message.content)
运行代码将产生以下输出。
与多个 API 交互
让我们通过以下代码探索使用 AISuite 与多个模型进行交互。
import os from dotenv import load_dotenv load_dotenv() os.environ['OPENAI_API_KEY'] = os.getenv('OPENAI_API_KEY') import aisuite as ai client = ai.Client() provider = "openai" model_id = "gpt-4o" messages = [ {"role": "system", "content": "You are a helpful assistant"}, {"role": "user", "content": "Provide an overview of the latest trends in AI"}, ] response = client.chat.completions.create( model = f"{provider}:{model_id}", messages = messages, ) print(response.choices[0].message.content)
与 Anthropic 或 Groq 等提供商交互时可能会遇到挑战。希望 AISuite 团队正在积极解决这些问题,以确保无缝集成和功能。
AISuite 是一款用于浏览大型语言模型的强大工具。它使用户能够利用多个人工智能提供商的优势,同时简化开发并鼓励创新。凭借其开源基础和直观的设计,AISuite 成为现代人工智能应用程序开发的基石。
感谢您阅读这篇文章!!
感谢 Gowri M Bhatt 审阅内容。
如果您喜欢这篇文章,请点击心形按钮♥并分享以帮助其他人找到它!
本教程的完整源代码可以在这里找到,
GitHub - codemaker2015/aisuite-examples : github.com
资源
GitHub - andrewyng/aisuite:与多个生成式 AI 提供商的简单、统一的接口:github.com
以上是AISuite:简化跨多个 LLM 提供商的 GenAI 集成的详细内容。更多信息请关注PHP中文网其他相关文章!

Tomergelistsinpython,YouCanusethe操作员,estextMethod,ListComprehension,Oritertools

在Python3中,可以通过多种方法连接两个列表:1)使用 运算符,适用于小列表,但对大列表效率低;2)使用extend方法,适用于大列表,内存效率高,但会修改原列表;3)使用*运算符,适用于合并多个列表,不修改原列表;4)使用itertools.chain,适用于大数据集,内存效率高。

使用join()方法是Python中从列表连接字符串最有效的方法。1)使用join()方法高效且易读。2)循环使用 运算符对大列表效率低。3)列表推导式与join()结合适用于需要转换的场景。4)reduce()方法适用于其他类型归约,但对字符串连接效率低。完整句子结束。

pythonexecutionistheprocessoftransformingpypythoncodeintoExecutablestructions.1)InternterPreterReadSthecode,ConvertingTingitIntObyTecode,whepythonvirtualmachine(pvm)theglobalinterpreterpreterpreterpreterlock(gil)the thepythonvirtualmachine(pvm)

Python的关键特性包括:1.语法简洁易懂,适合初学者;2.动态类型系统,提高开发速度;3.丰富的标准库,支持多种任务;4.强大的社区和生态系统,提供广泛支持;5.解释性,适合脚本和快速原型开发;6.多范式支持,适用于各种编程风格。

Python是解释型语言,但也包含编译过程。1)Python代码先编译成字节码。2)字节码由Python虚拟机解释执行。3)这种混合机制使Python既灵活又高效,但执行速度不如完全编译型语言。

useeAforloopWheniteratingOveraseQuenceOrforAspecificnumberoftimes; useAwhiLeLoopWhenconTinuingUntilAcIntiment.ForloopSareIdeAlforkNownsences,而WhileLeleLeleLeleLoopSituationSituationSituationsItuationSuationSituationswithUndEtermentersitations。

pythonloopscanleadtoerrorslikeinfiniteloops,modifyingListsDuringteritation,逐个偏置,零indexingissues,andnestedloopineflinefficiencies


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

记事本++7.3.1
好用且免费的代码编辑器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具