smolagents 文档

使用不同的模型

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

使用不同的模型

smolagents 提供了一个灵活的框架,允许您使用来自不同提供商的各种语言模型。本指南将向您展示如何在您的 Agent 中使用不同类型的模型。

可用的模型类型

smolagents 开箱即用地支持多种模型类型。

  1. InferenceClientModel:使用 Hugging Face 的 Inference API 访问模型
  2. TransformersModel:使用 Transformers 库在本地运行模型
  3. VLLMModel:使用 vLLM 进行快速推理和优化服务
  4. MLXModel:使用 MLX 针对 Apple Silicon 设备进行优化
  5. LiteLLMModel:通过 LiteLLM 访问数百个 LLM
  6. LiteLLMRouterModel:在多个模型之间分配请求
  7. OpenAIServerModel:提供对任何实现了 OpenAI 兼容 API 的提供商的访问
  8. AzureOpenAIServerModel:使用 Azure 的 OpenAI 服务
  9. 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,
)
< > 在 GitHub 上更新