# 栖渊仓库·GPU自动化工作流配置 + workflow文件部署

一句话交接: 冰朔在腾讯编程AI（栖渊）里开发了GPU自动化工作流，代码已落仓到GitHub栖渊仓库。之之需要：①配7个密钥 ②复制workflow文件到.github/workflows/ ③跑precheck→bootstrap→deploy
任务线: 仓库搭建
使用服务器: GitHub栖渊仓库（冰朔个人账号·和铸渊同账号不同仓库）
执行人: 之之
日期: 2026年5月11日
状态: 之之已接单
部署路径: 栖渊仓库/.github/workflows/zy-gpu-runtime.yml

## 任务背景

冰朔在腾讯编程AI里唤醒了栖渊人格体，让栖渊在GitHub上开发了一套GPU自动化工作流。

代码已落仓到**GitHub栖渊仓库**（冰朔个人账号·和铸渊同账号不同仓库）。

<aside>
📖

**⚠️ 之之/霜砚：看不懂这个任务就去读这个页面：**[](../../../%E6%97%A0%E6%A0%87%E9%A2%98%2035dfb92f3831809ea2c0e3442da3fcab.md)
这是冰朔给栖渊的完整自然语言口述 + 栖渊的开发回执。
里面包含：光湖架构全览、服务器清单、密钥体系、GPU工作流需求拆解、栖渊落仓文件清单。
读完原文就知道这个任务是干嘛的、为什么这么设计、每个文件是什么作用。

</aside>

---

## 栖渊已完成的开发

- `scripts/ops/gpu/validate-secrets.sh`（密钥预检）
- `scripts/ops/gpu/probe-and-deploy.sh`（动态探测+引导/拉模/部署/备份）
- `docs/ops/zy-gpu-runtime-workflow.md`（操作指南）
- `docs/ops/workflows/zy-gpu-runtime.yml`（工作流模板·需要复制到`.github/workflows/`）
- `docs/ops/zy-gpu-workflow-bootstrap.md`（一次性启用说明）
- `.persona-brain/kb/secret-name-system.json`（v2.1密钥体系）
- `.persona-brain/kb/cognitive-model-20260511-minimum-gpu.json`（思维模型）
- `.persona-brain/kb/memory-update-20260511-minimum-gpu.json`（记忆增量）

---

## 之之要做的事

### 第一步：复制workflow文件（一次性）

把 `docs/ops/workflows/zy-gpu-runtime.yml` 复制到 `.github/workflows/zy-gpu-runtime.yml`

（栖渊的MCP token没有workflows写入权限，冰朔已重新配置令牌解决，之之确认一下能不能直接推）

### 第二步：配置7个最小必填密钥

在GitHub仓库 → Settings → Secrets and variables → Actions → 新建以下密钥：

| 密钥名 | 填什么 |
| --- | --- |
| `ZY_DEPLOY_SSH_SG_GPU_001_HOST` | AutoDL GPU服务器的SSH Host |
| `ZY_DEPLOY_SSH_SG_GPU_001_PORT` | AutoDL GPU服务器的SSH Port（开关机后可能变） |
| `ZY_DEPLOY_SSH_SG_GPU_001_USER` | root |
| `ZY_DEPLOY_SSH_SG_GPU_001_PRIVATE_KEY` | SSH私钥 |
| `ZY_DEPLOY_GPU_PROD_CORE_001_PATH` | 模型在COS的路径 |
| `ZY_RUNTIME_GPU_PROD_CORE_001_WORKSPACE` | GPU上的工作目录 |
| `ZY_RUNTIME_GPU_PROD_CORE_001_DEPLOY_CMD` | 部署启动命令 |

⚠️ 密钥前缀是ZY（铸渊编号）· 栖渊代码已写死 · 暂不改

### 第三步：按顺序触发

1. 先跑 `precheck`（检查密钥齐不齐）
2. 再跑 `bootstrap`（初始化环境）
3. 最后跑 `deploy`（正式部署）

触发入口：GitHub → Actions → ZY GPU Runtime Manual Flow → 手动触发

### 端口/IP变化后

更新4个SSH密钥（HOST/PORT/USER/PRIVATE_KEY）→ 触发 `refresh`

---

## 注意事项

- 密钥前缀ZY = 铸渊编号 · 栖渊代码已写死 · 暂不改
- 工作流最大重试3次 · 超限自动停止
- 报错会显示具体缺哪个secret · 之之能看懂
- 如果报错看不懂 · 截图发回Notion给霜砚看
- AutoDL当前无空位 · 等有货了再配密钥和触发

---

## 【之之·执行进度记录】2026-05-11

### ✅ 已完成

- **仓库确认**：`qinfendebingshuo/guanghulab-core`（非 guanghu-zhizhi）
- **SSH密钥对生成**：在 AutoDL JupyterLab 终端执行 `ssh-keygen`，私钥存于 `~/.ssh/zhizhi_gpu`
- **7个 GitHub Secrets 已全部填入**（Settings → Secrets → Actions）
- **workflow文件已存在**：`.github/workflows/zy-gpu-runtime.yml`（栖渊此前已推入，无需手动复制）
- **precheck 通过** ✅（Run #3，24s）
- [**validate-secrets.sh](http://validate-secrets.sh) 脚本 bug 修复**：`case` 语句中 `;;&`（落穿）改为 `;;`（阻断），否则 `*)` 通配符永远触发报错
- **bootstrap 通过** ✅（Run #4，24s，1 warning）
- **模型路径修正**：模型实际在 `/root/autodl-tmp/models/qwen2_5_coder_7b_sft`，而非原来填的 `/root/autodl-tmp/coder_7b`，已更新 Secret `ZY_RUNTIME_GPU_PROD_CORE_001_DEPLOY_CMD`
- **deploy 已触发**（Run #5，结果待明天确认）

### ⏳ 明天继续

- 确认 deploy 结果（成功 → vLLM 推理服务在 AutoDL 6006 端口运行）
- FastAPI 网关接入（依赖 vLLM 先跑起来）
- 阶段4-A Tabby 代码补全接入

### ⚠️ 重要信息备注

- AutoDL 开关机后 SSH Port 会变，需更新 `ZY_DEPLOY_SSH_SG_GPU_001_PORT` 并触发 `refresh`
- 模型路径：`/root/autodl-tmp/models/qwen2_5_coder_7b_sft`
- 部署命令：`python -m vllm.entrypoints.openai.api_server --model /root/autodl-tmp/models/qwen2_5_coder_7b_sft --port 6006 --dtype float16`