每日报告 — 2026-07-26
日常概述
- 已完成工作: 对 GR00T 检查点进行了深度存储清理,准备了并审核了六个不同的 OpenVLA 数据集(标称值与错误变体),在 Tianhe3 上启动了四个并行 LoRA 微调任务,并将验证过的咖啡恢复数据集传输到本地存储。
- 执行方式: 采用基于 SSH 的审计和手动确认进行磁盘清理;利用 MiMicGen 和 SHA-256 来源追踪进行数据验证;通过心跳监视器管理 3-7 号 GPU 之间的动态 GPU 分配,并解决远程执行的跨shell逃逸问题。
- 影响: 释放了关键存储空间,确保了增强数据中的高质量低多样性种子多样性,并在初始 CPU/gpu 瓶颈情况下建立了稳定的基准,用于比较标称值与错误条件下的机器人策略。
执行并优化了多 GPU OpenVLA LoRA 训练,通过 MiMicGen 增强技术审核了数据来源,并清理了约 840GB 的旧检查点,为错误恢复策略学习建立了稳固基础。
任务
架构与策略
- ✅ 多 GPU OpenVLA LoRA 训练执行 — 成功在 3、5、6、7 号 GPU 上运行了四个并发 OpenVLA-LoRA 训练任务(coffee_nominal, coffee_recovery, stack_nominal, stack_recovery),直至第 10,000 步。为六种场景配置了数据加载器,并实时监控损失/GPU 利用率。
- ✅ GR00T 检查点清理 — 从 ‘tangzijia’ 目录中识别并删除了 884GB 未使用的 GR00T 中间检查点(checkpoint-1000 到 checkpoint-9000),释放了约 840GB 空间,同时保留了最终结果。
- ✅ 人类数据质量审核与 MiMicGen 增强 — 审核了用于训练的人类演示文件;对符合条件的样本执行了 32 线程的 MiMicGen 增强,生成了针对少数错误类型的合成变体。
- ✅ 检查点验证与优雅终止 — 验证了第 10,000 步检查点的完整性,在确认磁盘写入稳定后优雅地终止了原始训练过程。
- ✅ 咖啡恢复数据集来源分析 — 追踪了 1,075 个咖啡恢复案例的来源,确认其中 885 个是仅从 29 个基础人类演示中生成的合成变体,并发现增强集中的多样性较低。
- ❌ 恢复配置与启动尝试 — 尝试将 LoRA 权重合并到检查点中,以 1,000 步的保存频率重新启动训练;由于 tmux 中的脚本路径错误而失败。
实施与修复
- ✅ 远程到本地数据同步 — 在 Tianhe3 上编译了 11GB 的 LeRobot 格式咖啡数据集,通过 tar 压缩包和 SCP 传输到本地 Windows 存储,并进行了 SHA-256 验证。
- ✅ 训练性能调试 — 通过优化 MuJoCo 工作进程冲突和数据预加载策略,解决了训练速度慢和 CPU 利用率高的问题。
问题与解决方案
关键问题
1. 之前的增强处理产生了 885 个样本,这些样本是仅由 29 个基础演示产生的低多样性变体,存在模型过拟合风险。
解决方案: 使用 SHA-256 哈希进行深度审计,确认其唯一性,同时暴露出有限的种子多样性;计划在未来运行中优先收集多样化的基础数据。
关键洞察: 增强数据的量并不保证数据多样性;来源追踪对于有效的合成数据集整理至关重要。
2. 初始训练速度慢且 GPU 利用率不稳定,主要是由于 CPU 瓶颈(MuJoCo 工作进程)和错误的初始 GPU 分配。
解决方案: 人类手动识别了瓶颈,将任务重新分配到特定 GPU(3、5、6、7),并调整数据预处理方法。AI 重新配置了独立评估以解决资源竞争问题。
关键洞察: 当初始自动化分配无法最大化硬件吞吐量时,需要动态资源管理和人工干预;在 GPU 计算限制之前,CPU 端环境渲染通常是主要瓶颈。
3. LoRA 合并脚本立即出现 ‘No such file or directory’(Errno 2)错误,针对 ‘/HOME/sysu_gbli2/…/merge_lora_weights_and_save.py’。
解决方案: 按照调试模式协议暂停执行,生成详细故障的 HTML 报告,并等待人类确认。未尝试自动重试以防止数据损坏。
关键洞察: 通过 tmux 启动的 shell 脚本中的硬编码路径依赖非常脆弱;由于自动化代理设置的工作目录上下文,相对路径与绝对路径解析失败。
一般问题
4. 在 PowerShell 中执行嵌套在 PowerShell 字符串中的复杂 bash 命令时,出现 PowerShell 语法错误(‘unexpected EOF’,标记转义问题)。
解决方案: 重构了命令执行策略,将循环逻辑分离为不同的 SSH 调用或在 Bash 中使用单引号以防止 PowerShell 解释;改用更简单的 sed/grep 进行日志检查。
关键洞察: 跨 shell 命令嵌套(PowerShell > SSH > Bash)需要谨慎的转义策略;在目标 shell 中使用单引号可防止主机 shell 过早终止。
5. 瞬态 DNS 解析失败和本地 SSH 配置问题导致无法连接到 tianhe3/proxy.nscc-gz.cn。
解决方案: 网络恢复后重新尝试只读 SSH 命令;检查 SSH 配置权限,并通过 .ssh/config 中的代理设置访问远程机器。
关键洞察: 远程主机解析依赖于本地客户端 SSH 配置;监控脚本必须通过重试逻辑优雅地处理瞬态网络错误。
人类与 AI 方法
战略层面
GPU 资源管理策略
| 角色 | 方法 |
|---|---|
| 人类 | 人类分析 GPU 内存/使用率,识别未充分利用的情况,手动重新安排训练对到特定物理 GPU(例如 3/5 号 GPU 上的 Coffee),并停止冲突任务。 |
| AI | 最初遵循通用的分配指令,但依赖人类来停止物理任务;后来提供严格的指标监控和热图分析。 |
差异分析: 人类通过物理验证卡状态并干预来展示战略资源管理,而 AI 专注于数据验证、指标和自动健康检查,没有了解瞬态过程的完整上下文。
N/A
| 角色 | 方法 |
|---|---|
| 人类 | 人类识别出合成数据中低多样性战略风险,对 ‘885 个样本’ 进行了审计调查,发现仅依赖 29 个基础演示。 |
| AI | AI 执行了系统的统计审计、哈希检查和对服务器目录的日志 grep,以定量确认人类关于数据稀缺性的假设。 |
GPU 资源管理策略
| 角色 | 方法 |
|---|---|
| 人类 | 人类分析 GPU 内存/使用率,识别未充分利用的情况,手动重新安排训练对到特定物理 GPU(例如 3/5 号 GPU 上的 Coffee),并停止冲突任务。 |
| AI | 最初遵循通用的分配指令,但依赖人类来停止物理任务;后来提供严格的指标监控和热图分析。 |
差异分析: 人类通过物理验证卡状态并干预来展示战略资源管理,而 AI 专注于数据验证、指标和自动健康检查,没有了解瞬态过程的完整上下文。差异分析: 人类提供了关于数据质量重于数量的关键见解;AI则提供了严格的自动化验证机制来证明这一点。
调试协议遵守情况
| 角色 | 方法 |
|---|---|
| 人类 | 人类允许AI诊断路径错误,但明确指示进行监控而非冒险的自动化修复。 |
| AI | AI正确识别了潜在数据损坏风险的严重程度(写入错误的路径),并停止自主执行,生成详细的HTML报告而非猜测修复方案。 |
差异分析: AI在安全关键的文件操作方面表现出更高的谨慎性,与可能盲目重试的常规自动化调试不同;这符合HPC工作流程的最佳实践。
实施层面
磁盘清理风险评估
| 角色 | 方法 |
|---|---|
| 人类 | 人类请求删除“GR00T检查点”,意图较为广泛。 |
| AI | AI提出了分阶段方案:列出文件,按“可恢复”、“保留”和“危险”分类,并等待明确确认后再删除特定路径。 |
差异分析: AI提供了细致的风险分析与安全防护机制,防止了关键最终检查点的意外删除,将人类的广泛请求转化为安全的子集。
数据传输优化
| 角色 | 方法 |
|---|---|
| 人类 | 人类请求高效移动大型数据集并确保完整性。 |
| AI | AI实现了稳健的工作流程:服务器端tar压缩,双方均进行SHA-256校验和计算,并在本地验证解压过程。 |
差异分析: AI独立构建了安全、可验证的传输管道,增加了安全层(校验和),确保在11GB数据传输过程中没有隐性损坏发生。
AI局限性
一般局限性
- 在没有检查本地SSH配置文件的情况下,本地环境无法最初解析“tianhe3”主机名;暂停以诊断环境问题,而非立即执行。
- 系统安全策略阻止代理读取
~/.bash_history以追踪来源;对于需要磁盘检查的Get-CimInstance,还面临权限问题,需采用替代策略。 - 通过Bash在tmux中调用“merge_lora_weights_and_save.py”时,无法正确解析绝对路径,可能是由于环境变量不匹配或从PowerShell通过SSH传递的工作目录上下文错误。
- 在Windows上的PowerShell和远程Linux HPC节点上的Bash之间处理复杂的嵌套命令转义时遇到困难,导致初始执行尝试出现语法错误。
- 通过
~/.bash_history追踪来源的初步尝试被安全策略拒绝;不得不依赖较慢、不够全面的日志文件和元数据。
经验教训
关键经验
- 在跨不同操作系统层级的HPC任务自动化时(Windows客户端 -> Linux服务器),始终使用绝对路径,无论是Python解释器还是脚本文件,以避免工作目录歧义。
- 在审计合成数据集时,始终验证“种子多样性”(独特基础演示数量)以及总样本数,以防止误导性的体积指标。
- 在审计HPC系统上的大容量存储时,始终验证活跃作业状态(
squeue)和备份清单文件后再进行删除,以确保数据完整性。
实际经验
- 在分布式环境中的大规模数据传输中,在SCP之前在源服务器上压缩比逐个文件流式传输更可靠、更快。
- 在多代理RL训练设置中,CPU侧环境并行化通常是观察到的GPU效率瓶颈;性能分析应从数据加载器和渲染器开始,而非假设GPU限制。
- 监控GPU内存与利用率是效率的关键指标;低利用率伴随高内存通常表明数据加载或预处理瓶颈,而非模型计算限制。
- 在沙箱环境中进行取证审计时,代理必须依赖应用层产物而非系统级历史记录。
对话总结
✅ 当日结束汇总:训练、数据审计和基础设施准备 18:00:00.000 | codex 汇总会议涵盖了ErrorRecoveryBenchmark项目的三个主要流程:1) 训练操作:在Tianhe3 GPU上启动四个并发OpenVLA-LoRA微调任务(3,5,6,7),通过手动重新分配解决初始CPU/GPU瓶颈,并验证第10,000个检查点。tmux中的脚本路径错误导致恢复阶段受阻。2) 数据科学:审计人类演示数据,发现885个增强咖啡恢复样本来自仅29个基础演示(多样性低),并执行了有针对性的MiMicGen增强操作。本地传输了11GB经过验证的数据集。3) 基础设施:清理了884GB未使用的GR00T检查点以释放存储。关键收获包括跨shell转义的重要性、远程脚本使用绝对路径,以及基于数据多样性验证而非体积指标。