操作

模型提供者

為 Hermes 提供模型推理能力的外部或本地提供者。

模型提供者

這是什麼

為 Hermes 提供模型推理能力的外部或本地提供者。

白話解釋

模型提供者就像聘請不同的配音員為同一部電影配音:劇本和場景不變,只有喇叭裡傳出的聲音不同,在不同場次之間更換配音員也不需要重新拍攝任何東西。Hermes 透過在一個地方描述每個提供者的特性,而不是將任何一個提供者硬編碼到代理中,讓這種更換同樣無痛。

為什麼重要

Anthropic、OpenAI 相容端點、Gemini、Bedrock 以及數十個其他提供者各自作為自己的模型提供者插件提供,同時還有本地選項,這使得模型層在架構層面是可插拔的,而不是硬編碼的。這就是為什麼提供者切換變成配置變更而不是重寫的原因:一個任務可以路由到當前提供最佳成本與能力平衡的提供者,或者在主要提供者不可用時自動回退。有這麼多提供者可以選擇,配置錯誤的 API 金鑰或模型 ID 也是在請求到達代理循環之前就中斷的常見原因之一。

運作方式

Hermes 中的提供者身份由運行時合併的多個層次組合而成:一個 models.dev 目錄列出了 100 多個提供者及其基本 URL、環境變數和定價;一組小型 Hermes 專用覆蓋層添加了該目錄未追蹤的傳輸類型和驗證細節;以及使用者在 config.yaml 中的 providers: 部分,合併在兩者之上(hermes_cli/providers.py)。以插件形式提供的提供者宣告自己的傳輸類型——openai、anthropic、bedrock、codex——和預設模型名稱,這些內容會被合併到同一結構中。