OpenRouter 上的 Qwen3.8-27B 怎么调:八家供应商给的参数并不一样
如果你不想自己部署 Qwen3.8-27B,OpenRouter 是绕不开的一条路:它把多家供应商的同一个模型聚合到一个 API 后面,用一个 key 就能调。
但这里有个容易吃亏的地方。OpenRouter 上的「一个模型」其实是一组供应商,同一个 qwen3.8-27b,不同供应商跑的量化精度不一样、支持的上下文上限不一样、允许的最大输出长度也不一样。模型详情页显示的是一个汇总值,你实际被路由到哪家、拿到什么规格,是另一回事。
这篇讲怎么把这层差异查清楚。
这篇的依据
全部数据来自 OpenRouter 的公开 API,两个端点:
https://openrouter.ai/api/v1/models
https://openrouter.ai/api/v1/models/qwen/qwen3.8-27b/endpoints
采集时间 2026-08-24。这两个端点都不需要鉴权,你可以自己 curl 一遍核对。
我们没有调用过这个模型、没有发起过任何推理请求。 下面说的全部是元数据接口返回的内容,不是使用体验。另外,供应商名单和价格是随时会变的——本文不列价格、不做供应商推荐,只讲查法。
先确认模型 ID
在 /api/v1/models 的返回里,这个模型的条目是:
| 字段 | 值 |
|---|---|
id | qwen/qwen3.8-27b |
canonical_slug | qwen/qwen3.8-27b-20260814 |
hugging_face_id | Qwen/Qwen3.8-27B |
hugging_face_id 这个字段值得留意:它把 OpenRouter 上的条目和 Hugging Face 上的权重仓明确对应起来了。你不用猜「这个 27b 是不是那个 27b」——接口直接告诉你就是 Qwen/Qwen3.8-27B。
canonical_slug 带日期后缀 20260814,与 HF 仓库的最后修改时间是同一天。想锁定版本可以直接用带日期的这个 slug 调用,避免将来 OpenRouter 把 qwen3.8-27b 指向新快照。
架构信息也在这里:
"architecture": {
"tokenizer": "Qwen",
"modality": "text+image+video->text",
"input_modalities": ["text", "image", "video"],
"output_modalities": ["text"]
}
输入吃文本、图像、视频,输出只有文本。这与 model card 的定位一致(可对照 图像输入怎么传 和 视频输入怎么传)。
关键一步:查 endpoints
把模型 ID 拼进 endpoints 路径,就能拿到供应商级别的明细:
curl https://openrouter.ai/api/v1/models/qwen/qwen3.8-27b/endpoints
截至 2026-08-24 采集时,返回里有八家供应商。把关键字段摘出来对比:
| 供应商 | 量化 | context_length | max_completion_tokens |
|---|---|---|---|
| Chutes | fp8 | 262144 | 65536 |
| CoreWeave | fp8 | 262144 | 262144 |
| AkashML | bf16 | 262144 | 131072 |
| Alibaba | unknown | 1000000 | 131072 |
| Reka | fp8 | 262144 | 131072 |
| Venice | fp8 | 262144 | 65536 |
| Parasail | fp8 | 262144 | 262144 |
| Io Net | fp8 | 65500 | 65536 |
这张表里有三处值得停下来看。
差异一:上下文上限差了近四倍
八家里六家报 262144,这与 config.json 里的 max_position_embeddings 完全一致。
但两头各有一个例外:
Alibaba 报的是 1000000。 这个数字眼熟——Qwen3.8-27B 的上下文口径一直有多个版本,256K、262144 还是 1M 那篇梳理过 model card 和配置文件里的几处不一致。现在 OpenRouter 的供应商列表提供了又一处口径:作为模型原厂,阿里自己作为供应商时报的是 100 万。
Io Net 报的是 65500。 这个值比标准的 262144 低了四分之三,也不是一个整齐的 2 的幂(65536 减 36)。
这两个数字意味着什么,接口本身没有解释。能确定的只有一件事:如果你的应用依赖长上下文,选错供应商会直接触发截断或报错。
差异二:量化精度不统一
八家里六家标 fp8,AkashML 标 bf16,Alibaba 标 unknown。
这是个纯事实差异,接口就是这么返回的。量化精度对输出的影响本文不做判断——我们没有做过任何对比测试,任何「fp8 会不会掉效果」的说法都需要实测支撑,我们没有。
但有一点可以说:如果你在做需要可复现结果的工作,至少应该知道自己被路由到了哪种精度。这正是要查 endpoints 而不是只看首页的原因。
差异三:最大输出长度分三档
max_completion_tokens 分成 65536 / 131072 / 262144 三档,差距是 4 倍。
这一项在长文生成、长链路 agent 任务里会直接构成天花板。同样,模型详情页上不会分供应商展示这个值。
怎么控制路由
查清差异之后,实际调用时可以在请求体里加 provider 字段来约束路由。OpenRouter 支持按名单指定、排序、以及是否允许回退,具体字段以官方文档为准——这部分接口约定会变,本文不复述参数名,只提醒一句:默认行为是自动路由,你不指定就等于接受任意一家。
参数支持:reasoning_effort 是透传的
endpoints 返回里每家都带一个 supported_parameters 列表。以第一家为例:
reasoning, include_reasoning, max_tokens, temperature, top_p, stop,
frequency_penalty, presence_penalty, seed, top_k, repetition_penalty,
response_format, structured_outputs, tools, tool_choice, reasoning_effort
其中三个和这个模型的特性直接相关:
reasoning 与 include_reasoning 对应思考模式。Qwen3.8-27B 的 思考模式默认是开着的,include_reasoning 决定思考内容要不要回传给你。
reasoning_effort 对应模型自己的努力档位。这里有个有意思的呼应:reasoning_effort 三档里模板只有两档有分支——也就是说这个参数在 OpenRouter 层是透传的,但传下去之后在 chat template 那一层的实际分支情况,是另一个故事。
tools 与 tool_choice 对应工具调用。值得一提的是,这个模型的工具调用协议只写在模板里,README 全文 0 提及——通过 OpenRouter 调用时这层由平台封装,但你自己部署时就得自己处理模板。
endpoints 里还有几个字段值得看
除了前面那三项,每个 endpoint 条目里还带着一些运行状态字段,用途各不相同。
可用率:uptime_last_5m、uptime_last_30m、uptime_last_1d 三个粒度。这是 OpenRouter 自己统计的各供应商可用率。这类数字每分钟都在变,本文不列具体值——但它的用法值得说:如果你在排查「为什么请求偶发失败」,先看一眼被路由到的那家近期可用率,能省掉不少瞎猜。
延迟与吞吐:latency_last_30m、throughput_last_30m。注意这两个字段可能是 null——采集时我们看到的第一家就是 null。字段存在不等于有数据,代码里取值前记得判空。
缓存支持:supports_implicit_caching,布尔值。它决定这家供应商会不会自动对重复前缀做缓存。有些条目的定价结构里还单列了 input_cache_read 这一项,说明缓存命中的输入是单独计价的。
这里有个容易被忽略的成本影响:如果你的应用有很长的固定系统提示词,每次请求都重复发送,那么「这家支不支持缓存」对实际花费的影响,可能比单价本身还大。而这一项同样是分供应商的,首页看不到。
状态位:status,数值型。异常的供应商会在这里体现,自动路由时通常会被跳过。
把这几项和前面的量化、上下文、最大输出放在一起,你会发现一件事:OpenRouter 的模型详情页给你的是一个「代表值」,而 endpoints 接口给你的才是「实际值的分布」。 对随手试试的场景无所谓,对要上生产的场景,这个差别很关键。
顺带:同系列还有两个型号
在 /api/v1/models 的返回里搜 qwen3.8,除了 27B 还有两条:
qwen/qwen3.8-2.4t-a95b,hugging_face_id是Qwen/Qwen3.8-2.4T-A95B,描述里写的是 open-weight sparse mixture-of-expertsqwen/qwen3.8-max,旗舰型号,没有hugging_face_id字段
有没有 hugging_face_id 这个字段,本身就是开源与否的一个信号。 27B 和 2.4T-A95B 都能对应到 HF 仓库,Max 不能。
小结
用 OpenRouter 调 Qwen3.8-27B,值得养成的习惯是:
- 用
hugging_face_id确认这个条目对应哪份权重 - 想锁版本就用带日期的
canonical_slug - 调用前先 curl 一次 endpoints,看清楚各家的量化、上下文上限、最大输出长度
- 如果对规格有要求,显式约束 provider,别用默认自动路由
- 记住这份名单会变——今天查到的八家,下个月可能不是这八家
最后重复一遍边界:本文所有内容来自公开元数据接口,我们没有实际调用过这个模型,也不对任何供应商做推荐。价格更是刻意没写——那是最容易过期的一项。
想了解这个模型在其他平台上的分发情况,可以看 Qwen3.8 系列全家谱,或回到 Qwen3.8-27B 专题。