跳转到内容

Hugging Face

Hugging Face 是一个 AI 平台,拥有所有主流的开源模型、数据集、MCP 和演示。您可以使用 推理提供程序 (Inference Providers) 在可扩展的无服务器基础设施上运行像 DeepSeek R1 这样的开源模型。

安装

要使用 HuggingFaceModel,您需要安装 pydantic-ai,或者安装带有 huggingface 可选组的 pydantic-ai-slim

pip install "pydantic-ai-slim[huggingface]"
uv add "pydantic-ai-slim[huggingface]"

配置

要使用 Hugging Face 推理,您需要设置一个账户,该账户将为您提供 推理提供程序 (Inference Providers)免费套餐额度。要设置推理,请按以下步骤操作:

  1. 前往 Hugging Face 并注册一个账户。
  2. Hugging Face 中创建一个新的访问令牌。
  3. HF_TOKEN 环境变量设置为您刚刚创建的令牌。

一旦您有了 Hugging Face 访问令牌,就可以将其设置为环境变量:

export HF_TOKEN='hf_token'

用法

然后您可以通过名称使用 HuggingFaceModel

from pydantic_ai import Agent

agent = Agent('huggingface:Qwen/Qwen3-235B-A22B')
...

或者直接用模型名称初始化模型

from pydantic_ai import Agent
from pydantic_ai.models.huggingface import HuggingFaceModel

model = HuggingFaceModel('Qwen/Qwen3-235B-A22B')
agent = Agent(model)
...

默认情况下,HuggingFaceModel 使用 HuggingFaceProvider,它会自动选择可用于该模型的第一个推理提供程序(Cerebras、Together AI、Cohere 等),并根据您在 https://hugging-face.cn/settings/inference-providers 中的首选顺序排序。

配置提供程序

如果您想在代码中向提供程序传递参数,可以以编程方式实例化 HuggingFaceProvider 并将其传递给模型:

from pydantic_ai import Agent
from pydantic_ai.models.huggingface import HuggingFaceModel
from pydantic_ai.providers.huggingface import HuggingFaceProvider

model = HuggingFaceModel('Qwen/Qwen3-235B-A22B', provider=HuggingFaceProvider(api_key='hf_token', provider_name='nebius'))
agent = Agent(model)
...

自定义 Hugging Face 客户端

HuggingFaceProvider 还通过 hf_client 参数接受一个自定义的 AsyncInferenceClient 客户端,这样您就可以自定义 headersbill_to(支付给您所属的 HF 组织)、base_url 等参数,具体定义请参见 Hugging Face Hub Python 库文档

from huggingface_hub import AsyncInferenceClient

from pydantic_ai import Agent
from pydantic_ai.models.huggingface import HuggingFaceModel
from pydantic_ai.providers.huggingface import HuggingFaceProvider

client = AsyncInferenceClient(
    bill_to='openai',
    api_key='hf_token',
    provider='fireworks-ai',
)

model = HuggingFaceModel(
    'Qwen/Qwen3-235B-A22B',
    provider=HuggingFaceProvider(hf_client=client),
)
agent = Agent(model)
...