多模型双 Profile 具体落地方案(默认云端 / 私密全本地)
制定日期:2026-10-03 适用人:Flynn 老师 硬件:i5-12600KF / 48GB DDR5-5600 / RX 6500 XT 4GB / 三星 980 NVMe 前置文档:20261002 云端API与本地模型协同使用方案.md(讲"为什么分工");本篇讲"具体怎么配、怎么用" 状态:已配置完成并真机端到端验证通过
一、需求与一个关键前提
需求:默认用云端模型保证质量与速度;处理私密文档 / 特殊说明时切到本地模型,且不希望内容出网;切换要省心、能明确当前用的是哪个模型。
关键前提(查证 Hermes 源码与官方文档后确认):
- Hermes 没有"主模型按内容敏感度自动切换"的原生功能。
- auxiliary(辅助模型)只服务于标题生成、上下文压缩、视觉识别等旁路任务,不能用来接收主对话——所以"设个辅助模型接私密内容"这条路不成立。
- 因此采用 双 Profile:两套相互隔离的 agent 配置,一条命令切换。这也是隐私上最稳妥的做法(不依赖自动识别,杜绝误判把私密内容先发上云)。
二、总体架构
日常工作
│ hermes(默认 profile = default)
▼
┌─────────────────────────────────────────────┐
│ default │
│ 主模型:ark-code-latest(火山云) │
│ fallback:deepseek-v4-flash(云端转移) │
│ auxiliary:auto(云端) │
└─────────────────────────────────────────────┘
处理私密文档 / 特殊说明
│ hermes -p private
▼
┌─────────────────────────────────────────────┐
│ private │
│ 主模型:qwen3.6-35b-a3b(本地 8080) │
│ fallback:空(本地失败即报错,绝不转云) │
│ 全部 auxiliary:显式指向本地 8080 │
│ → 所有调用均不出网 │
└─────────────────────────────────────────────┘
一句话:default = 云端主编;private = 全本地离线工作台,进入即锁网。
三、两个 Profile 的实际配置
3.1 default(日常,无需改动)
配置文件:C:\Users\41456\AppData\Local\hermes\config.yaml
| 项 | 值 |
|---|---|
| 主模型 | ark-code-latest |
| provider | custom |
| base_url | https://ark.cn-beijing.volces.com/api/coding/v3 |
| api_mode | auto |
| fallback | deepseek-v4-flash(云端) |
| auxiliary | 全部 auto |
3.2 private(本次新建)
配置文件:C:\Users\41456\AppData\Local\hermes\profiles\private\config.yaml
(改前已备份为同目录 config.yaml.bak-20261003)
主模型段:
model:
default: qwen3.6-35b-a3b
provider: local-llamacpp
base_url: http://127.0.0.1:8080/v1
api_mode: openai
api_key: local-no-key
context_length: 65536
extra_body:
chat_template_kwargs:
enable_thinking: false # 关闭思维链,见第五节坑1
故障转移(关键:清空):
fallback_providers: [] # 本地异常直接报错,不回退云端
全部辅助任务统一锁定本地(含容易遗漏的 4 项):
auxiliary:
vision: &loc { provider: custom, base_url: http://127.0.0.1:8080/v1,
api_key: local-no-key, model: qwen3.6-35b-a3b, timeout: 300,
extra_body: { chat_template_kwargs: { enable_thinking: false } } }
web_extract: *loc
compression: *loc
skills_hub: *loc
approval: *loc
mcp: *loc
title_generation: *loc
tts_audio_tags: *loc
triage_specifier: *loc
kanban_decomposer: *loc # 易漏
profile_describer: *loc # 易漏
curator: *loc # 易漏
monitor: *loc # 易漏
为什么这样能保证不转云:Hermes 辅助调用解析时,只要带显式 base_url,本地失败就直接抛错;只有未配置 base_url 时才会走 auto 云端发现链。这是源码 auxiliary_client.py 中 if not resolved_base_url: 分支决定的。
四、日常使用命令
| 场景 | 命令 |
|---|---|
| 进入日常云端模式 | hermes |
| 进入私密本地模式 | hermes -p private |
| 私密模式下单问 | hermes -p private chat -q "内容" |
| 退出私密回云端 | 退出当前会话后运行 hermes |
| 查看已有 profile | hermes profile list |
可选便捷命令:创建 profile 时已生成 C:\Users\41456\.local\bin\private.bat(内容即 hermes -p private %*)。把该目录加入 PATH 后可直接敲 private:
# 加入 ~/.bashrc
export PATH="$HOME/.local/bin:$PATH"
两套 profile 的配置、会话、记忆相互隔离,来回切换互不影响。
五、落地中踩过的三个真实坑(均已解决)
坑 1:思维链导致首轮超时
现象:Qwen3.6 默认先输出长篇 reasoning_content,正文为空,max_tokens 全被思考耗尽,首轮轻松超过 180 秒。
尝试:/no_think 提示词对本模型无效。
解法:在主模型与全部辅助任务写入
extra_body: { chat_template_kwargs: { enable_thinking: false } }
实测同一请求由 146 秒降到 8 秒,直接返回正文。
坑 2:Vulkan 模式处理大 prompt 时服务崩溃
现象:显卡模式(-ngl 999)处理约 13000 token 以上的大 prompt 时,llama-server 直接崩溃退出(端口、进程、health 全部消失),客户端跑约 16 分钟后报 APIConnectionError。
验证:改用纯 CPU(-ngl 0)后,同样 27000 token 的场景稳定跑完。
解法:本地服务统一用纯 CPU 模式。开机自启脚本 D:\LocalLLM\scripts\autostart_run.bat 已改为 -ngl 0。
坑 3:源码目录的 AGENTS.md 被注入,上下文暴涨
现象:从 hermes-agent 源码目录启动时,会自动注入该目录 70KB 的 AGENTS.md(Hermes 源码开发指南),prompt 暴涨到 27000 token、首轮十几分钟,并有 "AGENTS.md TRUNCATED 69213 chars" 警告。
解法:不要在 C:\Users\41456\AppData\Local\hermes\hermes-agent 目录里启动 hermes。该文件是源码的一部分,不删除。
附带处理:默认多槽(parallel)在请求超时后服务端不释放、后续请求排队恶性循环;已统一加 --parallel 1。
六、本地服务与开机自启
启动器(纯 CPU + 单槽,稳定版):D:\LocalLLM\scripts\autostart_run.bat
实际启动参数:
llama-server.exe -m "D:\LocalLLM\models\Qwen3.6-35B-A3B-UD-Q4_K_M.gguf"
--host 127.0.0.1 --port 8080 -ngl 0 -c 65536 --parallel 1
--temp 0.7 --top-p 0.8 -t 8
开机自启:因系统策略禁止非提权创建 ONLOGON 计划任务,已改用"启动文件夹快捷方式"(无需管理员):
C:\Users\41456\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\LocalLLM-Qwen36.lnk
登录 Windows 即自动后台拉起本地服务。取消自启只需删除该 .lnk。
手动管理:ensure_server.py(幂等启动)、健康检查.bat。
七、能力边界与使用建议
- 实测速度:生成约 2.8 tok/s(4GB 显卡能 offload 的层很少,主要靠 i5 CPU)。关闭思维链后,普通一问一答几秒到几十秒;长对话首轮 prompt 处理仍偏慢。
- 定位:private = 隐私 / 离线 / 教学演示 / 批量初稿;出版级成稿、复杂推理、联网任务仍走 default 云端。
- 私密使用习惯:先确认本地服务在线(
curl http://127.0.0.1:8080/health),再hermes -p private;private 内任何调用都不会出网,可放心粘贴敏感内容。
八、一页速查
日常云端: hermes
私密本地: hermes -p private (或加入PATH后: private)
本地健康: curl http://127.0.0.1:8080/health
开机自启: Startup 文件夹 LocalLLM-Qwen36.lnk(纯CPU -ngl 0)
私密铁律: fallback 清空 + 全部 auxiliary base_url 指向 8080
提速关键: enable_thinking=false(关思维链)