

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.

# ML-Konnektoren im Service erstellen OpenSearch
<a name="ml-create"></a>

Mit Amazon OpenSearch Service Flow Framework-Vorlagen können Sie ML-Konnektoren konfigurieren und installieren, indem Sie die in ml-commons angebotene Create Connector-API verwenden. Sie können ML-Konnektoren verwenden, um OpenSearch Service mit anderen AWS Diensten oder Plattformen von Drittanbietern zu verbinden. Weitere Informationen dazu finden Sie unter [Connectors für ML-Plattformen von Drittanbietern erstellen](https://opensearch.org/docs/2.13/ml-commons-plugin/remote-models/connectors/). Die Amazon OpenSearch Service Flow Framework-API ermöglicht Ihnen die Automatisierung von Aufgaben zur Einrichtung und Vorverarbeitung von OpenSearch Services und kann zur Erstellung von ML-Konnektoren verwendet werden. 

Bevor Sie einen Connector in OpenSearch Service erstellen können, müssen Sie Folgendes tun:
+ Erstellen Sie eine Amazon SageMaker AI-Domain.
+ Erstellen Sie eine IAM-Rolle.
+ Konfigurieren Sie die Berechtigung zum Übergeben von Rollen.
+ Ordnen Sie die Flow-Framework- und ML-Commons-Rollen in OpenSearch Dashboards zu.

Weitere Informationen zur Einrichtung von ML-Konnektoren für AWS Services finden Sie unter [Amazon OpenSearch Service ML-Konnektoren für AWS Services](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html#connector-sagemaker-prereq). Weitere Informationen zur Verwendung von OpenSearch Service ML-Konnektoren mit Plattformen von Drittanbietern finden Sie unter [Amazon OpenSearch Service ML-Konnektoren für Plattformen von Drittanbietern](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html#connector-sagemaker-prereq).

## Einen Connector über einen Flow-Framework-Service erstellen
<a name="ml-workflow"></a>

Um eine Flow-Framework-Vorlage mit Connector zu erstellen, müssen Sie eine `POST` Anfrage an Ihren OpenSearch Service-Domain-Endpunkt senden. Sie können cURL, einen Python-Beispielclient, Postman oder eine andere Methode verwenden, um eine signierte Anfrage zu senden. Die `POST` Anfrage hat das folgende Format:

```
POST /_plugins/_flow_framework/workflow 
{
  "name": "Deploy Claude Model",
  "description": "Deploy a model using a connector to Claude",
  "use_case": "PROVISION",
  "version": {
    "template": "1.0.0",
    "compatibility": [
      "2.12.0",
      "3.0.0"
    ]
  },
  "workflows": {
    "provision": {
      "nodes": [
        {
          "id": "create_claude_connector",
          "type": "create_connector",
          "user_inputs": {
            "name": "Claude Instant Runtime Connector",
            "version": "1",
            "protocol": "aws_sigv4",
            "description": "The connector to Bedrock service for Claude model",
            "actions": [
              {
                "headers": {
                  "x-amz-content-sha256": "required",
                  "content-type": "application/json"
                },
                "method": "POST",
                "request_body": "{ \"prompt\":\"${parameters.prompt}\", \"max_tokens_to_sample\":${parameters.max_tokens_to_sample}, \"temperature\":${parameters.temperature},  \"anthropic_version\":\"${parameters.anthropic_version}\" }",
                "action_type": "predict",
                "url": "https://bedrock-runtime.us-west-2.amazonaws.com/model/anthropic.claude-instant-v1/invoke"
              }
            ],
            "credential": {
                "roleArn": "arn:aws:iam::account-id:role/opensearch-secretmanager-role" 
             },
            "parameters": {
              "endpoint": "bedrock-runtime.us-west-2.amazonaws.com",
              "content_type": "application/json",
              "auth": "Sig_V4",
              "max_tokens_to_sample": "8000",
              "service_name": "bedrock",
              "temperature": "0.0001",
              "response_filter": "$.completion",
              "region": "us-west-2",
              "anthropic_version": "bedrock-2023-05-31"
            }
          }
        }
      ]
    }
  }
}
```

Wenn sich Ihre Domain in einer Virtual Private Cloud (Amazon VPC) befindet, müssen Sie mit der Amazon VPC verbunden sein, damit die Anfrage den AI-Connector erfolgreich erstellen kann. Der Zugriff auf eine Amazon VPC hängt von der Netzwerkkonfiguration ab, beinhaltet jedoch in der Regel eine Verbindung zu einem VPN- oder Unternehmensnetzwerk. Um zu überprüfen, ob Sie Ihre OpenSearch Service-Domain erreichen können, navigieren Sie `https://{{your-vpc-domain}}.{{region}}.es.amazonaws.com` in einem Webbrowser zu und stellen Sie sicher, dass Sie die Standard-JSON-Antwort erhalten. (Ersetzen Sie die {{placeholder text}} durch Ihre eigenen Werte.

### Beispiel für einen Python-Client
<a name="ml-python-sample"></a>

Der Python-Client ist einfacher zu automatisieren als eine `HTTP` Anfrage und hat eine bessere Wiederverwendbarkeit. Um den AI-Konnektor mit dem Python-Client zu erstellen, speichern Sie den folgenden Beispielcode in einer Python-Datei. Der Client benötigt das [AWS SDK for Python (Boto3)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html#connector-sagemaker-prereq), [Requests:HTTP für Humans](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html#connector-sagemaker-prereq) und [Requests-aws4auth](https://pypi.org/project/requests-aws4auth/) 1.2.3-Pakete.

```
import boto3
import requests 
from requests_aws4auth import AWS4Auth

host = 'domain-endpoint/'
region = 'region'
service = 'es'
credentials = boto3.Session().get_credentials()
awsauth = AWS4Auth(credentials.access_key, credentials.secret_key, region, service, session_token=credentials.token)

path = '_plugins/_flow_framework/workflow'
url = host + path

payload = {
  "name": "Deploy Claude Model",
  "description": "Deploy a model using a connector to Claude",
  "use_case": "PROVISION",
  "version": {
    "template": "1.0.0",
    "compatibility": [
      "2.12.0",
      "3.0.0"
    ]
  },
  "workflows": {
    "provision": {
      "nodes": [
        {
          "id": "create_claude_connector",
          "type": "create_connector",
          "user_inputs": {
            "name": "Claude Instant Runtime Connector",
            "version": "1",
            "protocol": "aws_sigv4",
            "description": "The connector to Bedrock service for Claude model",
            "actions": [
              {
                "headers": {
                  "x-amz-content-sha256": "required",
                  "content-type": "application/json"
                },
                "method": "POST",
                "request_body": "{ \"prompt\":\"${parameters.prompt}\", \"max_tokens_to_sample\":${parameters.max_tokens_to_sample}, \"temperature\":${parameters.temperature},  \"anthropic_version\":\"${parameters.anthropic_version}\" }",
                "action_type": "predict",
                "url": "https://bedrock-runtime.us-west-2.amazonaws.com/model/anthropic.claude-instant-v1/invoke"
              }
            ],
            "credential": {
                "roleArn": "arn:aws:iam::account-id:role/opensearch-secretmanager-role" 
             },
            "parameters": {
              "endpoint": "bedrock-runtime.us-west-2.amazonaws.com",
              "content_type": "application/json",
              "auth": "Sig_V4",
              "max_tokens_to_sample": "8000",
              "service_name": "bedrock",
              "temperature": "0.0001",
              "response_filter": "$.completion",
              "region": "us-west-2",
              "anthropic_version": "bedrock-2023-05-31"
            }
          }
        }
      ]
    }
  }
}

headers = {"Content-Type": "application/json"}

r = requests.post(url, auth=awsauth, json=payload, headers=headers)
print(r.status_code)
print(r.text)
```

#### Pre-defined Workflow-Vorlagen
<a name="ml-predefined"></a>

Amazon OpenSearch Service bietet mehrere Workflow-Vorlagen für einige gängige Anwendungsfälle des maschinellen Lernens (ML). Die Verwendung einer Vorlage vereinfacht komplexe Setups und bietet viele Standardwerte für Anwendungsfälle wie semantische Suche oder Konversationssuche. Sie können eine Workflow-Vorlage angeben, wenn Sie die Create Workflow API aufrufen.
+ Um eine vom OpenSearch Service bereitgestellte Workflow-Vorlage zu verwenden, geben Sie den Anwendungsfall der Vorlage als `use_case` Abfrageparameter an. 
+ Um eine benutzerdefinierte Workflow-Vorlage zu verwenden, geben Sie die vollständige Vorlage im Anfragetext an. Ein Beispiel für eine benutzerdefinierte Vorlage finden Sie in einer JSON-Beispielvorlage oder einer YAML-Beispielvorlage.

#### Anwendungsfälle für Vorlagen
<a name="templates"></a>

Diese Tabelle bietet einen Überblick über die verschiedenen verfügbaren Vorlagen, eine Beschreibung der Vorlagen und die erforderlichen Parameter.


| Anwendungsfall für Vorlagen | Description | Erforderliche Parameter | 
| --- | --- | --- | 
| `bedrock_titan_embedding_model_deploy` | Erstellt und implementiert ein Amazon Bedrock-Einbettungsmodell (standardmäßig `titan-embed-text-v1` | `create_connector.credential.roleArn` | 
| `bedrock_titan_embedding_model_deploy` | Erstellt und implementiert ein multimodales Einbettungsmodell von Amazon Bedrock (standardmäßig `titan-embed-text-v1` | `create_connector.credential.roleArn` | 
| `cohere_embedding_model_deploy` | Erstellt ein Cohere-Einbettungsmodell und stellt es bereit (standardmäßig embed-english-v3.0). | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `cohere_chat_model_deploy` | Erstellt ein Cohere-Chat-Modell und stellt es bereit (standardmäßig Cohere Command). | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `open_ai_embedding_model_deploy` | Erzeugt und implementiert ein OpenAI-Einbettungsmodell (standardmäßig text-embedding-ada-002). | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `openai_chat_model_deploy` | Erzeugt und implementiert ein OpenAI-Chat-Modell (standardmäßig gpt-3.5-Turbo). | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `semantic_search_with_cohere_embedding` | Konfiguriert die semantische Suche und stellt ein Cohere-Einbettungsmodell bereit. Sie müssen den API-Schlüssel für das Cohere-Modell angeben. | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `semantic_search_with_cohere_embedding_query_enricher` | Konfiguriert die semantische Suche und stellt ein Cohere-Einbettungsmodell bereit. Fügt einen query\_enricher-Suchprozessor hinzu, der eine Standardmodell-ID für neuronale Abfragen festlegt. Sie müssen den API-Schlüssel für das Cohere-Modell angeben. | `create_connector.credential.roleArn`, `create_connector.credential.secretArn` | 
| `multimodal_search_with_bedrock_titan` | Stellt ein multimodales Amazon Bedrock-Modell bereit und konfiguriert eine Aufnahme-Pipeline mit einem text\_image\_embedding-Prozessor und einem k-NN-Index für die multimodale Suche. Sie müssen Ihre Anmeldeinformationen angeben. AWS  | `create_connector.credential.roleArn` | 

**Anmerkung**  
Für alle Vorlagen, die einen geheimen ARN benötigen, wird das Geheimnis standardmäßig mit dem Schlüsselnamen „key“ in AWS Secrets Manager gespeichert.

## Standardvorlagen mit vortrainierten Modellen
<a name="ml-pretrained-default"></a>

Amazon OpenSearch Service bietet zwei zusätzliche Standard-Workflow-Vorlagen, die im OpenSearch Open-Source-Service nicht verfügbar sind.


| Anwendungsfall für Vorlagen | Description | 
| --- | --- | 
| `semantic_search_with_local_model` | Konfiguriert die [semantische Suche](https://opensearch.org/docs/2.14/search-plugins/semantic-search/) und stellt ein vortrainiertes Modell bereit (). `msmarco-distilbert-base-tas-b` Fügt einen [https://opensearch.org/docs/2.14/search-plugins/search-pipelines/neural-query-enricher/](https://opensearch.org/docs/2.14/search-plugins/search-pipelines/neural-query-enricher/)Suchprozessor hinzu, der eine Standardmodell-ID für neuronale Abfragen festlegt und einen verknüpften k-NN-Index namens „my-nlp-index“ erstellt. | 
| `hybrid_search_with_local_model` | Konfiguriert die [Hybridsuche](https://opensearch.org/docs/2.14/search-plugins/hybrid-search/) und stellt ein vortrainiertes Modell bereit (). `msmarco-distilbert-base-tas-b` Fügt einen [https://opensearch.org/docs/2.14/search-plugins/search-pipelines/neural-query-enricher/](https://opensearch.org/docs/2.14/search-plugins/search-pipelines/neural-query-enricher/)Suchprozessor hinzu, der eine Standardmodell-ID für neuronale Abfragen festlegt und einen verknüpften k-NN-Index namens „my-nlp-index“ erstellt. | 