BrainBank

04 - 操作速查表

2026/7/30 21:14:46 · 更新于 2026/7/30 23:41:45

AI 翻译于 2026/7/30 23:44:56 · 使用 Qwen3.6 35B (fast, default)

#best-practices#agent-server#llm-infrastructure#system-administration#operational-procedures#ollama-management#health-monitoring#backup-and-maintenance#troubleshooting

一份用于管理 LLM 运维栈的综合日常速查手册——涵盖健康检查、服务重启、模型管理、API 密钥、知识库更新与例行维护。

本指南将本地 AI 基础设施的日常操作整合为一份统一的参考手册。内容涵盖启动命令、服务器管理、API 密钥配置、维护计划及故障排除步骤,助您无需翻阅多份文档即可维持系统顺畅运行。

核心操作与快速访问

五个快捷指令(在 AI_DATA 根目录双击运行)

快捷指令功能适用场景
Status-AI.command健康检查 — 服务状态、常驻模型、延迟感觉系统异常,或进行周度巡检时
Restart-Agent-Server.command 重启 agent-server(端口 8788)修改了 agent-server 的代码或配置后
Sync-Knowledge-Base.command导入新增/变更的文档向知识库添加文件后
Backup-AI.command备份不可丢失的状态数据每周例行,以及任何高风险操作前
Setup-MCP-Fetch.command / Setup-MCP-WebSearch.command启用网页读取 / 网页搜索工具各执行一次,按此顺序

最实用的单一命令:

/Volumes/AI_DATA/Status-AI.command watch

保持终端标签页开启即可 — 每 5 秒自动刷新。

紧急情况:系统发生故障

  1. 运行 Status-AI.command — 找出哪个服务已停止。
  2. Agent-server 停机 → Restart-Agent-Server.command
  3. Ollama 停机 → stop-ai-stack.command,然后 start-ai-stack.command
  4. 服务看似正常运行但请求失败 → Status-AI.command logs 查看报错。
  5. 完全无法工作 → 检查 AI_DATA 卷是否已挂载。

服务器管理与配置

了解两台服务器 — 请勿混淆

端口公开端口服务
gateway.py(旧版)8787:443
~20 个旧应用,简单透传
agent-server(当前)8788:8443
所有新功能 — RAG、记忆、工具

一台服务器的密钥无法在另一台上通过验证。如果某个应用突然提示“API 密钥无效”,请检查其 URL 中是否遗漏了 :8443 端口号。

从终端与服务器通信

# 非流式模式
curl https://llmpowerhouses.taila4b91f.ts.net:8443/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" -H "Content-Type. application/json" \
  -d '{"model":"qwen3.6:35b-a3b","messages":[{"role":"user","content":"hello"}]}'

# 流式模式(-N 用于禁用 curl 的缓冲)
curl -N https://llmpowerhouses.taila4b91f.ts.net:8443/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" -H "Content-Type. application/json" \
  -d '{"model":"qwen3.6:35b-a3b","stream":true,"messages":[{"role":"user","content":"count to five"}]}'

# 列出模型及其实时驻留状态
curl https://llmpowerhouses.taila4b91f.ts.net:8443/v1/models -H "Authorization: Bearer YOUR_KEY"

所有端点(包括 /health)均需携带 Bearer 请求头 — 若直接请求返回 {"detail":"missing bearer token"} 属于正常行为,并非故障。

管理 API 密钥

cd /Volumes/AI_DATA/apps/agent-server
venv/bin/python3 keys_admin.py list
venv/bin/python3 keys_admin.py create <app-name> --scope chat,tools --rate 60
venv/bin/python3 keys_admin.py rotate <key_id>
venv/bin/python3 keys_admin.py revoke <key_id>

--rate 为每分钟请求数。--daily-quota 为每日令牌配额(省略则代表无限制)。原始密钥仅打印一次——若丢失请执行轮换操作;它们无法被恢复。

添加或移除模型

ollama pull <model-name>
ollama rm <model-name>
ollama list

随之后更新三个位置,否则应用会提供不存在的模型:应用自身的模型表、SOP 的模型表以及 AGENT_SERVER_GUIDE_v2.md 中的每日日志。详细说明请参见 07_Switching_LLM_Models_Guide.md。无需重启代理服务器——/v1/models 会实时读取 Ollama 的数据。

更改代理行为

需更改的内容编辑位置需要重启?
代理身份、工具策略与安全护栏apps/agent-server/AGENT.md不需要——每次请求时重新读取
技能设定(引用风格、语气)apps/agent-server/skills/*.md需要——启动时缓存
检索源排序knowledge-bank/source_authority.json需要
MCP 服务器配置apps/agent-server/mcp_servers.json需要
服务器代码apps/agent-server/*.py需要

重启命令为 Restart-Agent-Server.command

知识库与维护周期

向知识库添加文档

  1. 将文件拖入 knowledge-bank/DOD-FM-Knowledge-Bank/knowledge-bank/K12-Knowledge-Bank/(若不确定位置可先放入 _inbox/)。
  2. 双击运行 Sync-Knowledge-Base.command
  3. 无需重启——索引会实时读取。移至 _archive/ 的文件将自动从搜索中撤出。 命名对检索至关重要: FMR-Vol03-Ch08_Unliquidated-Obligations_2025.pdf 的检索效果远优于 document (3).pdf。推荐格式:来源_主题_日期.扩展名

每周 / 每月 / 每季度维护

每周(约 5 分钟): 运行 Status-AI.commandBackup-AI.command,查看可用磁盘空间(低于 200 GB 需排查),检查 logs/agents/requests.jsonl 文件大小(超过约 500 MB 请压缩归档,切勿删除)。 每月(约 20 分钟):

cd /Volumes/AI_DATA/apps/agent-server
venv/bin/python3 run_test_questions.py     # quality baseline
venv/bin/python3 build_eval_dashboard.py   # regenerate Eval-Dashboard.html
venv/bin/python3 keys_admin.py list        # revoke anything unused

每季度: 轮换 API 密钥,检查 ollama --version 以查看更新(请先阅读版本说明——底层服务层的变更会同时影响所有应用),将备份复制到另一块驱动器上(当前备份与所保护的数据位于同一卷)。

诊断、故障排除与 macOS 参考指南

读取各项数据指标

读取情况含义应对措施
p50延迟低于约30秒正常无需处理
p50上升,输出token也上升回答变长,不是性能下降限制 max_tokens,要求简洁
p50上升,输出token不变实际的性能下降检查常驻模型,检查并发负载
延迟恰好约170,000毫秒遇到上游超时模型冷启动,或生成过程失控
"未加载任何内容"下一个请求需要支付冷加载成本闲置约30分钟后属正常现象
大量请求的完成token为0token记录异常调查原因——配额执行可能已静默关闭

绝对不要做的事

  • 不要删除 logs/agents/*.jsonl —— 这是仅有的延迟/质量历史记录。
  • 不要删除 keys.dbmemory.db —— 这两个都不可替换(密钥是哈希值且无法恢复;记忆只能从数周的真实使用中重建)。
  • 不要运行 restart-ai-stack.command 期望重启代理服务器 —— 它只管理 Ollama、Open WebUI 和旧版网关。
  • 不要在备份的情况下,编辑 apps/agent-server/ 下的任何文件。

macOS入门基础

想要…操作
快速打开任意应用⌘ Space,输入几个字母,回车
查看AI服务器是否正在运行在终端中执行 ollama ps
实时查看日志tail -f /Volumes/AI_DATA/logs/ollama.log(⌃C 停止)
直接在Finder中跳转到某个文件夹⌘ ⇧ G,然后输入路径
复制文件的完整路径选中后按 ⌘ ⌥ C
强制退出卡死的程序⌥ ⌘ Esc
临时不让Mac休眠(一次性)在终端中运行 caffeinate -i
让服务器开机自动启动系统设置 → 通用 → 登录项
⚠️ rm -rf foldername 会立即删除,没有确认提示,也不会进入废纸篓。运行前务必三查路径,绝对不要对不是你仔细输入的路径使用带 sudorm -rf

同步公共站点的代码

cd /Volumes/AI_DATA/apps/llmpowerhouse-site
git pull

这是这个Mac上对于该文件夹唯一应该执行的git命令 —— 所有提交都在其他地方完成并推送到GitHub;Mac只是一个通过 git pull 刷新的只读镜像。千万不要在这里执行 git pushgit addgit commit。 如果你看到 "branch and origin/main have diverged"(分支与原点main版本已分叉):

git fetch origin
git reset --hard origin/main

这总是安全的 —— Mac端不应该有本地提交,而且被忽略的文件(gateway.envapi_keys.jsongateway.log)无论如何都不会受到影响。

快速故障排查表

SymptomCauseFix
{"detail":"missing bearer token"}No Authorization headerAdd it — required everywhere, including /health
{"detail":"invalid API key"}Wrong key, or hit the legacy serverCheck the key; confirm :8443 is in the URL
Restart says "did NOT come up"Health check ran before startup finishedCheck logs/agent-server.log for "Application startup complete"
First request slow, rest fastCold model loadNormal — check residency in Status-AI.command
All requests slow under loadFIFO queuingConfirm OLLAMA_NUM_PARALLEL=4 took effect
MCP warnings on restartMay be stale log lines from a previous runStatus-AI.command scopes to the current startup only

Key takeaways

  • Start with Status-AI.command for any anomaly; it gives instant health, resident model status, and latency metrics.
  • Never delete logs, keys, or memory databases; they are irreplaceable and contain hashed state that cannot be rebuilt from scratch.
  • Agent-server restarts are lightweight; they only require Restart-Agent-Server.command and do not touch Ollama or the gateway.
  • Naming conventions drive retrieval accuracy; use the Source_Topic_Date.ext pattern when dropshipping documents into the knowledge banks.
  • Separate the two servers mentally; port 8443 serves the current infrastructure, while 8787/443 hosts legacy passthrough apps with distinct key spaces.

学习地图

分阶段路线图

第一阶段 — 认知(第 0–2 天)

  • 通读完整速查表
  • 在终端标签页中保持打开 Status-AI.command watch
  • 了解有哪些服务(agent-server :8443、legacy gateway :8437、Ollama)以及它们的区别

第二阶段 — 生存技能(第 3–5 天)

  • 练习紧急恢复:运行 Status-AI.command,然后运行 Restart-Agent-Server.command
  • 学习 API 密钥管理(keys_admin.py list / create / rotate
  • 测试模型生命周期:执行 ollama list、拉取一个模型、移除它

第三阶段 — 常规操作(第 2 周起)

  • 运行每周检查清单:状态检查、备份、磁盘监控
  • 向知识库添加文档并同步
  • 设置每月质量基线测试(run_test_questions.py

第四阶段 — 维护成熟期(第 1 个月起)

  • 每季度密钥轮换和 Ollama 版本审查
  • 跨驱动器备份复制
  • requests.jsonl 日志大小维护

动手实践——分步指南

  1. 打开终端并运行 /Volumes/AI_DATA/Status-AI.command watch 以打开健康监控仪表板——在学习过程中保持该标签页开启。
  2. /Volumes/AI_DATA/Restart-Agent-Server.command 运行一次作为预热;然后检查 logs/agent-server.log 中是否出现 "Application startup complete",以确认服务已启动。
  3. 通过 cd /Volumes/AI_DATA/apps/agent-server && venv/bin/python3 keys_admin.py list 列出你管理的所有 API 密钥。
  4. 拉取一个测试模型并随后将其删除:运行 ollama pull qwen3.6:35b-a3b,使用 ollama list 验证,然后运行 ollama rm qwen3.6:35b-a3b
  5. 使用你的 Bearer token,向 `https://llmpowerhouses.taila4b91f.ts.net:8443/v1/chat/completions`` 发送非流式 curl 请求以测试与服务器通信。
  6. 将任意示例 PDF 放入 knowledge-bank/K12-Knowledge-Bank/,然后双击 Sync-Knowledge-Base.command 进行导入。
  7. 在尝试其他操作之前,先运行 /Volumes/AI_DATA/Backup-AI.command 完成首次备份。

三大推荐资源

  1. 1
    Ollama Documentation

    Official Ollama docs covering model management (pull, list, rm), local serving, and configuration — the authoritative reference for any LLM running on a single machine.

    https://ollama.com/search?q=

  2. 2
    OpenAI API Reference

    The canonical API spec that all OpenAI-compatible endpoints (like your agent-server) follow — curl examples, streaming behavior, and parameter reference.

    https://platform.openai.com/docs/api-reference/chat

  3. 3
    Model Context Protocol (MCP) Specification

    Official MCP docs explaining the protocol for connecting LLMs to external tools — the spec behind your `mcp_servers.json` configuration.

    https://modelcontextprotocol.io/

链接由 AI 推荐——使用前建议快速核实。