9.6 KiB
| name | description | version | tags | category | trigger | trigger_notes | pitfalls | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| provider-tiering | Provider 分层策略 — 免费模型做常规工作,付费模型用于战略决策。含 NewAPI 免费 NVIDIA 模型库、模型健康巡检系统、cron job 模型 override、delegate_task 模型路由、MOA 配置规范。牧尘专用。 | 1.2.0 |
|
devops | 任何涉及模型选型、 provider 配置、 cron job 创建、 delegate_task 派发、新工作流搭建的场景 | 牧尘的原则:DeepSeek V4 Flash/Pro 是付费模型,只用于架构决策、复杂调试、战略分析。 常规工作(cron job、文档处理、日常查询、健康检查、自动化流水线)一律走 NewAPI 免费模型。 注意:NewAPI 免费模型并非 SLA 保证,稳定性随时间变化。每 6h 有自动健康巡检, 使用前查看 ~/.hermes/model-health.json 获取当前最优模型。 |
|
Provider Tiering — 模型分层策略
核心理念
DeepSeek V4 Flash 是付费令牌,每个 token 都是钱。 NewAPI 的 NVIDIA 模型是免费资源,但稳定性因时段而异,且模型随时可能 EOL。
牧尘的原则:
- 付费(DeepSeek) → 决策部署、架构设计、疑难杂症、你的主动分析请求
- 免费(NewAPI) → 所有常规工作:cron job、文档处理、健康检查、自动化流水线、日常查询
Provider 层次
Tier 0 — 免费(NewAPI @ localhost:3000)
入口:http://127.0.0.1:3000/v1
API Key:0ExNiLblJvIWBDpkS50fwOBw4MmqLyKdHJK5iQtlw9dOMWBP(config.yaml 中)
成本因子:cost_factor: 0.0
模型数量:136 个(实际可用约 14 个,2026-07-27 实测)
速率限制:1000 RPM
上游:NVIDIA NIM(model volatility — 无提前通知,随时 EOL)
2026-07-27 实测可用模型
完整清单见
references/newapi-model-catalog.md
| 优先级 | 模型 | 实测 | 推荐场景 |
|---|---|---|---|
| 🏆 主力 | minimaxai/minimax-m3 |
✅ OK | 全能首选,NewAPI default |
| 🥇 备选 | meta/llama-3.1-70b-instruct |
✅ OK | 强推理 |
| 🥇 备选 | openai/gpt-oss-120b |
✅ OK | 120B 大模型 |
| 🥇 备选 | nvidia/llama-3.3-nemotron-super-49b-v1 |
✅ OK | NVIDIA 优化模型 |
| ⚡ 快速 | meta/llama-3.1-8b-instruct |
✅ OK | 轻量快速 |
| ⚡ 快速 | openai/gpt-oss-20b |
✅ OK | 中等大小 |
| 🧠 超大 | nvidia/nemotron-3-super-120b-a12b |
✅ OK | 120B 超大 |
| 🧠 超大 | mistralai/mistral-nemotron |
✅ OK | Mistral 系列 |
| 🌐 视觉 | meta/llama-3.2-11b-vision-instruct |
✅ OK | 带视觉能力 |
近期 EOL 模型(不可用)
| 模型 | EOL 日期 | 曾是 |
|---|---|---|
| stepfun-ai/step-3.5-flash | 2026-07-27 | 快速推理首选 |
| minimaxai/minimax-m2.7 | 2026-07-27 | 稳定均衡模型 |
| mistralai/mistral-large-3-675b-instruct-2512 | 2026-07-23 | 675B 最强模型 |
| qwen/qwen3.5-122b-a10b | 2026-07-20 | 复杂推理+中文 |
更新模型推荐前先查 model-health.json:
cat ~/.hermes/model-health.json | python3 -c "
import json,sys; d=json.load(sys.stdin)
print('当前推荐:', ', '.join(d['recommendations']['fast']))
print(f'稳定: {d[\"stable\"]}, 不稳定: {d[\"unstable\"]}, 死: {d[\"dead\"]}')"
Tier 1 — 付费(DeepSeek)
入口:https://api.deepseek.com
可用模型:deepseek-v4-flash(主力)、deepseek-v4-pro(备用,NewAPI 通道 2026-07-27 已恢复可用)
使用条件(仅以下情况)
- 🏗 架构决策:系统设计、组件选型、重大重构方案
- 🐛 复杂调试:免费模型搞不定的疑难杂症
- 📋 你的主动分析请求:你明确说分析一下的战略问题
- 🚨 系统故障紧急诊断:免费模型无法处理时的兜底
模型健康巡检系统
NewAPI 免费模型没有 SLA,稳定性随时间和负载变化。为此部署了自动健康巡检系统。
架构
每 6h ──→ model-health.py(no_agent 脚本)
↓
~/.hermes/model-health.json
↓
cron job / agent 读取推荐列表
脚本位置
~/.hermes/scripts/model-health.py(亦作为本 skill 的 scripts/model-health.py)
定时任务
cronjob list # 查看模型健康巡检
输出格式
~/.hermes/model-health.json 包含 timestamp、stable/unstable/dead 统计、recommendations、models 数组。
常用查询
# 获取当前最快稳定模型
cat ~/.hermes/model-health.json | python3 -c "
import json,sys; d=json.load(sys.stdin)
stable = [m for m in d['models'] if m['stability']=='stable']
stable.sort(key=lambda x: x['avg_latency_ms'])
for m in stable[:3]:
print(f\"{m['model']:45s} {m['avg_latency_ms']:>6}ms | {m['success']}/2\")"
# 快速获取模型名用于 cron job
FASTEST=$(cat ~/.hermes/model-health.json | python3 -c \
"import json,sys;d=json.load(sys.stdin);print(d['recommendations']['fastest3'][0])")
echo "当前推荐: $FASTEST"
手动触发
python3 ~/.hermes/scripts/model-health.py
技术实现
1. Cron Job 模型配置
创建 cron job 时必须指定 model/provider:
FASTEST=$(cat ~/.hermes/model-health.json | python3 -c \
"import json,sys;d=json.load(sys.stdin);print(d['recommendations']['fastest3'][0])")
cronjob create "每日汇总" --every "0 9 * * *" \
--prompt "..." \
--model provider=newapi-local model="$FASTEST"
2. Delegate Task 模型路由
delegation:
provider: newapi-local
model: minimaxai/minimax-m3
3. MOA Preset 配置
MoA 的参考模型和聚合器全部走 NewAPI 免费模型(使用当前可用模型):
moa:
presets:
expert-panel:
reference_models:
- provider: newapi-local
model: minimaxai/minimax-m3
- provider: newapi-local
model: openai/gpt-oss-120b
- provider: newapi-local
model: nvidia/llama-3.3-nemotron-super-49b-v1
aggregator:
provider: newapi-local
model: minimaxai/minimax-m3
4. 当大量模型 EOL 时的处理流程
见 references/nvidia-nim-eol-sweep.md:
- 拉全量模型列表
- 按厂商分类系统性测试
- 更新 model-health.py 的测试列表
- 更新 Catalog 和推荐矩阵
- 扫描脚本中的硬编码模型名(daemon.py、wiki_curator.py、cangjie_distill.py 等)
- 更新 cron job 模型配置
- 更新 config.yaml(用 hermes config set,不直接 patch)
验证命令
# 验证 NewAPI 可用性
curl -s -H "Authorization: Bearer 0ExNiLblJvIWBDpkS50fwOBw4MmqLyKdHJK5iQtlw9dOMWBP" \
http://127.0.0.1:3000/v1/models | python3 -c \
"import json,sys;d=json.load(sys.stdin);print(f'{len(d[\"data\"])} models available')"
# 验证单个模型
curl -s --max-time 30 http://127.0.0.1:3000/v1/chat/completions \
-H "Authorization: Bearer 0ExNiLblJvIWBDpkS50fwOBw4MmqLyKdHJK5iQtlw9dOMWBP" \
-H "Content-Type: application/json" \
-d '{"model":"minimaxai/minimax-m3","messages":[{"role":"user","content":"hi"}],"max_tokens":5}'
# 查看当前健康状态
test -f ~/.hermes/model-health.json && cat ~/.hermes/model-health.json | python3 -c "
import json,sys; d=json.load(sys.stdin)
print(d['timestamp'])
print(f'稳定={d[\"stable\"]} 不稳定={d[\"unstable\"]} 死={d[\"dead\"]} (共{d[\"total_models\"]})')
print('推荐:', ', '.join(d['recommendations']['fastest3']))"
参考文件
references/newapi-model-catalog.md— NewAPI 模型完整分类目录(含 2026-07-27 实测状态)references/nvidia-nim-eol-sweep.md— NVIDIA NIM 模型易失性与全量 sweep 方法论scripts/model-health.py— 模型健康巡检脚本(cron 自动调用)references/>moaskill — MoA 多模型专家组配置
版本 1.2.0 | 2026-07-27 | 模型大规模 EOL 后全面更新可用模型列表、新增 NVIDIA NIM 易失性 pitfall、新增 sweep 方法论参考、更新 MOA preset、更新健康巡检脚本测试列表。