

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.

# Evaluieren Sie auf SageMaker Inference gehostete Modelle
<a name="nova-eval-on-sagemaker-inference"></a>

In diesem Leitfaden wird erklärt, wie Sie Ihre maßgeschneiderten Amazon Nova-Modelle, die auf SageMaker Inferenzendpunkten bereitgestellt werden, mithilfe von [Inspect AI](https://github.com/UKGovernmentBEIS/inspect_ai), einem Open-Source-Evaluierungsframework, bewerten können.

**Anmerkung**  
[Eine praktische Anleitung finden Sie im Schnellstart-Notizbuch von Inspect AI. SageMaker ](https://github.com/aws-samples/amazon-nova-samples/tree/main/customization/sagemaker-inference/sagemaker_inspect_quickstart.ipynb)

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

Sie können Ihre maßgeschneiderten Amazon Nova-Modelle, die auf SageMaker Endgeräten bereitgestellt werden, anhand standardisierter Benchmarks der KI-Forschungsgemeinschaft bewerten. Dieser Ansatz ermöglicht Ihnen:
+ Evaluieren Sie maßgeschneiderte Amazon Nova-Modelle (fein abgestimmt, destilliert oder anderweitig angepasst) in großem Maßstab
+ Führen Sie Evaluierungen mit parallel Inferenz über mehrere Endpunktinstanzen hinweg durch
+ Vergleichen Sie die Modellleistung anhand von Benchmarks wie MMLU, TruthfulQA und HumanEval
+ Integrieren Sie es in Ihre bestehende Infrastruktur SageMaker 

## Unterstützte Modelle
<a name="nova-eval-sagemaker-supported-models"></a>

Der SageMaker Inferenzanbieter arbeitet mit:
+ Amazon Nova-Modelle (Nova Micro, Nova Lite, Nova Lite 2)
+ Modelle, die über VllM- oder OpenAI-kompatible Inferenzserver bereitgestellt werden
+ Jeder Endpunkt, der das OpenAI Chat Completions API-Format unterstützt

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

Stellen Sie vor Beginn sicher, dass Sie über Folgendes verfügen:
+ Und AWS-Konto mit Berechtigungen zum Erstellen und Aufrufen von Endpunkten SageMaker 
+ AWS Anmeldeinformationen AWS CLI, die über Umgebungsvariablen oder die IAM-Rolle konfiguriert wurden
+ Python 3.9 oder höher

**Erforderliche IAM-Berechtigungen**

Ihr IAM-Benutzer oder Ihre IAM-Rolle benötigt die folgenden Berechtigungen:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sagemaker:InvokeEndpoint",
        "sagemaker:DescribeEndpoint"
      ],
      "Resource": "arn:aws:sagemaker:*:*:endpoint/*"
    }
  ]
}
```

## Schritt 1: Stellen Sie einen SageMaker Endpunkt bereit
<a name="nova-eval-sagemaker-step1"></a>

Bevor Sie Evaluierungen durchführen, benötigen Sie einen SageMaker Inferenzendpunkt, auf dem Ihr Modell ausgeführt wird.

Anweisungen zum Erstellen eines SageMaker Inferenzendpunkts mit Amazon Nova-Modellen finden Sie unter[Erste Schritte](nova-sagemaker-inference-getting-started.md).

Sobald sich Ihr Endpunkt im `InService` Status befindet, notieren Sie sich den Endpunktnamen, der in den Evaluierungsbefehlen verwendet werden soll.

## Schritt 2: Installieren Sie die Evaluierungsabhängigkeiten
<a name="nova-eval-sagemaker-step2"></a>

Erstellen Sie eine virtuelle Python-Umgebung und installieren Sie die erforderlichen Pakete.

```
# Create virtual environment
python3.12 -m venv venv
source venv/bin/activate

# Install uv for faster package installation
pip install uv

# Install Inspect AI and evaluation benchmarks
uv pip install inspect-ai inspect-evals

# Install AWS dependencies
uv pip install aioboto3 boto3 botocore openai
```

## Schritt 3: AWS Anmeldeinformationen konfigurieren
<a name="nova-eval-sagemaker-step3"></a>

Wählen Sie eine der folgenden Authentifizierungsmethoden:

**Option 1: AWS CLI (Empfohlen)**

```
aws configure
```

Geben Sie Ihre AWS Zugangsschlüssel-ID, Ihren geheimen Zugriffsschlüssel und Ihre Standardregion ein, wenn Sie dazu aufgefordert werden.

**Option 2: Umgebungsvariablen**

```
export AWS_ACCESS_KEY_ID=your_access_key
export AWS_SECRET_ACCESS_KEY=your_secret_key
export AWS_DEFAULT_REGION=us-west-2
```

**Option 3: IAM-Rolle**

Bei Ausführung auf Amazon EC2 oder SageMaker Notebooks wird die IAM-Rolle der Instance automatisch verwendet.

**Überprüfen Sie die Anmeldeinformationen**

```
import boto3

sts = boto3.client('sts')
identity = sts.get_caller_identity()
print(f"Account: {identity['Account']}")
print(f"User/Role: {identity['Arn']}")
```

## Schritt 4: Installieren Sie den SageMaker Anbieter
<a name="nova-eval-sagemaker-step4"></a>

Der SageMaker Anbieter ermöglicht Inspect AI die Kommunikation mit Ihren SageMaker Endpunkten. Der Installationsprozess des Anbieters wird im [Schnellstart-Notizbuch](https://github.com/aws-samples/amazon-nova-samples/tree/main/customization/sagemaker-inference/sagemaker_inspect_quickstart.ipynb) optimiert.

## Schritt 5: Laden Sie die Evaluierungs-Benchmarks herunter
<a name="nova-eval-sagemaker-step5"></a>

Klonen Sie das Inspect Evals-Repository, um auf Standard-Benchmarks zuzugreifen:

```
git clone https://github.com/UKGovernmentBEIS/inspect_evals.git
```

Dieses Repository enthält Benchmarks wie:
+ MMLU und MMLU-Pro (Wissen und Argumentation)
+ TruthfulQA (Wahrhaftigkeit)
+ HumanEval (Codegenerierung)
+ GSM8K (mathematisches Denken)

## Schritt 6: Evaluierungen durchführen
<a name="nova-eval-sagemaker-step6"></a>

Führen Sie eine Evaluierung mit Ihrem SageMaker Endpunkt durch:

```
cd inspect_evals/src/inspect_evals/

inspect eval mmlu_pro/mmlu_pro.py \
  --model sagemaker/my-nova-endpoint \
  -M region_name=us-west-2 \
  --max-connections 256 \
  --max-retries 100 \
  --display plain
```

**Die wichtigsten Parameter**


| Parameter | Standard | Description | 
| --- | --- | --- | 
| --max-connections | 10 | Anzahl der parallel Anfragen an den Endpunkt. Skalieren Sie mit der Anzahl der Instanzen (z. B. 10 Instanzen × 25 = 250). | 
| --max-retries | 3 | Versuchen Sie es erneut mit fehlgeschlagenen Anfragen. Verwenden Sie 50-100 für umfangreiche Auswertungen. | 
| -M region\$1name | us-east-1 | AWS Region, in der Ihr Endpunkt bereitgestellt wird. | 
| -M read\$1timeout | 600 | Timeout in Sekunden anfordern. | 
| -M connect\$1timeout | 60 | Verbindungs-Timeout in Sekunden. | 

**Empfehlungen zur Optimierung**

Für einen Endpunkt mit mehreren Instanzen:

```
# 10-instance endpoint example
--max-connections 250   # ~25 connections per instance
--max-retries 100       # Handle transient errors
```

Eine `--max-connections` zu hohe Einstellung kann den Endpunkt überfordern und zu Drosselung führen. Wenn er zu niedrig eingestellt ist, wird die Kapazität nicht ausreichend genutzt.

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

Starten Sie den Inspect AI Viewer, um die Bewertungsergebnisse zu analysieren:

```
inspect view
```

Der Viewer zeigt:
+ Allgemeine Punktzahlen und Kennzahlen
+ Ergebnisse pro Stichprobe mit Modellantworten
+ Fehleranalyse und Fehlermuster

## Verwaltung von Endpunkten
<a name="nova-eval-sagemaker-managing-endpoints"></a>

**Aktualisieren Sie einen Endpunkt**

So aktualisieren Sie einen vorhandenen Endpunkt mit einem neuen Modell oder einer neuen Konfiguration:

```
import boto3

sagemaker = boto3.client('sagemaker', region_name=REGION)

# Create new model and endpoint configuration
# Then update the endpoint
sagemaker.update_endpoint(
    EndpointName=EXISTING_ENDPOINT_NAME,
    EndpointConfigName=NEW_ENDPOINT_CONFIG_NAME
)
```

**Löschen Sie einen Endpunkt**

```
sagemaker.delete_endpoint(EndpointName=ENDPOINT_NAME)
```

## Einführung benutzerdefinierter Benchmarks
<a name="nova-eval-sagemaker-custom-benchmarks"></a>

Mithilfe des folgenden Workflows können Sie Inspect AI neue Benchmarks hinzufügen:

1. Studieren Sie das Datensatzformat und die Bewertungskennzahlen des Benchmarks

1. Überprüfen Sie ähnliche Implementierungen in `inspect_evals/`

1. Erstellen Sie eine Aufgabendatei, die Datensatzdatensätze in Inspect AI-Beispiele konvertiert

1. Implementieren Sie geeignete Solver und Scorer

1. Validieren Sie mit einem kleinen Testlauf

Beispiel für eine Aufgabenstruktur:

```
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("dataset_name", split="test"),
        solver=multiple_choice(),
        scorer=choice()
    )
```

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

**Häufig auftretende Probleme**

**Drosselung oder Timeouts an Endpunkten**
+ Reduzieren `--max-connections`
+ Erhöhen `--max-retries`
+ Überprüfen Sie die CloudWatch Endpunktmetriken auf Kapazitätsprobleme

**Fehler bei der Authentifizierung**
+ Stellen Sie sicher, dass die AWS Anmeldeinformationen korrekt konfiguriert sind
+ Überprüfen Sie, ob die IAM-Berechtigungen Folgendes beinhalten `sagemaker:InvokeEndpoint`

**Fehler im Modell**
+ Stellen Sie sicher, dass sich der Endpunkt im `InService` Status befindet
+ Stellen Sie sicher, dass das Modell das OpenAI Chat Completions API-Format unterstützt

## Zugehörige Ressourcen
<a name="nova-eval-sagemaker-related-resources"></a>
+ [Untersuchen Sie die KI-Dokumentation](https://inspect.ai-safety-institute.org.uk/)
+ [Untersuchen Sie das Evals Repository](https://github.com/UKGovernmentBEIS/inspect_evals)
+ [SageMaker Entwicklerhandbuch](https://docs.aws.amazon.com//sagemaker/latest/dg/whatis.html)
+ [Stellen Sie Modelle für Inferenz bereit](https://docs.aws.amazon.com//sagemaker/latest/dg/deploy-model.html)
+ [Konfiguration des AWS CLI](https://docs.aws.amazon.com//cli/latest/userguide/cli-chap-configure.html)