Nova 定制 S - 亚马逊 SageMaker AI

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Nova 定制 S

Nova 定制 SDK 是一款全面的 Python 软件开发工具包,用于自定义 Amazon Nova 机型。该软件开发工具包提供了一个统一的接口,用于在包括人工智能和Amazon Bedroc SageMaker k在内的不同平台上训练、评估、监控、部署和推断Amazon Nova模型。无论您是调整模型以适应特定领域的任务,还是针对您的用例优化性能,此 SDK 都可以在一个统一的界面中提供您所需的一切。

优势

  • 一个适用于整个模型定制生命周期(从数据准备到部署和监控)的 SDK。

  • 支持多种训练方法,包括监督微调 (SFT) 和强化微调 (RFT),同时使用 LoRa 和全等级方法。

  • 内置对 SageMaker AI 训练作业的支持 SageMaker HyperPod,并具有自动资源管理功能。

  • 无需再为你的训练技巧找到合适的配方或容器 URI。

  • 自带训练食谱或使用 SDK 的智能默认设置和参数覆盖。

  • SDK 会根据支持的模型和实例组合验证您的配置,从而防止在训练开始之前出错。

  • 集成 Amazon CloudWatch 监控功能使您能够实时跟踪训练进度。

要求

该软件开发工具包至少需要 Python 3.12。

安装

要安装此 SDK,请按照以下命令进行操作。

pip install amzn-nova-customization-sdk

支持的模型和技术

该软件开发工具包支持 Amazon Nova 系列中的以下模型和技术:

方法 支持的模型
有监督的微调 LoRa 所有 Nova 型号
监督微调满级 所有 Nova 型号
强化微调 LoRa 新星精简版 2.0
强化微调满级 新星精简版 2.0

开始使用

1. 准备您的数据

从本地文件或 S3 加载数据集,然后让 SDK 为您选择的训练方法处理转换为正确格式的转换。或者,提供格式化数据并立即开始使用。

from amzn_nova_customization_sdk.dataset.dataset_loader import JSONLDatasetLoader from amzn_nova_customization_sdk.model.model_enums import Model, TrainingMethod loader = JSONLDatasetLoader(question="input", answer="output") loader.load("s3://your-bucket/training-data.jsonl") loader.transform(method=TrainingMethod.SFT_LORA, model=Model.NOVA_LITE)

2. 配置您的基础架构

选择您的计算资源 — SDK 会验证配置并确保最佳设置。

from amzn_nova_customization_sdk.manager.runtime_manager import SMTJRuntimeManager, SMHPRuntimeManager # SageMaker Training Jobs runtime = SMTJRuntimeManager( instance_type="ml.p5.48xlarge", instance_count=4 ) # SageMaker HyperPod runtime = SMHPRuntimeManager( instance_type="ml.p5.48xlarge", instance_count=4, cluster_name="my-hyperpod-cluster", namespace="kubeflow" )

3. 训练

只需几行代码即可开始训练。

from amzn_nova_customization_sdk.model import NovaModelCustomizer from amzn_nova_customization_sdk.model.model_enums import Model, TrainingMethod customizer = NovaModelCustomizer( model=Model.NOVA_LITE_2, method=TrainingMethod.SFT_LORA, infra=runtime, data_s3_path="s3://your-bucket/prepared-data.jsonl" ) result = customizer.train(job_name="my-training-job")

4. 监控

直接通过 SDK 跟踪您的训练进度。

from amzn_nova_customization_sdk.monitor.log_monitor import CloudWatchLogMonitor # Monitor training logs customizer.get_logs() # Or monitor directly via CloudWatchLogMonitor monitor = CloudWatchLogMonitor.from_job_result(result) monitor.show_logs(limit=10) # Check job status result.get_job_status() # InProgress, Completed, Failed

5. 评估

使用各种内置基准来评估模型性能,或者设计自己的评估。

from amzn_nova_customization_sdk.recipe_config.eval_config import EvaluationTask # Evaluate on benchmark tasks eval_result = customizer.evaluate( job_name="model-eval", eval_task=EvaluationTask.MMLU, model_path=result.model_artifacts.checkpoint_s3_path )

6. 部署

借助对 Amazon Bedrock 的内置支持,将您的自定义模型部署到生产环境中。

from amzn_nova_customization_sdk.model.model_enums import DeployPlatform # Bedrock provisioned throughput deployment = customizer.deploy( model_artifact_path=result.model_artifacts.checkpoint_s3_path, deploy_platform=DeployPlatform.BEDROCK_PT, pt_units=10 ) # Bedrock On-Demand deployment = customizer.deploy( model_artifact_path=result.model_artifacts.checkpoint_s3_path, deploy_platform=DeployPlatform.BEDROCK_OD, pt_units=10 )

关键能力

即时创作食谱

SDK 无需为特定技术搜索相应的配方或容器 URI。

智能数据处理

SDK 会自动将您的数据转换为正确的训练格式。无论您是在处理 JSON、JSONL 还是 CSV 文件,数据加载器都能无缝处理转换。数据加载器支持文本和多模数据(图像和视频)。

企业基础架构 Support

SDK 既适用于 SageMaker 训练作业 SageMaker HyperPod,又可自动管理:

  • 实例类型验证

  • 配方验证

  • Job 编排和监控

全面评估

根据标准基准评估您的定制模型,包括:

  • MMLU(大规模多任务语言理解)

  • BBH(高级推理任务)

  • GPQA(研究生级 Google Proof 问答)

要么使用基准测试默认值,要么根据需要对其进行修改:

  • BYOM(自带指标)

  • BYOD(自带数据集)

生产部署

将您的模型部署到 Amazon Bedrock,并提供以下选项:

  • 预配置吞吐量-专用容量可实现稳定的性能

  • 按需- Pay-per-use 定价

批量推理

高效运行大规模推理作业:

  • 并行处理数千个请求

  • 自动结果聚合

  • 经济实惠的批量处理

了解更多

准备好开始使用 Nova 定制 SDK 自定义 Nova 模型了吗? 请查看我们的 GitHub 存储库,获取详细指南、API 参考和其他示例:https://github.com/aws-samples/sample-nova-customization-sdk/