一、结论
预训练大模型文件存储归档优化的核心思路是通过S3兼容对象存储实现冷热数据分层归档、统一生命周期管理,在保障训练调取效率的前提下大幅降低存储成本,接入S3兼容存储通常需要准备Endpoint、AccessKey、SecretKey、Bucket、Region等信息,在支持S3的训练框架、文件管理工具中完成配置即可使用。
二、准备工作
- 兼容S3协议的对象存储服务账号
- 按数据冷热层级规划好的独立存储桶Bucket(可分别设置热数据桶、归档数据桶)
- 对象存储服务提供的Endpoint地址
- 具备读写、归档转换权限的AccessKey、SecretKey
- 存储桶对应Region信息
- 支持S3协议的大模型训练框架插件、批量文件迁移工具或文件管理程序
- 完成冷热分类的预训练数据集、模型权重、训练日志等待归档文件
- 提前梳理完成的存储生命周期规则(例如热数据30天未访问自动转归档)
三、操作步骤
1. 按冷热数据分类创建对应存储桶:为近期需要调用的训练数据集、正在迭代的模型权重等热数据创建标准存储桶,为历史训练数据集、废弃版本权重、陈年训练日志等冷数据创建归档存储桶,创建完成后确认两个桶的访问权限符合业务要求,避免后续训练时无法正常调取。
2. 获取S3接入凭证:在对象存储服务后台获取对应账号的Endpoint、AccessKey、SecretKey、Region信息,确认密钥同时具备两个存储桶的读写、归档转换权限,避免后续操作时出现权限报错。
3. 配置大模型训练框架或文件管理工具的S3适配:如果是直接对接训练框架,安装对应框架的S3兼容插件;如果是先批量迁移文件,打开支持S3协议的文件管理程序(例如Alist、Cloudreve),在存储源选项中选择S3兼容存储类型。
4. 填写S3配置信息:在对应配置页依次填入提前获取的Endpoint、AccessKey、SecretKey、Bucket名称、Region信息,针对归档桶单独勾选允许写入归档类型文件的配置项,避免无法正常上传归档文件。
5. 保存配置并测试连接:点击保存后触发连接测试,提示连接成功则代表配置有效,如果提示连接失败优先核对各个配置项是否存在拼写、格式错误。
6. 批量迁移分类后的预训练文件:将热数据批量上传到标准存储桶,冷数据批量上传到归档存储桶,上传完成后随机抽查3-5个不同大小的文件(例如1GB的数据集分片、10GB的模型权重),确认热数据可正常读取、下载,归档文件也可正常提交解冻申请。
7. 配置生命周期规则实现自动归档:在对象存储后台配置热数据桶的生命周期规则,例如30天未访问的文件自动转归档存储、180天未访问的自动转深度归档,配置完成后触发规则测试,确认符合条件的测试文件可自动转换存储类型。
8. 对接训练调度系统完成适配:将S3存储桶的访问路径配置到训练调度系统中,测试训练任务可直接从热数据桶读取数据集,训练完成后的新权重可自动写入对应存储桶,确认整个流程无需手动干预即可正常运转。
四、常见错误
1. Endpoint填写错误:很多用户容易把控制台的管理地址当成S3访问Endpoint,或者漏写协议前缀、写错域名后缀,导致连接失败,解决方法是直接从对象存储服务的S3接入文档中复制官方提供的Endpoint地址,不要手动拼接。
2. 密钥权限不足:如果AccessKey只配置了单桶的读写权限,没有归档转换权限或者另一个桶的访问权限,会导致文件上传失败、无法自动转归档,解决方法是在后台给对应密钥配置全桶的读写、生命周期管理权限,或者按最小权限原则单独开放需要的权限。
3. 归档文件未解冻直接读取:大模型训练时如果直接调取归档桶中未解冻的文件,会出现读取失败报错,解决方法是提前1-5分钟(根据归档类型不同解冻时间不同)提交待调用归档文件的解冻申请,解冻完成后再调用,或者直接将近期要使用的文件提前转到标准存储桶。
4. 大文件分片上传配置错误:预训练大模型文件通常都是GB甚至TB级,如果S3客户端的分片大小设置过小、分片并发数过低,会导致上传速度极慢甚至中断,解决方法是将分片大小设置为100MB-1GB,并发数根据本地带宽调整为5-20,同时开启断点续传配置。
5. 存储桶权限配置错误:如果存储桶设置了禁止公网访问,但训练集群是公网调用,或者跨VPC访问没有开通对应权限,会导致训练任务读取文件失败,解决方法是根据训练集群的网络环境,单独配置存储桶的访问白名单,或者开启内网访问Endpoint供同地域训练集群调用。
五、示例说明
下面是对接大模型训练框架S3插件的通用配置示例,所有字段均替换为对应服务提供的真实信息即可:
- Endpoint:填写对象存储服务官方提供的S3访问地址,支持HTTP/HTTPS协议
- AccessKey:填写账号下生成的具备对应存储桶读写权限的访问密钥ID
- SecretKey:填写与AccessKey配对的访问密钥凭证
- Bucket:热数据场景填写标准存储桶名称,归档场景填写归档存储桶名称
- Region:根据对象存储服务要求填写对应存储桶的地域标识,部分服务可留空
- 存储类型:热数据选择标准存储,冷归档数据直接选择归档存储类型
- 分片大小:1GB(针对10GB以上大文件建议设置为1GB以上)
- 断点续传:开启
六、更简单的方案
如果不想自己搭建和维护MinIO自建存储集群、不需要投入服务器硬件和运维成本,也可以直接选择成熟的兼容S3协议的云对象存储服务,不需要自己配置存储分层、生命周期规则,开箱即可使用。如果你需要一个兼容S3协议、支持大文件高速上传、适合AI训练数据存储、归档和下载分发的对象存储服务,可以了解 七彩云对象存储,无需自行维护存储集群,按需使用降低存储成本。
七、FAQ
1. 问:预训练大模型的归档文件解冻需要多久,会不会影响训练进度?
答:不同归档类型的文件解冻时间不同,普通归档通常1-5分钟即可解冻完成,深度归档通常需要数小时,建议提前规划训练任务的数据集调用计划,提前1-2天提交需要调用的归档文件解冻申请,或者将高频使用的数据集放在标准存储层,不会影响正常训练进度。
2. 问:预训练大模型文件都是TB级,批量上传会不会占用太多本地带宽?
答:可以开启S3客户端的带宽限速配置,限制上传时的最大带宽占用,或者选择在业务低峰期进行批量数据迁移,部分云对象存储服务还支持离线数据迁移服务,不需要通过公网传输即可完成大规模数据的导入。
3. 问:能不能直接用对象存储作为大模型训练的直接存储源,不需要提前下载到本地服务器?
答:只要你的训练框架支持S3协议接入,就可以直接从对象存储中读取训练数据,不需要提前下载到训练集群的本地硬盘,大幅降低本地存储的成本投入,部分优化过的S3存储服务还可以提供和本地存储相近的读取延迟,满足训练需求。
4. 问:归档存储的成本比标准存储低多少?
答:不同服务商的定价不同,通常归档存储的成本是标准存储的10%-30%,针对大量长期不访问的预训练历史数据,转归档存储可以大幅降低整体存储成本。
八、总结
预训练大模型文件存储归档优化的操作流程核心是先完成数据冷热分类,再通过S3兼容对象存储实现分层存储和自动生命周期归档,既可以满足热数据的低延迟读取需求,又可以大幅降低冷数据的存储成本。这套方案适合各类AI训练团队、大模型开发者、科研机构使用,既可以选择自建S3兼容存储集群,也可以直接使用成熟的云对象存储服务降低运维成本,整体接入流程简单,不需要改动原有训练框架的核心逻辑,即可完成存储架构的优化。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网