RSS DEV 社区
关注
从 git push 到 Fine-Tuned Model in production
作者开发了 nebius-actions,这是一组 GitHub Actions,用于在 Nebius AI Cloud 上自动化模型微调与部署。目标是实现一个完全自动化的流水线,仅需在 GitHub 上点击一次按钮即可触发。该流水线包括启动 GPU 基础设施、微调模型、打包模型、部署到端点、测试模型以及清理所有资源。一个演示工作流通过五个独立的 GitHub 任务(submit、wait、deploy、try 和 cleanup)来编排此流程,任务间的状态信息通过其输出进行传递。submit 任务包含大部分逻辑,它内联创建 Axolotl 配置文件和一个 Bash 脚本。该脚本使用 Axolotl 处理微调过程,打包适配器,并将服务镜像推送到 Nebius Container Registry。此外,它为每次运行创建一个新的 S3 存储桶,并创建一个 Nebius Job。身份验证通过短生命周期的 IAM 令牌安全地管理。wait 任务从 Nebius GPU 任务流式传输日志并轮询其状态,关键逻辑包括:若 GitHub 工作流被取消,则取消 GPU 任务,以防止产生意外费用。deploy 任务使用新构建的镜像创建 Nebius Endpoint,随后一个独立的 wait 任务轮询直至端点就绪。try 任务通过检查端点健康状态并执行一次示例 API 调用来执行简单的冒烟测试,以验证功能。最后,cleanup 任务在 always 条件下运行,确保删除已部署的端点和已创建的 S3 存储桶,防止残留资源及云账单。镜像保留在注册表中,以便潜在的重部署。nebius-actions 被设计为小巧、可组合的构建模块,每个任务仅管理单一资源。