跳到主要內容

智能體混合(Mixture of Agents)

智能體混合(Mixture of Agents,簡稱 MoA)是一個虛擬模型提供商。每個命名的 MoA 預設都會作為 moa 提供商下的可選模型出現。

當你選擇一個 MoA 預設時,該預設的聚合器(aggregator)即為實際執行的模型。它是負責撰寫助手回覆併發出工具調用的模型。參考模型(reference models)會先運行,併為聚合器提供分析依據。

當一項艱鉅的任務受益於多個模型的視角,但仍需要 Hermes 的標準智能體循環(包括工具調用、後續迭代、中斷、轉錄持久化以及與其他消息相同的會話上下文)時,請使用 MoA。

選擇 MoA 預設作為你的模型

你可以通過常規的模型選擇界面來選擇預設:

/model default --provider moa
/model review --provider moa

MoA 預設在所有 Hermes 界面上均可選擇,因為 MoA 是模型系統中的常規提供商:

  • CLI / 網關 / TUI /model — 使用 /model <preset> --provider moa,或使用 /model --provider moa 選擇默認預設。如果名稱與配置的預設完全匹配,直接使用 /model <preset> 也有效。
  • hermes modelDashboard 模型選擇器 — 會出現一個 Mixture of Agents 提供商行,其中列出了你的預設名稱作為其模型。
  • 桌面 GUI 應用 — 模型下拉菜單會顯示一個 MoA presets 部分;選擇其中一個(MoA: <preset>)會將活動模型切換到該預設。桌面設置面板還可以創建和編輯預設。

因此,配置好的預設會出現在你選擇任何其他模型的地方。

斜槓命令快捷方式

/moa 是一次性使用的便捷語法糖。它通過默認 MoA 預設運行單個提示,然後恢復你之前使用的模型:

/moa design and implement a migration plan for this flaky test cluster

Hermes 會暫時切換到默認 MoA 預設以執行這一輪對話,發送提示,然後在之後恢復你之前的模型。整個參數即為提示內容——/moa 不再將其解釋為預設名稱。

/moa

不帶參數的 /moa(無提示內容)僅打印用法說明。

若要切換到某個 MoA 預設並在會話剩餘時間內使用它,請從模型選擇器中選擇它——在所有模型選擇界面中,MoA 預設都顯示在 Mixture of Agents 提供商下(見上文)。/moa 故意設計為非模型切換命令,因此常規提示永遠不會意外更改你的模型。

在智能體循環中的工作原理

當選擇提供商 moa 進行每次主模型調用時,Hermes 會:

  1. 按名稱解析選定的預設;
  2. 運行配置的參考模型,且不攜帶工具 schema(它們僅接收對話中的用戶/助手文本——不包含 Hermes 系統提示或工具調用轉錄——因此參考調用保持低成本並避免嚴格提供商的拒絕);
  3. 將參考輸出作為私有上下文附加給聚合器;
  4. 使用正常的 Hermes 工具 schema 調用配置的聚合器;
  5. 將聚合器的響應視為真實的模型響應;
  6. 如果聚合器調用工具,Hermes 會正常執行這些工具;
  7. 在下一次模型迭代中,同樣的 MoA 流程會在更新後的對話(包括工具結果)上再次運行。

由於 MoA 是通過常規模型系統選擇的,它會自動與 /goal、網關會話、TUI 會話和桌面聊天組合使用。

配置預設

你可以從以下位置配置命名的 MoA 預設:

  • Dashboard → Models → Model Settings → Mixture of Agents
  • 桌面應用 → Settings → Model → Mixture of Agents
  • hermes moa configure [name]
  • config.yaml

配置存儲明確的提供商/模型對,因此你可以混合使用提供商,並使用來自同一提供商的多個模型:

moa:
default_preset: default
presets:
default:
reference_models:
- provider: openai-codex
model: gpt-5.5
- provider: openrouter
model: deepseek/deepseek-v4-pro
aggregator:
provider: openrouter
model: anthropic/claude-opus-4.8
reference_temperature: 0.6
aggregator_temperature: 0.4
max_tokens: 4096
enabled: true

默認預設:

  • reference: openai-codex:gpt-5.5
  • reference: openrouter:deepseek/deepseek-v4-pro
  • aggregator / acting model: openrouter:anthropic/claude-opus-4.8

使用 reference_max_tokens 調整顧問速度

每一輪中,MoA 並行運行參考模型(顧問),然後由聚合器執行操作。顧問生成是每輪延遲的主要來源——輪次牆壁時間(wall time)與顧問生成的 token 數量強相關,因為輪次需等待最慢的顧問完成寫入。默認情況下,顧問是無上限的(未設置 reference_max_tokens),因此它們可能會撰寫長篇大論的建議。

在預設上設置 reference_max_tokens 以限制顧問輸出,從而提供簡潔的建議。聚合器只需要每個顧問判斷的要旨,因此設置上限(例如 600)可以在幾乎不影響質量的情況下顯著減少每輪的牆壁時間。此上限僅適用於顧問——實際執行的聚合器的輸出(用戶可見的答案)永遠不會受到上限限制。

moa:
presets:
fast:
reference_models:
- provider: openrouter
model: anthropic/claude-opus-4.8
- provider: openrouter
model: openai/gpt-5.5
aggregator:
provider: openrouter
model: anthropic/claude-opus-4.8
reference_max_tokens: 600 # concise advice → faster turns

保持未設置(或設為 0/空白)以保留之前的無上限行為。

終端預設管理

hermes moa list
hermes moa configure # update the default preset
hermes moa configure review # create or update a named preset
hermes moa delete review

基準測試

在 HermesBench 上,一個雙模型 MoA 預設——由 gpt-5.5 作為參考,claude-opus-4.8 作為聚合器——的得分高於任一模型單獨運行的得分:

模型HermesBench 分數
Opus 聚合器(opus-4.8 + gpt-5.5 參考)— MoA0.8202
anthropic/claude-opus-4.80.7607
openai/gpt-5.50.7412

MoA 配置比其最強組件(opus-4.8)高出約 6 分,這證實了聚合第二個視角可以提升困難任務的質量,而不僅僅是取兩者的平均值。

提示緩存

MoA 的構建方式確保了主對話的提示詞緩存永遠不會被破壞。選擇 MoA 預設是一種正常的模型選擇操作:它不會改變過去的上下文、交換工具集或在對話中途重建系統提示詞。你的對話歷史、系統提示詞和工具模式保持字節級穩定,因此其他每個模型所依賴的緩存前綴會像普通模型一樣被精確保留。切換到或切換出 MoA 預設所產生的緩存失效成本與任何其他 /model 切換相同——沒有額外開銷。兩種內部調用類型均正常緩存:

  • 參考模型(Reference models) 接收經過修剪的、確定性的對話視圖(系統提示詞和工具轉錄內容已被剝離——參見上述循環)。由於該視圖是穩定歷史的穩定函數,參考模型的提示詞前綴在各次迭代中重複出現並正常緩存。參考調用是簡短的建議性調用,不使用任何工具。
  • 聚合器(The aggregator) 是實際執行的模型。參考輸出作為私有指導信息附加到最新用戶輪次的末尾。由於這些文本位於尾部——在整個穩定前綴(系統提示詞 + 先前歷史)之下——它不會使任何緩存前綴失效:聚合器對注入點之上的所有內容都能命中緩存,只有新附加的尾部是新的。這正是每次正常輪次的行為方式,即每條新用戶消息也是未緩存的尾部 token。

因此,MoA 在任何一種調用類型上都不會犧牲提示詞緩存。其唯一的實際成本是每次迭代中額外的參考調用——你為多種模型視角付費,而不是為破壞的緩存付費。與 Hermes 其餘部分共享的長生命週期對話前綴保持完整無損。

注意事項

  • MoA 不再列在 hermes tools 下;沒有要啟用的 moa 工具集。
  • 在預設上設置 enabled: false 會禁用該預設的參考扇出(reference fan-out):聚合器將單獨行動,完全就像你將其選為普通模型一樣。這是儀表板和桌面設置中提供的每個預設的關閉開關。
  • 預設的聚合器不能是另一個 MoA 預設。遞歸的 MoA 樹被有意阻止。
  • 某個參考模型上的憑證失敗不會中止當前輪次。Hermes 會將該失敗包含在參考上下文中,並繼續使用返回結果的其他模型。
  • MoA 會增加模型調用次數。單次模型迭代可能涉及多次參考調用以及一次聚合器調用。