千问 API 怎么接:百炼平台、OpenAI 兼容写法和三个计费坑
千问 API 走阿里云百炼,OpenAI SDK 改 base_url 就能用。本文给可运行的调用代码、三地域地址表,以及按上下文分级、缓存与 Batch 不叠加、地域价差这三个成本陷阱。
千问的 API 在阿里云百炼平台上,接口兼容 OpenAI 规范。已经用 OpenAI SDK 的项目,改两行就能跑:base_url 和模型名。真正会多花钱的地方不在代码,在计费规则。
三条接入路径,先选对
按量付费。开百炼账号、建 API Key、按 token 结算。适合流量不稳定、先验证效果的场景。新用户有免费额度,官方口径是每个模型 100 万 token、有效期 90 天,且免费额度落在新加坡地域。
Token Plan 订阅。用 Credits 统一计量,覆盖文本、多模态和联网搜索、代码解释器这类工具。2026 年 11 月 9 日调价后四档:Lite 39 元 2 万 Credits、Essential 79 元 4.5 万、Standard 139 元 8 万、Pro 312 元 20 万。适合用量可预测的团队,超额买用量包,15 美元一个含 2 万 Credits。
Coding Plan。独立的编码套餐,Key 前缀是 sk-ws-,只用于编程工具链。和上面两条不共享额度。
大多数项目从按量付费起步,跑出稳定曲线再决定要不要订阅。
最小可用调用
装 openai 库,把 base_url 指到百炼的兼容端点,模型名写 qwen3.8-max。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
resp = client.chat.completions.create(
model="qwen3.8-max",
messages=[{"role": "user", "content": "把这段合同里的付款条款摘成三列表格"}],
)
print(resp.choices[0].message.content)
Key 只创建时显示一次,丢了只能重置。放环境变量,别写进前端。
三个地域,三套价格
| 地域 | base_url | 计价货币 |
|---|---|---|
| 北京 | https://dashscope.aliyuncs.com/compatible-mode/v1 | 人民币 |
| 新加坡 | https://dashscope-intl.aliyuncs.com/compatible-mode/v1 | 美元 |
| 美国弗吉尼亚 | https://dashscope-us.aliyuncs.com/compatible-mode/v1 | 美元 |
Key 是分地域的,北京的 Key 调不了新加坡端点。这是接入阶段最常见的报错来源,401 先查地域,别急着换 Key。
坑一:上下文长度影响单价
同一系列模型,输入长度跨过阈值,单价会跳档。以 qwen3-max 为例,32K 以内、128K 以内、252K 以内是三档不同价格,输出价也跟着跳。Qwen3.8-Max 目前是全长统一价,但不要假设所有模型都这样。
实操建议:长文档任务先用 qwen-long 类的长上下文档位试算,确认它真能读完再上旗舰。一份接近上下文上限的财报丢进去问三个问题,成本可能是一次短对话的几十倍到上百倍,具体倍数取决于你实际塞进去的 token 量。
坑二:缓存折扣和 Batch 折扣不叠加
百炼提供上下文缓存和 Batch 异步调用两套省钱机制。在 Max 和 Flash 家族上,两者不能同时生效——命中缓存的批量请求只按 Batch 半价算,不会在半价基础上再打折。
很多人设计的方案是「把系统提示词缓存起来,再走 Batch 跑批」,账算得很美,账单出来发现只省了一次。要么走 Batch,要么走缓存,按任务形态二选一。
夜间折扣是第三个变量:每晚 22:00 到次日 8:00,qwen3.8-max 和 flash 打 4 折。批处理类任务全部挪到夜里跑,这是最省事的一刀。
坑三:地域价差能到一倍以上
北京地域 qwen3.8-max 的公开单价是输入 0.8 元、输出 2.7 元每百万 token;国际站同款模型报价是输入 2 美元、输出 6 美元。按汇率折完,差了不止一倍。
这笔差价不是「海外更贵所以更好」,而是两套独立定价。国内业务就选北京,跨境业务再考虑国际站。搞反了,一个月账单能差出好几千。
限流和重试
百炼按模型和账号等级限流,具体 RPM、TPM 阈值在控制台的模型详情页看,且会随账号消费额度提升。工程上要做的三件事:指数退避重试、把 429 单独分类而不是当普通错误、给长任务设超时上限。
不要用「失败就换模型」的办法兜底,不同模型的输出格式和 token 计费都不同,混用会让成本核算失真。
上线前的核对清单
Key 的地域和代码里的 base_url 是否一致;模型名是否写成了带日期后缀的快照版本(生产环境建议锁快照,别用浮动别名);有没有开夜间批处理;系统提示词的缓存命中率是多少;月度预算告警有没有设。
自部署是另一条路。Qwen3.8-27B 是 Apache 2.0 许可、单卡可跑,显存需求可以参照 本地跑大模型要多少显存。API 与自部署的完整价差,对照 11 月大模型 API 价格表 更直观。
先跑通一次 200 token 的调用,再去接长文档。顺序反了,账单会替你上课。
登录后可点赞、收藏与反馈。