

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.

# Command-Modelle von Cohere
<a name="model-parameters-cohere-command"></a>

Mit [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html) oder [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) (Streaming) nehmen Sie Inferenzanforderungen an Command-Modelle von Cohere vor. Sie benötigen die Modell-ID für das Modell, das Sie verwenden möchten. Informationen zum Abrufen der Modell-ID finden Sie unter [Unterstützte Basismodelle in Amazon Bedrock](models-supported.md). 

**Topics**
+ [Anforderung und Antwort](#model-parameters-cohere-command-request-response)
+ [Codebeispiel](#api-inference-examples-cohere-command)

## Anforderung und Antwort
<a name="model-parameters-cohere-command-request-response"></a>

------
#### [ Request ]

Die Cohere-Command-Modelle haben die folgenden Inferenzparameter. 

```
{
    "prompt": string,
    "temperature": float,
    "p": float,
    "k": float,
    "max_tokens": int,
    "stop_sequences": [string],
    "return_likelihoods": "GENERATION|ALL|NONE",
    "stream": boolean,
    "num_generations": int,
    "logit_bias": {token_id: bias},
    "truncate": "NONE|START|END"
}
```

Die folgenden Parameter sind erforderlich.
+ **prompt** – (erforderlich) Der Eingabetext, der als Ausgangspunkt für die Generierung der Antwort dient.

  Im Folgenden sind Text pro Aufruf und Zeichenbeschränkungen aufgeführt.

**Texte pro Aufruf**  
    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)

**Zeichen**  
    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)

Die folgenden Parameter sind optional.
+ return\$1likelihoods – Geben Sie an, wie und ob die Token-Wahrscheinlichkeiten zusammen mit der Antwort zurückgegeben werden. Sie können die folgenden Optionen angeben: 
  + `GENERATION` – Gibt nur Wahrscheinlichkeiten für generierte Token zurück.
  + `ALL` – Gibt Wahrscheinlichkeiten für alle Token zurück.
  + `NONE` – (Standard) gibt keine Wahrscheinlichkeiten zurück.
+ **stream** – (erforderlich, um Streaming zu unterstützen) Mit `true` wird die Antwort Stück für Stück in Echtzeit und mit `false` vollständig nach Abschluss des Vorgangs zurückgegeben.
+ **logit\$1bias** – Dieser Wert verhindert, dass das Modell unerwünschte Token generiert, oder bietet Anreize für das Modell, die gewünschten Token einzubeziehen. Das Format lautet `{token_id: bias}`, wobei „bias“ eine Gleitkommazahl zwischen -10 und 10 ist. Token können mithilfe eines beliebigen Tokenisierungsdienstes, z. B. mit dem Tokenize-Endpunkt von Cohere, aus Text abgerufen werden. Weitere Informationen finden Sie in der [Cohere-Dokumentation](https://docs.cohere.com/docs).    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+  **num\$1generations** – Die maximale Anzahl der Generierungen, die das Modell zurückgeben soll     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+  **truncate** (kürzen) – Gibt an, wie die API Eingaben verarbeitet, die die maximale Token-Länge überschreiten. Nutzen Sie einen der Folgenden:
  + `NONE` – Gibt einen Fehler zurück, wenn die Eingabe die maximale Länge des Eingabe-Tokens überschreitet. 
  + `START` – Verwirft den Anfang der Eingabe. 
  + `END` – (Standard) verwirft das Ende der Eingabe.

  Wenn Sie `START` oder `END` angeben, verwirft das Modell die Eingabe, bis die verbleibende Eingabe genau der maximalen Länge des Eingabe-Tokens für das Modell entspricht.
+ **Temperatur** – Verwenden Sie einen niedrigeren Wert, um die Zufälligkeit der Antwort zu verringern.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+ **p** – Verwenden Sie einen niedrigeren Wert, um weniger wahrscheinliche Optionen zu ignorieren. Legen Sie den Wert auf 0 oder 1,0 fest, um den Parameter zu deaktivieren. Wenn `p` sowohl als auch `k` aktiviert sind, wird `p` nach `k` aktiv.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+ **k** – Geben Sie die Anzahl der Token-Optionen an, die das Modell zur Generierung des nächsten Tokens verwendet. Wenn `p` sowohl als auch `k` aktiviert sind, wird `p` nach `k` aktiv.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+ **max\$1tokens** – Geben Sie die maximale Anzahl von Token an, die in der generierten Antwort verwendet werden soll.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/bedrock/latest/userguide/model-parameters-cohere-command.html)
+ **stop\$1sequences** – Konfigurieren Sie bis zu vier Sequenzen, die das Modell erkennt. Nach einer Stoppsequenz stoppt das Modell die Generierung weiterer Token. Der zurückgegebene Text enthält keine Stoppsequenz.

------
#### [ Response ]

Die Antwort enthält folgende mögliche Felder:

```
{
    "generations": [
        {
            "finish_reason": "COMPLETE | MAX_TOKENS | ERROR | ERROR_TOXIC",
            "id": string,
            "text": string,
            "likelihood" : float,
            "token_likelihoods" : [{"token" : string, "likelihood": float}],
            "is_finished" : true | false,
            "index" : integer
           
        }
    ],
    "id": string,
    "prompt": string
}
```
+ `generations` – Eine Liste der generierten Ergebnisse zusammen mit den Wahrscheinlichkeiten für die angeforderten Token. (Immer zurückgegeben) Jedes Generierungsobjekt in der Liste umfasst die folgenden Felder.
  + `id` – Eine Kennung für die Generation. (Immer zurückgegeben)
  + `likelihood` – Die Wahrscheinlichkeit der Ausgabe. Der Wert ist der Durchschnitt der Token-Wahrscheinlichkeiten in `token_likelihoods`. Wird zurückgegeben, wenn Sie den Eingabeparameter `return_likelihoods` angeben.
  + `token_likelihoods` – Ein Array von Wahrscheinlichkeiten pro Token. Wird zurückgegeben, wenn Sie den Eingabeparameter `return_likelihoods` angeben.
  + `finish_reason` – Hiermit wird der Grund angegeben, warum das Modell die Token-Generierung abgeschlossen hat. `COMPLETE` – Das Modell hat eine fertige Antwort zurückgesendet. `MAX_TOKENS` – Die Antwort wurde gekürzt, weil das Modell die maximale Anzahl von Token für seine Kontextlänge erreicht hatte. `ERROR ` – Bei der Generierung der Antwort ist ein Fehler aufgetreten. `ERROR_TOXIC` – Das Modell generierte eine Antwort, die als toxisch eingestuft wurde. `finish_reason` wird nur zurückgegeben, wenn `is_finished` = `true` ist. (Nicht immer zurückgegeben) 
  + `is_finished` – Ein boolesches Feld, das nur verwendet wird, wenn `stream` gleich `true` ist. Es gibt an, ob zusätzliche Token im Rahmen der Streaming-Antwort generiert werden oder nicht. (Nicht immer zurückgegeben)
  + `text` – Der generierte Text.
  + `index` – Wird in einer Streaming-Antwort verwendet, um festzustellen, zu welcher Generation ein bestimmtes Token gehört. Wenn nur eine Antwort gestreamt wird, gehören alle Token derselben Generation an und der Index wird nicht zurückgegeben. `index` wird daher nur in einer Streaming-Anfrage zurückgegeben, deren Wert für `num_generations` größer als eins ist.
+ `prompt` – Der Prompt aus der Eingabeanforderung (wird immer zurückgegeben).
+ `id` – Eine Kennung für die Anforderung (immer zurückgegeben).

Weitere Informationen finden Sie unter [Generieren](https://docs.cohere.com/reference/generate-1) in der Cohere-Dokumentation.

------

## Codebeispiel
<a name="api-inference-examples-cohere-command"></a>

Dieses Beispiel zeigt, wie das Modell *Cohere Command* aufgerufen wird.

```
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
"""
Shows how to generate text using a Cohere model.
"""
import json
import logging
import boto3


from botocore.exceptions import ClientError

logger = logging.getLogger(__name__)
logging.basicConfig(level=logging.INFO)


def generate_text(model_id, body):
    """
    Generate text using a Cohere model.
    Args:
        model_id (str): The model ID to use.
        body (str) : The reqest body to use.
    Returns:
        dict: The response from the model.
    """

    logger.info("Generating text with Cohere model %s", model_id)

    accept = 'application/json'
    content_type = 'application/json'

    bedrock = boto3.client(service_name='bedrock-runtime')

    response = bedrock.invoke_model(
        body=body,
        modelId=model_id,
        accept=accept,
        contentType=content_type
    )

    logger.info("Successfully generated text with Cohere model %s", model_id)

    return response


def main():
    """
    Entrypoint for Cohere example.
    """

    logging.basicConfig(level=logging.INFO,
                        format="%(levelname)s: %(message)s")

    model_id = 'cohere.command-text-v14'
    prompt = """Summarize this dialogue: 
"Customer: Please connect me with a support agent.
AI: Hi there, how can I assist you today?
Customer: I forgot my password and lost access to the email affiliated to my account. Can you please help me?
AI: Yes of course. First I'll need to confirm your identity and then I can connect you with one of our support agents.
"""
    try:
        body = json.dumps({
            "prompt": prompt,
            "max_tokens": 200,
            "temperature": 0.6,
            "p": 1,
            "k": 0,
            "num_generations": 2,
            "return_likelihoods": "GENERATION"
        })
        response = generate_text(model_id=model_id,
                                 body=body)

        response_body = json.loads(response.get('body').read())
        generations = response_body.get('generations')

        for index, generation in enumerate(generations):

            print(f"Generation {index + 1}\n------------")
            print(f"Text:\n {generation['text']}\n")
            if 'likelihood' in generation:
                print(f"Likelihood:\n {generation['likelihood']}\n")
            
            print(f"Reason: {generation['finish_reason']}\n\n")

    except ClientError as err:
        message = err.response["Error"]["Message"]
        logger.error("A client error occurred: %s", message)
        print("A client error occured: " +
              format(message))
    else:
        print(f"Finished generating text with Cohere model {model_id}.")


if __name__ == "__main__":
    main()
```