一行代码切换:用OpenAI SDK接入国产大模型
痛点
做AI开发的朋友都知道,每家大模型都有自己的SDK和API格式:
- DeepSeek有自己的接口
- 通义千问走DashScope
- 智谱GLM有独立的API
- Kimi月之暗面又是另一套
每接一个模型,就要学一套新的API,改一遍代码。痛点很明显。
解决方案:用OpenAI SDK调一切
好消息是,现在几乎所有国产大模型都兼容OpenAI的API格式。你只需要一个API中转站(如TokenHub),把所有模型统一成一个OpenAI兼容接口。
三步切换
Step 1:安装OpenAI SDK
pip install openai
Step 2:改两行配置
# 之前:每个模型一套配置
import openai
openai.api_key = "deepseek自己的key"
openai.base_url = "https://api.deepseek.com"
# 之后:一个Key全搞定
from openai import OpenAI
client = OpenAI(
api_key="在TokenHub获取的Key",
base_url="https://loyap-innovation.com/v1/"
)
Step 3:换模型只需改model名
# DeepSeek
response = client.chat.completions.create(
model="deepseek-chat",
messages=[...]
)
# 通义千问 - 改个名字就行
response = client.chat.completions.create(
model="qwen-plus", # 只改这个
messages=[...]
)
# 智谱GLM
response = client.chat.completions.create(
model="glm-4-flash", # 只改这个
messages=[...]
)
# Kimi (128k上下文)
response = client.chat.completions.create(
model="moonshot-v1-128k", # 只改这个
messages=[...]
)
完整示例:流式输出
from openai import OpenAI
client = OpenAI(
api_key="sk-your-tokenhub-key",
base_url="https://loyap-innovation.com/v1/"
)
stream = client.chat.completions.create(
model="qwen-plus",
messages=[{"role": "user", "content": "写一首诗"}],
stream=True
)
for chunk in stream:
print(chunk.choices[0].delta.content, end="")
支持的模型一览
| 模型 | model名 | 特点 |
|---|---|---|
| DeepSeek Chat | deepseek-chat | 性价比高 |
| Qwen-Plus | qwen-plus | 综合能力强 |
| Qwen-Max | qwen-max | 最强推理 |
| GLM-4-Flash | glm-4-flash | 免费额度 |
| Kimi Moonshot | moonshot-v1-128k | 128k超长上下文 |
价格对比
通过TokenHub接入,相比官方直充最高可省40%:
- DeepSeek:¥27起/100万token
- 通义千问:¥23起/100万token
- 智谱GLM:¥0起(Flash版本免费)
- Kimi:¥23起/100万token