Nova Forge SDK:统一企业AI模型定制工具
Nova Forge SDK:简化企业AI中Nova模型定制的无缝方式
大型语言模型(LLM)改变了我们与AI交互的方式,但一种模型并不能满足所有场景。开箱即用的LLM经过广泛通用知识的训练,并为多种用例进行了优化,但在处理特定领域任务、专有工作流或独特业务需求时往往力不从心。企业客户越来越需要能够深入理解其专有数据、业务流程和领域术语的专用LLM。如果没有定制化,你只能接受通用响应,或通过过度的上下文工程寻求折中方案。
Nova定制提供了一套功能,范围从Amazon Bedrock的定制选项(如监督微调SFT和强化微调RFT)到Amazon SageMaker AI的定制能力(包括SFT、直接偏好优化DPO、RFT,以及基于LoRA和全秩的定制)。
当模型在特定数据集上进行微调时,它们常常会损失一些基础能力,包括指令遵循能力、推理技能和广泛的知识专长,这种现象也被称为灾难性遗忘。Amazon Nova Forge提供了一个工具来克服这种权衡,使您能够使用Nova构建自己的前沿模型。Nova Forge客户可以从早期模型检查点开始开发,将他们的数据集与Amazon Nova精选数据混合,并在AWS上安全托管他们的定制模型。有时,这些定制工作流会变得复杂,需要技术、基础设施设置和大量的时间投入,从而构成了较高的入门门槛。
为了解决这个问题,我们推出了Nova Forge SDK,它使LLM定制变得易于上手,使团队能够充分利用语言模型的潜力,而无需面对依赖管理、镜像选择和配方配置等挑战,最终降低了入门门槛。我们将定制视为扩展阶梯中的一个连续过程,因此,Nova Forge SDK支持所有定制选项,范围从Amazon Bedrock一直到使用Amazon Nova Forge能力的Amazon SageMaker AI。
Nova Forge SDK:为开发者量身打造
Nova Forge SDK提供了一个统一的工具包,专为Nova客户和开发者构建。它涵盖了完整的定制生命周期,从数据准备工具、训练作业管理到模型部署,在一个地方提供解决方案。Nova Forge SDK旨在消除LLM定制中无差别的繁重工作,让您可以专注于实验。它通过提供具有智能默认设置和指导的工作流来补充现有工具,同时仍然允许高级用户在需要时访问底层服务SDK的全部功能。这为客户提供了针对常见任务的简化工作流和针对高级用例的完全灵活性。
该SDK可以从三个层面来理解:
- 输入层:这是您传入输入参数的层面,可以包括RuntimeManager对象(包括使用何种硬件、平台以及从权限角度使用哪个IAM角色),以及训练方法、训练数据和您选择覆盖的任何超参数,以及要定制的模型。
- 定制器层:这是中间层,接收这些输入,在后台构建正确的配方配置,并使用传入的输入值启动作业。
- 输出层:输出层生成输出产物,包括Amazon CloudWatch日志、ML Flow指标、TensorBoard日志以及最终训练好的模型产物,该产物可用于进一步迭代微调模型,或将模型部署到Amazon SageMaker AI或Amazon Bedrock上进行推理。
下图展示了这些组件的高层分解。
Nova Forge SDK的使用者向初始化的NovaModelCustomizer中的一个API方法提供一个已配置的RuntimeManager、一个要定制的模型以及一种训练方法。Customizer的初始化包括指定可以从中检索训练数据的位置。这通常是一个Amazon Simple Storage Service (Amazon S3)位置。基于这些配置,Customizer模型负责配置并启动一个Amazon SageMaker AI作业来执行指定任务。最后,完成任务会生成输出产物,并(对于“train”API)生成一个训练好的模型,您随后可以通过SDK或直接使用Amazon SageMaker API来引用该模型。
前提条件
在开始定制工作流之前,请确保您的环境已完成以下设置。本文使用Amazon SageMaker Training Jobs (SMTJ)作为计算平台(您不需要Amazon SageMaker HyperPod集群来跟随操作)。注意:如果您只对Amazon SageMaker Training Jobs感兴趣,可以完全跳过Amazon SageMaker HyperPod的设置。
- AWS账户和CLI:您需要一个AWS账户。之后,按照说明安装AWS Command Line Interface (AWS CLI)并使用您的凭证进行配置。这用于初始API调用,AWS CLI凭证链由Nova Forge SDK共享。
- IAM角色:您必须创建两个IAM角色来使用Nova Forge SDK:用户角色和执行角色。Nova Forge SDK在执行期间会验证这两个角色,以确保它们具有最低要求的权限。
- 服务配额:本文使用ml.p5.48xlarge实例进行训练和评估。Nova Lite 2.0的SFT训练至少需要4个实例。
- S3存储桶:在与训练作业相同的AWS区域创建一个Amazon Simple Storage Service (Amazon S3)存储桶。
- Amazon SageMaker HyperPod(可选):除了Amazon SageMaker Training Jobs (SMTJ),Nova Forge SDK还支持在Amazon SageMaker HyperPod (SMHP)上运行作业。
设置Nova Forge SDK
完成前提条件后,您可以使用以下指导来设置环境,开始使用Nova Forge SDK。
- Python环境:Nova Forge SDK需要Python 3.12或更高版本。
- 安装SDK:您可以使用以下Pip命令安装SDK:
pip install amzn-nova-forge - 验证安装:通过在一个示例Python文件中导入关键模块来验证安装。
以下是对每个关键模块的简要说明:
NovaModelCustomizer: 用于与Nova Forge SDK交互的主要类。SMTJRuntimeManager: 管理SMTJ定制所需的AWS基础设施。TrainingMethod: 一个枚举,代表可能的训练类型。EvaluationTask: 一个枚举,代表可能的评估类型。CSVDatasetLoader: 用于从CSV文件加载数据。Model: 一个枚举,代表Nova Forge SDK支持的Amazon Nova模型。
结论
该SDK的统一接口抽象了数据格式化和平台特定配置的复杂性,使开发者能够专注于重要的事情:他们的数据、他们的领域和他们的业务目标。无论您是开始使用Amazon SageMaker Training Jobs进行微调,还是计划使用Amazon SageMaker HyperPod进行定制,该SDK都能在整个定制过程中提供一致的体验。
通过消除LLM定制的传统障碍——技术专业知识和时间投入,Nova Forge SDK使组织能够构建真正理解其独特上下文的模型,同时又不牺牲使基础模型有价值的一般能力。该SDK处理计算资源配置、编排整个定制流程、监控训练作业和部署端点。其结果是既专业又智能、既是领域专家又具备广泛能力的企业AI。FINISHED
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)