Hugging Face 推理提供商集成

Hugging Face 已将四个无服务器推理提供商——fal、Replicate、SambaNova 和 Together AI——直接集成到 Hub 的模型页面和客户端 SDK 中。此举将 Hub 从托管其自身的无服务器推理 API 转变为提供对多样化专业无服务器提供商生态系统的统一访问。

统一无服务器推理访问

用户现在可以直接从 Hub 访问各种模型的无服务器推理。此集成使得探索和原型化诸如 DeepSeek-R1 和 FLUX.1-dev 之类的模型变得更加容易,而无需管理单独的基础设施。

网站 UI 集成

在 Hub 的用户账户设置中,用户可以通过以下两种主要方式管理他们的推理体验:

  • 自定义 API 密钥:用户可以为特定提供商设置自己的 API 密钥。使用这些密钥的请求将直接发送到提供商。
  • 提供商偏好:用户可以按偏好顺序排列提供商,这决定了它们在模型页面小部件和代码片段中的显示方式。

路由模式

通过此系统调用推理 API 有两种不同的模式:

  1. 自定义密钥模式:调用将直接使用用户对应提供商的自身 API 密钥发送到推理提供商。
  2. 由 HF 路由:请求通过 Hugging Face 路由。在此模式下,用户不需要提供商特定的令牌,费用将直接应用到 Hugging Face 账户。

技术实现和 SDK

使用 huggingface_hub 库(v0.28.0 或更高版本),开发者可以在 InferenceClient 中指定提供商:

from huggingface_hub import InferenceClient

client = InferenceClient(
    provider="together",
    api_key="xxxxxxxxxxxxxxxxxxxxxxxx"
)

completion = client.chat.completions.create(
    model="deepseek-ai/DeepSeek-R1", 
    messages=[{"role": "user", "content": "What is the capital of France?"}], 
    max_tokens=500
)

JavaScript 集成

使用 @huggingface/inference 的开发者可以在 chatCompletion 方法中传递 provider 参数:

import { HfInference } from "@huggingface/inference\);\n\nconst client = new HfInference("xxxxxxxxxxxxxxxxxxxxxxxx");\n\nconst chatCompletion = await client.chatCompletion({\n    model: "deepseek-ai/DeepSeek-R1",\n    provider: "together",\n    max_tokens: 500\n});

HTTP 路由代理

Hugging Face 在 huggingface.co 域下公开一个路由代理,通过 URL 结构 https://router.huggingface.co/{provider} 启用 OpenAI 兼容的 API 调用。

计费和积分

计费取决于所选的路由模式:

  • 直接请求:用户直接通过其提供商账户由推理提供商计费。
  • 路由请求:用户支付通过 Hugging Face 传递的标准提供商 API 费用,没有额外加价。

Hugging Face PRO 用户每月可获得价值 2 美元的推理积分,可跨提供商使用。已登录的免费用户将获得少量免费推理配额。

社区反馈与观点

社区对该公告的讨论凸显了若干争议点和技术障碍:

"之前的专业版提供 20,000 次请求。现在它已经消失了。真是可惜。" "我认为这是一个错误的决定。我花了 9 美元却只用了 2 美元。我之前每天有 20k 的限额。"

用户报告称,InferenceClient.__init__() 对于未更新到最新库版本的人会收到意外的关键字参数,此外在代表用户调用推理提供商时还会出现 403 Forbidden 错误,涉及权限问题。

Sources