SDK di personalizzazione Nova - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

SDK di personalizzazione Nova

Nova Customization SDK è un SDK Python completo per personalizzare i modelli Amazon Nova. L'SDK fornisce un'interfaccia unificata per la formazione, la valutazione, il monitoraggio, l'implementazione e l'inferenza dei modelli Amazon Nova su diverse piattaforme tra cui AI SageMaker e Amazon Bedrock. Che tu stia adattando i modelli ad attività specifiche del dominio o ottimizzando le prestazioni per il tuo caso d'uso, questo SDK offre tutto ciò di cui hai bisogno in un'unica interfaccia unificata.

Vantaggi

  • Un SDK per l'intero ciclo di vita della personalizzazione del modello, dalla preparazione dei dati all'implementazione e al monitoraggio.

  • Support per diversi metodi di formazione, tra cui supervised fine-tuning (SFT) e reinforcement fine-tuning (RFT), con approcci sia LoRa che full-rank.

  • Supporto integrato per AI Training Jobs e, con gestione automatica delle risorse. SageMaker SageMaker HyperPod

  • Non dovrai più cercare le ricette o l'URI del contenitore giusti per le tue tecniche di allenamento.

  • Crea le tue ricette di formazione o utilizza le impostazioni predefinite intelligenti dell'SDK con le sostituzioni dei parametri.

  • L'SDK convalida la configurazione in base alle combinazioni di modelli e istanze supportate, prevenendo errori prima dell'inizio della formazione.

  • CloudWatch Il monitoraggio integrato di Amazon ti consente di monitorare i progressi della formazione in tempo reale.

Requisiti

L'SDK richiede almeno Python 3.12.

Installazione

Per installare questo SDK, segui il comando seguente.

pip install amzn-nova-customization-sdk

Modelli e tecniche supportati

L'SDK supporta i seguenti modelli e tecniche all'interno della famiglia Amazon Nova:

Metodo Modelli supportati
Ottimizzazione di LoRa supervisionata Tutti i modelli Nova
Ottimizzazione completa supervisionata Tutti i modelli Nova
Reinforcement Ottimizzazione LoRa Nova Lite 2.0
Ottimizzazione dei rinforzi Full Rank Nova Lite 2.0

Nozioni di base

1. Prepara i tuoi dati

Carica il tuo set di dati da file locali o da S3 e lascia che sia l'SDK a gestire la trasformazione nel formato corretto per il metodo di allenamento scelto. Oppure, fornisci dati formattati e inizia subito.

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. Configura la tua infrastruttura

Scegli le tue risorse di elaborazione: l'SDK convalida le configurazioni e garantisce una configurazione ottimale.

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. Addestramento

Inizia l'allenamento con poche righe di codice.

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. Monitoraggio

Tieni traccia dei tuoi progressi di allenamento direttamente dall'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. Valuta

Valuta le prestazioni del modello con una varietà di benchmark integrati o progetta valutazioni personalizzate.

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. Implementazione

Implementa il tuo modello personalizzato in produzione con il supporto integrato per 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 )

Funzionalità chiave

Creazione immediata di ricette

L'SDK elimina la necessità di cercare le ricette o l'URI del contenitore appropriati per tecniche specifiche.

Elaborazione intelligente dei dati

L'SDK trasforma automaticamente i dati nel formato corretto per la formazione. Che tu stia lavorando con file JSON, JSONL o CSV, il data loader gestisce la conversione senza problemi. Data Loader supporta testo e dati multimodali (immagini e video).

Supporto per l'infrastruttura aziendale

L'SDK funziona sia con SageMaker Training Jobs che con la SageMaker HyperPod gestione automatica di:

  • Convalida del tipo di istanza

  • Convalida della ricetta

  • Job orchestrazione e monitoraggio

Valutazione completa

Valuta i tuoi modelli personalizzati rispetto a benchmark standard, tra cui:

  • MMLU (Massive Multitask Language Understanding)

  • BBH (Attività di ragionamento avanzato)

  • GPQA (domande e risposte a prova di Google per laureati)

Utilizzate le impostazioni predefinite del benchmark o modificatele in base alle vostre esigenze:

  • BYOM (Bring Your Own Metric)

  • BYOD (Bring Your Own Dataset)

Distribuzione in produzione

Distribuisci i tuoi modelli su Amazon Bedrock con opzioni per:

  • Provisioned Throughput: capacità dedicata per prestazioni costanti

  • On-Demand: prezzi Pay-per-use

Inferenza in batch

Esegui lavori di inferenza su larga scala in modo efficiente:

  • Elabora migliaia di richieste in parallelo

  • Aggregazione automatica dei risultati

  • Elaborazione in batch conveniente

Ulteriori informazioni

Sei pronto per iniziare a personalizzare i modelli Nova con Nova Customization SDK? Consulta il nostro GitHub repository per guide dettagliate, riferimenti API ed esempi aggiuntivi:/https://github.com/aws-samples/sample-nova-customization-sdk