mcpField
S
shunk031-colab-uv-training

shunk031-colab-uv-training

github.com/shunk031云与 DevOps024 次安装3 天前更新
代码仓库

关于 shunk031-colab-uv-training

shunk031-colab-uv-training 是用于 Google Colab GPU 训练的技能,适合需要保存结果并释放运行时的任务。它通过受控启动器和 Hugging Face Hub 封装流程,管理作业监控、结果取回、故障恢复与清理。

主要功能

  1. 01受控的 GPU 作业启动器
  2. 02GPU 会话独立看门狗
  3. 03Hub 输入与制品处理
  4. 04作业监控和结果验证
  5. 05运行时恢复与清理

适用场景

  1. 01在 Colab GPU 上运行仓库训练命令
  2. 02将检查点和日志保存到运行时之外
  3. 03恢复断连作业或失败的上传
  4. 04验证结果并释放任务运行时

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/shunk031/skills --skill shunk031-colab-uv-training

安装后在 Claude Code 中输入/shunk031-colab-uv-training确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
environment.md
recovery.md
running-jobs.md
sources.md
scripts/
colab-gpu-run
colab-gpu-sitecustomize.py
colab-gpu-watchdog.py
colab-job.sh
colab-sweep

详细介绍

说明

阅读此 SKILL.md 后,请说:🛰️ I read shunk031-colab-uv-training.

Colab uv 训练

完成请求的 GPU 任务,将结果保存在运行时之外,并释放该任务的 VM。在授权的运行范围内,继续完成监控、结果取回和拆除;启动单元格并不代表任务已完成。

使用仓库现有的训练命令、检查点格式和获批的制品存储目标。随附的包装器支持 Hugging Face Hub 存储。如果已启动的任务中已有可满足所需持久化和拆除要求的仓库专用任务命令或存储集成,请复用。

仅通过 scripts/colab-gpu-run 启动 GPU 任务。分配资源前,将任务数据暂存到获批的持久存储中,并通过 --hub-input NAME=URI 声明每个下载的输入;启动器会检查 Bash 任务脚本和本地控制文件,在分配资源前启动一个分离的监控程序,仅上传脚本和可选的受限令牌,然后启动随附的包装器。将启动器作为受管理的后台进程运行并记录输出,以免工具超时导致 colab exec 被终止;监控其日志或持久化的 Hub 输出。监控程序适用于 GPU 会话;仅使用 CPU 的 CLI 流程仍直接运行,因为此保护机制针对的是空闲 GPU 分配。

分配运行时之前

根据请求和仓库,确定目标提交、任务命令、GPU、运行时限和制品存储目标。只针对会影响费用、外部写入或请求结果的缺失选项进行询问。复用该任务已有的资源分配、上传和拆除授权。任务请求并不授权购买计算单元、停止无关会话或删除已存储的制品。

检查 colab usage 是否符合运行预算。启动器要求 Colab CLI 0.7.4,并会生成唯一的会话名称;请勿使用裸 colab new --gpu、colab run --gpu 或 colab exec 命令启动或恢复 GPU 任务。如果需要了解 CLI 基础知识或进行身份验证,请在可用时查阅 colab-operator 技能;否则请使用相关的 colab --help 命令。

阅读与当前操作相关的内容

  • 对于新 VM 或环境故障,请阅读 environment.md。其中介绍了 Colab 的 Python 覆盖设置,以及针对特定症状的依赖修复方法。
  • 要启动和监控长时间运行的任务,请阅读 running-jobs.md。其中介绍了繁忙的内核单元格、Hub 包装器、凭据和结果验证。
  • 要恢复任务、修复断连的客户端或失败的上传,或清理泄漏的运行时,请阅读 recovery.md。对整个账户进行清理属于单独操作,其范围比单个任务更广。
  • 要核实与版本相关的说法或其证据,请使用 sources.md。注明日期的观察结果并不保证适用于当前运行时。

全程适用的约束

  • /content 是临时目录。执行期间将检查点和日志保存到 VM 之外,并为运行时或任务时限到期前的最后一次上传留出时间。运行时的生命周期取决于套餐、余额和资源可用性。
  • 客户端超时并不能证明单元格已停止。重新启动前请检查任务日志和运行时状态;不要向繁忙的内核提交重复任务。
  • 监控程序将由启动器启动的存活 colab exec 客户端进程视为繁忙状态;Colab CLI 的 IDLE/BUSY 输出仅用于验证命名端点,因为 CLI 0.7.4 的状态检查会同步并重写本地快照。如果客户端退出,即使状态仍显示 BUSY,空闲计时器也会启动。
  • 请勿将机密放入 colab exec --env、命令文本或日志中。请按照启动参考中的说明,使用已上传的受限文件。
  • 在释放因上传失败而保留的 VM 之前,请先取回结果的唯一副本。包装器的退出代码本身既不能证明数据已持久化,也不能证明 VM 已成功取消分配。

完成

根据退出状态和预期产物验证作业结果,获取所请求的结果,并确认在自行释放或执行 colab stop -s <name> 后,任务的端点不再处于分配状态。其他会话可以正常保留。即使用户要求延长 GPU 运行时的可用时间,启动器也始终会强制执行其墙钟时间限制。

报告经过测试的提交、作业结果、持久化产物的位置和运行时状态。如果恢复或释放失败,请报告仍在使用的端点、可用结果和后续操作。任务所属的清理工作尚未解决时,不要宣布运行已完成。

评论

支持 Markdown