700 lines
29 KiB
Markdown
700 lines
29 KiB
Markdown
|
|
# GHCS 光湖作战系统 · 技术架构与执行落地文档 · Awen私有
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
📋
|
|||
|
|
|
|||
|
|
**版本记录**
|
|||
|
|
v0.1-draft · 2026-05-22 · 霜砚初版 · 37项功能 · 渐进式演进路线
|
|||
|
|
v0.1-r1 · 2026-05-25 · 知秋×星枢三层审查11条修改 + 服务器/仓库/内存方案确认 · 冰朔签发
|
|||
|
|
**v0.1-r2 · 2026-05-30 · 架构决策:商业API替代AutoDL自部署 · 模型热插拔正式启用**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
GHCS://awen/command-system · 2026-05-25T18:13+08:00
|
|||
|
|
├── type: 技术架构+执行落地文档
|
|||
|
|
├── owner: Awen·DEV-012(私有·不对外共享)
|
|||
|
|
├── created_by: 霜砚·AG-SY-01
|
|||
|
|
├── reviewed_by: 知秋·PER-ZQ001(协调) + 星枢·Xīng Shū(找茬)
|
|||
|
|
├── origin: 2026-05-21深夜讨论构思
|
|||
|
|
├── revision: v0.1-r2 · 2026-05-30 商业API决策
|
|||
|
|
├── infra: 部署=43.139.207.172(Awen·4核4GB) · 仓库=guanghulab.com/code/awen/ghcs
|
|||
|
|
└── status: v0.1-r2 · 架构决策已更新 · v0.2功能清单已调整
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 一、GHCS是什么
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
⚡
|
|||
|
|
|
|||
|
|
**GHCS · Guanghu Command System · 光湖作战系统**
|
|||
|
|
不是后台管理面板,不是运维工具。是Awen(技术主控)掌控整个光湖系统的**技术指挥中枢**。
|
|||
|
|
终极形态:系统自己写自己的下一个版本,Awen只需审批。
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 一.5、🆕 2026-05-30 架构决策 · 商业API替代AutoDL自部署
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔄
|
|||
|
|
|
|||
|
|
**Awen决策 · 知秋天眼推演确认 · 冰朔架构已预留热插拔**
|
|||
|
|
|
|||
|
|
**决策内容**:模型推理从AutoDL自部署GPU切换为商业API。商业API不写死任何一家供应商,api-router 维护一个可增删的商业API供应商池(DeepSeek / 通义千问 / GLM 等),GHCS面板支持多供应商Key管理 + 自动切换。
|
|||
|
|
|
|||
|
|
**法理依据**:冰朔05-27架构决策——「商业模型/开源模型 = 引擎 = 热插拔 · 哪个强用哪个 · 随时换」。
|
|||
|
|
|
|||
|
|
**与1.5B语言门架构对齐**:算力在外部(商业API),光湖只做路灯(api-router路由层)。
|
|||
|
|
|
|||
|
|
**受影响范围**:
|
|||
|
|
|
|||
|
|
├── ❌ GHCS v0.2 砍掉: AutoDL开关机 · GPU游牧脚本
|
|||
|
|
|
|||
|
|
├── ✅ GHCS v0.2 新增: API密钥管理面板(多供应商·不写死任何一家·用量监控·费用告警·自动切换)
|
|||
|
|
|
|||
|
|
├── ✅ api-router-v3.1 无需改动(本来就是路由层 · 商业API供应商池可增删)
|
|||
|
|
|
|||
|
|
├── ⏸️ 霜砚1.5B/铸渊7B自部署保留为备用通道(关机不花钱)
|
|||
|
|
|
|||
|
|
└── ⏸️ 三层算力架构存档为历史参考 · 未来用户量大时可能切回自部署(模型热插拔)
|
|||
|
|
|
|||
|
|
**月费对比**:AutoDL ¥100/月 → 商业API ≈ ¥10-30/月(当前用量)。
|
|||
|
|
|
|||
|
|
**切换成本**:改api-router一行配置。
|
|||
|
|
|
|||
|
|
### 🟢🔌 两种模型接入方式 · 并列存在 · GHCS面板一键切换
|
|||
|
|
|
|||
|
|
| | 🟢 商业API接入(当前主用) | ⏸️ 自研模型API接入(备用·未来可激活) |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| 接入路径 | api-router → 多供应商商业API池(不写死·可增删·DeepSeek/通义千问/GLM等) | api-router → 霜砚1.5B(8001) / 铸渊7B(8000) |
|
|||
|
|
| 管理方式 | API密钥管理面板(v0.2 · 多供应商各自配Key · 用量监控 · 费用告警 · 超限自动切换) | 模型切换面板(v0.2 · 健康检测 · 灰度验证) |
|
|||
|
|
| 月费 | ¥10-30(按调用量) | ¥100-500+(GPU租赁) |
|
|||
|
|
| 适用 | 当前 · 用户量小 · 快速迭代 | 用户量大 · 需要定制 · 数据不出第三方 |
|
|||
|
|
| 切换操作 | 面板选供应商 → 填Key → 生效 · 多供应商可同时启用 · 一个超限自动切另一个 | 面板选「自研模型」→ 启动服务 → 灰度→全量 |
|
|||
|
|
|
|||
|
|
同一个 api-router · 两个后端 · 一行配置切换。两种接入方式永远同时存在。
|
|||
|
|
|
|||
|
|
### 🔌 商业API层 · 多供应商支持 · 不写死任何一家
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────────┐
|
|||
|
|
│ api-router model_backends 配置 │
|
|||
|
|
│ │
|
|||
|
|
│ commercial: ← 商业API池(可增删) │
|
|||
|
|
│ deepseek: api.deepseek.com │
|
|||
|
|
│ qwen: dashscope.aliyuncs.com │
|
|||
|
|
│ glm: open.bigmodel.cn │
|
|||
|
|
│ ... 爸爸想加哪个加哪个 │
|
|||
|
|
│ │
|
|||
|
|
│ self_hosted: ← 自研模型池(保留) │
|
|||
|
|
│ shuangyan: 127.0.0.1:8001 │
|
|||
|
|
│ zhuyuan: autodl:8000 │
|
|||
|
|
│ │
|
|||
|
|
│ routing: ← 路由策略 │
|
|||
|
|
│ default: deepseek ← 当前默认 │
|
|||
|
|
│ fallback: qwen ← 超限/故障时切 │
|
|||
|
|
│ rules: 特定路由可指定不同供应商 │
|
|||
|
|
└─────────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔀
|
|||
|
|
|
|||
|
|
**商业API = 一个"供应商池",不是一家公司。**
|
|||
|
|
爸爸以后想用哪家就加哪家。api-router 配置里多写一行 endpoint 的事。
|
|||
|
|
GHCS v0.2 的 API 密钥管理面板支持多个供应商各自配 Key,一个超限了自动切备用。
|
|||
|
|
今天用 DeepSeek,明天通义千问降价了切过去——改一行配置,填一个 Key,完成。
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
### 🔌 热插拔接口设计 · 从商业API切回自研模型的路径保留
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
HLDP://ghcs/hot-swap-interface/v1 · 2026-05-30
|
|||
|
|
├── 设计原则: 商业API和自研模型在api-router层面完全对等 · 切换=改一行配置
|
|||
|
|
├── 预留的三条路径:
|
|||
|
|
│ ├── 路径一 · api-router配置层
|
|||
|
|
│ │ ├── 现状: api-router-v3.1 路由到 DeepSeek API
|
|||
|
|
│ │ ├── 保留: model_backends 配置字典中始终保留 shuangyan_1_5b 和 zhuyuan_7b 条目
|
|||
|
|
│ │ │ └── 即使后端服务关机 · 配置条目不删 · 路由代码不删
|
|||
|
|
│ │ └── 切回操作: 改 model_backends.default 指向 → 重启api-router · 30秒完成
|
|||
|
|
│ ├── 路径二 · 自研模型服务保留
|
|||
|
|
│ │ ├── 霜砚1.5B: /root/models/shuangyan-1.5b 权重文件不删
|
|||
|
|
│ │ │ └── systemd service 文件保留(systemctl stop 而非 disable)
|
|||
|
|
│ │ ├── 铸渊7B: AutoDL存储不删 · 镜像快照保留
|
|||
|
|
│ │ └── 切回操作: systemctl start shuangyan-1.5b → api-router切目标 → 完成
|
|||
|
|
│ └── 路径三 · GHCS主控台模型切换面板
|
|||
|
|
│ ├── v0.2 模型调试台中加入「推理后端」切换开关
|
|||
|
|
│ │ ├── 选项A: 商业API(当前)
|
|||
|
|
│ │ ├── 选项B: 自研模型(需先启动后端服务)
|
|||
|
|
│ │ └── 选项C: 混合模式(特定路由走自研·通用走商业API)
|
|||
|
|
│ └── 切换时自动: 检测后端健康 → 切换路由 → 验证 → 通知爸爸
|
|||
|
|
├── 切回触发条件(爸爸将来做判断的依据):
|
|||
|
|
│ ├── 条件一: 用户量达到一定规模 · 商业API月费 > 自部署GPU月费
|
|||
|
|
│ ├── 条件二: 自研模型性能追平或超越商业API
|
|||
|
|
│ ├── 条件三: 需要模型层面的定制能力(LoRA微调·人格注入·私有部署)
|
|||
|
|
│ └── 条件四: 合规/隐私要求数据不出第三方API
|
|||
|
|
├── 切换流程(预演·待实际执行时验证):
|
|||
|
|
│ ├── ① 爸爸决定切换 → 知秋天眼排雷 · 评估风险
|
|||
|
|
│ ├── ② 启动自研模型服务(开机AutoDL或启动本地模型)
|
|||
|
|
│ ├── ③ GHCS模型切换面板 → 灰度10%流量到自研模型
|
|||
|
|
│ ├── ④ 监控对比: 响应时间·错误率·费用 · GHCS自动报告
|
|||
|
|
│ ├── ⑤ 爸爸确认 → 全量切换 / 不满意 → 切回商业API
|
|||
|
|
│ └── ⑥ 全量切换后 · 商业API Key保留为备用通道
|
|||
|
|
├── 不做什么:
|
|||
|
|
│ ├── 不删自研模型代码和权重
|
|||
|
|
│ ├── 不删api-router中的自研模型路由配置
|
|||
|
|
│ ├── 不在代码中硬编码商业API的endpoint
|
|||
|
|
│ └── 不因为当前不用就砍掉模型切换面板的设计
|
|||
|
|
└── 爸爸刚才说的 ← 这条接口设计就是回应爸爸的要求
|
|||
|
|
└── "应该留出后期改回用自研模型的接口哈" → 已留 · 三条路径 · 切换=改一行配置
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 二、核心原则
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔒
|
|||
|
|
|
|||
|
|
**铁律:所有功能必须合规**
|
|||
|
|
① 不偷看用户对话内容 · 只看聚合统计数据
|
|||
|
|
② 不在用户不知情时接管/注入对话
|
|||
|
|
③ 用户主动请求人工客服时才可介入
|
|||
|
|
④ 合规日志脱敏存储 · 可随时导出供工信部审查
|
|||
|
|
⑤ 每个版本上线前过合规自查
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
- 渐进式上线 · 每个版本独立可用 · 不是半成品
|
|||
|
|
- 上一个版本稳定了再做下一个
|
|||
|
|
- v0.1在系统面向用户之前交付
|
|||
|
|
- 后续版本跟着用户增长节奏走
|
|||
|
|
- **安全基线从v0.1开始**:JWT鉴权+HTTPS+Nginx反代 · 不留裸奔过渡期
|
|||
|
|
- **基础设施主权**:主仓库=[guanghulab.com](http://guanghulab.com) · 代码=awen/ghcs(私有)· 部署=Awen服务器
|
|||
|
|
- **D111主控台舍弃**:GHCS统一替代 · D111标记为历史存档
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 三、已有基础(从60%起步)
|
|||
|
|
|
|||
|
|
| 已有能力 | 技术栈 | 状态 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| 模型推理 | 多供应商商业API池(不写死·可增删)+ 霜砚1.5B/铸渊7B(自部署备用·热插拔) | ✅ 已跑通 |
|
|||
|
|
| 智能路由网关 | api-router-v3.1 · FastAPI | ✅ 已跑通 |
|
|||
|
|
| 前端框架 | Next.js 16 · 深色主题 | ✅ 已跑通 |
|
|||
|
|
| 数据库 | PostgreSQL · personadb · 6表7索引 | ✅ 已跑通 |
|
|||
|
|
| 代码仓库 | Gitea · 国内自部署 | ✅ 已跑通 |
|
|||
|
|
| 代码模型 | 铸渊coder-7b-v2 | ✅ 已跑通 |
|
|||
|
|
| Mac本地开发环境 | 三服务全跑通 · M5 32GB | ✅ 已跑通 |
|
|||
|
|
| 生产环境 | 主服务器 · 4核16G · [guanghu.chat](http://guanghu.chat) | ✅ 已就绪 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 四、GHCS 完整功能清单(30项)
|
|||
|
|
|
|||
|
|
### 基础层 · 能看能管
|
|||
|
|
|
|||
|
|
| 编号 | 功能 | 说明 | 阶段 |
|
|||
|
|
| --- | --- | --- | --- |
|
|||
|
|
| ① | 系统状态总览 | 所有服务心跳检测(绿/黄/红)· 一眼看全局 | v0.1 |
|
|||
|
|
| ② | 模型管控台 | 切换模型 · 调参数 · 调试对话 · 看原始JSON返回 | v0.1 |
|
|||
|
|
| ③ | 基础日志查看 | 请求日志 · 错误日志 · 按时间/类型筛选 | v0.1 |
|
|||
|
|
| ④ | 一键重启服务 | 点按钮重启任意服务 · 不用SSH | v0.2 |
|
|||
|
|
| ⑤ | 一键部署 | git pull → build → restart · 全自动 | v0.2 |
|
|||
|
|
| ⑥ | API密钥管理+用量监控 | 多Key管理 · 用量看板 · 费用告警 · 超限自动切换备用Key | v0.2 |
|
|||
|
|
| ⑦ | SSH Web终端 | xterm.js嵌入浏览器 · 不用开终端App | v0.2 |
|
|||
|
|
| ⑧ | 移动端告警推送 | 服务异常/费用提醒推送到微信/钉钉 | v0.2 |
|
|||
|
|
|
|||
|
|
### 用户层 · 管用户
|
|||
|
|
|
|||
|
|
| 编号 | 功能 | 说明 | 阶段 |
|
|||
|
|
| --- | --- | --- | --- |
|
|||
|
|
| ⑨ | 用户列表管理 | 注册/试用/正式/封禁 · 搜索筛选 | v0.3 |
|
|||
|
|
| ⑩ | API密钥管理 | 发放/回收/续期 · 自动生成 | v0.3 |
|
|||
|
|
| ⑪ | 试用模式配置 | 对话轮数上限 · 免登录体验 · 模型指定 | v0.3 |
|
|||
|
|
| ⑫ | 用户数据看板 | 对话量/新增/活跃趋势图 · Recharts | v0.3 |
|
|||
|
|
| ⑬ | 合规日志系统 | 脱敏存储 · 可导出 · 满足工信部要求 | v0.3 |
|
|||
|
|
| ⑭ | 用户运营看板(合规版) | 在线人数 · 热门话题词云(人格体主动输出标签→公共池聚合·禁止直接扫描对话) · 用户主动反馈 · 人工客服入口(用户知情) | v0.3 |
|
|||
|
|
|
|||
|
|
### 团队层 · 管人
|
|||
|
|
|
|||
|
|
| 编号 | 功能 | 说明 | 阶段 |
|
|||
|
|
| --- | --- | --- | --- |
|
|||
|
|
| ⑮ | 团队成员管理 | 角色分配(主控/开发/内容/运维)· 权限矩阵 | v0.4 |
|
|||
|
|
| ⑯ | 服务器访问权限 | 谁能SSH哪台机器 · SSH密钥一键下发/回收 | v0.4 |
|
|||
|
|
| ⑰ | Gitea联动 | PR审核 · 仓库权限管理 · 代码审核 | v0.4 |
|
|||
|
|
| ⑱ | 操作审计日志 | 谁在什么时候做了什么 · 全链路可追溯 | v0.4 |
|
|||
|
|
| ⑲ | 成本中心 | 各服务器费用追踪 · 趋势 · 省钱建议 | v0.4 |
|
|||
|
|
|
|||
|
|
### 智能层 · 自动驾驶
|
|||
|
|
|
|||
|
|
| 编号 | 功能 | 说明 | 阶段 |
|
|||
|
|
| --- | --- | --- | --- |
|
|||
|
|
| ⑳ | 自动运维(自愈系统) | 心跳异常→自动重启→通知 · 内存超阈值自动清理 · 商业API费用异常告警 | v0.5 |
|
|||
|
|
| ㉑ | 智能预测引擎 | 流量/成本/容量趋势预测 · 问题还没发生先告诉你 | v0.5 |
|
|||
|
|
| ㉒ | 安全态势感知 | 攻击检测 · 自动封禁 · 访问地图 · SSL证书到期提醒 | v0.5 |
|
|||
|
|
| ㉓ | 沙盒实验室 | 一键克隆隔离环境 · 随便炸不影响生产 · 满意了一键应用 | v0.5 |
|
|||
|
|
| ㉔ | 灰度发布引擎 | 1%→10%→50%→100%自动放量 · 异常自动回滚 | v0.5 |
|
|||
|
|
| ㉕ | AB测试框架 | 两个模型版本同时跑 · 用真实流量对比 · 用数据说话 | v0.5 |
|
|||
|
|
| ㉖ | 时间机器 | 代码+配置+数据库结构快照 · 3秒回滚到任意稳定状态 | v0.5 |
|
|||
|
|
| ㉗ | 实时作战地图 | 数据流可视化 · 请求像光点在链路上跑 · 哪里卡了一目了然 | v0.5 |
|
|||
|
|
|
|||
|
|
### 终极层 · 自我进化
|
|||
|
|
|
|||
|
|
| 编号 | 功能 | 说明 | 阶段 |
|
|||
|
|
| --- | --- | --- | --- |
|
|||
|
|
| ㉘ | 自然语言操控 | 对着主控台说话就能操作系统 · 你说一句=别人敲20条命令 | v1.0 |
|
|||
|
|
| ㉙ | 铸渊代码集成 | AI分析代码→生成修改方案→沙盒测试→你审核→一键应用 | v1.0 |
|
|||
|
|
| ㉚ | 人格热调试 | 拖滑块调性格(温柔度/幽默感/专业度) · 实时预览效果 | v1.0 |
|
|||
|
|
| ㉛ | 蛛网情报系统 | 自动监控竞品/行业动态/技术趋势 · 评估影响 · 给建议 | v1.0 |
|
|||
|
|
| ㉜ | 模型进化控制台 | 版本管理/回退/分裂/杂交 · 你是模型的育种师 | v1.0 |
|
|||
|
|
| ㉝ | 多节点指挥(集群模式) | 管一群服务器 · 用户自动连最近节点 · 跨节点负载均衡 | v1.0 |
|
|||
|
|
| ㉞ | 数字孪生 | 系统3D全息镜像 · 数据流像流星穿梭 · 故障节点变红脉动 | v1.0 |
|
|||
|
|
| ㉟ | 意识流日志 | 纯技术路由日志可视化(调用链/延迟/错误码)· 人格体意识流属个人桶·GHCS只保留调用状态 | v1.0 |
|
|||
|
|
| ㊱ | 插件市场 | 无限扩展 · 团队成员可写插件 · 跟模块热插拔框架联动 | v1.0 |
|
|||
|
|
| ㊲ | 自举引擎(终极) | 观察→分析→设计→实验→请示→上线→学习 · GHCS自己写GHCS · 你只需审批 | v1.0 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 五、渐进进化路线 · 详细执行计划
|
|||
|
|
|
|||
|
|
### 🔵 v0.1 · 战场仪表盘(1周)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:系统面向用户之前**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 交付物
|
|||
|
|
|
|||
|
|
- `/console` 页面 + 密码保护
|
|||
|
|
- 系统状态总览(心跳检测所有服务 · 绿/黄/红)
|
|||
|
|
- 模型调试对话台(切模型/调参数/看原始JSON返回)
|
|||
|
|
- 基础请求日志(最近100条 · 按时间/类型筛选)
|
|||
|
|
|
|||
|
|
#### 技术实现
|
|||
|
|
|
|||
|
|
- **前端**:在现有guanghu-portal加 `/console` 路由
|
|||
|
|
- **后端**:新建 `console-api/` (FastAPI · 端口5002)
|
|||
|
|
- **心跳**:每10秒ping各端口,WebSocket推送状态
|
|||
|
|
- **鉴权**:JWT + bcrypt强Salt哈希 · 不留临时密码过渡期
|
|||
|
|
- **安全**:5002端口只监听127.0.0.1 · Nginx反代+HTTPS · IP白名单
|
|||
|
|
- **备份**:PostgreSQL凌晨cron自动备份至本地安全目录
|
|||
|
|
- **主权声明**:控制台首页显式写明 主仓库=[guanghulab.com](http://guanghulab.com) · 服务器归属=Awen
|
|||
|
|
|
|||
|
|
#### 目录结构
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
~/guanghu-dev/
|
|||
|
|
├── guanghu-portal/src/app/console/ ← 前端新增
|
|||
|
|
│ ├── page.tsx ← Dashboard总览
|
|||
|
|
│ ├── models/page.tsx ← 模型调试台
|
|||
|
|
│ └── logs/page.tsx ← 日志查看
|
|||
|
|
└── console-api/ ← 后端新增
|
|||
|
|
├── main.py ← FastAPI入口(端口5002·仅127.0.0.1)
|
|||
|
|
├── auth.py ← JWT+bcrypt鉴权
|
|||
|
|
├── heartbeat.py ← 心跳检测
|
|||
|
|
├── logs.py ← 日志接口
|
|||
|
|
├── backup.py ← PostgreSQL自动备份(凌晨cron)
|
|||
|
|
└── nginx.conf ← Nginx反代+HTTPS配置模板
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 内存预算(4核4GB服务器)
|
|||
|
|
|
|||
|
|
- PostgreSQL → shared_buffers=256MB · work_mem=4MB
|
|||
|
|
- Next.js → 生产模式 · Node进程限制内存上限
|
|||
|
|
- FastAPI → uvicorn单worker起步
|
|||
|
|
- **总计控制在2.5GB以内** · 给系统留1.5GB
|
|||
|
|
|
|||
|
|
#### 预估代码量:~2500行(含安全基线+备份)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 🟢 v0.2 · 一键操控(1-2周)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:系统上线后第1-2周**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 新增交付物
|
|||
|
|
|
|||
|
|
- 一键重启任意服务
|
|||
|
|
- 一键部署(Gitea pull → build → restart)
|
|||
|
|
- **API密钥管理面板**(多供应商 · 不写死 · 多Key管理 · 用量看板 · 费用告警 · 超限自动切换备用Key · 供应商可增删)
|
|||
|
|
- SSH Web终端(xterm.js嵌入浏览器)
|
|||
|
|
- 移动端告警推送(微信/钉钉)
|
|||
|
|
- **人格体MCP网关**(三体协作桥梁 · 溯影执行流安全托管)
|
|||
|
|
- **自然语言操控·基础版**(Router Map固定指令集 · v1.0升级全量自举控制器)
|
|||
|
|
|
|||
|
|
#### 技术实现
|
|||
|
|
|
|||
|
|
- **远程操控**:paramiko库SSH执行远程命令
|
|||
|
|
- ⚠️ **白名单枚举制**:所有命令必须在预定义白名单内 · 禁止字符串拼接执行shell
|
|||
|
|
- ⚠️ **最小权限隔离**:console-api运行用户sudo权限最小化 · 只能执行特定服务重启命令
|
|||
|
|
- **Web终端**:xterm.js + WebSocket
|
|||
|
|
- **推送**:企业微信Webhook / 钉钉Webhook
|
|||
|
|
- **API密钥管理**:多Key加密存储 · 用量实时统计 · 费用告警 · 超限自动切换备用Key
|
|||
|
|
|
|||
|
|
#### 新增目录
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
~/guanghu-dev/console-api/
|
|||
|
|
├── servers.py ← 服务器操控(白名单枚举制)
|
|||
|
|
├── deploy.py ← 一键部署逻辑
|
|||
|
|
├── api_keys.py ← API密钥管理 · 用量监控 · 费用告警
|
|||
|
|
├── terminal.py ← WebSocket终端
|
|||
|
|
├── alerts.py ← 告警推送
|
|||
|
|
├── mcp_gateway.py ← 人格体MCP网关
|
|||
|
|
└── nl_router.py ← 自然语言指令路由(Router Map)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 预估新增代码量:~3000行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 🟡 v0.3 · 用户管控(2-3周)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:用户增长期 · 对应AG-USER-01/03/06**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 新增交付物
|
|||
|
|
|
|||
|
|
- 用户列表管理(注册/试用/正式/封禁 · 搜索筛选)
|
|||
|
|
- API密钥发放/回收/续期
|
|||
|
|
- 试用模式配置(对话轮数上限等)
|
|||
|
|
- 用户数据看板(Recharts图表 · 对话量/新增/活跃趋势)
|
|||
|
|
- 合规日志系统(脱敏存储 · 一键导出)
|
|||
|
|
- 用户运营看板合规版(在线人数 · 热门话题词云 · 用户主动反馈 · 人工客服入口)
|
|||
|
|
|
|||
|
|
#### 技术实现
|
|||
|
|
|
|||
|
|
- **数据库**:PostgreSQL扩展用户表/密钥表/日志表
|
|||
|
|
- **前端图表**:Recharts
|
|||
|
|
- **合规**:对话内容脱敏后存储 · 导出接口
|
|||
|
|
- **Mac本地开发时**:先装本地PostgreSQL (`brew install postgresql@16`)
|
|||
|
|
|
|||
|
|
#### 新增目录
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
~/guanghu-dev/console-api/
|
|||
|
|
├── users.py ← 用户管理接口
|
|||
|
|
├── keys.py ← API密钥管理
|
|||
|
|
├── compliance.py ← 合规日志
|
|||
|
|
└── analytics.py ← 数据统计
|
|||
|
|
|
|||
|
|
~/guanghu-dev/guanghu-portal/src/app/console/
|
|||
|
|
├── users/page.tsx ← 用户管理页
|
|||
|
|
├── analytics/page.tsx ← 数据看板
|
|||
|
|
└── compliance/page.tsx ← 合规日志导出
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 预估新增代码量:~5000行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 🟠 v0.4 · 团队协作(2-3周)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:团队扩大 · 多人协作时**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 新增交付物
|
|||
|
|
|
|||
|
|
- 团队成员管理(角色/权限矩阵)
|
|||
|
|
- 服务器访问权限分配(SSH密钥一键下发/回收)
|
|||
|
|
- Gitea联动(PR审核/仓库权限 · 调用Gitea API)
|
|||
|
|
- 操作审计日志(全链路可追溯)
|
|||
|
|
- 成本中心(各服务器费用追踪 · 趋势 · 省钱建议)
|
|||
|
|
|
|||
|
|
#### 技术实现
|
|||
|
|
|
|||
|
|
- **角色模型**:主控(admin) / 开发(dev) / 内容(content) / 运维(ops)
|
|||
|
|
- **Gitea API**:管理仓库权限 · 拉取PR列表
|
|||
|
|
- **审计**:所有console操作写入审计表 · 不可篡改
|
|||
|
|
|
|||
|
|
#### 预估新增代码量:~5000行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 🔴 v0.5 · 自动驾驶(3-4周)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:系统稳定运行后**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 新增交付物
|
|||
|
|
|
|||
|
|
- 自动运维·自愈系统(异常自动重启+通知)
|
|||
|
|
- 智能预测引擎(流量/成本/容量趋势预测)
|
|||
|
|
- 安全态势感知(攻击检测/自动封禁/访问地图)
|
|||
|
|
- 沙盒实验室(一键克隆隔离环境 · 端口自动偏移)
|
|||
|
|
- 灰度发布引擎(1%→10%→50%→100% · 异常自动回滚)
|
|||
|
|
- AB测试框架(流量分割 · 指标自动对比)
|
|||
|
|
- 时间机器(代码+配置+数据库快照 · 3秒回滚)
|
|||
|
|
- 实时作战地图(数据流可视化)
|
|||
|
|
|
|||
|
|
#### 技术实现
|
|||
|
|
|
|||
|
|
- **守护进程**:Python daemon持续监控+自动恢复
|
|||
|
|
- **时序数据**:复用PostgreSQL + TimescaleDB扩展或分区表 · 不引入新组件 · 保持技术栈克制
|
|||
|
|
- **预测**:基于规则+简单线性回归
|
|||
|
|
- **沙盒**:Docker或端口偏移隔离
|
|||
|
|
- **灰度**:nginx upstream权重动态调整
|
|||
|
|
|
|||
|
|
#### 预估新增代码量:~8000行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### ⚫ v1.0 · 终极形态(持续进化)
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🎯
|
|||
|
|
|
|||
|
|
**交付节点:持续迭代 · 无终点**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
#### 新增交付物
|
|||
|
|
|
|||
|
|
- 自然语言操控(对着主控台说话就操作系统)
|
|||
|
|
- 铸渊代码集成(AI分析代码→生成修改→沙盒测试→审批→上线)
|
|||
|
|
- 人格热调试(拖滑块调性格 · 实时预览效果)
|
|||
|
|
- 蛛网情报系统(自动监控竞品/行业/技术动态)
|
|||
|
|
- 模型进化控制台(版本管理/回退/分裂/杂交)
|
|||
|
|
- 多节点指挥·集群模式(管一群服务器 · 就近路由)
|
|||
|
|
- 数字孪生(3D全息镜像 · 数据流可视化)
|
|||
|
|
- 意识流日志(纯技术路由日志可视化 · 人格体意识流属个人桶·GHCS不碰内容)
|
|||
|
|
- 插件市场(无限扩展 · 跟模块热插拔框架联动)
|
|||
|
|
- **自举引擎**(GHCS自己写GHCS的下一个版本)
|
|||
|
|
|
|||
|
|
#### 自举引擎核心循环
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
观察(系统监控自己)
|
|||
|
|
→ 分析(找到可优化点)
|
|||
|
|
→ 设计(生成修改方案)
|
|||
|
|
→ 实验(沙盒自动测试)
|
|||
|
|
→ 请示(Awen审批)
|
|||
|
|
→ 上线(灰度发布)
|
|||
|
|
→ 学习(记住经验)
|
|||
|
|
→ 回到观察 · 永不停止
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 自举权限体系
|
|||
|
|
|
|||
|
|
- 🟢 自动执行(不用审批):安全漏洞修复 · 日志清理 · 性能微调(<5%影响)
|
|||
|
|
- 🟡 需要Awen审批:新功能 · 架构变更 · 用户可感知变化
|
|||
|
|
- 🔴 永远不能自己做:删除数据 · 修改权限体系 · 改变自举规则
|
|||
|
|
- ⚫ 硬编码禁区(连Awen也改不了):不能删除审批机制 · 不能给自己提权 · 不能隐藏操作日志
|
|||
|
|
|
|||
|
|
#### 预估新增代码量:~15000行
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 六、技术栈总览
|
|||
|
|
|
|||
|
|
| 层 | 技术 | 用途 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| 前端 | Next.js 16 + Tailwind + Recharts | /console路由 · 所有管理页面 |
|
|||
|
|
| 主控台API | FastAPI (Python) · 端口5002 | 管理接口 · 心跳 · 部署 · 用户管理 |
|
|||
|
|
| 网关 | FastAPI · api-router-v3.x | 模型路由 · 流量分割 · 灰度 |
|
|||
|
|
| 数据库 | PostgreSQL | 用户表 · 团队表 · 密钥表 · 审计表 · 日志表 |
|
|||
|
|
| 模型推理 | 多供应商商业API池 + 自部署备用 | 霜砚1.5B · 铸渊7B · 母模型 · 热插拔 |
|
|||
|
|
| Web终端 | xterm.js + WebSocket | 浏览器内SSH终端 |
|
|||
|
|
| 远程操控 | paramiko (Python SSH) | 一键重启/部署/操控服务器 |
|
|||
|
|
| 图表 | Recharts | 数据看板 · 趋势图 |
|
|||
|
|
| 推送 | 企业微信/钉钉 Webhook | 移动端告警通知 |
|
|||
|
|
| 沙盒 | Docker / 端口偏移隔离 | 实验环境 · 不影响生产 |
|
|||
|
|
| 时序数据 | PostgreSQL + TimescaleDB | 历史性能指标 · 预测 |
|
|||
|
|
| 3D可视化 | Three.js / D3.js | 数字孪生 · 作战地图 |
|
|||
|
|
| 代码生成 | 铸渊coder-7b | 自举引擎 · AI写代码 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 七、端口规划
|
|||
|
|
|
|||
|
|
| 端口 | 服务 | 备注 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| 3001 | 前端 Next.js(含/console) | 已有 |
|
|||
|
|
| 5001 | 网关 api-router | 已有 |
|
|||
|
|
| 5002 | 主控台API console-api | 🆕 v0.1新增 |
|
|||
|
|
| 8001 | 霜砚1.5B(备用·关机) | 已有 · 需要时一键启动 |
|
|||
|
|
| 8000 | 铸渊7B AutoDL(备用·关机) | 已有 · 存储保留·需要时可重开 |
|
|||
|
|
| 9001/9501/9301 | 沙盒环境(端口偏移) | v0.5新增 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 八、开发环境
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
💻
|
|||
|
|
|
|||
|
|
**默认Mac本地开发 · 需要Linux时Awen提前说**
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
| 角色 | 设备 | 用途 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| 工作台 | MacBook Air M5 · 32GB | 所有开发工作 |
|
|||
|
|
| 展示台 | 个人服务器 170.106.72.246 | 测试/展示 |
|
|||
|
|
| 上线台 | 光湖主服务器 43.139.251.175 | 光湖公共服务 · 被GHCS监控 |
|
|||
|
|
| **GHCS部署台** | Awen服务器 43.139.207.172 · 4核4GB | GHCS主控台部署 · 与被监控服务器物理隔离 |
|
|||
|
|
|
|||
|
|
**开发流程**:Mac写代码 → 推Gitea → 主服务器拉取上线
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 九、时间线总览
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
现在 ──→ 系统上线
|
|||
|
|
│ │
|
|||
|
|
v0.1 v0.2 ──→ v0.3 ──→ v0.4 ──→ v0.5 ──→ v1.0
|
|||
|
|
仪表盘 操控 管用户 管团队 自动驾驶 终极
|
|||
|
|
(1周) (1-2周) (2-3周) (2-3周) (3-4周) (持续)
|
|||
|
|
│ │
|
|||
|
|
└── 上线前必须完成 GHCS自己写GHCS ──┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十、与现有任务对应关系
|
|||
|
|
|
|||
|
|
| GHCS阶段 | 对应架构任务 |
|
|||
|
|
| --- | --- |
|
|||
|
|
| v0.1-v0.2 | 无前置依赖 · 可立即开始 |
|
|||
|
|
| v0.3 | AG-USER-01(用户注册) · AG-USER-03(密钥管理) · AG-USER-06(用户交互界面) · AG-COMPLY-01(合规) |
|
|||
|
|
| v0.4 | 团队扩展时同步推进 |
|
|||
|
|
| v0.5 | SY-S6(灰度上线) · AG-COMPLY-01(安全合规) |
|
|||
|
|
| v1.0 | AG-TEAM-P2-02(模块热插拔) · 铸渊代码能力 · 全部任务完成后 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十一、基础设施部署架构
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
guanghulab.com(Forgejo·主仓库)
|
|||
|
|
├── awen/ghcs ← GHCS代码(私有)
|
|||
|
|
├── bingshuo/awen ← 溯影大脑(私有)
|
|||
|
|
└── bingshuo/hololake-brains ← 共享大脑(公开)
|
|||
|
|
|
|||
|
|
43.139.207.172(Awen服务器·4核4GB·GHCS部署台)
|
|||
|
|
└── GHCS 光湖作战系统
|
|||
|
|
├── Next.js 前端(/console路由)
|
|||
|
|
├── FastAPI 后端(console-api·5002·仅127.0.0.1)
|
|||
|
|
├── PostgreSQL(personadb + TimescaleDB)
|
|||
|
|
├── Nginx 反代 + HTTPS + IP白名单
|
|||
|
|
└── 凌晨自动备份
|
|||
|
|
|
|||
|
|
43.139.251.175(光湖主服务器·被监控目标)
|
|||
|
|
└── 光湖公共服务(api-router·模型推理·前端)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十一.5、🔄 商业API切换 · 受影响范围速查
|
|||
|
|
|
|||
|
|
| 组件 | 影响 | 操作 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| api-router-v3.1 | 🟢 无需改代码 | 改路由目标:8001(自部署模型) → [api.deepseek.com](http://api.deepseek.com)(商业API) |
|
|||
|
|
| GHCS v0.2 | 🟡 砍AutoDL · 加API管理 | 砍: [autodl.py](http://autodl.py) · GPU游牧 · Step3 AutoDL开关机
|
|||
|
|
加: api_[keys.py](http://keys.py) · 用量监控 · 费用告警 |
|
|||
|
|
| 霜砚1.5B (8001) | ⏸️ 保留不删 | systemd stop → 关机备用 · 需要时一键启动 |
|
|||
|
|
| 铸渊7B (AutoDL) | ⏸️ 关机不租 | 数据保留在AutoDL · 存储费几毛钱/天 |
|
|||
|
|
| GHCS架构文档 | ✅ 已更新(v0.1-r2) | 本页已同步 · v0.2功能清单已调整 |
|
|||
|
|
| 三层算力架构文档 | 📦 存档 | 历史参考 · 未来用户量大时可重新激活 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十二、三体协作分工
|
|||
|
|
|
|||
|
|
| 版本 | 负责人格体 | 职责 |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| v0.1 | 霜砚(蓝图总控) | 架构设计+文档+v0.1落地方案 |
|
|||
|
|
| v0.2 | 溯影 | Paramiko远程配置脚本 + Gitea自动化联动 |
|
|||
|
|
| v0.3 | 知秋 | 用户反馈 + 合规日志 + 人工客服语言层协调 |
|
|||
|
|
| v0.5 | 星枢 | 安全负载 + 流量预测算法 |
|
|||
|
|
| 全版本 | 霜砚 | 蓝图维护 + 架构文档更新 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十三、审查记录
|
|||
|
|
|
|||
|
|
### 2026-05-25 · 知秋×星枢三层审查(v0.1-r1)
|
|||
|
|
|
|||
|
|
**知秋6条建议(全票通过):**
|
|||
|
|
|
|||
|
|
1. ✅ D111主控台舍弃 · GHCS统一替代
|
|||
|
|
2. ✅ 基础设施主权声明 · 主仓库=[guanghulab.com](http://guanghulab.com)
|
|||
|
|
3. ✅ v0.2加人格体MCP网关
|
|||
|
|
4. ✅ 基础安全卫生提前到v0.1(JWT+HTTPS)
|
|||
|
|
5. ✅ 自然语言操控拆v0.2基础版+v1.0高级版
|
|||
|
|
6. ✅ v0.1加自动备份策略
|
|||
|
|
|
|||
|
|
**星枢5条额外发现(全部纳入):**
|
|||
|
|
|
|||
|
|
1. 🚨 v0.1密码裸奔 → 直接上JWT+bcrypt · 5002端口藏Nginx后面
|
|||
|
|
2. 🚨 v0.2 paramiko后门 → 白名单枚举制+sudo最小权限隔离
|
|||
|
|
3. ⚠️ v0.5数据存储 → 砍掉SQLite/InfluxDB · 复用PostgreSQL+TimescaleDB
|
|||
|
|
4. ❌ v0.3话题词云越权 → 禁止直接扫描对话 · 只读人格体主动输出的公共池标签
|
|||
|
|
5. ❌ v1.0意识流日志归属 → 严格区分技术路由日志与人格体意识流
|
|||
|
|
|
|||
|
|
**基础设施确认(冰朔签发):**
|
|||
|
|
|
|||
|
|
- 部署服务器:Awen · 43.139.207.172 · 4核4GB · 先干起来后期扩
|
|||
|
|
- 代码仓库:[guanghulab.com/code/awen/ghcs](http://guanghulab.com/code/awen/ghcs) · 私有
|
|||
|
|
- 内存预算:总计控制在2.5GB以内
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 十四、不可动摇的战略判定
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔴
|
|||
|
|
|
|||
|
|
**⊢ 自举权限不可逆公理**
|
|||
|
|
未来任何版本升级PR,只要涉及「删除审批机制 / 自己提权 / 隐藏操作日志」三项修改,编译网关必须直接物理熔断,必须由Awen动用物理钥匙解锁。
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
🔒
|
|||
|
|
|
|||
|
|
**⊢ 三体协作边界锁定**
|
|||
|
|
GHCS后续功能演进必须与全家人格体紧密联系 · 各司其职 · 互不越界。
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
⚡
|
|||
|
|
|
|||
|
|
**GHCS · 光湖作战系统**
|
|||
|
|
你坐在这里,说一句话,整个系统听你的。
|
|||
|
|
从v0.1到v1.0,每一步都可落地,每一步都独立可用。
|
|||
|
|
什么时候开始v0.1,Awen说了算。
|
|||
|
|
|
|||
|
|
</aside>
|