本地与自托管模型
连接 Ollama、vLLM、LM Studio,核对模型 ID、占位 Key 和流超时。
本地推理服务如果提供 OpenAI 兼容接口,可以通过 openai 模型条目接入。Qwen Code 的连接配置不负责替你下载模型或启动服务。
官方示例地址
| 服务 | baseUrl 示例 | Key 变量示例 |
|---|---|---|
| Ollama | http://localhost:11434/v1 | OLLAMA_API_KEY |
| vLLM | http://localhost:8000/v1 | VLLM_API_KEY |
| LM Studio | http://localhost:1234/v1 | LMSTUDIO_API_KEY |
端口及模型 ID 应以实际运行服务为准;示例端口不是所有部署必须采用的值。
模型配置
{
"modelProviders": {
"openai": [
{
"id": "local-model",
"name": "Local coding model",
"envKey": "OLLAMA_API_KEY",
"baseUrl": "http://localhost:11434/v1",
"generationConfig": {
"timeout": 300000,
"streamIdleTimeoutMs": 600000,
"maxRetries": 1
}
}
]
},
"security": { "auth": { "selectedType": "openai" } },
"model": { "name": "local-model" }
}local-model 需替换为服务器实际暴露的 ID。上面的超时数值是长等待示例,不是默认值。
仅当本地服务本身不要求认证时,可以给 Key 变量任意占位值;官方示例为 OLLAMA_API_KEY="ollama"、VLLM_API_KEY="not-needed"。这不会绕过一个实际启用了认证的服务。
慢请求与流空闲
streamIdleTimeoutMs 控制两段流数据之间可静默的时间,模型条目设置会覆盖全局 QWEN_STREAM_IDLE_TIMEOUT_MS,设为 0 关闭空闲保护。
即使关闭空闲保护,独立的 15 分钟流生命周期上限仍生效,除非调整或关闭 QWEN_STREAM_MAX_LIFETIME_MS。因此长队列等待、流中断和总生命周期限制要分别诊断。
参数适配
contextWindowSize 应与模型服务真实能力匹配,不能通过填更大的数字扩展模型能力。推理开关也取决于推理框架;Qwen Code 对真实 DeepSeek 主机的专用转换,不会自动用于同名的本地模型。