AI 提供商#
本页介绍如何为 Hermes Agent 配置推理提供商——从 OpenRouter、Anthropic 等云端 API,到 Ollama、vLLM 等自托管端点,再到高级路由与故障转移配置。使用 Hermes 至少需要配置一个提供商。推理提供商#
你需要至少一种方式连接到 LLM。使用 hermes model 交互式切换提供商和模型,或直接配置:| 提供商 | 配置方式 |
|---|
| Nous Portal | hermes model(OAuth,订阅制) |
| OpenAI Codex | hermes model(ChatGPT OAuth,使用 Codex 模型) |
| GitHub Copilot | hermes model(OAuth 设备码流程,COPILOT_GITHUB_TOKEN、GH_TOKEN 或 gh auth token) |
| GitHub Copilot ACP | hermes model(在本地生成 copilot --acp --stdio 子进程) |
| Anthropic | hermes model(Claude Max + 额外用量积分,通过 OAuth;也支持 Anthropic API key 或手动 setup-token——见下方说明) |
| OpenRouter | ~/.hermes/.env 中的 OPENROUTER_API_KEY |
| NovitaAI | ~/.hermes/.env 中的 NOVITA_API_KEY(provider: novita,200+ 模型,Model API、Agent Sandbox、GPU Cloud) |
| z.ai / GLM | ~/.hermes/.env 中的 GLM_API_KEY(provider: zai) |
| Kimi / Moonshot | ~/.hermes/.env 中的 KIMI_API_KEY(provider: kimi-coding) |
| Kimi / Moonshot(中国) | ~/.hermes/.env 中的 KIMI_CN_API_KEY(provider: kimi-coding-cn;别名:kimi-cn、moonshot-cn) |
| Arcee AI | ~/.hermes/.env 中的 ARCEEAI_API_KEY(provider: arcee;别名:arcee-ai、arceeai) |
| GMI Cloud | ~/.hermes/.env 中的 GMI_API_KEY(provider: gmi;别名:gmi-cloud、gmicloud) |
| MiniMax | ~/.hermes/.env 中的 MINIMAX_API_KEY(provider: minimax) |
| MiniMax 中国 | ~/.hermes/.env 中的 MINIMAX_CN_API_KEY(provider: minimax-cn) |
| xAI(Grok)— Responses API | ~/.hermes/.env 中的 XAI_API_KEY(provider: xai) |
| xAI Grok OAuth(SuperGrok) | hermes model → "xAI Grok OAuth (SuperGrok / Premium+)"——浏览器登录,无需 API key。参见指南 |
| Qwen Cloud(阿里 DashScope) | ~/.hermes/.env 中的 DASHSCOPE_API_KEY(provider: alibaba) |
| 阿里云(Coding Plan) | DASHSCOPE_API_KEY(provider: alibaba-coding-plan,别名:alibaba_coding)——独立计费 SKU,不同端点 |
| Kilo Code | ~/.hermes/.env 中的 KILOCODE_API_KEY(provider: kilocode) |
| 小米 MiMo | ~/.hermes/.env 中的 XIAOMI_API_KEY(provider: xiaomi,别名:mimo、xiaomi-mimo) |
| 腾讯 TokenHub | ~/.hermes/.env 中的 TOKENHUB_API_KEY(provider: tencent-tokenhub,别名:tencent、tokenhub、tencentmaas) |
| OpenCode Zen | ~/.hermes/.env 中的 OPENCODE_ZEN_API_KEY(provider: opencode-zen) |
| OpenCode Go | ~/.hermes/.env 中的 OPENCODE_GO_API_KEY(provider: opencode-go) |
| DeepSeek | ~/.hermes/.env 中的 DEEPSEEK_API_KEY(provider: deepseek) |
| Hugging Face | ~/.hermes/.env 中的 HF_TOKEN(provider: huggingface,别名:hf) |
| Google / Gemini | ~/.hermes/.env 中的 GOOGLE_API_KEY(或 GEMINI_API_KEY)(provider: gemini) |
| Google Gemini(OAuth) | hermes model → "Google Gemini (OAuth)"(provider: google-gemini-cli,支持免费层,浏览器 PKCE 登录) |
| LM Studio | hermes model → "LM Studio"(provider: lmstudio,可选 LM_API_KEY) |
| 自定义端点 | hermes model → 选择"Custom endpoint"(保存在 config.yaml) |
在 model: 配置节中,可以使用 default: 或 model: 作为模型 ID 的键名。model: { default: my-model } 和 model: { model: my-model } 效果完全相同。
Nous Portal#
Nous Portal 是 Nous Research 的统一订阅网关,也是运行 Hermes Agent 的推荐方式。一次 OAuth 登录即可访问 300+ 前沿智能体模型(Claude、GPT、Gemini、DeepSeek、Qwen、Kimi、GLM、MiniMax、Grok 等),以及 Tool Gateway(网页搜索、图像生成、TTS、浏览器自动化)和 Nous Chat——费用从你的 Nous 订阅中扣除,无需单独管理各提供商账户。OpenAI Codex 提供商通过设备码(device code)认证——打开一个 URL 并输入验证码。Hermes 将生成的凭据存储在 ~/.hermes/auth.json 的自有认证存储中,并在存在 ~/.codex/auth.json 时可导入现有的 Codex CLI 凭据。无需安装 Codex CLI。如果 token 刷新因终端错误(HTTP 4xx、invalid_grant、授权被撤销等)失败,Hermes 会将该刷新 token 标记为失效并停止重试,避免出现大量重复的认证失败。下一次请求会显示类型化的重新认证提示。运行 hermes auth add codex-oauth(或 hermes model → OpenAI Codex)开始新的设备码登录;成功交换后隔离状态自动解除。
即使使用 Nous Portal、Codex 或自定义端点,某些工具(视觉、网页摘要、MoA)仍会使用单独的"辅助"模型。默认情况下(auxiliary.*.provider: "auto"),Hermes 将这些任务路由到你的主聊天模型——即你在 hermes model 中选择的同一模型。你可以单独覆盖每个任务,将其路由到更便宜/更快的模型(例如 OpenRouter 上的 Gemini Flash)——参见辅助模型。 付费 Nous Portal 订阅者还可访问 Tool Gateway——网页搜索、图像生成、TTS 和浏览器 自动化,均通过你的订阅路由。无需额外 API key。全新安装时,hermes setup --portal 一条命令即可完成登录、设置 Nous 为提供商并开启网关。现有用户可通过 hermes model 或 hermes tools 按工具启用。随时使用 hermes portal status 查看路由状态。 模型管理的两个命令#
| 命令 | 运行位置 | 功能 |
|---|
hermes model | 终端(任何会话之外) | 完整配置向导——添加提供商、运行 OAuth、输入 API key、配置端点 |
/model | Hermes 聊天会话内部 | 在已配置的提供商和模型之间快速切换 |
如果你想切换到尚未配置的提供商 (例如你只配置了 OpenRouter,想使用 Anthropic),需要使用 hermes model,而不是 /model。先退出会话(Ctrl+C 或 /quit),运行 hermes model,完成提供商配置,然后开启新会话。Anthropic(原生)#
通过 Anthropic API 直接使用 Claude 模型——无需 OpenRouter 代理。支持三种认证方式::::caution 需要 Claude Max"额外用量"积分
通过 hermes model → Anthropic OAuth(或 hermes auth add anthropic --type oauth)认证时,Hermes 以 Claude Code 身份路由到你的 Anthropic 账户。仅当你订阅了 Claude Max 计划且购买了额外用量积分时才有效。 Claude Max 基础计划的配额(Claude Code 默认包含的用量)不会被 Hermes 消耗——只有你额外购买的超额积分才会被使用。Claude Pro 订阅者无法使用此路径。如果你没有 Max + 额外积分,请改用 ANTHROPIC_API_KEY——请求将按 token 计费,从该 key 所属组织扣费(标准 API 定价,与任何 Claude 订阅无关)。
:::通过 hermes model 选择 Anthropic OAuth 时,Hermes 优先使用 Claude Code 自身的凭据存储,而不是将 token 复制到 ~/.hermes/.env。这样可以保持 Claude 凭据的可刷新性。--provider claude 和 --provider claude-code 也可作为 --provider anthropic 的简写。
GitHub Copilot#
Hermes 以一等提供商身份支持 GitHub Copilot,提供两种模式:copilot — 直连 Copilot API(推荐)。使用你的 GitHub Copilot 订阅,通过 Copilot API 访问 GPT-5.x、Claude、Gemini 等模型。1.
COPILOT_GITHUB_TOKEN 环境变量
如果未找到 token,hermes model 会提供 OAuth 设备码登录——与 Copilot CLI 和 opencode 使用的流程相同。Copilot API 不支持经典个人访问 token(ghp_*)。支持的 token 类型:| 类型 | 前缀 | 获取方式 |
|---|
| OAuth token | gho_ | hermes model → GitHub Copilot → 使用 GitHub 登录 |
| 细粒度 PAT | github_pat_ | GitHub 设置 → 开发者设置 → 细粒度 token(需要 Copilot Requests 权限) |
| GitHub App token | ghu_ | 通过 GitHub App 安装获取 |
如果你的 gh auth token 返回 ghp_* token,请使用 hermes model 通过 OAuth 认证。 Hermes 将支持的 GitHub token(gho_*、github_pat_* 或 ghu_*)直接发送到 api.githubcopilot.com,并附带 Copilot 专用请求头(Editor-Version、Copilot-Integration-Id、Openai-Intent、x-initiator)。收到 HTTP 401 时,Hermes 在回退前会执行一次性凭据恢复:1.
通过正常优先级链重新解析 token(COPILOT_GITHUB_TOKEN → GH_TOKEN → GITHUB_TOKEN → gh auth token)
部分旧版社区代理使用 api.github.com/copilot_internal/v2/token 交换流程。该端点对某些账户类型可能不可用(返回 404)。因此 Hermes 以直接 token 认证为主路径,依靠运行时凭据刷新 + 重试保证健壮性。 API 路由:GPT-5+ 模型(gpt-5-mini 除外)自动使用 Responses API。其他所有模型(GPT-4o、Claude、Gemini 等)使用 Chat Completions。模型从 Copilot 实时目录自动检测。copilot-acp — Copilot ACP 智能体后端。将本地 Copilot CLI 作为子进程启动:| 环境变量 | 说明 |
|---|
COPILOT_GITHUB_TOKEN | Copilot API 的 GitHub token(最高优先级) |
HERMES_COPILOT_ACP_COMMAND | 覆盖 Copilot CLI 二进制路径(默认:copilot) |
HERMES_COPILOT_ACP_ARGS | 覆盖 ACP 参数(默认:--acp --stdio) |
一等 API Key 提供商#
这些提供商内置支持,具有专属提供商 ID。设置 API key 后使用 --provider 选择:基础 URL 可通过 NOVITA_BASE_URL、GLM_BASE_URL、KIMI_BASE_URL、MINIMAX_BASE_URL、MINIMAX_CN_BASE_URL、DASHSCOPE_BASE_URL、XIAOMI_BASE_URL、GMI_BASE_URL 或 TOKENHUB_BASE_URL 环境变量覆盖。:::note Z.AI 端点自动检测
使用 Z.AI / GLM 提供商时,Hermes 会自动探测多个端点(全球版、中国版、编程版)以找到接受你 API key 的端点。无需手动设置 GLM_BASE_URL——可用端点会被自动检测并缓存。
:::xAI(Grok)— Responses API + Prompt 缓存#
xAI 通过 Responses API(codex_responses 传输)接入,自动支持 Grok 4 模型的推理——无需 reasoning_effort 参数,服务端默认进行推理。在 ~/.hermes/.env 中设置 XAI_API_KEY 并在 hermes model 中选择 xAI,或直接用 grok 作为快捷方式输入 /model grok-4-1-fast-reasoning。SuperGrok 和 X Premium+ 订阅者可以用浏览器 OAuth 登录,无需 API key——在 hermes model 中选择 xAI Grok OAuth (SuperGrok / Premium+),或运行 hermes auth add xai-oauth。同一 OAuth bearer token 会被 xAI 直连工具(TTS、图像生成、视频生成、转录)自动复用。完整流程参见 xAI Grok OAuth 指南——如果 Hermes 运行在远程主机上,还需参见 SSH / 远程主机上 的 OAuth 了解所需的 ssh -L 隧道配置。使用 xAI 作为提供商时(任何包含 x.ai 的基础 URL),Hermes 会在每次 API 请求中自动发送 x-grok-conv-id 请求头以启用 prompt(提示词)缓存。这会将同一会话的请求路由到同一服务器,使 xAI 基础设施能够复用已缓存的系统 prompt 和对话历史。无需任何配置——检测到 xAI 端点且存在会话 ID 时,缓存自动激活。这可降低多轮对话的延迟和成本。xAI 还提供专属 TTS 端点(/v1/tts)。在 hermes tools → 语音与 TTS 中选择 xAI TTS,或参见语音与 TTS 页面了解配置。NovitaAI#
NovitaAI 是面向开发者和智能体的 AI 原生云平台。三条产品线:200+ 模型的 Model API、用于构建和运行 AI 智能体的 Agent Sandbox,以及可扩展计算的 GPU Cloud,均可从同一平台访问。Ollama Cloud — 托管 Ollama 模型,OAuth + API Key#
模型目录从 ollama.com/v1/models 动态获取,缓存一小时。model:tag 格式(如 qwen3-coder:480b-cloud)在规范化过程中保留——不要使用连字符。两者使用相同的 OpenAI 兼容 API。Cloud 是一等提供商(--provider ollama-cloud,OLLAMA_API_KEY);本地 Ollama 通过自定义端点流程访问(基础 URL http://localhost:11434/v1,无需 key)。对于无法在本地运行的大模型使用 Cloud;对于隐私保护或离线工作使用本地。
AWS Bedrock#
通过 AWS Bedrock 使用 Anthropic Claude、Amazon Nova、DeepSeek v3.2、Meta Llama 4 等模型。使用 AWS SDK(boto3)凭据链——无需 API key,使用标准 AWS 认证即可。认证使用标准 boto3 链:显式 AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY、~/.aws/credentials 中的 AWS_PROFILE、EC2/ECS/Lambda 上的 IAM 角色、IMDS 或 SSO。如果已通过 AWS CLI 认证,无需设置任何环境变量。Bedrock 底层使用 Converse API——请求被转换为 Bedrock 的模型无关格式,因此同一配置适用于 Claude、Nova、DeepSeek 和 Llama 模型。仅在调用非默认区域端点时才需设置 BEDROCK_BASE_URL。Qwen Portal(OAuth)#
阿里巴巴 Qwen Portal,支持基于浏览器的 OAuth 登录。在 hermes model 中选择 Qwen OAuth (Portal),通过浏览器登录,Hermes 会持久化刷新 token。仅在 portal 端点迁移时才需设置 HERMES_QWEN_BASE_URL(默认:https://portal.qwen.ai/v1)。:::tip Qwen OAuth 与 Qwen Cloud(阿里 DashScope)
qwen-oauth 使用面向消费者的 Qwen Portal,通过 OAuth 登录——适合个人用户。alibaba 提供商使用 Qwen Cloud(阿里 DashScope),需要 DASHSCOPE_API_KEY——适合程序化/生产工作负载。两者都路由到 Qwen 系列模型,但端点不同。
:::阿里云(Coding Plan)#
如果你订阅了阿里巴巴的 Coding Plan(独立于标准 DashScope API 访问的计费 SKU),Hermes 将其作为独立的一等提供商暴露:alibaba-coding-plan。端点:https://coding-intl.dashscope.aliyuncs.com/v1。与常规 alibaba 提供商一样兼容 OpenAI,但基础 URL 和计费面不同。alibaba_coding 使用与 alibaba 条目相同的 DASHSCOPE_API_KEY——无需单独的 key,只是路由目标不同。在此提供商注册之前,在 config.yaml 中设置 provider: alibaba_coding 的用户会静默回退到 OpenRouter 路由。MiniMax(OAuth)#
通过浏览器 OAuth 登录使用 MiniMax-M2.7——无需 API key。在 hermes model 中选择 MiniMax (OAuth),通过浏览器登录,Hermes 会持久化访问 token 和刷新 token。底层使用 Anthropic Messages 兼容端点(/anthropic)。支持的模型:MiniMax-M2.7(主模型)和 MiniMax-M2.7-highspeed(默认辅助模型)。OAuth 路径忽略 MINIMAX_API_KEY / MINIMAX_BASE_URL。minimax-oauth 使用 MiniMax 面向消费者的 portal,通过 OAuth 登录——无需设置计费。minimax 和 minimax-cn 提供商使用 MINIMAX_API_KEY / MINIMAX_CN_API_KEY——用于程序化访问。完整流程参见 MiniMax OAuth 指南。NVIDIA NIM#
对于本地部署(DGX Spark、本地 GPU),设置 NVIDIA_BASE_URL=http://localhost:8000/v1。NIM 暴露与 build.nvidia.com 相同的 OpenAI 兼容 chat completions API,因此在云端和本地之间切换只需修改一行环境变量。
Hermes 会在每次向 build.nvidia.com 发送请求时自动附加 NIM 计费来源请求头——无需任何配置。这会在 NVIDIA 计费仪表板中将消耗路由到正确的来源。GMI Cloud#
通过 GMI Cloud 使用开源和推理模型——OpenAI 兼容 API,API key 认证。基础 URL 可通过 GMI_BASE_URL 覆盖(默认:https://api.gmi-serving.com/v1)。StepFun#
通过 StepFun 使用 Step 系列模型——OpenAI 兼容 API,API key 认证。基础 URL 可通过 STEPFUN_BASE_URL 覆盖(默认:https://api.stepfun.com/v1)。Hugging Face 推理提供商#
可在模型名称后附加路由后缀::fastest(默认)、:cheapest,或 :provider_name 强制指定后端。基础 URL 可通过 HF_BASE_URL 覆盖。通过 OAuth 使用 Google Gemini(google-gemini-cli)#
google-gemini-cli 提供商使用 Google 的 Cloud Code Assist 后端——与 Google 自己的 gemini-cli 工具使用的 API 相同。支持免费层(个人账户每日配额充足)和付费层(通过 GCP 项目的 Standard/Enterprise)。Hermes 默认使用 Google 的公开 gemini-cli 桌面 OAuth 客户端——与 Google 在其开源 gemini-cli 中包含的凭据相同。桌面 OAuth 客户端不是机密客户端(PKCE 提供安全保障)。你无需安装 gemini-cli 或注册自己的 GCP OAuth 客户端。针对 accounts.google.com 的 PKCE 授权码流程
浏览器回调地址 http://127.0.0.1:8085/oauth2callback(端口占用时自动回退到临时端口)
Token 存储在 ~/.hermes/auth/google_oauth.json(chmod 0600,原子写入,跨进程 fcntl 锁)
无头环境(SSH、HERMES_HEADLESS=1)→ 粘贴模式回退
invalid_grant(刷新 token 被撤销)→ 凭据文件被清除,提示用户重新登录
流量发送到 https://cloudcode-pa.googleapis.com/v1internal:generateContent
(流式传输为 :streamGenerateContent?alt=sse),而非付费的 v1beta/openai 端点
请求体封装为 {project, model, user_prompt_id, request}
OpenAI 格式的 messages[]、tools[]、tool_choice 被转换为 Gemini 原生的
contents[]、tools[].functionDeclarations、toolConfig 格式
响应转换回 OpenAI 格式,Hermes 其余部分无感知
| 你的情况 | 操作 |
|---|
| 个人 Google 账户,使用免费层 | 无需操作——登录即可开始聊天 |
| Workspace / Standard / Enterprise 账户 | 将 HERMES_GEMINI_PROJECT_ID 或 GOOGLE_CLOUD_PROJECT 设置为你的 GCP 项目 ID |
| VPC-SC 保护的组织 | Hermes 检测到 SECURITY_POLICY_VIOLATED 后自动强制使用 standard-tier |
免费层在首次使用时自动开通 Google 托管项目。无需 GCP 配置。以进度条显示每个模型的剩余 Code Assist 配额:Gemini Code Assist quota (project: 123-abc)
gemini-2.5-pro ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░ 85%
gemini-2.5-flash [input] ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░ 92%
Google 认为将 Gemini CLI OAuth 客户端用于第三方软件违反政策。部分用户反映账户受到限制。为降低风险,建议改用 gemini 提供商并通过 API key 访问。Hermes 会在 OAuth 开始前显示警告并要求明确确认。
如果你希望注册自己的 Google OAuth 客户端——例如将配额和授权范围限定在自己的 GCP 项目内——请设置:自定义与自托管 LLM 提供商#
Hermes Agent 可与任何 OpenAI 兼容 API 端点配合使用。只要服务器实现了 /v1/chat/completions,就可以将 Hermes 指向它。这意味着你可以使用本地模型、GPU 推理服务器、多提供商路由器或任何第三方 API。通用配置#
.env 中的 OPENAI_BASE_URL 和 LLM_MODEL 已移除。Hermes 的任何部分都不再读取这两个变量——config.yaml 是模型和端点配置的唯一来源。如果你的 .env 中有过时条目,下次运行 hermes setup 或配置迁移时会自动清除。请使用 hermes model 或直接编辑 config.yaml。
两种方式都会持久化到 config.yaml,该文件是模型、提供商和基础 URL 的唯一来源。使用 /model 切换模型#
:::warning hermes model 与 /model
hermes model(在终端中运行,任何聊天会话之外)是完整的提供商配置向导。用于添加新提供商、运行 OAuth 流程、输入 API key 和配置自定义端点。/model(在活跃的 Hermes 聊天会话中输入)只能在已配置的提供商和模型之间切换。它无法添加新提供商、运行 OAuth 或提示输入 API key。如果你只配置了一个提供商(如 OpenRouter),/model 只会显示该提供商的模型。添加新提供商: 退出会话(Ctrl+C 或 /quit),运行 hermes model,配置新提供商,然后开启新会话。
:::配置好至少一个自定义端点后,可以在会话中途切换模型:/model custom:qwen-2.5 # 切换到自定义端点上的某个模型
/model custom # 从端点自动检测模型
/model openrouter:claude-sonnet-4 # 切换回云端提供商
如果你配置了命名自定义提供商(见下文),使用三段式语法:/model custom:local:qwen-2.5 # 使用"local"自定义提供商和 qwen-2.5 模型
/model custom:work:llama3 # 使用"work"自定义提供商和 llama3
切换提供商时,Hermes 会将基础 URL 和提供商持久化到配置中,使更改在重启后保留。从自定义端点切换到内置提供商时,过时的基础 URL 会自动清除。/model custom(不带模型名称)会查询端点的 /models API,如果只加载了一个模型则自动选择。适用于运行单个模型的本地服务器。
以下所有内容遵循相同模式——只需更改 URL、key 和模型名称。
Ollama — 本地模型,零配置#
Ollama 用一条命令在本地运行开源模型。最适合:快速本地实验、隐私敏感工作、离线使用。通过 OpenAI 兼容 API 支持工具调用。Ollama 默认不使用模型的完整上下文窗口。根据你的显存,默认值为:| 可用显存 | 默认上下文 |
|---|
| 小于 24 GB | 4,096 tokens |
| 24–48 GB | 32,768 tokens |
| 48+ GB | 256,000 tokens |
对于带工具的智能体使用,至少需要 16k–32k 上下文。在 4k 时,系统 prompt 加工具 schema 就可能填满窗口,没有空间留给对话。无法通过 OpenAI 兼容 API(/v1/chat/completions)设置上下文长度。必须在服务端或通过 Modelfile 配置。这是将 Ollama 与 Hermes 等工具集成时最常见的困惑来源。 使用 ollama list 列出可用模型。使用 ollama pull <model> 从 Ollama 库 拉取任意模型。Ollama 自动处理 GPU 卸载——大多数配置无需手动设置。
vLLM — 高性能 GPU 推理#
vLLM 是生产 LLM 服务的标准方案。最适合:GPU 硬件上的最大吞吐量、大模型服务、连续批处理。上下文长度: vLLM 默认读取模型的 max_position_embeddings。如果超出显存,会报错并要求降低 --max-model-len。也可使用 --max-model-len auto 自动找到能放入显存的最大值。设置 --gpu-memory-utilization 0.95(默认 0.9)可将更多上下文放入显存。| 标志 | 用途 |
|---|
--enable-auto-tool-choice | tool_choice: "auto" 所必需(Hermes 的默认值) |
--tool-call-parser <name> | 模型工具调用格式的解析器 |
支持的解析器:hermes(Qwen 2.5、Hermes 2/3)、llama3_json(Llama 3.x)、mistral、deepseek_v3、deepseek_v31、xlam、pythonic。没有这些标志,工具调用将无法工作——模型会将工具调用以文本形式输出。vLLM 支持人类可读的大小:--max-model-len 64k(小写 k = 1000,大写 K = 1024)。
SGLang — 带 RadixAttention 的快速服务#
SGLang 是 vLLM 的替代方案,具有用于 KV 缓存复用的 RadixAttention。最适合:多轮对话(前缀缓存)、约束解码、结构化输出。上下文长度: SGLang 默认从模型配置读取。使用 --context-length 覆盖。如果需要超过模型声明的最大值,设置 SGLANG_ALLOW_OVERWRITE_LONGER_CONTEXT_LEN=1。工具调用: 使用 --tool-call-parser 并选择适合你模型系列的解析器:qwen(Qwen 2.5)、llama3、llama4、deepseekv3、mistral、glm。没有此标志,工具调用将以纯文本返回。如果响应看起来被截断,在请求中添加 max_tokens 或在服务器上设置 --default-max-tokens。SGLang 的默认值是每次响应仅 128 tokens(如果请求中未指定)。
llama.cpp 在 CPU、Apple Silicon(Metal)和消费级 GPU 上运行量化模型。最适合:无数据中心 GPU 的模型运行、Mac 用户、边缘部署。上下文长度(-c): 近期版本默认为 0,从 GGUF 元数据读取模 型的训练上下文。对于训练上下文超过 128k 的模型,这可能因尝试分配完整 KV 缓存而导致 OOM。请显式设置 -c 为你需要的值(32k–64k 是智能体使用的合理范围)。如果使用并行槽(-np),总上下文在槽之间分配——-c 32768 -np 4 时每个槽只有 8k。这会将端点保存到 config.yaml,在会话间持久保留。:::caution --jinja 是工具调用的必要条件
没有 --jinja,llama-server 会完全忽略 tools 参数。模型会尝试在响应文本中写入 JSON 来调用工具,但 Hermes 不会将其识别为工具调用——你会看到原始 JSON(如 {"name": "web_search", ...})作为消息打印出来,而不是实际执行搜索。原生工具调用支持(最佳性能):Llama 3.x、Qwen 2.5(包括 Coder)、Hermes 2/3、Mistral、DeepSeek、Functionary。其他所有模型使用通用处理器,可以工作但 效率可能较低。完整列表参见 llama.cpp 函数调用文档。可通过检查 http://localhost:8080/props 验证工具支持是否已激活——chat_template 字段应存在。
:::
LM Studio — 带本地模型的桌面应用#
LM Studio 是一款带 GUI 的本地模型运行桌面应用。最适合:偏好可视化界面的用户、快速模型测试、macOS/Windows/Linux 开发者。从 LM Studio 应用启动服务器(开发者标签页 → 启动服务器),或使用 CLI:Hermes 会自动以 64K 上下文长度加载 LM Studio 模型。2.
将"Context Length"设置为至少 64000 以获得流畅体验
4.
如果你的机器无法容纳 64000,考虑使用上下文长度更大的小模型。
或使用 CLI:lms load model-name --context-length 64000可使用 CLI 估算模型是否能放入内存:lms load model-name --context-length 64000 --estimate-only设置每个模型的持久默认值:我的模型标签页 → 模型上的齿轮图标 → 设置上下文大小。
:::工具调用: 自 LM Studio 0.3.6 起支持。具有原生工具调用训练的模型(Qwen 2.5、Llama 3.x、Mistral、Hermes)会被自动检测并显示工具徽章。其他模型使用通用回退,可靠性可能较低。
WSL2 网络(Windows 用户)#
由于 Hermes Agent 需要 Unix 环境,Windows 用户在 WSL2 内运行它。如果你的模型服务器(Ollama、LM Studio 等)运行在 Windows 主机上,需要桥接网络——WSL2 使用具有独立子网的虚拟网络适配器,因此 WSL2 内的 localhost 指向 Linux 虚拟机,而非 Windows 主机。:::tip 都在 WSL2 内?没问题。
如果你的模型服务器也在 WSL2 内运行(vLLM、SGLang 和 llama-server 的常见情况),localhost 可以正常工作——它们共享同一网络命名空间。跳过本节。
:::方式 1:镜像网络模式(推荐)#
适用于 Windows 11 22H2+,镜像模式使 localhost 在 Windows 和 WSL2 之间双向工作——最简单的解决方案。1.
创建或编辑 %USERPROFILE%\.wslconfig(如 C:\Users\YourName\.wslconfig): 3.
重新打开 WSL2 终端。localhost 现在可以访问 Windows 服务: 在某些 Windows 11 版本上,Hyper-V 防火墙默认阻止镜像连接。如果启用镜像模式后 localhost 仍无法工作,在管理员 PowerShell 中运行:Set-NetFirewallHyperVVMSetting -Name '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}' -DefaultInboundAction Allow
方式 2:使用 Windows 主机 IP(Windows 10 / 旧版本)