andrewyng/aisuite
Simple, unified interface to multiple Generative AI providers
解决的问题
aisuite 是一个轻量级的 Python 库,旨在通过消除处理多个不同提供商 SDK 的摩擦,简化使用大语言模型 (LLM) 进行开发的过程。它为与各种 AI 模型交互提供了统一的接口,并提供了一个用于创建可以使用工具的智能体 (Agents) 的高级框架。
工作原理
该库由两个主要层组成:
- Chat Completions API:一个统一的 OpenAI 风格接口,允许开发人员通过简单地更改模型字符串(例如,从
openai:gpt-4o更改为anthropic:claude-3-5-sonnet)来切换提供商(如 OpenAI、Anthropic、Google、Mistral 和 Ollama)。它标准化了这些不同服务的请求和响应结构。 - Agents API:构建在聊天 API 之上的层,用于实现智能体的创建。它允许开发人员将普通的 Python 函数作为工具传递,库会自动将其转换为模式 (schema) 并执行。它通过
max_turns参数支持多轮对话循环,并包含用于文件、git 和 shell 的预构建工具包。
此外,它还支持 Model Context Protocol (MCP),无需样板代码即可集成外部工具。
适用对象
想要避免供应商锁定,并希望在不重写集成代码的情况下轻松尝试不同 LLM 提供商的构建 AI 应用或智能体的 Python 开发人员。
亮点
- 统一的 API:为包括 OpenAI、Anthropic、Google、Mistral、Hugging Face、AWS、Cohere、Ollama 和 OpenRouter 在内的广泛提供商提供单一接口。
- 自动工具调用:直接将 Python 函数转换为工具并自动管理执行循环。
- 智能体框架:包括用于结构化工作的
Runner、用于安全的工具策略(例如:审批策略)以及用于持久化对话的状态存储。 - MCP 支持:与 Model Context Protocol 原生集成,实现轻松的工具扩展。
- 可扩展性:可以通过简单的适配器模式添加新的提供商。
相关
- 项目
- 项目
- 项目
- 项目
- 项目