Hugging Face 上的 AI 模型怎么用?一个 API Key 调用 624+ 模型实战教程
Hugging Face 上的 AI 模型怎么用?一个 API Key 调用 624+ 模型实战教程
很多人在 Hugging Face 上看到各种开源模型,想用但不知道怎么调用。自己部署要 GPU,用 HF 的 Inference API 又经常报 “model is too busy”。这篇文章教你一个更简单的方法:用一个 API Key 直接调用 HF 上所有热门模型,包括 DeepSeek、Qwen、Llama、Gemma 等,还能同时用 GPT-4o 和 Claude。
问题:HF 模型好看不好用
Hugging Face 上有几十万个模型,但真正想用起来,你会遇到这些问题:
- 自己部署:需要 GPU 服务器,Llama 70B 至少要 A100,一个月几千块
- HF Inference API:免费额度少,经常 “model is too busy”,Pro 用户也不稳定
- 各家 API 分散:DeepSeek 一个 key,OpenAI 一个 key,Anthropic 一个 key,管理麻烦
- SDK 不统一:每家的调用方式不一样,切换模型要改一堆代码
解决方案:API 聚合网关
用一个 API 聚合服务,一个 key 搞定所有模型。这里用 Crazyrouter 做演示,它支持 624+ 模型,完全兼容 OpenAI SDK。
第一步:获取 API Key
去 crazyrouter.com 注册,拿到 API Key(sk- 开头)。有免费额度可以先试。
第二步:安装 SDK
pip install openai
没错,就是 OpenAI 的 SDK。因为 Crazyrouter 完全兼容 OpenAI API 格式。
第三步:调用任意模型
from openai import OpenAI
client = OpenAI(
base_url="https://crazyrouter.com/v1",
api_key="sk-你的key"
)
# 用 DeepSeek V3(HF 上最火的开源模型之一)
response = client.chat.completions.create(
model="deepseek-chat",
messages=[{"role": "user", "content": "用 Python 写一个快速排序"}]
)
print(response.choices[0].message.content)
换模型?改一行:
# 换成 GPT-4o
response = client.chat.completions.create(model="gpt-4o", messages=messages)
# 换成 Claude Sonnet
response = client.chat.completions.create(model="claude-sonnet-4-20250514", messages=messages)
# 换成 Qwen
response = client.chat.completions.create(model="qwen-plus", messages=messages)
# 换成 Gemini
response = client.chat.completions.create(model="gemini-2.0-flash", messages=messages)
就改一个字符串,其他代码完全不动。
实战:多模型对比测试
HF 上经常有人讨论哪个模型更好。与其看别人的 benchmark,不如自己跑一个:
from openai import OpenAI
import time
client = OpenAI(
base_url="https://crazyrouter.com/v1",
api_key="sk-你的key"
)
models = [
"deepseek-chat", # DeepSeek V3
"deepseek-reasoner", # DeepSeek R1(推理模型)
"gpt-4o-mini", # OpenAI 性价比之选
"claude-sonnet-4-20250514", # Anthropic 编程最强
"gemini-2.0-flash", # Google 速度最快
]
prompt = "写一个 Python 函数,找出数组中的最长递增子序列,要求时间复杂度 O(n log n)"
for model in models:
start = time.time()
resp = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": prompt}],
max_tokens=500
)
elapsed = time.time() - start
tokens = resp.usage.total_tokens
print(f"\n{'='*50}")
print(f"模型: {model}")
print(f"耗时: {elapsed:.2f}s | Token: {tokens}")
print(f"回答: {resp.choices[0].message.content[:200]}...")
跑完你就知道哪个模型适合你的场景了。
实战:在 LangChain 中使用
很多人用 LangChain 做 RAG、Agent。接入 Crazyrouter 只需要改两行:
from langchain_openai import ChatOpenAI
# 之前:直接用 OpenAI
# llm = ChatOpenAI(model="gpt-4o", api_key="sk-openai-key")
# 现在:通过 Crazyrouter,可以用任何模型
llm = ChatOpenAI(
base_url="https://crazyrouter.com/v1",
api_key="sk-你的crazyrouter-key",
model="deepseek-chat" # 或 gpt-4o, claude-sonnet-4-20250514, 任意模型
)
# 后面的代码完全不用改
response = llm.invoke("解释一下 RAG 的原理")
print(response.content)
LlamaIndex、AutoGen、CrewAI 也是一样的改法。
实战:在 Cursor / Cline 中使用
AI 编程工具也能用:
Cursor
设置 → Models → Override OpenAI Base URL:
- URL:
https://crazyrouter.com/v1 - Key:
sk-你的key - Model:
deepseek-chat(省钱)或claude-sonnet-4-20250514(最强)
Cline(VS Code 插件)
设置 → API Provider → OpenAI Compatible:
- Base URL:
https://crazyrouter.com/v1 - API Key:
sk-你的key - Model:
claude-sonnet-4-20250514
Aider(命令行)
export OPENAI_API_KEY="sk-你的key"
export OPENAI_API_BASE="https://crazyrouter.com/v1"
aider --model deepseek-chat
实战:AI 绘画
不只是文本模型,图像生成也支持:
response = client.images.generate(
model="dall-e-3",
prompt="一只穿着太空服的猫在月球上喝咖啡,赛博朋克风格",
size="1024x1024",
quality="hd"
)
print(response.data[0].url)
价格对比
| 模型 | 输入价格 ($/百万token) | 输出价格 | 适合场景 |
|---|---|---|---|
| deepseek-chat | $0.14 | $0.28 | 日常编码,性价比之王 |
| gpt-4o-mini | $0.15 | $0.60 | 快速任务 |
| gemini-2.0-flash | $0.10 | $0.40 | 长文档,速度优先 |
| gpt-4o | $2.50 | $10.00 | 复杂推理 |
| claude-sonnet-4 | $3.00 | $15.00 | 编程最强 |
| deepseek-reasoner | $0.55 | $2.19 | 数学/逻辑推理 |
DeepSeek V3 的价格是 GPT-4o 的 1/18,但编码能力已经非常接近。
环境变量配置(推荐)
设置一次,所有工具自动生效:
# 加到 ~/.bashrc 或 ~/.zshrc
export OPENAI_API_KEY="sk-你的crazyrouter-key"
export OPENAI_API_BASE="https://crazyrouter.com/v1"
export OPENAI_BASE_URL="https://crazyrouter.com/v1"
之后所有用 OpenAI SDK 的工具都会自动走 Crazyrouter。
常见问题
Q: 跟直接用各家 API 有什么区别?
A: 功能完全一样,但你只需要管理一个 key,切换模型只改一个字符串。
Q: 延迟会增加吗?
A: 网关转发会增加几十毫秒,对于大模型几秒的响应时间来说可以忽略。
Q: 支持流式输出吗?
A: 支持,加 stream=True 就行。
Q: 支持 Function Calling / Tool Use 吗?
A: 支持,跟 OpenAI 格式完全一致。
相关资源
- 🌐 Crazyrouter 官网
- 🤖 在线 Demo(可直接体验)
- 💰 模型价格对比
- 📖 快速入门教程
- 🔗 LangChain 集成指南
- 💻 AI 编程工具配置
- 🎨 AI 绘画教程
- 💬 Telegram 社区
如果觉得有用,点个赞收藏一下。有问题评论区见。
更多推荐

所有评论(0)