Sooua
登录
返回文章列表
OpenCode··9 分钟阅读

模型选择与切换

OpenCode 通过 AI SDK 支持 75+ 提供商、数百种模型。面对如此多的选择,如何为你的任务挑选最合适的模型?本章提供系统化的决策方法和实战配置。

目标:理解 OpenCode 的模型体系,选择最适合的 LLM


概述

OpenCode 通过 AI SDK 支持 75+ 提供商、数百种模型。面对如此多的选择,如何为你的任务挑选最合适的模型?本章提供系统化的决策方法和实战配置。


模型选择决策树


OpenCode Zen(新手推荐)

OpenCode Zen 是官方精选的模型列表,已预先测试验证:

配置方式

  1. /connect 选择 opencode
  2. 访问 opencode.ai/auth
  3. 登录并获取 API 密钥
  4. 粘贴密钥

查看可用模型

/models

Zen 模型特点:

  • ✅ 经过兼容性测试
  • ✅ 价格优化
  • ✅ 自动故障转移
  • ✅ 无需关心提供商细节

真实场景案例 ①:初创团队快速启动

一个 5 人创业团队没有精力研究各厂商 API 差异,直接使用 OpenCode Zen,5 分钟完成配置,自动获得最优价格和故障转移能力,将精力集中在产品开发上。


支持的提供商

OpenCode 通过 AI SDK 支持 75+ 提供商

主流云服务商

提供商代表模型特点适用地区
AnthropicClaude 4 系列代码能力强,推理优秀全球
OpenAIGPT-4o, o3通用能力强,生态丰富全球
GoogleGemini 2.5 Pro上下文窗口大(1M+)全球
DeepSeekDeepSeek-V3性价比高,中文好中国/亚太
MistralCodestral代码专用欧洲/全球

国内/亚洲提供商

提供商接入方式代表模型特点
阿里云百炼平台通义千问 Qwen中文优化,合规
火山引擎Ark 平台豆包/Doubao字节生态,延迟低
硅基流动SiliconFlow多种开源模型开源模型聚合
百度千帆平台文心一言企业级服务
讯飞Spark星火大模型语音优势

本地模型

方式说明硬件要求
Ollama本地运行 Llama、Mistral 等8GB+ VRAM
LM Studio带 GUI 的本地模型管理8GB+ VRAM
vLLM高性能本地推理16GB+ VRAM
llama.cppCPU 也能跑无 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 示例认证方式
Anthropicanthropic/claude-opus-4https://api.anthropic.comAPI Key
OpenAIopenai/gpt-4ohttps://api.openai.com/v1API Key
DeepSeekdeepseek/deepseek-chathttps://api.deepseek.com/v1API Key
Googlegoogle/gemini-2.5-prohttps://generativelanguage.googleapis.comAPI Key
Ollamaollama/llama3.1:8bhttp://localhost:11434/api
Azureazure/gpt-4ohttps://your-resource.openai.azure.comAPI Key

模型选择策略

按任务选择

任务类型推荐模型原因预估成本/1K tokens
复杂架构设计Claude Opus 4 / GPT-4o推理能力强0.0150.015 - 0.075
日常编码Claude Sonnet 4.5 / DeepSeek-V3速度快、性价比高¥0.002 - $0.015
代码审查Claude Sonnet细致、准确0.0030.003 - 0.015
快速原型GPT-4o-mini / Claude Haiku便宜、够快0.000150.00015 - 0.0006
中文项目DeepSeek / 通义千问中文理解好¥0.001 - ¥0.008
长上下文Gemini 2.5 Pro1M+ 上下文0.001250.00125 - 0.005

成本对比表(2025 年参考)

模型Input / 1KOutput / 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 开销超过 800。通过配置多模型策略——简单任务用GPT4omini、日常编码用DeepSeekV3、架构评审用ClaudeSonnet,月度成本降至800。通过配置多模型策略——简单任务用 GPT-4o-mini、日常编码用 DeepSeek-V3、架构评审用 Claude Sonnet,月度成本降至 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"]
}

多模型协作流程

真实场景案例 ③:多模型协作开发

在实现一个支付系统时:

  1. Claude Opus 负责设计整体架构和安全策略
  2. DeepSeek-V3 负责编写业务代码(速度快、成本低)
  3. Claude Sonnet 负责代码审查,检查安全漏洞

三种模型协作,既保证了质量,又控制了成本。


本地模型完整部署指南

方式一:Ollama(推荐新手)

1. 安装 Ollama

# macOS / Linux
curl -fsSL https://ollama.com/install.sh | sh
 
# Windows: 下载安装包 https://ollama.com/download/windows

2. 下载模型

# 代码专用模型(7B 参数,轻量)
ollama pull codellama:7b
 
# 更强的代码模型(34B 参数)
ollama pull codellama:34b
 
# 中文友好的代码模型
ollama pull qwen2.5-coder:14b
 
# 通用大模型
ollama pull llama3.1:8b

3. 验证运行

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 管理)

  1. 下载安装 LM Studio
  2. 在界面中搜索并下载模型
  3. 启动 Local Server(默认端口 1234)
  4. 配置 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 密钥,或正确配置 providerbaseURL

Q: 可以同时配置多个提供商吗?

A: 可以。在 opencode.json 中配置多个 provider,通过 model 字段的 provider/model 格式切换。

Q: 模型名格式是什么?

A: 标准格式为 provider/model-name,例如 anthropic/claude-sonnet-4-5deepseek/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连接超时使用代理或选择国内提供商

练习

  1. /models 查看你当前可用的模型
  2. 尝试切换不同模型完成同一任务,对比效果
  3. 配置一个本地 Ollama 模型(如有硬件条件)
  4. 为你的团队设计一个多模型协作配置方案

下一篇:10. 工具系统与权限

分享

评论

登录 后参与讨论。

加载中…

相关文章