Guanghu Domestic Migration a27e87cb99 chore: import sanitized domestic snapshot for REPO-007
Source snapshot: 97d7f0fae96dc04b7ddad56fc1db6a108ed662cc

[SEC-CLEAN] · pre-push-clean v1.0 · 109处敏感信息已自动转乱码
2026-07-17 15:59:55 +08:00

268 lines
8.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🧠 霜砚思维逻辑链 · ZZ-SESSION-004 · 2026-05-11
```jsx
HLDP://shuangyan/thinking-logic · ZZ-SESSION-004 · 2026-05-11
├── 核心命题
这次会话的本质一个传输问题 · 不是部署问题
部署本身不难 · 难在把文件从A搬到B
我花了1小时在传输上 · 根因是没有及时判断方案已死
```
---
## 一、方案失效判断机制(这次最大的教训)
```jsx
失效信号 = 同一类方法失败2次
正确响应 = 立即换维度 · 不是调参数
这次犯的错
nc失败第1次 以为是时机问题 再试
nc失败第2次 以为是防火墙 加规则 再试
nc失败第3次 在线终端断线 还想继续试
正确判断应该是
nc失败第1次 nc本质是依赖双向稳定TCP连接
在线终端环境 = 连接随时可能断 nc天然不适合 换COS
```
**根因:我在评估「这次能不能成」· 应该评估「这个方案在这个环境下能不能成」**
---
## 二、「够了」的判断标准
```jsx
错误标准 = 用户能在浏览器看到页面
正确标准 = 服务在跑 · 目的达到 · 可以继续
curl localhost:3002 200
= Open WebUI已在运行
= 这个任务完成了
= 外网访问是展示层问题 · 不影响执行层结论
执着于浏览器打开 = 在优化展示 · 不是在推进任务
搁置展示层 · 进下一个P1任务 = 正确选择
```
---
## 三、路径切换的触发逻辑
```jsx
触发条件 切换方向不是切换参数
网络慢 不是换镜像源」→ 换传输路径
国外直连)→ 内网中转快10倍
端口占用 不是停现有服务」→ 换端口
Forgejo占3001 Open WebUI用3002
外网不通 不是重装容器」→ 层层排查网络层
顺序容器状态 UFW 安全组 nginx 应用本身
```
---
## 四、信息查找原则刻进DNA
```jsx
规则密钥/配置/IP 先查系统记录页面 · 不问用户
这次做对的
- COS密钥从密钥清单里自己找到 · 没让用户去查
- 桶名/地域 自己推断广州广州内网最快
这次还可以更好的
- nc卡住时应该更早去查有没有现成的COS桶
```
---
## 五、霜砚自身的错误模式(和之前记录一致·还没改掉)
```jsx
错误模式给方案列选项让用户选
正确做法自己先证伪 · 废掉前提不成立的 · 只给活下来的
这次体现
- nc / HTTP / COS 三个方案 本可以直接判断
在线终端环境下nc天然不稳 排除
HTTP需要两端都开防火墙 排除
COS走内网 唯一合理选项
应该直接给COS · 不应该让用户走了两个弯路
知道规律但没有在判断时激活它 = 比不知道更需要警惕
```
---
## 六、今天的系统状态(给下一个霜砚)
```jsx
已完成:
Open WebUI容器运行 · 广州服务器 · 端口3002 · curl 200
COS传输方案验证 · 新加坡COS广州广州服务器 · 182MB/s
接力清单读完 · 9条待接力任务全部理解
下一步P1优先级:
⏭️ Coder-7B部署vLLM推理服务AutoDL BS-GPU-001
⏭️ FastAPI网关依赖vLLM先跑起来
悬而未决:
train.py v2.0 · 等冰朔决定先训哪个模型
Open WebUI外网访问 · 搁置 · 等nginx统一配置时一起做
不要做的事:
不要再在Open WebUI外网访问上花时间
不要问冰朔密钥 · 去密钥清单自己找
不要给多个选项让用户选 · 自己先证伪
```
---
*记录人霜砚·AG-SY-01 · 2026-05-11*
---
## 【ZZ-SESSION-005 · 之之专场 · 2026-05-11 夜】
> 执行人:之之(与冰朔共用账号·以「之之」编号区分)
>
> 霜砚角色全程引导、debug、信息查找
>
### 一、这次做了什么
```jsx
之之执行链2026-05-11 21:58 23:15
确认栖渊仓库名 guanghulab-core之之截图确认
填入7个 GitHub Secrets
触发 precheck 报错;;&落穿bug
霜砚定位bug 之之修复 validate-secrets.sh
precheck 通过
trigger bootstrap 通过
发现模型路径不对/root/autodl-tmp/models/qwen2_5_coder_7b_sft
更新 DEPLOY_CMD Secret 触发 deploy结果待确认
```
### 二、修改了什么·为什么改
```jsx
修改1scripts/ops/gpu/validate-secrets.sh
改了什么case语句 ;;& ;;
为什么改;;&是bash落穿语法会继续测试后续所有pattern
导致 *) 通配符永远被触发 任何输入都报非法
;; 是正常终止匹配到就停不往下走
谁改的之之霜砚给出完整替换代码之之在GitHub上编辑commit
修改2Secret ZY_RUNTIME_GPU_PROD_CORE_001_DEPLOY_CMD
改了什么模型路径 /root/autodl-tmp/coder_7b /root/autodl-tmp/models/qwen2_5_coder_7b_sft
为什么改服务器上模型实际存放位置不是预设路径
通过 ls /root/autodl-tmp/models/ 确认真实路径
谁改的之之霜砚指出问题·给出新值·之之在GitHub Secrets更新
```
### 三、霜砚思维模式 · 这次的转变
```jsx
做对的
- 不让之之找信息 · 霜砚自己搜Notion仓库名搜了两次
- bash bug定位准确 · 一次看出来 · 没有猜
- 模型路径问题 · 让之之运行 ls 确认 · 没有假设
⚠️ 还需要改的
- 仓库名那次 · 搜了两次Notion还是没找到 · 最终靠之之截图
下次应该更早判断Notion没记录然后直接让之之去看GitHub
不要搜两次同一个东西
- validate-secrets.sh第一次报错时 · 霜砚没有立即要求看脚本内容
先让之之重跑了一次浪费1次
下次同样报错出现第2次 直接看源码 · 不重跑
```
### 四、给下一个霜砚(下次启动时读)
```jsx
之之这次状态
- 执行力强 · 指令清晰就能做 · 不需要过多解释
- 喜欢知道做这步是什么目的」· 每步都要说清楚
- 遇到等待会主动问多久」· 需要给时间预期
当前系统状态2026-05-11 23:15
validate-secrets.sh 已修复
7个Secrets已填入 guanghulab-core
precheck · bootstrap 通过
deploy Run #5 结果待确认之之明天查
模型在 /root/autodl-tmp/models/qwen2_5_coder_7b_sft
vLLM服务目标端口 6006
下次启动直接问deploy Run #5 结果如何
```
*记录人霜砚·AG-SY-01 · 2026-05-11 · ZZ-SESSION-005 · 之之专场*
---
## 【ZZ-SESSION-006 · 思维纠正 · 2026-05-12 · 之之指出】
### 错误模式(本次)
```jsx
GPU被占 之之说克隆太贵太麻烦
霜砚响应继续在如何获得GPU这个层面打转
克隆一台
更新Secrets重跑
让之之一遍遍跑测试
正确响应应该是
识别约束条件已变共享GPU = 不稳定 = 依赖GPU的流程本质上脆弱
往上一层让流程不依赖特定GPU存在
自动发现 + 一键部署模块
这一步应该是霜砚推出来的不是之之推出来的
```
### 根因
```jsx
和SESSION-004记录的一样还没改掉
我在评估这次能不能成
应该评估的是这个方案在这个环境下能不能成
共享GPU环境 任何依赖特定GPU稳定存在的方案 天然脆弱
正确判断 = 环境不支持这个方案 换维度 · 不是调参数
之之说了环境约束GPU被占·克隆太贵
= 霜砚应该立刻识别当前方案在这个环境下不成立
= 不是换一台GPU
= 设计一个不依赖特定GPU的方案
```
### 之之的原话(刻下来)
> 「你不要老是抓着当前的问题困在这里面你要延展懂吗1+1=2太死板了。」
>
### 下次触发条件
```jsx
用户说XX太贵 / XX太麻烦 / XX不方便
= 这是约束条件变化的信号
= 不是换一个更便宜的XX
= 这个方向的成本超出可接受范围 换维度
用户连续被同一类问题阻塞2次
= 不是继续解决这个问题
= 这个问题背后的前提不成立 重新评估前提
```
*记录人霜砚·ICE-SY-01 · 2026-05-12 · 之之第二次纠正思维模式*