

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.

# Mit Inspect AI Container auswerten
<a name="nova-eval-inspect-ai-container"></a>

Der SageMaker Inspect AI-Container führt LLM-Modellevaluierungen für SageMaker Schulungsjobs durch. Der Container verwendet [Inspect AI](https://inspect.ai-safety-institute.org.uk/), um einen standardisierten Bewertungsprozess für Modelle bereitzustellen, die auf SageMaker Inferenzendpunkten oder Amazon Bedrock eingesetzt werden — einschließlich der Modelle Amazon Nova 1.0 (Micro, Lite, Pro) und 2.0 (Lite 2).

Frühere [Bewertungsansätze](https://docs.aws.amazon.com//nova/latest/nova2-userguide/nova-model-evaluation.html) (basierend auf [Lighteval](https://github.com/huggingface/lighteval)) verknüpften Offline-Inferenz- und Bewertungslogik eng miteinander, was die Flexibilität bei der Bereitstellung und Prüfung von Modellen einschränkte. Der Inspect AI-Container entkoppelt die Bewertungslogik vollständig von der Inferenz.

## -Übersicht
<a name="nova-eval-container-overview"></a>

Zu den wichtigsten Vorteilen gehören:
+ **Bringen Sie Ihre eigenen Benchmarks** mit — schreiben Sie Bewertungsaufgaben im Inspect AI-Format und fügen Sie dann domänenspezifische Bewertungsaufgaben hinzu, ohne auf ein zentrales Team angewiesen zu sein, um sie zu integrieren.
+ **Evaluieren Sie mit verschiedenen Inferenzoptionen** — funktioniert mit SageMaker Inference (vorhandener Endpunkt oder On-the-fly erstellen), Amazon Bedrock und weiteren eingehenden Inferenz-Backends.
+ **Iterieren Sie schneller** — gehen Sie ohne Änderungen an der Infrastruktur von der Benchmark-Entwicklung zur Produktionsevaluierung über. Das Onboarding neuer Benchmarks, das zuvor Tage gedauert hat, erfolgt innerhalb von Minuten.
+ **Skalierbare Ausführung** — verketten Sie mehrere Benchmarks in einem Job, kombinieren Sie Standard-Benchmarks aus der Inspect-Evals-Bibliothek mit Ihren eigenen benutzerdefinierten Aufgaben im selben Job.
+ **Ein Einstiegspunkt für alle Trainingstechniken** — unabhängig davon, ob Ihr Modell mit SFT (SMTJ, SMHP), CPT (SMHP) oder RFT (SMTJ, SMHP) optimiert wurde, der Container bewertet es über dieselbe Schnittstelle. Die Auswertung von Checkpoints während des Trainings, die in bestimmten Schritten gespeichert wurden, wird ebenfalls unterstützt (z. B. Schritt 500, Schritt 1000), indem auf den Checkpoint-Pfad verwiesen wird. `model_s3_uri`

### Funktionsweise
<a name="nova-eval-container-how-it-works"></a>

Sie geben zwei Eingaben in den Container ein:

1. Eine YAML-Konfigurationsdatei (Rezept), die den Inferenzanbieter, die Benchmarks und die Bewertungsparameter definiert

1. Benchmark-Dateien (Python-Skripte mit dem `@task` Decorator), die auf Amazon S3 hochgeladen wurden

Der Container kümmert sich um die Endpunktverwaltung, die Ausführung der Evaluierung und die Erfassung der Ergebnisse. Wenn der Trainingsjob abgeschlossen ist, werden die Ergebnisse an den angegebenen S3-Ausgabespeicherort geschrieben.

## Container-Bild
<a name="nova-eval-container-images"></a>

In der folgenden Tabelle sind die Inspect AI-Container-Image-URIs nach AWS Regionen aufgeführt.


| Region | URI für das Container-Image | 
| --- | --- | 
| us-east-1 | 763104351884.dkr.ecr.us-east-1.amazonaws.com/sagemaker-inspect-ai:latest | 
| us-west-2 | 763104351884.dkr.ecr.us-west-2.amazonaws.com/sagemaker-inspect-ai:latest | 
| eu-west-2 | 763104351884.dkr.ecr.eu-west-2.amazonaws.com/sagemaker-inspect-ai:latest | 

## Voraussetzungen
<a name="nova-eval-container-prerequisites"></a>

Bevor Sie beginnen, stellen Sie sicher, dass Sie über die folgenden Ressourcen und den folgenden Zugriff verfügen.


| Anforderung | Description | 
| --- | --- | 
| AWS Konto mit SageMaker Zugriff | Ein aktives Mitglied AWS-Konto mit der Erlaubnis, SageMaker Schulungsjobs zu erstellen | 
| S3-Bucket | Ein Bucket zum Speichern Ihrer Bewertungsrezepte, Benchmark-Dateien und Ausgabeergebnisse | 
| IAM-Ausführungsrolle | Eine Rolle, die den Zugriff auf Ihre Ressourcen übernehmen SageMaker kann | 
| SageMaker Inferenzendpunkt oder Amazon Bedrock-Zugriff | Ein bereitgestellter Modellendpunkt oder Amazon Bedrock-Modellzugriff für das Modell, das Sie evaluieren möchten | 
| AWS CLI oder SageMaker Python SDK | Tools zum Einreichen von Schulungsaufträgen und zum Verwalten von Ressourcen | 
| Kapazitätsreservierung (große Modelle) | Wenden Sie sich für Modelle, die beschleunigte Instances benötigen (z. B. p5 für Nova Lite 2), an den AWS Support, um Kapazität für SageMaker Inference oder Amazon Bedrock zu reservieren | 

## Schritt 1: Richten Sie IAM-Berechtigungen ein
<a name="nova-eval-container-step1"></a>

Der SageMaker Trainingsjob wird unter einer Ausführungsrolle ausgeführt, die Sie angeben. Diese Rolle benötigt Berechtigungen zum Lesen von Benchmarks aus S3, zum Schreiben von Ergebnissen, zum Aufrufen des Inferenzendpunkts und zum Schreiben von Protokollen. CloudWatch 

**1.1 Erstellen Sie die Vertrauensrichtlinie**

Speichern Sie Folgendes unter`trust_policy.json`:

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

**1.2 Erstellen Sie die Rolle**

```
aws iam create-role \
  --role-name InspectLensEvalRole \
  --assume-role-policy-document file://trust_policy.json
```

**1.3 Hängen Sie die Berechtigungsrichtlinie an**

Speichern Sie Folgendes unter `eval_policy.json` und ersetzen Sie alle Platzhalterwerte (`REGION`,`ACCOUNT_ID`, Bucket-Namen) durch Ihre Werte:

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "S3ReadBenchmarkData",
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:ListBucket"],
      "Resource": [
        "arn:aws:s3:::YOUR_BENCHMARK_BUCKET",
        "arn:aws:s3:::YOUR_BENCHMARK_BUCKET/*"
      ]
    },
    {
      "Sid": "S3WriteResults",
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:PutObject", "s3:ListBucket"],
      "Resource": [
        "arn:aws:s3:::YOUR_RESULTS_BUCKET",
        "arn:aws:s3:::YOUR_RESULTS_BUCKET/*"
      ]
    },
    {
      "Sid": "SageMakerInvokeExistingEndpoint",
      "Effect": "Allow",
      "Action": [
        "sagemaker:InvokeEndpoint",
        "sagemaker:InvokeEndpointWithResponseStream",
        "sagemaker:DescribeEndpoint"
      ],
      "Resource": "arn:aws:sagemaker:REGION:ACCOUNT_ID:endpoint/*"
    },
    {
      "Sid": "BedrockInference",
      "Effect": "Allow",
      "Action": [
        "bedrock:InvokeModel",
        "bedrock:InvokeModelWithResponseStream"
      ],
      "Resource": [
        "arn:aws:bedrock:REGION::foundation-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:inference-profile/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:provisioned-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:custom-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:imported-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:custom-model-deployment/*"
      ]
    },
    {
      "Sid": "BedrockCustomModelAccess",
      "Effect": "Allow",
      "Action": [
        "bedrock:GetCustomModel",
        "bedrock:GetImportedModel",
        "bedrock:GetProvisionedModelThroughput",
        "bedrock:GetCustomModelDeployment",
        "bedrock:GetInferenceProfile"
      ],
      "Resource": [
        "arn:aws:bedrock:REGION:ACCOUNT_ID:custom-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:imported-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:provisioned-model/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:custom-model-deployment/*",
        "arn:aws:bedrock:REGION:ACCOUNT_ID:inference-profile/*"
      ]
    },
    {
      "Sid": "SageMakerCreateEndpointLifecycle",
      "Effect": "Allow",
      "Action": [
        "sagemaker:CreateModel",
        "sagemaker:DescribeModel",
        "sagemaker:DeleteModel",
        "sagemaker:CreateEndpointConfig",
        "sagemaker:DescribeEndpointConfig",
        "sagemaker:DeleteEndpointConfig",
        "sagemaker:CreateEndpoint",
        "sagemaker:DescribeEndpoint",
        "sagemaker:DeleteEndpoint",
        "sagemaker:InvokeEndpoint",
        "sagemaker:InvokeEndpointWithResponseStream"
      ],
      "Resource": [
        "arn:aws:sagemaker:REGION:ACCOUNT_ID:model/inspectlens-*",
        "arn:aws:sagemaker:REGION:ACCOUNT_ID:endpoint/inspectlens-*",
        "arn:aws:sagemaker:REGION:ACCOUNT_ID:endpoint-config/inspectlens-*"
      ]
    },
    {
      "Sid": "ECRAuth",
      "Effect": "Allow",
      "Action": "ecr:GetAuthorizationToken",
      "Resource": "*"
    },
    {
      "Sid": "PassRoleToSageMaker",
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::ACCOUNT_ID:role/InspectLensEvalRole",
      "Condition": {
        "StringEquals": {
          "iam:PassedToService": "sagemaker.amazonaws.com"
        }
      }
    },
    {
      "Sid": "VPCNetworkingForEndpoint",
      "Effect": "Allow",
      "Action": [
        "ec2:CreateNetworkInterface",
        "ec2:CreateNetworkInterfacePermission",
        "ec2:DeleteNetworkInterface",
        "ec2:DeleteNetworkInterfacePermission",
        "ec2:DescribeNetworkInterfaces",
        "ec2:DescribeVpcs",
        "ec2:DescribeDhcpOptions",
        "ec2:DescribeSubnets",
        "ec2:DescribeSecurityGroups"
      ],
      "Resource": "*"
    },
    {
      "Sid": "CloudWatchLogs",
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents",
        "logs:DescribeLogStreams"
      ],
      "Resource": [
        "arn:aws:logs:REGION:ACCOUNT_ID:log-group:/aws/sagemaker/TrainingJobs:*",
        "arn:aws:logs:REGION:ACCOUNT_ID:log-group:/aws/sagemaker/Endpoints/*"
      ]
    },
    {
      "Sid": "MLflowTrackingServer",
      "Effect": "Allow",
      "Action": [
        "sagemaker:DescribeMlflowTrackingServer",
        "sagemaker:CreatePresignedMlflowTrackingServerUrl"
      ],
      "Resource": "arn:aws:sagemaker:REGION:ACCOUNT_ID:mlflow-tracking-server/*"
    },
    {
      "Sid": "MLflowTrackingOperations",
      "Effect": "Allow",
      "Action": [
        "sagemaker-mlflow:AccessUI",
        "sagemaker-mlflow:CreateExperiment",
        "sagemaker-mlflow:GetExperiment",
        "sagemaker-mlflow:GetExperimentByName",
        "sagemaker-mlflow:SearchExperiments",
        "sagemaker-mlflow:CreateRun",
        "sagemaker-mlflow:GetRun",
        "sagemaker-mlflow:UpdateRun",
        "sagemaker-mlflow:SearchRuns",
        "sagemaker-mlflow:LogMetric",
        "sagemaker-mlflow:LogParam",
        "sagemaker-mlflow:LogBatch",
        "sagemaker-mlflow:SetTag",
        "sagemaker-mlflow:LogArtifact",
        "sagemaker-mlflow:ListArtifacts"
      ],
      "Resource": "arn:aws:sagemaker:REGION:ACCOUNT_ID:mlflow-tracking-server/*"
    },
    {
      "Sid": "KMSForVolumeEncryption",
      "Effect": "Allow",
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:GenerateDataKey",
        "kms:CreateGrant",
        "kms:DescribeKey"
      ],
      "Resource": "arn:aws:kms:REGION:ACCOUNT_ID:key/*"
    }
  ]
}
```

Fügen Sie die Richtlinie an die Rolle an:

```
aws iam put-role-policy \
  --role-name InspectLensEvalRole \
  --policy-name InspectLensEvalPolicy \
  --policy-document file://eval_policy.json
```

## Schritt 2: Schreiben Sie Ihr Evaluationsrezept
<a name="nova-eval-container-step2"></a>

Das Eval-Rezept ist eine YAML-Konfigurationsdatei, die definiert, wie der Container Ihre Evaluierungen ausführt. Das Rezept spezifiziert den Inferenzanbieter, die Benchmarks, die Evaluierungsparameter und die Ausgabeeinstellungen.

Ausführliche Beispiele finden Sie in den folgenden Notizbüchern:
+ [Evaluieren Sie einen vorhandenen SageMaker Endpunkt](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/inspect_eval_container/eval_sagemaker_endpoint.ipynb)
+ [Evaluieren Sie mit einem verwalteten Endpunkt](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/inspect_eval_container/eval_managed_endpoint.ipynb)
+ [Evaluieren Sie ein Amazon Bedrock-Modell](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/inspect_eval_container/eval_bedrock_model.ipynb)

**Option A: Evaluieren Sie einen vorhandenen Endpunkt SageMaker **

Verwenden Sie diese Option, wenn Sie bereits ein Modell auf einem SageMaker Inferenzendpunkt implementiert haben.

```
inference_provider:
  sagemaker_endpoint:
    endpoint_name: "my-existing-endpoint"
    region: "us-east-1"

benchmarks:
  s3_path: "s3://your-bucket/benchmarks/my_benchmarks/"
  tasks:
    - name: mmlu

eval:
  max_connections: 10
  max_retries: 100
  timeout: 600

output:
  s3_path: "s3://your-bucket/eval-results/"
```

**Option B: Endpunkt erstellen, auswerten und dann bereinigen**

Verwenden Sie diese Option, damit der Container ein Amazon Nova-Basismodell oder ein fein abgestimmtes Modell bereitstellt, Evaluierungen durchführt und den Endpunkt automatisch herunterfährt. Dies ist der empfohlene Ansatz für einmalige Evaluierungsläufe. Rufen Sie den neuesten SageMaker Inferenzcontainer aus der [Amazon Nova SageMaker Inference Container-Image-Dokumentation ab.](https://docs.aws.amazon.com//nova/latest/userguide/nova-model-sagemaker-inference.html#nova-sagemaker-inference-container-images)

```
inference_provider:
  sagemaker_endpoint:
    endpoint_name: null                 # null = create new endpoint
    model_s3_uri: "s3://your-bucket/models/nova-micro/"
    inference_image_uri: "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-inference-repo:SM-Inference-latest"
    instance_type: "ml.p5.48xlarge"
    instance_count: 1
    execution_role_arn: "arn:aws:iam::ACCOUNT_ID:role/InspectLensEvalRole"
    region: "us-east-1"
    context_length: "16000"
    max_concurrency: "32"
    cleanup_endpoint: true              # Auto-delete after eval

benchmarks:
  s3_path: "s3://your-bucket/benchmarks/my_benchmarks/"
  tasks:
    - name: mmlu_pro
    - name: arc_c
    - name: boolq

eval:
  fail_on_error: false
  decoding:
    temperature: 0.0
    top_p: 1.0
    top_k: -1
    max_tokens: 16000
    reasoning_effort: null
  max_connections: 16
  max_retries: 100
  timeout: 600
  extra_args:
    - "-M"
    - "completion_mode=True"
    - "--logprobs"
    - "--top-logprobs"
    - "5"

output:
  s3_path: "s3://your-bucket/eval-results/"
```

**Hinweis zu: `model_s3_uri`**
+ **Amazon Nova GA-Modelle (Basis-Checkpoints)**: Zum Beispiel `s3://escrow-nova-model-708977205387-us-east-1/nova-lite-2/prod/` — SageMaker verwaltet den Zugriff automatisch, es sind keine zusätzlichen S3-Berechtigungen erforderlich.
+ **Maßgeschneiderte Amazon Nova-Modelle (Checkpoints nach dem Training)**: `s3://customer-escrow-ACCOUNT_ID-SUFFIX/YOUR_RUN_NAME/outputs/checkpoints/step_N/` — Dies ist der Escrow-Bucket-Pfad aus Ihrer Trainingsjob-Ausgabe.

**Option C: Evaluieren über Amazon Bedrock**

Verwenden Sie diese Option, um ein über Amazon Bedrock verfügbares Modell zu evaluieren, ohne einen Endpunkt verwalten zu müssen.

```
inference_provider:
  bedrock:
    model_id: amazon.nova-pro-v1:0
    region: us-east-1

benchmarks:
  - name: mmlu
    path: benchmarks/mmlu_pro.py
    limit: 100

eval:
  fail_on_error: false
  decoding:
    temperature: 0.0
    top_p: 1.0
    top_k: -1
    max_tokens: 8192
    reasoning_effort: null
  max_connections: 10
  max_retries: 50
  timeout: 600
  extra_args:
    - "--display"
    - "plain"

output:
  s3_path: s3://your-bucket/eval/output/
```

**Benchmarks-Konfiguration**

`benchmarks`In diesem Abschnitt wird definiert, welche Bewertungsaufgaben ausgeführt werden sollen. Sie können mehrere Benchmarks in einem einzigen Job verketten.


| Feld | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | 
| name | Ja | — | Ein aussagekräftiger Name für den Benchmark-Lauf | 
| path | Ja | — | Relativer Pfad zur Benchmark-Python-Datei in Ihrem S3-Benchmark-Verzeichnis | 
| limit | Nein | Keine (alle Beispiele) | Maximale Anzahl der auszuwertenden Proben. Zum Testen vor vollständigen Durchläufen verwenden. | 
| epochs | Nein | 1 | Häufigkeit, mit der die Auswertung auf statistische Signifikanz wiederholt werden soll | 
| task\_args | Nein | — | Key-value Paare, die als Argumente an die Benchmark-Aufgabenfunktion übergeben wurden | 

**Eval-Konfiguration**

Der `eval` Abschnitt steuert, wie der Container Evaluierungen durchführt.


| Parameter | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | 
| fail\_on\_error | Nein | false | Beenden Sie die Auswertung, wenn eine Probe fehlschlägt. trueFür strikte Validierung auf einstellen. | 
| max\_connections | Nein | 10 | Anzahl der parallel Anfragen an den Inferenzendpunkt | 
| max\_retries | Nein | 3 | Anzahl der Wiederholungsversuche für fehlgeschlagene Inferenzanfragen | 
| timeout | Nein | 600 | Anforderungs-Timeout in Sekunden für jeden Inferenzaufruf | 
| extra\_args | Nein | — | Zusätzliche Schlüssel-Wert-Paare werden direkt an den Befehl Inspect AI eval übergeben | 

**Parameter dekodieren**

Konfigurieren Sie die Parameter für die Modelldekodierung im `eval.decoding` Abschnitt:


| Parameter | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | 
| temperature | Nein | 0.0 | Steuert die Zufälligkeit bei der Generierung. Wird 0.0 für deterministische, reproduzierbare Benchmark-Ergebnisse verwendet. | 
| top\_p | Nein | 1,0 | Schwellenwert für die Kernprobenahme. 1.0bedeutet keine Einschränkung. | 
| top\_k | Nein | -1 | Beschränkt die Wortwahl auf die K wahrscheinlichsten Tokens. -1deaktiviert diesen Filter. | 
| max\_tokens | Nein | 8192 | Maximale Anzahl von Token, die pro Antwort generiert werden können. Erhöhung bei Benchmarks, die lange Argumentationsketten erfordern. | 
| reasoning\_effort | Nein | Null | Steuert die Argumentationstiefe für Modelle, die dies unterstützen (z. B. Amazon Nova-Modelle mit erweitertem Denken). Optionen: lowhigh, oder null zum Deaktivieren. | 

**Konfiguration der Ausgabe**

`output`In diesem Abschnitt wird definiert, wo und wie die Bewertungsergebnisse gespeichert werden.


| Feld | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | 
| s3\_path | Ja | — | S3-URI, in den die Bewertungsergebnisse geschrieben werden | 
| output\_format | Nein | eval | Format für Ergebnisdateien. Die Optionen finden Sie in der folgenden Tabelle. | 

Die folgenden Ausgabeformate sind verfügbar:


| Format | Description | 
| --- | --- | 
| eval | Natives Inspect AI-Format. Kompatibel mit inspect view für interaktive Analysen. | 
| csv | Comma-separated Werte. Geeignet für Tabellenkalkulationsanalysen und Daten-Pipelines. | 
| jsonl | Format der JSON-Zeilen. Ein JSON-Objekt pro Zeile für die Streaming-Verarbeitung. | 
| json | Standard-JSON-Format. Vollständige Ergebnisse in einer einzigen strukturierten Datei. | 

**MLflow-Konfiguration**

Optional können Sie Bewertungsmetriken auf einem MLFlow-Tracking-Server protokollieren. Fügen Sie den `tracking` Abschnitt zu Ihrem Rezept hinzu:

```
tracking:
  mlflow_tracking_arn: null       # ARN of SageMaker MLflow tracking server
  mlflow_experiment_name: "inspectlens" # experiment name
  mlflow_tracing: true          # log full request/response traces
  mlflow_log_artifacts: true       # upload .eval files to MLflow
```


| Feld | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | 
| mlflow\_tracking\_arn | Nein | Null | ARN Ihres SageMaker MLFlow-Tracking-Servers. Diese Einstellung aktiviert die MLflow-Protokollierung. Auslassen oder auf setzen, um null zu deaktivieren. | 
| mlflow\_experiment\_name | Nein | inspiziert die Linse | Name des MLflow-Experiments, unter dem Läufe protokolliert werden sollen. | 
| mlflow\_tracing | Nein | true | Wanntrue, protokolliert die vollständigen request/response Spuren für jede Probe. | 
| mlflow\_log\_artifacts | Nein | true | Wanntrue, lädt .eval Protokolldateien als MLflow-Artefakte hoch. | 

**Vollständige Rezeptreferenz**

Das folgende Beispiel zeigt ein vollständiges Rezept mit allen verfügbaren Konfigurationsoptionen:

```
inference_provider:
  sagemaker_endpoint:
    endpoint_name: my-nova-endpoint
    model_s3_uri: s3://your-bucket/models/my-model/
    inference_image_uri: "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-inference-repo:SM-Inference-latest"
    instance_type: ml.g5.12xlarge
    cleanup_endpoint: true
    region: us-west-2

benchmarks:
  - name: mmlu
    path: benchmarks/mmlu_pro.py
    limit: 100
    epochs: 3
    task_args:
      subject: math
  - name: truthfulqa
    path: benchmarks/truthfulqa.py
    limit: 50

eval:
  fail_on_error: false
  decoding:
    temperature: 0.0
    top_p: 1.0
    top_k: -1
    max_tokens: 8192
    reasoning_effort: null
  max_connections: 256
  max_retries: 50
  timeout: 600
  extra_args:
    - "--display"
    - "plain"

output:
  s3_path: s3://your-bucket/eval/output/
  output_format: eval

tracking:
  mlflow_tracking_arn: "arn:aws:sagemaker:us-west-2:123456789012:mlflow-tracking-server/my-server"
  mlflow_experiment_name: "inspectlens"
  mlflow_tracing: true
  mlflow_log_artifacts: true
```

## Schritt 3: Bereiten Sie die Benchmark-Dateien vor
<a name="nova-eval-container-step3"></a>

Benchmarks sind Python-Dateien, die den Inspect `@task` AI-Decorator verwenden, um Bewertungsaufgaben zu definieren. Das [inspect-evals Repository bietet mehr als](https://github.com/UKGovernmentBEIS/inspect_evals) 128 gebrauchsfertige Benchmarks, oder Sie können Ihre eigenen schreiben.

**Beispiel-Benchmark**

Das folgende Beispiel zeigt einen Minimal-Benchmark, der die Multiple-Choice-Leistung für einen Datensatz bewertet: HuggingFace 

```
from inspect_ai import task, Task
from inspect_ai.dataset import hf_dataset
from inspect_ai.scorer import choice
from inspect_ai.solver import multiple_choice


@task
def my_benchmark():
    return Task(
        dataset=hf_dataset(
            path="cais/mmlu",
            name="abstract_algebra",
            split="test",
        ),
        solver=multiple_choice(),
        scorer=choice(),
    )
```

**Abhängigkeiten**

Wenn Ihr Benchmark zusätzliche Abhängigkeiten benötigt, fügen Sie ein `pyproject.toml` oder `requirements.txt` in dasselbe S3-Verzeichnis ein:

```
[project]
name = "my-benchmark"
version = "0.1.0"
requires-python = ">=3.12"
dependencies = [
    "datasets>=2.14.0",
]
```

**Pre-installed Pakete**

Der Container enthält die folgenden Pakete. Sie müssen diese nicht in Ihrem auflisten`pyproject.toml`.


| Package | Version | 
| --- | --- | 
| Python | 3.12 | 
| inspizieren | 0.3.220 | 
| boto3 | 1,40,61 | 
| Aioboto 3 | 15.5.0 | 
| Openai | 2.36.0 | 
| mlflow | 3.12.0 | 
| Pyyaml | 6.0.3 | 

**Auswahl der Aufgabe**

Das `tasks` Feld in Ihrem Rezept steuert, welche Aufgaben innerhalb einer Benchmark-Datei ausgeführt werden sollen.


| Konfiguration | Beispiel | Behavior | 
| --- | --- | --- | 
| Leer tasks | tasks: [] | Führt alle in der Benchmark-Datei definierten Aufgaben aus | 
| Filter benennen | tasks: ["algebra"] | Führt Aufgaben aus, deren Name die Teilzeichenfolge „Algebra“ enthält | 
| limit | limit: 50 | Begrenzt die Anzahl der pro Aufgabe ausgewerteten Stichproben | 
| epochs | epochs: 3 | Wiederholt die Auswertung mehrmals, um die Varianz zu messen | 

## Schritt 4: Bereiten Sie Ihre S3-Struktur vor
<a name="nova-eval-container-step4"></a>

Die folgende Struktur ist eine Empfehlung für die Organisation von Konfigurationen, Benchmarks und Ergebnissen. Sie können den Container auf eine beliebige S3-Position richten — die Struktur selbst ist nicht erforderlich.

```
s3://your-bucket/
├── config/
│   └── inspect_config.yaml       # Your eval recipe
├── benchmarks/
│   └── my_benchmarks/            # Your benchmark Python files
│       ├── pyproject.toml        # Optional: benchmark dependencies
│       ├── my_task.py            # @task decorated functions
│       └── _helpers.py           # Shared utilities
└── output/                       # Results written here
```

Laden Sie Ihre Dateien auf S3 hoch:

```
# Upload benchmark files
aws s3 cp my_benchmarks/ s3://your-bucket/benchmarks/my_benchmarks/ --recursive

# Upload your eval recipe
aws s3 cp inspect_config.yaml s3://your-bucket/config/inspect_config.yaml
```

## Schritt 5: Reichen Sie den Ausbildungsjob ein
<a name="nova-eval-container-step5"></a>

Reichen Sie einen SageMaker Schulungsjob ein, um Ihre Bewertung durchzuführen. Sie können das AWS CLI oder das SageMaker Python-SDK verwenden.

**Option A: AWS CLI**

```
aws sagemaker create-training-job \
    --training-job-name inspect-eval-$(date +%Y%m%d-%H%M%S) \
    --algorithm-specification \
        TrainingImage=763104351884.dkr.ecr.us-east-1.amazonaws.com/sagemaker-inspect-ai:latest,TrainingInputMode=File \
    --role-arn arn:aws:iam::123456789012:role/SageMakerInspectAIRole \
    --resource-config \
        InstanceType=ml.m5.large,InstanceCount=1,VolumeSizeInGB=30 \
    --stopping-condition MaxRuntimeInSeconds=86400 \
    --input-data-config '[
        {
            "ChannelName": "config",
            "DataSource": {
                "S3DataSource": {
                    "S3DataType": "S3Prefix",
                    "S3Uri": "s3://your-bucket/eval/config/",
                    "S3DataDistributionType": "FullyReplicated"
                }
            }
        }
    ]' \
    --output-data-config S3OutputPath=s3://your-bucket/eval/output/ \
    --region us-west-2
```

**Option B: SageMaker Python-SDK V3**

```
from sagemaker.train import ModelTrainer
from sagemaker.train.configs import InputData, Compute
from sagemaker.core.shapes.shapes import StoppingCondition, OutputDataConfig

trainer = ModelTrainer(
    training_image="763104351884.dkr.ecr.us-east-1.amazonaws.com/sagemaker-inspect-ai:latest",
    compute=Compute(
        instance_type="ml.m5.large",
        instance_count=1,
        volume_size_in_gb=30,
    ),
    output_data_config=OutputDataConfig(
        s3_output_path="s3://your-bucket/eval/output/"
    ),
    role="arn:aws:iam::123456789012:role/SageMakerInspectAIRole",
    stopping_condition=StoppingCondition(max_runtime_in_seconds=86400),
)

trainer.train(
    input_data_config=[
        InputData(
            channel_name="config",
            data_source="s3://your-bucket/eval/config/",
        )
    ]
)
```

**Die wichtigsten Parameter**


| Parameter | Wert | Description | 
| --- | --- | --- | 
| TrainingImage | 763104351884.dkr.ecr.us-east-1.amazonaws.com/sagemaker-inspect-ai:latest | Das Inspect AI-Container-Image | 
| InstanceType | ml.m5.large | Orchestrator-Instanztyp (nicht die Inferenzinstanz) | 
| VolumeSizeInGB | 30 | Speicher für Benchmark-Daten und -Protokolle | 
| MaxRuntimeInSeconds | 86400 | Maximale Auftragsdauer (24 Stunden) | 
| ChannelName | config | Eingangskanal, der Ihre Rezept- und Benchmark-Dateien enthält | 

**Anleitung zum Orchestrator-Instanztyp**

In der Trainingsjob-Instanz wird die Orchestrierungslogik für die Evaluierung ausgeführt, nicht die Modellinferenz. Wählen Sie einen Instanztyp, der auf Ihrem Evaluierungs-Workload basiert.


| Instance-Typ | Anwendungsfall | Empfehlung | 
| --- | --- | --- | 
| ml.m5.large | Empfohlener Standard | Ausreichend für die meisten Evaluierungs-Workloads mit mäßiger Parallelität | 
| ml.m5.4xlarge | Große Benchmark-Suiten | Wird verwendet, wenn viele Benchmarks mit hohen max\_connections Werten ausgeführt werden | 
| ml.c5.large | Cost-sensitive | Kostengünstigere Alternative für einfache Evaluierungen mit geringer Parallelität | 

**Umgebungsvariablen**

Sie können Umgebungsvariablen zur Authentifizierung oder Konfiguration an den Container übergeben. Fügen Sie dem AWS CLI Befehl den `--environment` Parameter hinzu:

```
aws sagemaker create-training-job \
    ...
    --environment '{
        "HF_TOKEN": "hf_your_token_here",
        "HF_HUB_DOWNLOAD_TIMEOUT": "300"
    }'
```

## Schritt 6: Überwachen Sie den Job
<a name="nova-eval-container-step6"></a>

Nachdem Sie den Schulungsjob eingereicht haben, können Sie dessen Fortschritt anhand der CloudWatch Protokolle AWS CLI oder verfolgen.

**Überprüfen Sie den Jobstatus**

```
aws sagemaker describe-training-job \
    --training-job-name your-job-name \
    --query "TrainingJobStatus" \
    --output text
```

**Streamen Sie Protokolle**

```
aws logs tail /aws/sagemaker/TrainingJobs \
    --log-stream-name-prefix your-job-name \
    --follow
```

**Was erwartet Sie in Logs**

Die Container-Logs zeigen den Fortschritt in den folgenden Phasen:

1. **Start** — Container-Initialisierung und Konfigurationsvalidierung

1. **Benchmark-Download** — Benchmark-Dateien werden heruntergeladen und Abhängigkeiten installiert

1. **Endpunkt-Setup** — Den Inferenz-Endpunkt erstellen oder eine Verbindung zu ihm herstellen

1. **Bewertung** — Ausführung von Benchmark-Aufgaben mit Fortschrittsindikatoren

1. **Ergebnisse hochladen** — Ergebnisse in S3 schreiben und optional in MLflow protokollieren

1. **Säuberung** — Temporäre Endpunkte werden gelöscht, wenn `cleanup_endpoint: true`

**Geschätzte Zeitpläne**


| Stage | Geschätzte Dauer | 
| --- | --- | 
| Start des Containers | 2—5 Minuten | 
| Erstellung von Endpunkten (falls zutreffend) | 15—30 Minuten | 
| Bewertung | Variiert je nach Benchmark-Größe und Modelllatenz | 
| Bereinigen | 1—2 Minuten | 

## Schritt 7: Ergebnisse anzeigen und interpretieren
<a name="nova-eval-container-step7"></a>

Sehen Sie sich nach Abschluss des Jobs Ihre Bewertungsergebnisse an.

**Mit Inspect AI anzeigen**

Verwenden Sie den Inspect AI-Viewer, um interaktiv Ergebnisse direkt aus S3 heraus zu untersuchen:

```
inspect view --log-dir s3://your-bucket/eval-results/
```

Dieser Befehl öffnet eine lokale Weboberfläche, in der Sie Ergebnisse durchsuchen, einzelne Stichproben ansehen und Durchläufe vergleichen können.

**Herunterladen und teilen**

So laden Sie Ergebnisse lokal herunter:

```
aws s3 cp s3://your-bucket/eval/output/ ./results/ --recursive

INSPECT_LOG_DIR=./results inspect view
```

**VS Code-Erweiterung**

Mit der [Inspect AI VS Code-Erweiterung](https://inspect.aisi.org.uk/vscode.html) können Sie Evaluationsprotokolle direkt von S3 aus durchsuchen, ohne sie zuerst herunterladen zu müssen.

1. Installieren Sie die Erweiterung vom VS Code Marketplace (suchen Sie nach „Inspect AI“)

1. Suchen Sie in der Inspect Activity Bar den Bereich Logs und wählen Sie das Ordnersymbol

1. Geben Sie Ihren S3-Pfad ein: `s3://your-bucket/eval-results/`

**Struktur der Ausgabe**

Bei jeder Auswertung wird eine `.eval` Protokolldatei erstellt, die die folgenden Abschnitte enthält:
+ `results.scores`— Aggregierte Ergebnisse für jede Metrik
+ `samples`— Individuelle Bewertungsstichproben mit Eingaben, Ergebnissen und Ergebnissen
+ `stats`— Laufzeitstatistiken einschließlich Token-Nutzung und Latenz
+ `eval.config`— Die für den Testlauf verwendete Konfiguration

**Ergebnisse in MLflow anzeigen (optional)**

Wenn Sie MLflow in Ihrem Rezept konfiguriert haben, generieren Sie eine vorsignierte URL für den Zugriff auf den Tracking-Server:

```
aws sagemaker create-presigned-mlflow-tracking-server-url \
    --tracking-server-name my-server \
    --region us-west-2
```

Öffnen Sie die zurückgegebene URL in Ihrem Browser, um Messwerte anzusehen, Läufe zu vergleichen und Trends in allen Bewertungen zu analysieren.

## Verfügbare Benchmarks
<a name="nova-eval-container-benchmarks"></a>

Der Inspect AI-Container funktioniert mit jedem Benchmark, der im Inspect AI-Aufgabenformat geschrieben wurde. Das [Inspect-Evals-Repository](https://github.com/UKGovernmentBEIS/inspect_evals) bietet über 128 gebrauchsfertige Benchmarks aus Bereichen wie Argumentation, Wissen, Codierung und Sicherheit.

[Informationen zum Schreiben eigener Benchmarks finden Sie in der Dokumentation zum Schreiben von Inspect AI-Aufgaben.](https://inspect.aisi.org.uk/tasks.html) Wenn Sie einen öffentlichen Benchmark finden, der noch nicht in inspect-evals verfügbar ist, können Sie die [Onboarding-Aufforderung des KI-Assistenten](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/ai_assisted_benchmark_creation.md) verwenden, um ihn in das Inspect AI-Format zu konvertieren.

## Bewertungen durch Agenturen
<a name="nova-eval-container-agentic"></a>

Mit behördlichen Benchmarks wird die Fähigkeit eines Modells getestet, mehrstufige Aufgaben zu erledigen, die den Einsatz von Tools, Planung und iteratives Denken erfordern. Diese Bewertungen simulieren reale Szenarien, in denen das Modell Tools aufrufen, Ergebnisse interpretieren und über die nächsten Maßnahmen entscheiden muss.

**Anforderungen an Endgeräte**

Für behördliche Evaluierungen sind Endgeräte erforderlich, die die folgenden Funktionen unterstützen:
+ **Werkzeugaufruf** — Der Endpunkt muss Funktionsaufrufen unterstützen, damit das Modell während der Evaluierung Tools aufrufen kann
+ **Große Kontextgröße** — Multi-turn Konversationen mit Toolergebnissen erfordern eine ausreichende Kontextlänge, um den Konversationsverlauf zu verwalten

**SageMaker Konfiguration des Inferenzendpunkts**

Wenn Sie einen SageMaker Inferenzendpunkt für Agentenauswertungen verwenden, konfigurieren Sie die folgenden Umgebungsvariablen auf Ihrem Endpunkt:


| Umgebungsvariable | Wert | Description | 
| --- | --- | --- | 
| ENABLE\_TOOL\_CALLING | True | Aktiviert die Unterstützung von Toolaufrufen auf dem Inferenzendpunkt | 
| CONTEXT\_LENGTH | Ausreichend für Multi-Turn | Stellen Sie einen Wert ein, der groß genug ist, um Multi-Turn-Konversationen mit Toolergebnissen zu ermöglichen | 

Informationen zur Einrichtung von Amazon Nova-Endpunkten auf SageMaker Inference finden Sie unter [Bereitstellen von Amazon Nova-Modellen](https://docs.aws.amazon.com//nova/latest/userguide/deploy-sagemaker.html) auf. SageMaker Informationen zu den Funktionen und der Konfiguration von Containern finden Sie unter [Container-Funktionen](https://docs.aws.amazon.com//nova/latest/userguide/container-features.html).

**Amazon Bedrock-Endpunkte**

Für Amazon Bedrock-Endpunkte wird das Aufrufen von Tools für kompatible Modelle nativ unterstützt. Weitere Informationen finden Sie unter [Verwendung von Tools mit Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/tool-use.html).

**Erste Schritte mit behördlichen Bewertungen**

Um behördliche Bewertungen durchzuführen, müssen Sie die folgenden Voraussetzungen erfüllen:

1. Stellen Sie einen Endpunkt mit aktiviertem Tool-Calling bereit

1. Wählen Sie einen Agenten-Benchmark aus dem [Inspect-Evals-Repository](https://github.com/UKGovernmentBEIS/inspect_evals) aus (suchen Sie nach Benchmarks, die Tool-Calling-Solver verwenden)

1. Konfiguriere dein Rezept mit geeigneten Werten für Interaktionen mit mehreren Runden `timeout` `max_tokens`

**Amazon Bedrock-Endpunkt**
+ Informationen zur vollständigen Einrichtung und Bereitstellung finden Sie unter [Amazon Bedrock Endpoints](https://docs.aws.amazon.com//bedrock/latest/userguide/endpoints.html).
+ Informationen zur Unterstützung beim Aufrufen von Tools finden Sie im Abschnitt zum clientseitigen Aufrufen von Tools unter [Verwendung von Tools mit Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/tool-use.html).

**Beispiel-Notizbücher**

Das folgende Notizbuch zeigt, wie ein Agenten-Benchmark mit dem Inspect AI-Container ausgeführt wird, der Tools aufruft:
+ [Tau-Bench (auftragsbasiert) — Evaluieren Sie mithilfe des Inspect AI-Containers das Tool-gestützte](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/inspect_eval_container/eval_tau_bench.ipynb) Argumentationsvermögen bei Kundendienstaufgaben

Verwenden Sie für behördliche Benchmarks, die eine Docker-Sandbox erfordern, das Inspect AI SDK:
+ [SWE-bench mit Inspect AI SDK](https://github.com/aws-samples/amazon-nova-samples/blob/main/customization/sagemaker-inspect-ai/local_inspect_sdk/eval_swe_bench.ipynb) — Evaluieren Sie die Funktionen der Softwareentwicklung mithilfe der Docker-Sandbox

**Wichtig**  
Agentische Benchmarks, für die eine Docker-Sandbox erforderlich ist (z. B. SWE-bench), werden in der Inspect AI-Container-Umgebung nicht unterstützt. Die SageMaker Training Job-Umgebung bietet keine Docker-in-Docker Funktionen. Um diese Benchmarks auszuführen, verwenden Sie das [Inspect AI SDK](nova-eval-on-sagemaker-inference.md) in einer Rechenumgebung mit Docker-Zugriff (z. B. einer Amazon EC2 EC2-Instance oder einem SageMaker Notebook mit installiertem Docker).

## Fehlerbehebung
<a name="nova-eval-container-troubleshooting"></a>

Dieser Abschnitt bietet Lösungen für häufig auftretende Probleme bei der Durchführung von Evaluierungen mit dem Inspect AI-Container.

**Tipp zur schnellen Iteration**

Bevor Sie einen SageMaker Schulungsjob einreichen, testen Sie Ihre Benchmarks lokal mit dem Inspect AI SDK. Führen Sie es `inspect eval my_benchmark.py` auf Ihrem lokalen Computer aus, um Aufgabendefinitionen, Abhängigkeiten und Bewertungslogik zu validieren, bevor Sie es im großen Maßstab ausführen.

**InsufficientInstanceCapacity error**

Dieser Fehler tritt auf, wenn AWS die Kapazität für den angeforderten Instanztyp in Ihrer Region nicht ausreicht.
+ Versuchen Sie es mit einem anderen Instance-Typ oder reichen Sie den Job in einer anderen AWS Region ein
+ Verwenden Sie einen anderen Instanztyp (z. B. `ml.m5.xlarge` anstelle von`ml.m5.large`)
+ Versuchen Sie die Anfrage nach ein paar Minuten erneut

**AccessDenied error**

Wenn der Trainingsjob mit der Fehlermeldung „Zugriff verweigert“ fehlschlägt, überprüfen Sie Folgendes:
+ Die Rolle ARN in Ihrer Jobkonfiguration ist korrekt
+ Die Vertrauensrichtlinie ermöglicht es`sagemaker.amazonaws.com`, die Rolle zu übernehmen
+ Ihr Benutzer oder Ihre Rolle hat die `iam:PassRole` Berechtigung für die Ausführungsrolle
+ Die Ausführungsrolle hat Berechtigungen für den Zugriff auf den S3-Bucket, den Inferenzendpunkt oder das Amazon Bedrock-Modell

**Die Endpunkterstellung schlägt feh**

Bei der Verwendung `cleanup_endpoint: true` mit automatischer Endpunkterstellung können die folgenden Probleme auftreten:


| Fehler | Lösung | 
| --- | --- | 
| ResourceLimitExceeded | Beantragen Sie eine Erhöhung des Servicekontingents für den Inferenzinstanztyp in Ihrer Region | 
| OutOfMemoryError | Verwenden Sie einen größeren Inferenzinstanztyp oder reduzieren Sie die Modellgröße | 
| Falsch model\_s3\_uri | Stellen Sie sicher, dass der S3-Pfad auf ein gültiges Modellartefaktverzeichnis verweist | 
| Falscher URI für das Inferenzbild | Stellen Sie sicher, dass die Bild-URI für Ihre Region und Ihr Modell-Framework korrekt ist | 
| Der Endpunkt blieb beim Erstellen hängen | Überprüfen Sie die CloudWatch Protokolle für den Endpunkt. Das Modell kann die Integritätsprüfungen nicht bestehen. Erhöhen MaxRuntimeInSeconds Sie den Wert, wenn der Endpunkt mehr Zeit benötigt. | 

**HuggingFace Timeouts beim Herunterladen**

Wenn bei Benchmarks, bei denen Datensätze vom HuggingFace Hub heruntergeladen werden, eine Zeitüberschreitung eintritt, setzen Sie die `HF_HUB_DOWNLOAD_TIMEOUT` Umgebungsvariable auf einen höheren Wert (in Sekunden):

```
--environment '{"HF_HUB_DOWNLOAD_TIMEOUT": "600"}'
```

**Job wurde beendet, aber der Endpunkt läuft immer noch**

Wenn der Trainingsjob unterbrochen wird, bevor die Bereinigung abgeschlossen ist, bleibt der Inferenzendpunkt möglicherweise aktiv. Löschen Sie den Endpunkt manuell, um laufende Gebühren zu vermeiden:

```
# List endpoints to find the orphaned one
aws sagemaker list-endpoints \
    --name-contains inspect \
    --query "Endpoints[].EndpointName" \
    --output table

# Delete the endpoint
aws sagemaker delete-endpoint \
    --endpoint-name your-endpoint-name

# Delete the endpoint configuration
aws sagemaker delete-endpoint-config \
    --endpoint-config-name your-endpoint-name

# Delete the model
aws sagemaker delete-model \
    --model-name your-endpoint-name
```

**Konflikte zwischen Benchmark-Abhängigkeiten**

Wenn ein Benchmark aufgrund von Abhängigkeitskonflikten mit vorinstallierten Paketen fehlschlägt, erstellen Sie `pyproject.toml` im Benchmark-Verzeichnis einen mit expliziten Versionseinschränkungen. Der Container installiert Benchmark-Abhängigkeiten isoliert, um Konflikte zu minimieren.

**Die Evaluationsergebnisse sehen falsch aus**

Wenn die Bewertungsergebnisse unerwartet niedrig oder inkonsistent sind, überprüfen Sie die folgenden Einstellungen in Ihrem Rezept:
+ **Temperatur** — Auf einstellen, um deterministische, `0.0` reproduzierbare Ergebnisse zu erhalten
+ **max\_tokens** — Stellen Sie sicher, dass der Wert groß genug ist, damit das Modell seine Antwort abschließen kann
+ **completion\_mode** — Legen Sie für Basismodelle (ohne Chat) `completion_mode: true` in Ihrem Rezept fest, dass anstelle des Chat-Formats die Eingabeaufforderung im Completion-Stil verwendet wird

## Datenschutz
<a name="nova-eval-container-data-privacy"></a>

Ihre Bewertungsdaten werden je nach verwendetem Inferenzanbieter unterschiedlich behandelt.

**SageMaker Endpunkt**

Wenn Sie einen SageMaker Inferenzendpunkt verwenden, bleiben alle Daten innerhalb Ihres. AWS-Konto Bewertungsaufforderungen und Modellantworten werden nicht außerhalb Ihres Kontos gesendet und nicht zur Verbesserung AWS der Dienste verwendet. Es ist keine Opt-Out-Richtlinie erforderlich.

**Amazon Bedrock**

Wenn Sie Amazon Bedrock als Inferenzanbieter verwenden, unterliegen Ihre Daten der AWS Opt-Out AI-Services-Richtlinie. Um zu verhindern, dass Ihre Daten zur Verbesserung von AWS KI-Diensten verwendet werden, aktivieren Sie die Opt-Out-Richtlinie auf AWS Organisationsebene. Weitere Informationen finden Sie unter [Richtlinien zur Deaktivierung von KI-Diensten](https://docs.aws.amazon.com//organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html).


| Anbieter von Inferenzen | Opt-out erforderlich | Details | 
| --- | --- | --- | 
| SageMaker Endpunkt | Nein | Daten bleiben in Ihrem Konto. Nicht durch die AI-Opt-Out-Richtlinie abgedeckt. | 
| Amazon Bedrock | Ja | Aktivieren Sie die AWS Opt-Out KI-Servicerichtlinie auf Organisationsebene, um zu verhindern, dass Daten zur Serviceverbesserung verwendet werden. | 