上一篇我们完成了 Hermes Agent 的安装和基础配置。现在,让我们深入 Hermes Agent 最强大的功能之一——**多模型提供商支持**。

Provider 配置 —— 20+ 模型自由切换:OpenRouter/Anthropic/DeepSeek/本地

简介

上一篇我们完成了 Hermes Agent 的安装和基础配置。现在,让我们深入 Hermes Agent 最强大的功能之一——多模型提供商支持

Hermes Agent 内置支持 20+ 模型提供商,覆盖从商业 API 到本地部署的全部场景。这意味着你可以:

  • OpenRouter 一个 Key 访问 200+ 模型
  • Anthropic 的 Claude 4 处理最复杂的编程任务
  • DeepSeek 以极低成本完成日常编码
  • Ollama 在本地运行开源模型,数据不出本机
  • 在提供商之间自动降级,一个挂了无缝切换另一个

Provider 配置的核心价值:不让任何一个 API 故障或额度耗尽阻塞你的工作流。

本文将从提供商分类、配置实战、智能路由、成本优化四个维度,帮你构建完整的模型管理体系。

目录

支持的模型提供商全景

Hermes Agent 支持的模型提供商分为四大类:

text
┌─────────────────────────────────────────────────────────────────┐
│                    Hermes Agent 模型提供商                       │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  🏢 商业 API 提供商                                              │
│  ├── OpenAI (gpt-4o, o3-mini, o4-mini)                          │
│  ├── Anthropic (Claude 4 Sonnet, Opus, Haiku)                   │
│  ├── Google (Gemini 2.5 Pro, Gemini 2.5 Flash)                  │
│  ├── Mistral (Mistral Large, Codestral)                         │
│  └── Cohere (Command R+, Embed)                                 │
│                                                                 │
│  🚀 聚合路由提供商                                               │
│  ├── OpenRouter (200+ 模型,统一 API)                           │
│  ├── LiteLLM Proxy (自建路由)                                    │
│  └── Together AI (聚合开源模型)                                  │
│                                                                 │
│  💰 高性价比提供商                                               │
│  ├── DeepSeek (DeepSeek-V3, R1)                                 │
│  ├── Groq (超快速推理)                                           │
│  ├── Cerebras (极速推理)                                         │
│  └── Fireworks AI (高性能)                                       │
│                                                                 │
│  🖥️ 本地部署                                                     │
│  ├── Ollama (本地运行开源模型)                                   │
│  ├── LM Studio (GUI 本地模型管理)                               │
│  ├── vLLM (高性能本地推理)                                       │
│  └── 自定义 OpenAI 兼容 API                                      │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

模型选择速查表

使用场景 推荐提供商 推荐模型 单价 ($/M tokens)
复杂架构设计 Anthropic Claude Opus 4 Input: $15 / Output: $75
日常编码 OpenAI o3-mini Input: $1.10 / Output: $4.40
快速问答 Google Gemini 2.5 Flash Input: $0.15 / Output: $0.60
代码补全 Mistral Codestral Input: $0.20 / Output: $0.60
低成本批量处理 DeepSeek DeepSeek-V3 Input: $0.14 / Output: $0.28
极致速度 Groq Llama 3.3 70B Input: $0.59 / Output: $0.79
数据隐私 Ollama Qwen2.5-Coder 免费(本地算力)
一键多模型 OpenRouter anthropic/claude-sonnet-4 略高于直连

OpenRouter:一个 Key 访问 200+ 模型

OpenRouter 是 Hermes Agent 最推荐的聚合路由方案。你只需要一个 API Key,就能访问 OpenAI、Anthropic、Google、Mistral 等所有主流提供商的模型,而且可以按实际使用量付费。

基础配置

yaml
# config.yaml
providers:
  openrouter:
    name: openrouter
    api_key: "${OPENROUTER_API_KEY}"
    model: anthropic/claude-sonnet-4-20250514
    base_url: https://openrouter.ai/api/v1
    timeout: 120
    max_retries: 3
    headers:
      HTTP-Referer: "https://your-site.com"  # OpenRouter 要求
      X-Title: "Hermes Agent"

获取 API Key

  1. 访问 https://openrouter.ai/keys
  2. 注册账号并创建新 Key
  3. 设置预算限制(推荐)
  4. 复制 Key 到环境变量
bash
export OPENROUTER_API_KEY="sk-or-v1-your-key-here"

OpenRouter 的独特优势

优势一:模型自由切换无需改配置

bash
# 运行时切换模型(无需改配置文件)
hermes-agent --provider openrouter --model google/gemini-2.5-pro

hermes-agent --provider openrouter --model mistralai/codestral-2501

hermes-agent --provider openrouter --model deepseek/deepseek-chat

优势二:自动选择最便宜的可用模型

yaml
providers:
  openrouter:
    name: openrouter
    api_key: "${OPENROUTER_API_KEY}"
    # 让 OpenRouter 自动选择性价比最优的模型
    model_route: "routing/cost-optimized"
    # 或者指定一组候选模型
    model_fallbacks:
      - anthropic/claude-sonnet-4-20250514
      - google/gemini-2.5-pro
      - openai/gpt-4o

优势三:用量统计和预算管理

bash
# 查看 OpenRouter 用量
hermes-agent provider openrouter --stats

# 输出示例:
# 今日用量: $2.34
# 本月用量: $45.67 / $100.00 (45.67%)
# Top 模型: anthropic/claude-sonnet-4 ($1.89)
# Top 项目: my-web-app ($1.56)

Anthropic:Claude 全家桶配置

Anthropic 的 Claude 系列模型在代码理解和长上下文处理方面表现卓越。Hermes Agent 支持 Claude 全家桶配置。

Claude 模型家族

text
┌──────────────────────────────────────────────────────────────┐
│                    Anthropic Claude 4 家族                    │
├────────────────┬───────────────┬────────────┬────────────────┤
│ 模型           │ 上下文窗口     │ 输入单价    │ 最佳场景        │
│                │               │ ($/M tok)  │                │
├────────────────┼───────────────┼────────────┼────────────────┤
│ Claude Opus 4200K tokens   │ $15.00     │ 复杂架构、深度   │
│                │               │            │ 推理           │
├────────────────┼───────────────┼────────────┼────────────────┤
│ Claude Sonnet  │ 200K tokens   │ $3.00      │ 日常编码、PR    │
│ 4              │               │            │ Review、重构    │
├────────────────┼───────────────┼────────────┼────────────────┤
│ Claude Haiku 4200K tokens   │ $0.80      │ 快速问答、简单   │
│                │               │            │ 解释、补全      │
└────────────────┴───────────────┴────────────┴────────────────┘

完整配置

yaml
providers:
  anthropic:
    name: anthropic
    api_key: "${ANTHROPIC_API_KEY}"
    model: claude-sonnet-4-20250514
    base_url: https://api.anthropic.com
    timeout: 120
    max_retries: 3

    # Claude 特有配置
    anthropic_config:
      # 最大输出 tokens
      max_tokens: 8192
      # 温度控制创造性
      temperature: 0.3
      # 顶级概率采样
      top_p: 0.9
      # 缓存提示词以降低成本
      prompt_caching: true
      # 系统提示词前缀
      system_prefix: |
        你是一个资深的软件工程师助手。
        请遵循以下原则:
        1. 先理解需求,再给出方案
        2. 代码要包含注释
        3. 优先考虑安全性和可维护性

获取 Anthropic API Key

bash
# 1. 访问 https://console.anthropic.com/
# 2. 注册账号
# 3. 进入 Settings → API Keys
# 4. 创建新 Key
# 5. 设置到环境变量
export ANTHROPIC_API_KEY="sk-ant-api03-your-key-here"

Claude 提示词缓存(省钱技巧)

Claude 的 prompt caching 功能可以大幅降低成本:

yaml
providers:
  anthropic:
    prompt_caching: true  # 开启提示词缓存
    # 缓存命中时,输入成本可降低 ~90%
    # 适合:重复的系统提示词、项目规则文档

DeepSeek:高性价比编程模型

DeepSeek 是目前性价比最高的编程模型之一。DeepSeek-V3 在代码生成、Bug 修复、代码审查等任务上表现优秀,而价格仅为 GPT-4o 的 十分之一

基础配置

yaml
providers:
  deepseek:
    name: deepseek
    api_key: "${DEEPSEEK_API_KEY}"
    model: deepseek-chat
    base_url: https://api.deepseek.com/v1
    timeout: 90
    max_retries: 3

    # DeepSeek 特有配置
    deepseek_config:
      # 开启代码优化模式
      code_mode: true
      # 降低温度获得更确定的输出
      temperature: 0.2

DeepSeek 模型对比

text
┌──────────────────┬───────────────┬───────────────┬─────────────────┐
│ 模型             │ 输入单价       │ 输出单价       │ 特点             │
│                  │ ($/M tokens)  │ ($/M tokens)  │                 │
├──────────────────┼───────────────┼───────────────┼─────────────────┤
│ deepseek-chat    │ $0.14$0.28         │ V3 模型,均衡型  │
│                  │               │               │ 编程能力强       │
├──────────────────┼───────────────┼───────────────┼─────────────────┤
│ deepseek-reasoner│ $0.55$2.19         │ R1 模型,深度推理 │
│                  │               │               │ 适合复杂问题     │
└──────────────────┴───────────────┴───────────────┴─────────────────┘

获取 DeepSeek API Key

bash
# 1. 访问 https://platform.deepseek.com/
# 2. 注册并充值
# 3. 创建 API Key
# 4. 设置环境变量
export DEEPSEEK_API_KEY="sk-your-deepseek-key"

# 5. 验证连接
curl -s https://api.deepseek.com/v1/models \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" | head -c 300

DeepSeek vs GPT-4o 成本对比

假设每天运行 100 次编程任务,每次平均消耗 10K tokens:

text
┌──────────────┬──────────────┬──────────────┬───────────────┐
│ 模型          │ 每次费用      │ 每日费用      │ 每月费用       │
├──────────────┼──────────────┼──────────────┼───────────────┤
│ GPT-4o       │ $0.075      │ $7.50       │ $225.00       │
│ o3-mini      │ $0.033      │ $3.30       │ $99.00        │
│ DeepSeek-V3  │ $0.004      │ $0.40       │ $12.00        │
└──────────────┴──────────────┴──────────────┴───────────────┘

DeepSeek-V3 相比 GPT-4o,每月可节省约 $213

本地模型:Ollama 与 LM Studio

对于对数据隐私有高要求的场景,Hermes Agent 支持本地部署的模型。

Ollama 配置

Ollama 是最流行的本地模型运行工具。首先确保已安装并启动 Ollama:

bash
# 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh

# 拉取编程专用模型
ollama pull qwen2.5-coder:32b
ollama pull codestral:22b
ollama pull deepseek-r1:8b

# 查看已安装的模型
ollama list

Hermes Agent 的 Ollama 配置:

yaml
providers:
  ollama:
    name: ollama
    model: qwen2.5-coder:32b
    base_url: http://localhost:11434/v1  # Ollama 的 OpenAI 兼容接口
    # Ollama 不需要 API Key
    api_key: "ollama"  # 占位值

    # Ollama 特有配置
    ollama_config:
      # 加载到显存的层数(GPU 加速)
      num_gpu: 999  # 全部层加载到 GPU
      # 上下文窗口大小
      num_ctx: 32768
      # 温度
      temperature: 0.3

LM Studio 配置

LM Studio 提供 GUI 界面管理本地模型,适合不熟悉命令行的用户:

yaml
providers:
  lm-studio:
    name: openai-compatible  # LM Studio 提供 OpenAI 兼容接口
    model: qwen2.5-coder-32b-instruct
    base_url: http://localhost:1234/v1
    api_key: "lm-studio"  # 占位值

本地模型的优势和限制

text
┌─────────────────────────────────────────────────────────────────┐
│                    本地模型评估                                  │
├────────────────────────┬────────────────────────────────────────┤
│ ✅ 优势                 │ ❌ 限制                                 │
├────────────────────────┼────────────────────────────────────────┤
│ • 数据不出本机          │ • 需要足够的 GPU/内存资源              │
│ • 零 API 费用           │ • 模型能力通常弱于商业模型             │
│ • 无网络延迟            │ • 不支持超大上下文(受硬件限制)        │
│ • 可离线使用            │ • 需要自行维护和更新模型               │
│ • 无速率限制            │ • 并发处理能力有限                     │
│ • 可自定义和微调        │                                        │
└────────────────────────┴────────────────────────────────────────┘

混合策略:本地 + 云端

最佳的方案是混合使用本地和云端模型:

yaml
providers:
  # 日常轻量任务用本地模型
  primary:
    name: ollama
    model: qwen2.5-coder:7b
    base_url: http://localhost:11434/v1
    api_key: "ollama"

  # 复杂任务自动升级到云端
  fallback:
    name: openrouter
    api_key: "${OPENROUTER_API_KEY}"
    model: anthropic/claude-sonnet-4-20250514
    base_url: https://openrouter.ai/api/v1

多提供商智能路由

Hermes Agent 最强大的功能是智能路由——根据任务类型、成本、延迟等因素,自动选择最合适的模型提供商。

路由策略配置

yaml
# config.yaml —— 智能路由配置
routing:
  # 默认策略:成本优先
  default_strategy: cost-optimized

  # 任务级路由规则
  rules:
    # 代码生成 → 使用 Claude Sonnet(代码能力强)
    - pattern: "generate|implement|create|write.*code"
      provider: anthropic
      model: claude-sonnet-4-20250514
      max_cost: 0.10  # 单次任务最大成本 ($)

    # 代码解释 → 使用 DeepSeek(性价比高)
    - pattern: "explain|what does|describe"
      provider: deepseek
      model: deepseek-chat

    # Bug 修复 → 使用 o3-mini(推理能力强)
    - pattern: "fix.*bug|debug|error|issue"
      provider: openai
      model: o3-mini

    # 安全审查 → 使用 Claude Opus(深度分析)
    - pattern: "security|vulnerability|audit|review"
      provider: anthropic
      model: claude-opus-4-20250514
      max_cost: 0.50

    # 简单问答 → 使用 Haiku 或本地模型
    - pattern: "what is|how to|简单"
      provider: ollama
      model: qwen2.5-coder:7b

  # 降级策略
  fallback_chain:
    - anthropic
    - openai
    - openrouter
    - deepseek
    - ollama

降级容灾

当主提供商不可用时,自动切换到备用提供商:

yaml
providers:
  primary:
    name: anthropic
    api_key: "${ANTHROPIC_API_KEY}"
    model: claude-sonnet-4-20250514
    # 健康检查
    health_check:
      enabled: true
      interval: 60  # 每 60 秒检查一次
      timeout: 10

  # 主提供商失败时自动切换到这里
  fallback:
    name: openai
    api_key: "${OPENAI_API_KEY}"
    model: o3-mini
    health_check:
      enabled: true
      interval: 60

降级流程:

text
任务请求
  │
  ├─→ Anthropic (主)
  │     ├─ 成功 → 返回结果
  │     └─ 失败(超时/额度耗尽)
  │           │
  ├─→ OpenAI (备用1)
  │     ├─ 成功 → 返回结果
  │     └─ 失败
  │           │
  ├─→ OpenRouter (备用2)
  │     ├─ 成功 → 返回结果
  │     └─ 失败
  │           │
  └─→ Ollama (本地兜底)
        └─ 返回结果(或提示所有提供商不可用)

任务级模型自动选择

Hermes Agent 可以根据任务特征自动选择模型。

自动选择算法

text
┌──────────────────────────────────────────────────────────────┐
│              模型自动选择算法                                 │
│                                                              │
│  输入: 任务描述                                               │
│                                                              │
│  Step 1: 分析任务类型                                         │
│    ├── 代码生成?→ 需要强代码能力                             │
│    ├── 代码解释?→ 需要清晰的表达能力                         │
│    ├── Bug 修复?→ 需要强推理能力                             │
│    └── 简单问答?→ 快速、低成本即可                           │
│                                                              │
│  Step 2: 评估约束条件                                         │
│    ├── 是否有成本预算限制?                                   │
│    ├── 是否有延迟要求?                                       │
│    └── 是否有数据隐私要求?                                   │
│                                                              │
│  Step 3: 选择最优模型                                         │
│    ├── 优先级: 能力匹配 > 成本 > 延迟 > 可用性                │
│    └── 返回推荐模型和执行                                     │
│                                                              │
└──────────────────────────────────────────────────────────────┘

配置示例

yaml
# 自动模型选择配置
auto_select:
  enabled: true

  # 成本预算(美元/天)
  daily_budget: 10.0

  # 延迟要求(毫秒)
  max_latency: 30000

  # 隐私模式(仅使用本地模型)
  privacy_mode: false

  # 模型权重(影响选择概率)
  model_weights:
    claude-sonnet-4: 1.0    # 首选
    gpt-4o: 0.9
    o3-mini: 0.85
    gemini-2.5-pro: 0.8
    deepseek-chat: 0.7      # 成本优先时权重上升
    qwen2.5-coder:32b: 0.5  # 本地模型

成本优化策略

多模型配置的核心目标之一是在不降低质量的前提下最小化成本。以下是经过实战验证的成本优化策略。

策略一:按任务复杂度分配模型

yaml
# 复杂度分级模型配置
complexity_routing:
  # 简单任务:补全、解释、查询
  simple:
    provider: deepseek
    model: deepseek-chat
    max_tokens: 2000

  # 中等任务:函数实现、单元测试、文档生成
  medium:
    provider: openai
    model: o3-mini
    max_tokens: 4000

  # 复杂任务:架构设计、系统重构、多文件修改
  complex:
    provider: anthropic
    model: claude-sonnet-4-20250514
    max_tokens: 8192

策略二:批量任务使用低成本模型

bash
# 批量代码审查 —— 使用 DeepSeek
hermes-agent --provider deepseek --model deepseek-chat \
  --prompt "审查以下 10 个文件的代码质量,输出结构化报告"

# 批量文档生成 —— 使用 Haiku
hermes-agent --provider anthropic --model claude-haiku-4-20250514 \
  --prompt "为以下代码生成 API 文档"

策略三:利用 OpenRouter 的路由优化

yaml
providers:
  openrouter:
    name: openrouter
    api_key: "${OPENROUTER_API_KEY}"

    # 路由优化模式
    routing:
      # 模式一:成本优先 —— 自动选择最便宜的可用模型
      mode: cost

      # 模式二:质量优先 —— 自动选择评分最高的模型
      # mode: quality

      # 模式三:均衡模式 —— 平衡成本和质量
      # mode: balanced

      # 排除列表(不使用的模型)
      exclude:
        - "*/gpt-4"  # 排除旧版 GPT-4
        - "*:3b"     # 排除小参数模型

策略四:本地模型处理敏感数据

yaml
# 隐私敏感任务路由
privacy_rules:
  # 包含以下关键词的任务使用本地模型
  sensitive_keywords:
    - "password"
    - "api_key"
    - "secret"
    - "token"
    - "credential"
    - "内部"
    - "机密"

  # 敏感任务默认使用本地模型
  default_private_provider: ollama
  default_private_model: qwen2.5-coder:32b

策略五:实时监控和告警

bash
# 设置成本告警
hermes-agent cost-alert set --daily 5.00 --weekly 25.00 --monthly 100.00

# 输出:
# ✓ 成本告警已设置
#   每日上限: $5.00
#   每周上限: $25.00
#   每月上限: $100.00
#   告警方式: 控制台提示 + 日志记录

# 查看成本报告
hermes-agent cost-alert report

# 输出示例:
# ═══════════════════════════════════════
#  成本报告 (2025-05-01 ~ 2025-05-22)
# ═══════════════════════════════════════
#  总支出:          $34.56
#  本月预算:        $100.00
#  剩余预算:        $65.44 (65.44%)
#  日均支出:        $1.57
#
#  各提供商支出:
#  ├── Anthropic:   $18.23 (52.7%)
#  ├── OpenAI:      $8.45  (24.4%)
#  ├── DeepSeek:    $4.12  (11.9%)
#  └── OpenRouter:  $3.76  (10.9%)
# ═══════════════════════════════════════

总结

本文全面介绍了 Hermes Agent 的 Provider 配置体系:

  1. 20+ 模型提供商:覆盖商业 API、聚合路由、高性价比、本地部署四大类别
  2. OpenRouter 聚合路由:一个 Key 访问 200+ 模型,支持成本/质量/均衡三种路由模式
  3. Anthropic 全家桶:Claude Opus/Sonnet/Haiku 三级配置,提示词缓存节省 ~90% 输入成本
  4. DeepSeek 高性价比:价格仅为 GPT-4o 的 1/10,适合批量任务和日常编码
  5. 本地模型部署:Ollama + LM Studio,数据不出本机,零 API 费用
  6. 智能路由系统:按任务类型、复杂度、成本、隐私自动选择最优模型
  7. 降级容灾机制:主提供商失败时自动切换,保障不中断工作流
  8. 成本优化策略:按复杂度分级、批量任务用低价模型、实时告警

核心原则:

  • 没有最好的模型,只有最合适的模型:按任务选择,不要一个模型干所有事
  • 降级是标配:永远准备至少一个备用提供商
  • 本地+云端混合:敏感数据走本地,复杂任务走云端
  • 成本要可控:设置预算和告警,防止意外支出

📌 下篇预告

TUI 交互模式 —— 沉浸式 AI 编程体验:终端界面操作、多窗口协作、快捷键大全、自定义主题。当配置好所有模型后,如何在终端中高效使用 Hermes Agent?下一篇将带你深入 TUI 交互模式的全部功能。