AISuite:统一 LLM Agent API 2026 版

AISuite 提供统一的 LLM Agent API。抽象模型差异。支持 OpenAI、Anthropic、Google、Ollama。

  • ⭐ 980
  • Python
  • TypeScript
  • MIT
  • 更新于 2026-05-18

什么是 AISuite? #

AISuite 提供统一的 LLM Agent API。抽象模型差异,让开发者用同一套接口调用不同提供商。

安装 #

pip install aisuite

基本用法 #

初始化客户端 #

from aisuite import UnifiedClient

client = UnifiedClient(
    providers={
        "openai": {"api_key": "sk-xxx"},
        "anthropic": {"api_key": "sk-xxx"},
        "ollama": {"base_url": "http://localhost:11434"}
    }
)

调用模型 #

# 调用 OpenAI
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "你好"}]
)

# 调用 Ollama
response = client.chat.completions.create(
    model="llama3:latest",
    messages=[{"role": "user", "content": "解释 AI"}]
)

Agent 框架 #

创建 Agent #

from aisuite.agent import Agent

agent = Agent(
    llm="gpt-4",
    provider="openai",
    tools=[search, calculator]
)

response = agent.ask("查询今天的天气")

多模型编排 #

from aisuite.orchestrator import Orchestrator

orchestrator = Orchestrator()
result = orchestrator.route(
    query="解释量子计算",
    preferred_models=["gpt-4", "claude-3-opus"]
)

支持的模型 #

提供商模型用途
OpenAIGPT-4, GPT-3.5通用对话
AnthropicClaude-3长对话
GoogleGemini-1.5多模态
Ollamallama3, qwen本地推理
AzureGPT-4企业

工具集成 #

函数调用 #

tools = [
    {
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "获取天气",
            "parameters": {
                "type": "object",
                "properties": {
                    "city": {"type": "string"}
                },
                "required": ["city"]
            }
        }
    }
]

response = client.chat.completions.create(
    model="gpt-4",
    messages=query,
    tools=tools
)

统一接口 #

文本生成 #

completion = client.completions.create(
    model="llama3",
    prompt="写一首诗:AI 时代"
)
print(completion.choices[0].text)

聊天对话 #

messages = [
    {"role": "system", "content": "你是个 helpful assistant"},
    {"role": "user", "content": "解释下面的代码:"}
]

response = client.chat.completions.create(
    model="gpt-4",
    messages=messages
)

部署配置 #

环境变量 #

export OPENAI_API_KEY=sk-xxx
export ANTHROPIC_API_KEY=sk-xxx
export AISUITE_DEFAULT_PROVIDER=openai

配置文件 #

# aisuite.yaml
providers:
  openai:
    api_key: ${OPENAI_API_KEY}
    base_url: https://api.openai.com/v1
  local:
    base_url: http://localhost:11434

defaults:
  model: gpt-4
  temperature: 0.7
  max_tokens: 2048

性能优化 #

并行调用 #

from concurrent.futures import ThreadPoolExecutor

models = ["gpt-4", "claude-3-opus", "gemini-pro"]
prompts = ["解释 AI", "下一个时代", "未来趋势"]

with ThreadPoolExecutor() as executor:
    futures = [
        executor.submit(client.chat.completions.create, 
                       model=m, messages=[{"role": "user", "content": p}])
        for m, p in zip(models, prompts)
    ]
    results = [f.result() for f in futures]

重试机制 #

client.configure(
    retry=3,
    timeout=30,
    backoff="exponential"
)

常见问题 #

Q: AISuite 支持流式输出吗?

答:支持。设置 stream=True

Q: 如何添加自定义模型?

答:实现 Provider 接口,注册到 client。

Q: 支持 Function Calling 吗?

答:支持。与 OpenAI 格式兼容。

总结 #

AISuite 用「统一 API」消除 LLM 厂商差异。从多模型到 Agent,单源接入。


参考:aisuite.dev 文档 更新:2026-05-18

💬 留言讨论