目标:理解 OpenCode 的模型体系,选择最适合的 LLM
概述
OpenCode 通过 AI SDK 支持 75+ 提供商、数百种模型。面对如此多的选择,如何为你的任务挑选最合适的模型?本章提供系统化的决策方法和实战配置。
模型选择决策树
OpenCode Zen(新手推荐)
OpenCode Zen 是官方精选的模型列表,已预先测试验证:
配置方式
/connect选择opencode- 访问 opencode.ai/auth
- 登录并获取 API 密钥
- 粘贴密钥
查看可用模型
/models
Zen 模型特点:
- ✅ 经过兼容性测试
- ✅ 价格优化
- ✅ 自动故障转移
- ✅ 无需关心提供商细节
真实场景案例 ①:初创团队快速启动
一个 5 人创业团队没有精力研究各厂商 API 差异,直接使用 OpenCode Zen,5 分钟完成配置,自动获得最优价格和故障转移能力,将精力集中在产品开发上。
支持的提供商
OpenCode 通过 AI SDK 支持 75+ 提供商:
主流云服务商
| 提供商 | 代表模型 | 特点 | 适用地区 |
|---|---|---|---|
| Anthropic | Claude 4 系列 | 代码能力强,推理优秀 | 全球 |
| OpenAI | GPT-4o, o3 | 通用能力强,生态丰富 | 全球 |
| Gemini 2.5 Pro | 上下文窗口大(1M+) | 全球 | |
| DeepSeek | DeepSeek-V3 | 性价比高,中文好 | 中国/亚太 |
| Mistral | Codestral | 代码专用 | 欧洲/全球 |
国内/亚洲提供商
| 提供商 | 接入方式 | 代表模型 | 特点 |
|---|---|---|---|
| 阿里云 | 百炼平台 | 通义千问 Qwen | 中文优化,合规 |
| 火山引擎 | Ark 平台 | 豆包/Doubao | 字节生态,延迟低 |
| 硅基流动 | SiliconFlow | 多种开源模型 | 开源模型聚合 |
| 百度 | 千帆平台 | 文心一言 | 企业级服务 |
| 讯飞 | Spark | 星火大模型 | 语音优势 |
本地模型
| 方式 | 说明 | 硬件要求 |
|---|---|---|
| Ollama | 本地运行 Llama、Mistral 等 | 8GB+ VRAM |
| LM Studio | 带 GUI 的本地模型管理 | 8GB+ VRAM |
| vLLM | 高性能本地推理 | 16GB+ VRAM |
| llama.cpp | CPU 也能跑 | 无 GPU 要求 |
配置自定义提供商
方式 1:使用 /connect
/connect
选择提供商,输入 API 密钥。
方式 2:手动配置
在 opencode.json 中:
{
"provider": {
"deepseek": {
"options": {
"baseURL": "https://api.deepseek.com/v1"
}
}
},
"model": "deepseek/deepseek-chat"
}API 密钥存储在:
~/.local/share/opencode/auth.json方式 3:自定义 Base URL
用于代理或私有化部署:
{
"provider": {
"openai": {
"options": {
"baseURL": "https://your-proxy.example.com/v1"
}
}
}
}提供商配置矩阵
| 提供商 | model 字段格式 | baseURL 示例 | 认证方式 |
|---|---|---|---|
| Anthropic | anthropic/claude-opus-4 | https://api.anthropic.com | API Key |
| OpenAI | openai/gpt-4o | https://api.openai.com/v1 | API Key |
| DeepSeek | deepseek/deepseek-chat | https://api.deepseek.com/v1 | API Key |
google/gemini-2.5-pro | https://generativelanguage.googleapis.com | API Key | |
| Ollama | ollama/llama3.1:8b | http://localhost:11434/api | 无 |
| Azure | azure/gpt-4o | https://your-resource.openai.azure.com | API Key |
模型选择策略
按任务选择
| 任务类型 | 推荐模型 | 原因 | 预估成本/1K tokens |
|---|---|---|---|
| 复杂架构设计 | Claude Opus 4 / GPT-4o | 推理能力强 | 0.075 |
| 日常编码 | Claude Sonnet 4.5 / DeepSeek-V3 | 速度快、性价比高 | ¥0.002 - $0.015 |
| 代码审查 | Claude Sonnet | 细致、准确 | 0.015 |
| 快速原型 | GPT-4o-mini / Claude Haiku | 便宜、够快 | 0.0006 |
| 中文项目 | DeepSeek / 通义千问 | 中文理解好 | ¥0.001 - ¥0.008 |
| 长上下文 | Gemini 2.5 Pro | 1M+ 上下文 | 0.005 |
成本对比表(2025 年参考)
| 模型 | Input / 1K | Output / 1K | 月估算* | 推荐指数 |
|---|---|---|---|---|
| GPT-4o | $0.0025 | $0.01 | $30-80 | ⭐⭐⭐⭐ |
| Claude Opus 4 | $0.015 | $0.075 | $150-400 | ⭐⭐⭐ |
| Claude Sonnet 4.5 | $0.003 | $0.015 | $40-100 | ⭐⭐⭐⭐⭐ |
| DeepSeek-V3 | ¥0.002 | ¥0.008 | ¥50-150 | ⭐⭐⭐⭐⭐ |
| GPT-4o-mini | $0.00015 | $0.0006 | $3-10 | ⭐⭐⭐⭐ |
| Gemini 2.5 Pro | $0.00125 | $0.005 | $20-50 | ⭐⭐⭐⭐ |
| Qwen2.5-72B | ¥0.0035 | ¥0.007 | ¥80-200 | ⭐⭐⭐⭐ |
*基于每天 5K input + 2K output tokens 的估算
真实场景案例 ②:成本优化实践
某 20 人团队每月 AI 开销超过 200,同时保持了产出质量。
切换模型
临时切换
/models
选择模型号,仅当前会话有效。
配置默认模型
在 opencode.json:
{
"model": "anthropic/claude-sonnet-4-5"
}环境变量临时覆盖
OPENCODE_CONFIG_CONTENT='{"model":"gpt-4o"}' opencode多模型协作
为不同任务配置不同模型
{
"models": {
"default": "anthropic/claude-sonnet-4-5",
"plan": "anthropic/claude-opus-4",
"code": "deepseek/deepseek-chat",
"review": "anthropic/claude-sonnet-4-5",
"chat": "openai/gpt-4o-mini"
}
}模型降级策略
当主要模型不可用时自动切换:
{
"model": "anthropic/claude-sonnet-4-5",
"fallback": ["deepseek/deepseek-chat", "openai/gpt-4o", "openai/gpt-4o-mini"]
}多模型协作流程
真实场景案例 ③:多模型协作开发
在实现一个支付系统时:
- Claude Opus 负责设计整体架构和安全策略
- DeepSeek-V3 负责编写业务代码(速度快、成本低)
- Claude Sonnet 负责代码审查,检查安全漏洞
三种模型协作,既保证了质量,又控制了成本。
本地模型完整部署指南
方式一:Ollama(推荐新手)
1. 安装 Ollama
# macOS / Linux
curl -fsSL https://ollama.com/install.sh | sh
# Windows: 下载安装包 https://ollama.com/download/windows2. 下载模型
# 代码专用模型(7B 参数,轻量)
ollama pull codellama:7b
# 更强的代码模型(34B 参数)
ollama pull codellama:34b
# 中文友好的代码模型
ollama pull qwen2.5-coder:14b
# 通用大模型
ollama pull llama3.1:8b3. 验证运行
ollama list
ollama run codellama:7b "写一个快速排序算法"4. 配置 OpenCode
{
"provider": {
"ollama": {
"options": {
"baseURL": "http://localhost:11434/api"
}
}
},
"model": "ollama/codellama:7b"
}方式二:vLLM(高性能,适合团队)
# 安装
pip install vllm
# 启动服务
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/deepseek-coder-6.7b-instruct \
--port 8000 \
--tensor-parallel-size 2{
"provider": {
"openai": {
"options": {
"baseURL": "http://localhost:8000/v1"
}
}
},
"model": "openai/deepseek-ai/deepseek-coder-6.7b-instruct"
}方式三:LM Studio(GUI 管理)
- 下载安装 LM Studio
- 在界面中搜索并下载模型
- 启动 Local Server(默认端口 1234)
- 配置 OpenCode:
{
"provider": {
"openai": {
"options": {
"baseURL": "http://localhost:1234/v1"
}
}
},
"model": "openai/local-model"
}本地模型对比
| 方案 | 难度 | 性能 | 多用户 | 推荐场景 |
|---|---|---|---|---|
| Ollama | ⭐ 简单 | ⭐⭐ 一般 | ❌ 单用户 | 个人开发 |
| vLLM | ⭐⭐⭐ 复杂 | ⭐⭐⭐⭐ 高 | ✅ 支持 | 团队/生产 |
| LM Studio | ⭐ 简单 | ⭐⭐ 一般 | ❌ 单用户 | 新手体验 |
本地模型优缺点
| 优点 | 缺点 |
|---|---|
| 完全免费 | 需要强大 GPU(推荐 16GB+ VRAM) |
| 数据隐私 | 模型能力较弱(7B-34B vs 云端数百B) |
| 无网络依赖 | 配置复杂 |
| 无 API 延迟 | 无自动更新 |
FAQ
Q: 为什么 /models 里看不到某些模型?
A: 需要先通过
/connect配置对应提供商的 API 密钥,或正确配置provider和baseURL。
Q: 可以同时配置多个提供商吗?
A: 可以。在
opencode.json中配置多个provider,通过model字段的provider/model格式切换。
Q: 模型名格式是什么?
A: 标准格式为
provider/model-name,例如anthropic/claude-sonnet-4-5、deepseek/deepseek-chat。
Q: 本地模型太慢怎么办?
A: 尝试:1) 换更小的模型(7B 比 34B 快得多);2) 使用量化版本(Q4/Q5);3) 升级 GPU 或使用 vLLM 加速。
避坑清单 ⚠️
| 坑 | 后果 | 正确做法 |
|---|---|---|
将 API 密钥直接写入 opencode.json | 密钥泄露 | 使用 /connect 交互式配置或环境变量 |
| 全局使用 Claude Opus 处理所有任务 | 账单爆炸 | 按任务分层选择模型 |
忽略 fallback 配置 | 主模型故障时完全不可用 | 始终配置 2-3 个 fallback |
| 本地模型未测试就用于生产 | 输出质量不达标 | 先与云端模型做 A/B 对比 |
| 频繁切换模型不做记录 | 无法复现最佳效果 | 记录不同任务的最优模型配置 |
| 国内网络直接访问 OpenAI | 连接超时 | 使用代理或选择国内提供商 |
练习
- 用
/models查看你当前可用的模型 - 尝试切换不同模型完成同一任务,对比效果
- 配置一个本地 Ollama 模型(如有硬件条件)
- 为你的团队设计一个多模型协作配置方案
下一篇:10. 工具系统与权限