Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
SDK de personnalisation Nova
Le SDK de personnalisation Nova est un SDK Python complet permettant de personnaliser les modèles Amazon Nova. Le SDK fournit une interface unifiée pour la formation, l'évaluation, le suivi, le déploiement et l'inférence des modèles Amazon Nova sur différentes plateformes, notamment SageMaker AI et Amazon Bedrock. Que vous adaptiez des modèles à des tâches spécifiques à un domaine ou que vous optimisiez les performances pour votre cas d'utilisation, ce SDK fournit tout ce dont vous avez besoin dans une interface unifiée.
Avantages
-
Un seul SDK pour l'ensemble du cycle de personnalisation du modèle, de la préparation des données au déploiement et à la surveillance.
-
Support pour plusieurs méthodes d'entraînement, notamment le réglage fin supervisé (SFT) et le réglage fin par renforcement (RFT), avec des approches LoRa et complètes.
-
Support intégré pour les tâches de formation basées sur SageMaker HyperPod l' SageMaker IA et gestion automatique des ressources.
-
Plus besoin de trouver les recettes ou l'URI de conteneur adaptés à vos techniques d'entraînement.
-
Apportez vos propres recettes d'entraînement ou utilisez les paramètres intelligents par défaut du SDK avec des remplacements de paramètres.
-
Le SDK valide votre configuration par rapport aux combinaisons de modèles et d'instances prises en charge, évitant ainsi les erreurs avant le début de l'entraînement.
-
CloudWatch La surveillance intégrée d'Amazon vous permet de suivre les progrès de la formation en temps réel.
Exigences
Le SDK nécessite au moins Python 3.12.
Installation
Pour installer ce SDK, veuillez suivre la commande ci-dessous.
pip install amzn-nova-customization-sdk
Modèles et techniques pris en charge
Le SDK prend en charge les modèles et techniques suivants au sein de la famille Amazon Nova :
| Method | Modèles pris en charge |
|---|---|
| Réglage précis supervisé LoRa | Tous les modèles Nova |
| Réglage précis supervisé du classement complet | Tous les modèles Nova |
| Renforcement : réglage précis de la LoRa | Nova Lite 2.0 |
| Renforcement, réglage précis du classement complet | Nova Lite 2.0 |
Démarrage
Rubriques
1. Préparez vos données
Chargez votre ensemble de données à partir de fichiers locaux ou de S3, et laissez le SDK gérer la transformation vers le format adapté à la méthode d'entraînement que vous avez choisie. Vous pouvez également fournir des données formatées et commencer immédiatement.
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. Configurez votre infrastructure
Choisissez vos ressources de calcul : le SDK valide les configurations et garantit une configuration optimale.
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. Entraînement
Commencez l'entraînement avec seulement quelques lignes de code.
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. Surveillance
Suivez vos progrès d'entraînement directement depuis le 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. Évaluer
Évaluez les performances du modèle à l'aide de divers benchmarks intégrés ou concevez vos propres évaluations.
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. Déploiement
Déployez votre modèle personnalisé en production grâce à la prise en charge intégrée d'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 )
Capacités clés
Création de recettes à la volée
Le SDK élimine le besoin de rechercher les recettes ou l'URI de conteneur appropriés pour des techniques spécifiques.
Traitement intelligent des données
Le SDK transforme automatiquement vos données dans le format approprié pour l'entraînement. Que vous travailliez avec des fichiers JSON, JSONL ou CSV, le chargeur de données gère la conversion de manière fluide. Data Loader prend en charge le texte ainsi que les données multimodales (images et vidéos).
Support de l'infrastructure d'entreprise
Le SDK fonctionne à la fois avec les tâches de SageMaker formation et SageMaker HyperPod gère automatiquement :
-
Validation du type d'instance
-
Validation des recettes
-
Orchestration et surveillance des tâches
Évaluation complète
Évaluez vos modèles personnalisés par rapport à des critères de référence standard, notamment :
-
MMLU (compréhension massive du langage multitâche)
-
BBH (Tâches de raisonnement avancées)
-
GPQA (questions-réponses Google-Proof de niveau supérieur)
Utilisez les valeurs de référence par défaut ou modifiez-les en fonction de vos besoins :
-
BYOM (apportez votre propre métrique)
-
BYOD (apportez votre propre ensemble de données)
Déploiement en production
Déployez vos modèles sur Amazon Bedrock avec des options pour :
-
Débit provisionné : capacité dédiée pour des performances constantes
-
À la demande - Pay-per-use tarification
Inférence par lots
Exécutez efficacement des tâches d'inférence à grande échelle :
-
Traitez des milliers de demandes en parallèle
-
Agrégation automatique des résultats
-
Traitement par lots rentable
En savoir plus
Prêt à commencer à personnaliser les modèles Nova avec le SDK de personnalisation Nova ? Consultez notre GitHub référentiel pour des guides détaillés, des références d'API et des exemples supplémentaires https://github.com/aws-samples/sample-nova-customization-sdk:/