smolagents 文档
使用不同的模型
加入 Hugging Face 社区
并获得增强的文档体验
开始使用
使用不同的模型
smolagents
提供了一个灵活的框架,允许您使用来自不同提供商的各种语言模型。本指南将向您展示如何在您的 Agent 中使用不同类型的模型。
可用的模型类型
smolagents
开箱即用地支持多种模型类型。
- InferenceClientModel:使用 Hugging Face 的 Inference API 访问模型
- TransformersModel:使用 Transformers 库在本地运行模型
- VLLMModel:使用 vLLM 进行快速推理和优化服务
- MLXModel:使用 MLX 针对 Apple Silicon 设备进行优化
- LiteLLMModel:通过 LiteLLM 访问数百个 LLM
- LiteLLMRouterModel:在多个模型之间分配请求
- OpenAIServerModel:提供对任何实现了 OpenAI 兼容 API 的提供商的访问
- AzureOpenAIServerModel:使用 Azure 的 OpenAI 服务
- AmazonBedrockServerModel:连接到 AWS Bedrock 的 API
使用 Google Gemini 模型
正如 Google Gemini API 文档 (https://ai.google.dev/gemini-api/docs/openai) 中所述,Google 为 Gemini 模型提供了与 OpenAI 兼容的 API,允许您通过设置适当的基础 URL 将 OpenAIServerModel 与 Gemini 模型一起使用。
首先,安装所需的依赖项
pip install smolagents[openai]
然后,获取一个 Gemini API 密钥并在您的代码中设置它。
GEMINI_API_KEY = <YOUR-GEMINI-API-KEY>
现在,您可以使用 OpenAIServerModel
类初始化 Gemini 模型,并将 api_base
参数设置为 Gemini API 的基础 URL。
from smolagents import OpenAIServerModel
model = OpenAIServerModel(
model_id="gemini-2.0-flash",
# Google Gemini OpenAI-compatible API base URL
api_base="https://generativelanguage.googleapis.com/v1beta/openai/",
api_key=GEMINI_API_KEY,
)
使用 OpenRouter 模型
OpenRouter 通过统一的 OpenAI 兼容 API 提供了对各种语言模型的访问。您可以使用 OpenAIServerModel 通过设置适当的基础 URL 连接到 OpenRouter。
首先,安装所需的依赖项
pip install smolagents[openai]
然后,获取一个 OpenRouter API 密钥并在您的代码中设置它。
OPENROUTER_API_KEY = <YOUR-OPENROUTER-API-KEY>
现在,您可以使用 OpenAIServerModel
类初始化 OpenRouter 上可用的任何模型。
from smolagents import OpenAIServerModel
model = OpenAIServerModel(
# You can use any model ID available on OpenRouter
model_id="openai/gpt-4o",
# OpenRouter API base URL
api_base="https://openrouter.ai/api/v1",
api_key=OPENROUTER_API_KEY,
)