Completamento della chat Mistral AI - Amazon Bedrock

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Completamento della chat Mistral AI

L’API di completamento della chat Mistral AI consente di creare applicazioni conversazionali.

Suggerimento

Puoi utilizzare l’API di completamento della chat Mistral AI con le operazioni di inferenza di base (InvokeModel o InvokeModelWithResponseStream). Tuttavia, ti consigliamo di utilizzare l’API Converse per implementare i messaggi nell’applicazione. L’API Converse fornisce un set unificato di parametri che funzionano su tutti i modelli che supportano i messaggi. Per ulteriori informazioni, consulta Avvio di una conversazione con le operazioni dell’API Converse.

I modelli Mistral AI sono disponibili con la licenza Apache 2.0. Per ulteriori informazioni sull’utilizzo dei modelli Mistral AI, consulta la Documentazione di Mistral AI.

Modelli supportati

Puoi utilizzare i seguenti modelli Mistral AI.

  • Mistral Large

È necessario l'ID modello per il modello che desideri utilizzare. Per ottenere l’ID modello, consulta Modelli di fondazione supportati in Amazon Bedrock.

Richiesta e risposta

Request

I modelli Mistral AI hanno i seguenti parametri di inferenza.

{ "messages": [ { "role": "system"|"user"|"assistant", "content": str }, { "role": "assistant", "content": "", "tool_calls": [ { "id": str, "function": { "name": str, "arguments": str } } ] }, { "role": "tool", "tool_call_id": str, "content": str } ], "tools": [ { "type": "function", "function": { "name": str, "description": str, "parameters": dict } } ], "tool_choice": "auto"|"any"|"none", "max_tokens": int, "top_p": float, "temperature": float }

I seguenti sono parametri obbligatori.

  • messages: (obbligatorio) i messaggi che desideri passare al modello.

    • role: il ruolo del messaggio. I valori validi sono:

      • system: imposta il comportamento e il contesto del modello nella conversazione.

      • user: il messaggio dell’utente da inviare al modello.

      • assistant: la risposta del modello.

    • content: il contenuto per il messaggio.

    [ { "role": "user", "content": "What is the most popular song on WZPZ?" } ]

    Per passare il risultato di uno strumento, utilizza JSON con i seguenti campi.

    • role: il ruolo del messaggio. Il valore deve essere tool.

    • tool_call_id: l’ID della richiesta dello strumento. L’ID si ottiene dai campi tool_calls della risposta alla richiesta precedente.

    • content: il risultato dello strumento.

    L’esempio seguente è il risultato di uno strumento che riproduce i brani più popolari su una stazione radio.

    { "role": "tool", "tool_call_id": "v6RMMiRlT7ygYkT4uULjtg", "content": "{\"song\": \"Elemental Hotel\", \"artist\": \"8 Storey Hike\"}" }

I seguenti sono parametri opzionali.

  • tools: definizioni degli strumenti che il modello può utilizzare.

    Se includi tools nella richiesta, il modello potrebbe restituire un campo tool_calls nel messaggio che rappresenta l’utilizzo di tali strumenti da parte del modello. È quindi possibile eseguire tali strumenti utilizzando l’input dello strumento generato dal modello e quindi, facoltativamente, restituire i risultati al modello utilizzando blocchi di contenuto tool_result.

    L’esempio seguente riguarda uno strumento che riproduce i brani più popolari su una stazione radio.

    [ { "type": "function", "function": { "name": "top_song", "description": "Get the most popular song played on a radio station.", "parameters": { "type": "object", "properties": { "sign": { "type": "string", "description": "The call sign for the radio station for which you want the most popular song. Example calls signs are WZPZ and WKRP." } }, "required": [ "sign" ] } } } ]
  • tool_choice: specifica come vengono chiamate le funzioni. Se impostato su none, il modello non chiama una funzione, generando invece un messaggio. Se impostato su auto, il modello può ora scegliere di generare un messaggio o di chiamare una funzione. Se impostato su any, il modello è forzato a chiamare una funzione.

  • max_tokens: specifica il numero massimo di token da utilizzare nella risposta generata. Il modello tronca la risposta se il testo generato supera max_tokens.

    Predefinita Minimo Massimo

    Mistral Large: 8.192

    1

    Mistral Large: 8.192

  • temperature: controlla la casualità delle previsioni fatte dal modello. Per ulteriori informazioni, consulta Influenza sulla generazione della risposta con i parametri di inferenza.

    Predefinita Minimo Massimo

    Mistral Large – 0,7

    0

    1

  • top_p: controlla la diversità di testo che il modello genera impostando la percentuale di candidati più probabili che il modello considera per il token successivo. Per ulteriori informazioni, consulta Influenza sulla generazione della risposta con i parametri di inferenza.

    Predefinita Minimo Massimo

    Mistral Large – 1

    0

    1

Response

Di seguito è riportata la risposta body da una chiamata InvokeModel.

{ "choices": [ { "index": 0, "message": { "role": "assistant", "content": str, "tool_calls": [...] }, "stop_reason": "stop"|"length"|"tool_calls" } ] }

La risposta body ha i seguenti campi possibili:

  • choices: l’output dei campi del modello.

    • index: l’indice del messaggio.

    • message: il messaggio del modello.

      • role: il ruolo del messaggio.

      • content: il contenuto per il messaggio.

      • tool_calls: se il valore di stop_reason è tool_calls, questo campo contiene un elenco di richieste di strumenti che il modello vuole che tu esegua.

        • id: l’ID per la richiesta di strumento.

        • function: la funzione richiesta dal modello.

          • name: il nome della funzione.

          • arguments: gli argomenti da passare allo strumento.

        Di seguito è riportato un esempio di richiesta per uno strumento che recupera la canzone più popolare di una stazione radio.

        [ { "id": "v6RMMiRlT7ygYkT4uULjtg", "function": { "name": "top_song", "arguments": "{\"sign\": \"WZPZ\"}" } } ]
    • stop_reason: il motivo per cui la risposta ha smesso di generare testo. I valori possibili sono:

      • stop: il modello ha terminato la generazione del testo per il prompt di input. Il modello si arresta perché non ha più contenuto da generare oppure se genera una delle sequenze di arresti definite nel parametro di richiesta stop.

      • length: la lunghezza dei token per il testo generato supera il valore max_tokens. La risposta viene troncata in base al valore max_tokens specificato per i token.

      • tool_calls: il modello richiede l’esecuzione di uno strumento.