AWS 宣布为 Amazon SageMaker AI 训练任务(Training Jobs)和 Amazon SageMaker 处理任务(Processing Jobs)推出实例偏好列表(Instance preference lists)功能,帮助用户通过自动检查多个首选实例类型,更快获得按需容量。
AWS 表示,在需求高峰期,用户首选的 GPU 可能无法立即获得;如果任务被绑定到某一种特定的 GPU 配置,可选方案往往只有等待或手动尝试替代方案,这会拖慢实验进度,并把工程团队的精力从模型开发上分散出去。新功能允许用户在创建训练或处理任务时,指定一个最多包含五种可接受实例类型的有序列表。Amazon SageMaker AI 会按优先级顺序评估该列表,并在第一个有可用容量的实例类型上启动任务,从而更快锁定 GPU 资源并开始训练。AWS 称,这消除了手动重试循环、复杂的监控脚本,以及团队有时为可在多种实例类型上运行的任务而投入构建的任务提交管理系统所需的时间,最终带来更快的任务启动、更高的容量利用率。
AWS 描述的用户挑战包括:在需求高峰期,按需获取首选 GPU 实例可能很困难;当训练任务被固定到单一实例类型且该容量无法立即获得时,一些团队可能会向不同类型提交多个请求来寻找可用容量,这种手动流程会拖慢实验周期。对于夜间再训练流水线、生产环境微调运行和计划性数据处理等时间敏感型工作负载,这些延迟可能影响模型的新鲜度和迭代速度。团队采用的应对方式是编写自定义重试脚本,轮询任务状态、取消停滞的请求,并以替代实例类型重新提交;但这些变通方法较为脆弱,无法与 Flexible Training Plans(FTP)等预留容量选项集成,还会带来在多轮训练中不断累积的运维开销。
AWS 指出,核心问题在于将训练任务固定到单一实例类型会造成脆弱性。许多训练工作负载在两三个实例系列上运行效果相当,因此拥有 Flexible Training Plans 的团队需要一种表达偏好顺序的方式,从而可以先尝试预留容量,再回退到使用按需容量的替代实例类型。文中列举了三类场景:团队训练数十亿参数模型时提交多个任务请求以寻找可用容量,而另一种实例类型上其实有同等算力可用;夜间处理流水线被固定到单一类型,在凌晨 2 点因 InsufficientCapacityError 失败,而如果平台在启动时评估了替代类型,任务本可以启动;拥有 Training Plan 的组织希望先评估其预留容量,若计划已用尽,则在无需重新提交的情况下回退到按需的替代类型。AWS 称,这些场景的答案相同:让平台在创建任务时通过一次 API 调用自动评估多个实例类型。
在方案层面,用户不再只请求一种实例类型,而是提供一个最多五种类型的有序优先级列表,Amazon SageMaker AI 会按优先级顺序评估该列表,选择第一个有可用容量的类型并启动任务,无需人工干预。AWS 给出的端到端配置流程如下:
第一步,用户提交任务,并附带最多五种实例类型的有序偏好列表;
第二步,Amazon SageMaker AI 根据受支持的实例类型和资源限制,校验任务配置与偏好列表;
第三步,调度器对有序类型执行一次内存中的扫描,找出第一个有可用容量的类型;
第四步,胜出的实例类型立即完成配置,任务开始执行。