Skip to content

Latest commit

 

History

History
208 lines (159 loc) · 4.46 KB

File metadata and controls

208 lines (159 loc) · 4.46 KB

模型配置指南

Evolving Programming Agent 使用多个专用模型执行不同角色任务。


配置方式

优先级(从低到高)

全局默认模型
  ↓
~/.config/opencode/opencode.json(全局配置)
  ↓
.opencode/opencode.json(项目级配置)
  ↓
agent markdown frontmatter(最高优先级,已内置)

默认情况:agent 文件中已内置模型配置(frontmatter 的 model: 字段),安装后即可使用。

覆盖配置:如需更改模型,在 opencode.json 中配置即可覆盖默认值。


角色与模型分配

角色 默认模型 用途 理由
orchestrator 继承主 agent 模型 SKILL.md 主进程,任务调度 由平台主模型承担,不需要单独配置
coder zai-coding-plan/glm-5 代码生成、测试执行 LMArena Code Top-1
reviewer opencode-go/minimax-m3 代码审查(temperature=0.1) 强推理与代码理解,审查质量优先
codegraph (脚本,无 LLM) scan / context / extract 项目图谱 + 知识归纳 + FTS5 检索

知识预取与归纳由 run.py codegraph 命令完成,orchestrator 直接执行脚本。


配置步骤

1. 使用模板配置(推荐)

# 全局配置(影响所有项目)
cp opencode.json.template ~/.config/opencode/opencode.json

# 或项目级配置(仅影响当前项目)
mkdir -p .opencode
cp opencode.json.template .opencode/opencode.json

2. 配置 API Key

编辑 opencode.json,填入对应 provider 的 API key:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "openrouter": {
      "apiKey": "sk-or-v1-xxxxx"
    },
    "zhipuai": {
      "apiKey": "xxxxx.xxxxx"
    }
  }
}

3. 获取 API Key

OpenCode Go / MiniMax M3(用于 reviewer):

  • 模型标识:opencode-go/minimax-m3
  • 在 OpenCode 中按 opencode-go provider 文档完成认证/配置

智谱 AI(用于 GLM-5):


验证配置

安装完成后,执行以下命令验证:

# OpenCode 查看当前模型配置
opencode config

# 或查看 agent 配置
opencode agent list

覆盖单个 Agent 模型

如果只想更改某个 agent 的模型,在 opencode.json 中单独配置:

{
  "agent": {
    "reviewer": {
      "model": "anthropic/claude-opus-4-20250514",
      "temperature": 0.05,
      "comment": "覆盖示例(默认已为 opencode-go/minimax-m3)"
    }
  }
}

使用其他模型

替换为纯 Claude 方案

{
  "agent": {
    "orchestrator": {
      "model": "anthropic/claude-haiku-4-20250514"
    },
    "coder": {
      "model": "anthropic/claude-sonnet-4-20250514"
    },
    "reviewer": {
      "model": "anthropic/claude-opus-4-20250514",
      "temperature": 0.1
    }
  },
  "provider": {
    "anthropic": {
      "apiKey": "sk-ant-xxxxx"
    }
  }
}

替换为纯 OpenAI 方案

{
  "agent": {
    "orchestrator": {
      "model": "openai/gpt-4o-mini"
    },
    "coder": {
      "model": "openai/gpt-4o"
    },
    "reviewer": {
      "model": "openai/gpt-4o",
      "temperature": 0.1
    }
  },
  "provider": {
    "openai": {
      "apiKey": "sk-xxxxx"
    }
  }
}

常见问题

Q: 不配置 opencode.json 能用吗?

A: 可以,但需要确保:

  1. OpenCode 全局配置中有可用的默认模型
  2. 该默认模型的 provider 已配置 API key

Agent 文件中已内置 model: 字段,但如果对应 provider 未配置 key,会报错。

Q: Claude Code 如何配置?

A: Claude Code 无原生 agent 系统,使用角色切换模拟。模型配置方式:

  1. 通过 Claude Code 的全局设置配置默认模型
  2. .claude/skills/evolving-agent/agents/*.md 中的 frontmatter 字段仅供文档参考,不会被 Claude Code 解析

Q: 如何降低成本?

A: 所有角色都使用免费/便宜的模型:

{
  "agent": {
    "orchestrator": { "model": "openai/gpt-4o-mini" },
    "coder": { "model": "openai/gpt-4o-mini" },
    "reviewer": { "model": "openai/gpt-4o-mini", "temperature": 0.1 }
  }
}

或使用本地模型:

{
  "agent": {
    "orchestrator": { "model": "ollama/qwen2.5-coder:14b" },
    "coder": { "model": "ollama/qwen2.5-coder:32b" },
    "reviewer": { "model": "ollama/qwen2.5-coder:32b", "temperature": 0.1 }
  }
}