同时配置云端大模型和本地轻量模型后,你可以按任务类型或按项目灵活切换,做到“重的任务用大模型,轻的任务用小模型”。OpenCode 支持在一个 IDE 里管理多组模型配置,无需反复卸载重装。
1. 添加多个模型源
进入 OpenCode 设置的「模型列表」(部分版本显示为「模型管理」),点击「添加模型」:
- 混合接入示例:模型 A 填入 OpenAI GPT-4o(用于复杂重构),模型 B 填入本地 Ollama 7B(用于日常补全),模型 C 填入公司私有 endpoint(用于业务代码)。
- 每添加一个模型,需独立填写别名、Base URL、API Key 和模型 ID。别名建议起的直观一些,例如“本地-7B-补全”、“公司-私有-33B”。
2. 按功能分配默认模型
部分版本的 OpenCode 允许分别指定两类场景使用的模型:
| 功能场景 | 建议选用 | 理由 |
|---|---|---|
| 代码补全(Inline) | 轻量代码模型(如 deepseek-coder、qwen2.5-coder:7b) | 响应快、延迟低,连续输入不卡顿 |
| 对话/解释/重构(Chat) | 大参数模型(如 gpt-4o、claude-3-5-sonnet、qwen-max) | 推理能力强,跨文件分析更准确 |
在设置页找到「补全模型」和「对话模型」两个下拉框,分别选择已配好的别名即可。保存后,按 Tab 接受的补全来自轻量模型,而侧边栏问答则走大模型。
3. 项目级隔离(工作区设置)
若不同项目需走不同模型(例如公司项目必须用私有模型,开源贡献用个人 GPT Key):
- VS Code:打开项目后,按
Ctrl+Shift+P输入Preferences: Open Workspace Settings (JSON),在.vscode/settings.json中加入 OpenCode 相关字段,覆盖全局配置。该文件可随仓库提交,团队成员打开项目后自动生效。 - JetBrains:进入
File→New Projects Setup→Settings for New Projects,或在当前项目通过File→Settings→Tools→OpenCode勾选「仅当前项目生效」。
注意:工作区级别的 API Key 会以明文形式保存在项目配置文件中,若项目代码对外开源,建议将 Key 写入环境变量,在 OpenCode 设置中使用
${ENV_NAME}形式引用。
4. 临时快速切换
- 状态栏切换:IDE 右下角状态栏通常会显示当前激活的模型别名(如“GPT-4o”或“本地-7B”),点击即可弹出模型列表,一键切换当前会话使用的模型。
- 对话面板切换:侧边栏聊天窗口顶部一般也有模型下拉框,切换后新消息会发给新模型,历史上下文通常保留,但不同模型的理解衔接可能存在偏差。
5. 常见问题
- 切换后补全没变化:代码补全通常读取的是「默认补全模型」配置,而非当前对话模型;若需更换补全模型,请回到设置页修改。
- 本地模型显示离线:临时切到本地模型前,确认 Ollama / vLLM 服务已启动,否则请求会超时。
- 计费混淆:建议为每个模型配置不同的别名和 Key,避免把个人付费 Key 用到公司项目的高频补全中。
- 恢复全局默认:若项目级设置导致混乱,可在设置页点击「恢复全局默认值」或删除工作区配置中的相关字段。