在Qoder中配置OpenAI兼容模型需三步:先获取并验证有效API密钥,再创建openai-config.json并注入OPENAI_API_KEY环境变量,最后通过rules.yaml声明路由规则,使Agent将指定意图(如code-explanation)转发至外部模型。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Qoder中配置OpenAI兼容模型,是为了让本地开发环境能调用GPT-4、Claude或DeepSeek等支持OpenAI API协议的第三方大模型,实现代码解释、文档生成等AI辅助功能。你不需要修改Qoder源码,只需完成密钥注入、端点声明与路由规则三步,就能让Agent识别并转发请求。
获取并验证API密钥有效性
第一步是确保你拿到的是一个能实际调用目标模型的密钥,而不是仅限于控制台查看权限的无效凭证。
登录对应平台(如OpenAI、DeepSeek或Anthropic),进入API Keys管理页→点击“Create new secret key”→填写描述名称(例如“Qoder-Prod-Key”)→勾选所需模型访问权限(【若未勾选gpt-4-turbo或deepseek-v4-flash,后续调用将返回403 Forbidden】)→复制密钥字符串(以sk-、sk-qoder-或sk-ant-开头)。
切记:密钥只显示一次,关闭页面后无法再次查看原始值。不要粘贴到代码里,也不要提交到Git仓库。
打开平台Usage页面,确认该密钥在最近5分钟内有成功调用记录——如果显示“no recent usage”,说明密钥未激活或组织策略已禁用。
在Qoder中注册OpenAI兼容工具
Qoder通过MCP协议识别外部模型服务,需手动创建工具定义文件并注入环境变量。
在项目根目录下新建文件夹:.mcp/tools/ → 在其中创建openai-config.json文件。
写入以下内容(注意替换endpoint和model字段):
{ "name": "openai-compatible", "description": "Generic OpenAI-style LLM endpoint", "input_schema": { "type": "object", "properties": { "model": { "type": "string" }, "messages": { "type": "array" } } }, "endpoint": "https://api.deepseek.com/v1/chat/completions" }
执行命令注入密钥:export OPENAI_API_KEY="sk-ds-xxx"(Windows用户请改用set OPENAI_API_KEY=sk-ds-xxx)。【必须在启动Qoder前执行,否则进程无法读取】
打开Qoder IDE设置→启用MCP支持→点击“Reload Tools”→检查工具列表是否出现openai-compatible条目且状态为active。
为Claude Code提供对提醒事项、日历、联系人、笔记、邮件和tmux的本地命令访问权限,以便在macOS上进行工作流感知的个人操作。
设置模型路由规则
默认情况下Qoder优先使用内置模型,必须显式声明哪些意图应交由外部模型处理。
第一步:在项目根目录创建.qoder/rules.yaml(若已存在则直接编辑)。
第二步:追加如下rule项:
rules:- id: use-openai-compatible match: intent: "code-explanation" model: "deepseek-v4-flash" action: use_tool: "openai-compatible"
第三步:保存文件,重启Qoder IDE或执行qoder-cli reload-rules使配置生效。
现在你在编辑器中右键选择“Explain this code”,Qoder Agent就会把请求发往DeepSeek V4而非本地模型。
CLI方式快速切换模型
如果你正在用Qoder CLI进行脚本化开发,可跳过IDE配置,直接传参调用。
运行:qoder-cli quest --llm-api-key sk-ds-xxx --llm-base-url https://api.deepseek.com/v1 --model deepseek-v4-flash
这会临时覆盖全局配置,启动一个仅使用DeepSeek V4的Quest会话。
注意:该命令中的--model值必须与你调用的API端点实际支持的模型ID完全一致——比如deepseek-v4-flash不能写成deepseek-v4或v4-flash,否则返回404。










