

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Nova Forge SDK
<a name="nova-forge-sdk"></a>

Das Nova Forge SDK ist ein umfassendes Python-SDK zur Anpassung von Amazon Nova-Modellen. Das SDK bietet eine einheitliche Oberfläche für Training, Evaluierung, Überwachung, Bereitstellung und Inferenz von Amazon Nova-Modellen auf verschiedenen Plattformen, einschließlich SageMaker KI und Amazon Bedrock. Ganz gleich, ob Sie Modelle an domänenspezifische Aufgaben anpassen oder die Leistung für Ihren Anwendungsfall optimieren möchten, dieses SDK bietet alles, was Sie benötigen, in einer einheitlichen Oberfläche.

## Vorteile
<a name="nova-forge-sdk-why-choose"></a>
+ Ein SDK für den gesamten Lebenszyklus der Modellanpassung — von der Datenvorbereitung über die Bereitstellung bis hin zur Überwachung.
+ Support mehrerer Trainingsmethoden, darunter Continued Pre-Training (CPT), Supervised Fine-Tuning (SFT), Direct Preference Optimization (DPO) und Reinforcement Fine-Tuning (RFT), sowohl mit Singleturn als auch mit Multi-Turn, sowohl mit LoRa- als auch mit Full-Rank-Ansätzen.
+ Integrierte Unterstützung für SageMaker Training Jobs und Amazon Bedrock mit automatischem Ressourcenmanagement. SageMaker HyperPod
+ Sie müssen nicht mehr nach den richtigen Rezepten oder Container-URI für Ihre Trainingstechniken suchen.
+ Bringen Sie Ihre eigenen Trainingsrezepte mit oder verwenden Sie die intelligenten Standardeinstellungen des SDK mit Parameterüberschreibungen.
+ Das SDK validiert Ihre Konfiguration anhand unterstützter Modell- und Instanzkombinationen und bietet Validierungsunterstützung, wodurch Fehler vor Trainingsbeginn vermieden werden.
+ Mit der integrierten CloudWatch Amazon-Überwachung können Sie den Trainingsfortschritt in Echtzeit verfolgen.
+ Integriert MLFlow , um Trainingsexperimente mit SageMaker MLFlow KI-Tracking-Servern zu verfolgen.

## Voraussetzungen
<a name="nova-forge-sdk-requirements"></a>

**Unterstützte Python-Versionen**

Nova Forge SDK wurde getestet auf:
+ Python 3.12

## Installation
<a name="nova-forge-sdk-installation"></a>

Um dieses SDK zu installieren, folgen Sie bitte dem folgenden Befehl.

```
pip install amzn-nova-forge
```

## Unterstützte Modelle und Techniken
<a name="nova-forge-sdk-supported-models"></a>

Das SDK unterstützt die folgenden Modelle und Techniken innerhalb der Amazon Nova-Familie:


****  

| Methode | Unterstützte Modelle | 
| --- | --- | 
| Fortsetzung der Vorschulung | [Alle Nova-Modelle](https://docs.aws.amazon.com/sagemaker/latest/dg/nova-model-recipes.html#nova-model-recipes-reference) (nur SMHP) | 
| Überwachte Feinabstimmung von LoRa | [Alle Nova-Modelle](https://docs.aws.amazon.com/sagemaker/latest/dg/nova-model-recipes.html#nova-model-recipes-reference) | 
| Beaufsichtigte Feinabstimmung bei vollem Rang | [Alle Nova-Modelle (nur](https://docs.aws.amazon.com/sagemaker/latest/dg/nova-model-recipes.html#nova-model-recipes-reference) SMHP und SMTJ) | 
| Direkte Präferenzoptimierung LoRa | Nova 1.0-Modelle (nur SMHP und SMTJ) | 
| Direkte Präferenzoptimierung mit vollem Rang | Nova 1.0-Modelle (nur SMHP und SMTJ) | 
| Feinabstimmung von LoRa durch Verstärkung | Nova Lite 2.0 | 
| Feinabstimmung von Verstärkungen auf ganzer Linie | Nova Lite 2.0 (nur SMHP und SMTJ) | 
| Feinabstimmung von LoRa mit Multi-Turn-Verstärkung | Nova Lite 2.0 (nur SMHP) | 
| Feinabstimmung der Verstärkung mit mehreren Windungen auf ganzer Linie | Nova Lite 2.0 (nur SMHP) | 

## Erste Schritte
<a name="nova-forge-sdk-getting-started"></a>

**Topics**
+ [1. Bereiten Sie Ihre Daten vor](#nova-forge-sdk-prepare-data)
+ [2. Konfigurieren Sie Ihre Infrastruktur](#nova-forge-sdk-configure-infrastructure)
+ [3. Trainieren](#nova-forge-sdk-train)
+ [4. Überwachen](#nova-forge-sdk-monitor)
+ [5. Evaluieren](#nova-forge-sdk-evaluate)
+ [6. Bereitstellen](#nova-forge-sdk-deploy)

### 1. Bereiten Sie Ihre Daten vor
<a name="nova-forge-sdk-prepare-data"></a>

Laden Sie Ihren Datensatz aus lokalen Dateien oder S3 und lassen Sie das SDK die Transformation in das richtige Format für die von Ihnen gewählte Trainingsmethode durchführen. Oder stellen Sie formatierte Daten bereit und legen Sie sofort los.

```
from amzn_nova_forge.dataset.dataset_loader import JSONLDatasetLoader
from amzn_nova_forge.model.model_enums import Model, TrainingMethod, TransformMethod

loader = JSONLDatasetLoader()
loader.load("s3://your-bucket/training-data.jsonl")
loader.transform(
    method=TransformMethod.SCHEMA,
    training_method=TrainingMethod.SFT_LORA,
    model=Model.NOVA_LITE_2,
    column_mappings={"question": "input", "answer": "output"},
)
```

### 2. Konfigurieren Sie Ihre Infrastruktur
<a name="nova-forge-sdk-configure-infrastructure"></a>

Wählen Sie Ihre Rechenressourcen aus — das SDK validiert Konfigurationen und sorgt für eine optimale Einrichtung.

```
from amzn_nova_forge.manager.runtime_manager import BedrockRuntimeManager, SMTJRuntimeManager, SMHPRuntimeManager
# Bedrock
runtime = BedrockRuntimeManager(
execution_role="arn:aws:iam::123456789012:role/ExampleRole"
)

# 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. Trainieren
<a name="nova-forge-sdk-train"></a>

Beginnen Sie das Training mit nur wenigen Codezeilen.

```
from amzn_nova_forge.model import NovaModelCustomizer
from amzn_nova_forge.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. Überwachen
<a name="nova-forge-sdk-monitor"></a>

Verfolge deinen Trainingsfortschritt direkt im SDK.

```
from amzn_nova_forge.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. Evaluieren
<a name="nova-forge-sdk-evaluate"></a>

Bewerten Sie die Modellleistung mit einer Vielzahl [integrierter Benchmarks](https://docs.aws.amazon.com/sagemaker/latest/dg/nova-model-evaluation.html#nova-model-evaluation-benchmark) oder entwerfen Sie Ihre eigenen Bewertungen.

```
from amzn_nova_forge.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. Bereitstellen
<a name="nova-forge-sdk-deploy"></a>

Implementieren Sie Ihr maßgeschneidertes Modell in der Produktion mit integrierter Unterstützung für Amazon Bedrock oder SageMaker.

```
from amzn_nova_forge.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
)

# Sagemaker Real-time Inference
deployment = customizer.deploy(
    model_artifact_path=result.model_artifacts.checkpoint_s3_path,
    deploy_platform=DeployPlatform.SAGEMAKER,
    unit_count=10,
    sagemaker_instance_type="ml.p5.48xlarge",
    sagemaker_environment_variables={
        "CONTEXT_LENGTH": "12000",
        "MAX_CONCURRENCY": "16",
    }
)
```

## Die wichtigsten Funktionen
<a name="nova-forge-sdk-key-capabilities"></a>

### Rezepterstellung im Handumdrehen
<a name="nova-forge-sdk-recipe-creation"></a>

Das SDK macht die Suche nach den entsprechenden Rezepten oder Container-URI für bestimmte Techniken überflüssig.

### Intelligente Datenverarbeitung
<a name="nova-forge-sdk-data-processing"></a>

Das SDK wandelt Ihre Daten automatisch in das richtige Trainingsformat um. Egal, ob Sie mit JSON-, JSONL- oder CSV-Dateien arbeiten, der Data Loader wickelt die Konvertierung nahtlos ab. Data Loader unterstützt sowohl Text als auch multimodale Daten (Bilder und Videos).

### Support der Unternehmensinfrastruktur
<a name="nova-forge-sdk-infrastructure-support"></a>

Das SDK funktioniert sowohl mit SageMaker Training Jobs als auch SageMaker HyperPod mit der automatischen Verwaltung von:
+ Validierung des Instanztyps
+ Validierung des Rezepts
+ Datensatzvalidierung
+ Orchestrierung und Überwachung von Job

Das SDK unterstützt auch serverlose SageMaker Trainingsjobs und Bedrock-Anpassungen.

### Umfassende Bewertung
<a name="nova-forge-sdk-evaluation"></a>

Bewerten Sie Ihre maßgeschneiderten Modelle anhand von [Standard-Benchmarks](https://docs.aws.amazon.com/sagemaker/latest/dg/nova-hp-evaluate.html), darunter:
+ MMLU (Massives Multitasking Language Understanding)
+ BBH (Aufgaben zum Denken für Fortgeschrittene)
+ GPQA (Google-Proof-Fragen und Antworten für Hochschulabsolventen)

Verwenden Sie entweder die Benchmark-Standardeinstellungen oder passen Sie sie an Ihre Bedürfnisse an:
+ BYOM (Bringen Sie Ihre eigene Metrik mit)
+ BYOD (Bringen Sie Ihren eigenen Datensatz mit)

### Einsatz in der Produktion
<a name="nova-forge-sdk-deployment"></a>

Stellen Sie Ihre Modelle auf Amazon Bedrock oder SageMaker AI bereit und bieten Sie Optionen für:
+ **Bedrock Provisioned Throughput** — Dedizierte Kapazität für gleichbleibende Leistung
+ **Bedrock On-Demand (gilt nur für LoRa-basierte** Anpassungen) — Preisgestaltung Pay-per-use
+ **SageMaker KI-Inferenz in Echtzeit** — Dedizierte Kapazität für gleichbleibende Leistung

### Batch-Inferenz
<a name="nova-forge-sdk-batch-inference"></a>

Führen Sie umfangreiche Inferenzjobs effizient aus:
+ Verarbeiten Sie Tausende von Anfragen parallel
+ Automatische Ergebnisaggregation
+ Kostengünstige Stapelverarbeitung

### Nova Forge
<a name="nova-forge-sdk-forge"></a>

Für Abonnenten von Nova Forge unterstützt das SDK Rezepte zum Mischen von Daten.

## Weitere Informationen
<a name="nova-forge-sdk-learn-more"></a>

Sind Sie bereit, mit der Anpassung von Nova-Modellen mit dem Nova Forge SDK zu beginnen? In unserem GitHub Repository finden Sie ausführliche Anleitungen, API-Referenzen und weitere Beispiele: [https://github.com/aws/nova-forge-sdk](https://github.com/aws/nova-forge-sdk)