

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.

# Verfolgen Sie Inferenzempfehlungen und Benchmark-Ergebnisse mit MLflow
<a name="generative-ai-inference-recommendations-mlflow"></a>

Sie können die Ergebnisse Ihrer Empfehlungen und Benchmark-Jobs mit vollständig verwaltetem MLflow auf Amazon SageMaker AI verfolgen. Wenn Sie eine MLflow-Konfiguration angeben, protokolliert SageMaker KI die Leistungskennzahlen und Artefakte, die der Job erzeugt, in einer MLflow-App. Sie können dann die MLflow-Benutzeroberfläche verwenden, um einzelne Läufe anzuzeigen, Konfigurationen zwischen Jobs zu vergleichen und Ergebnisse mit Ihrem Team zu teilen. Weitere Informationen zu MLflow on SageMaker AI finden Sie unter. [Beschleunigen Sie die generative KI-Entwicklung mit verwaltetem MLflow auf Amazon SageMaker AI](mlflow.md)

MLFlow-Tracking ist optional. Um es zu aktivieren, geben Sie bei der Erstellung des Jobs eine MLflow-Konfiguration an, die auf eine MLFlow-App verweist.

## Voraussetzungen
<a name="generative-ai-inference-recommendations-mlflow-prereqs"></a>

Bevor Sie Ergebnisse mit MLflow verfolgen können, benötigen Sie zusätzlich zu dem [Voraussetzungen](generative-ai-inference-recommendations-get-started.md#generative-ai-inference-recommendations-get-started-prereqs) für einen Empfehlungs- oder Benchmark-Job Folgendes:
+ Eine MLflow App in einem betriebsbereiten Zustand, genauso AWS-Region wie Ihr Job. Informationen zum Erstellen einer MLflow App finden Sie unter. [Einrichtung der MLflow App](mlflow-app-setup.md)
+ Eine IAM-Ausführungsrolle (die`RoleArn`, die Sie an den Job übergeben) mit der Berechtigung, die MLflow App zu beschreiben und die MLflow REST-APIs aufzurufen. Fügen Sie die `sagemaker:DescribeMlflowApp` Aktion und die `sagemaker-mlflow` Aktionen hinzu, die der Job verwendet, um Läufe zu protokollieren. Weitere Informationen zu MLflow-Berechtigungen finden Sie unter[Einrichtung der MLflow App](mlflow-app-setup.md).

## MLflow-Konfigurationsparameter
<a name="generative-ai-inference-recommendations-mlflow-config"></a>

Um die Ergebnisse zu verfolgen, fügen Sie ein `MlflowConfig` Objekt zu `OutputConfig` Ihrer `CreateAIRecommendationJob` `CreateAIBenchmarkJob` Anfrage hinzu. `MlflowConfig`enthält die folgenden Felder:

`MlflowResourceArn`  
Erforderlich Der Amazon-Ressourcenname (ARN) der MLflow App, in der Ergebnisse protokolliert werden sollen, im Format`arn:aws:sagemaker:{{region}}:{{account-id}}:mlflow-app/{{app-id}}`.

`MlflowExperimentName`  
Optional. Der Name des MLflow-Experiments, unter dem der Lauf protokolliert werden soll. Wenn das Experiment nicht existiert, wird es von SageMaker KI erstellt. Wenn es bereits existiert, verwendet SageMaker KI es erneut, sodass Sie Läufe von mehreren Jobs unter einem Experiment gruppieren können, indem Sie denselben Namen angeben.

`MlflowRunName`  
Optional. Der Name des MLflow-Laufs der obersten Ebene, unter dem die Ergebnisse des Jobs verschachtelt sind. Um die Ergebnisse mehrerer Jobs in einer Ausführung der obersten Ebene zu gruppieren, übergeben Sie sie an jeden Job. `MlflowRunName`

Jeder Job erstellt einen MLFlow-Lauf der obersten Ebene mit verschachtelten untergeordneten Läufen, die die Ergebnisse nach Dimensionen wie Benchmark-Ziel oder Instance-Typ, Bereitstellungskonfiguration und Parallelitätsebene aufschlüsseln. Mit dieser Struktur können Sie einzelne Messungen detailliert untersuchen und Konfigurationen in der MLflow-Benutzeroberfläche vergleichen.

Was `MlflowConfig` Sie in der Erstellungsanfrage angeben, wird in `OutputConfig` der entsprechenden `Describe` Antwort wiedergegeben.

## Verfolgen Sie einen Empfehlungsjob
<a name="generative-ai-inference-recommendations-mlflow-recommendation"></a>

Fügen Sie das `MlflowConfig` Objekt hinzu`OutputConfig`, wenn Sie einen Empfehlungsjob erstellen.

**Python (Teil 3)**

```
response = client.create_ai_recommendation_job(
    AIRecommendationJobName="my-recommendation-job",
    ModelSource={
        "S3": {
            "S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/",
        }
    },
    OutputConfig={
        "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/",
        "MlflowConfig": {
            "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE",
            "MlflowExperimentName": "my-recommendation-experiment",
            "MlflowRunName": "my-recommendation-job-run",
        },
    },
    PerformanceTarget={
        "Constraints": [
            {"Metric": "ttft-ms"}
        ]
    },
    AIWorkloadConfigIdentifier="my-recommendation-workload",
    RoleArn="arn:aws:iam::111122223333:role/ExampleRole",
)
print(response["AIRecommendationJobArn"])
```

**AWS CLI**

```
aws sagemaker create-ai-recommendation-job \
  --ai-recommendation-job-name "my-recommendation-job" \
  --model-source '{"S3": {"S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/"}}' \
  --output-config '{
    "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/",
    "MlflowConfig": {
      "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE",
      "MlflowExperimentName": "my-recommendation-experiment",
      "MlflowRunName": "my-recommendation-job-run"
    }
  }' \
  --performance-target '{"Constraints": [{"Metric": "ttft-ms"}]}' \
  --ai-workload-config-identifier "my-recommendation-workload" \
  --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \
  --region us-west-2
```

## Verfolge einen Benchmark-Job
<a name="generative-ai-inference-recommendations-mlflow-benchmark"></a>

Fügen Sie das `MlflowConfig` Objekt hinzu, `OutputConfig` wenn Sie einen Benchmark-Job erstellen.

**Python (Teil 3)**

```
response = client.create_ai_benchmark_job(
    AIBenchmarkJobName="my-benchmark-job",
    BenchmarkTarget={
        "Endpoint": {
            "Identifier": "my-sagemaker-endpoint"
        }
    },
    OutputConfig={
        "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/",
        "MlflowConfig": {
            "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE",
            "MlflowExperimentName": "my-benchmark-experiment",
            "MlflowRunName": "my-benchmark-job-run",
        },
    },
    AIWorkloadConfigIdentifier="my-benchmark-config",
    RoleArn="arn:aws:iam::111122223333:role/ExampleRole",
)
print(response["AIBenchmarkJobArn"])
```

**AWS CLI**

```
aws sagemaker create-ai-benchmark-job \
  --ai-benchmark-job-name "my-benchmark-job" \
  --benchmark-target '{"Endpoint": {"Identifier": "my-sagemaker-endpoint"}}' \
  --output-config '{
    "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/",
    "MlflowConfig": {
      "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE",
      "MlflowExperimentName": "my-benchmark-experiment",
      "MlflowRunName": "my-benchmark-job-run"
    }
  }' \
  --ai-workload-config-identifier "my-benchmark-config" \
  --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \
  --region us-west-2
```

## Ergebnisse in MLflow anzeigen
<a name="generative-ai-inference-recommendations-mlflow-view"></a>

Nachdem der Job den `Completed` Status erreicht hat, öffnen Sie die MLflow-Benutzeroberfläche in der MLflow App, um die protokollierten Läufe zu überprüfen. Weitere Informationen zum Starten der MLflow-Benutzeroberfläche finden Sie unter. [Starten der MLflow-Benutzeroberfläche mit vorsignierter URL](mlflow-launch-ui.md)

Wählen Sie auf der Seite **Experimente** das Experiment aus, das Sie in `MlflowExperimentName` angegeben haben.

![Die Seite MLflow UI Experiments zeigt eine Liste von Experimenten mit ihren Namen und Erstellungszeiten.](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/mlflow/inference-recommendations-mlflow-experiments.png)


Die Ansicht „**Runs**“ des Experiments zeigt eine Ausführung auf oberster Ebene, die einen Lauf pro Job enthält, der sich auf untergeordnete Läufe für jeden Instanztyp, jede Bereitstellungskonfiguration und jede Parallelitätsebene erstreckt. Wählen Sie einen Lauf aus, um seine Parameter, Metriken und Artefakte anzuzeigen.

![Die Ansicht MLflow UI Runs zeigt eine Ausführung auf oberster Ebene, die zu verschachtelten untergeordneten Läufen für die Stufen pro Job, Instanztyp, Image-Typ und Parallelität erweitert wird.](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/mlflow/inference-recommendations-mlflow-runs.png)
