本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
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/