Mistral AIfinalización del chat - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Mistral AIfinalización del chat

La API de finalización de Mistral AI chats permite crear aplicaciones conversacionales.

sugerencia

Puedes usar la API para completar el Mistral AI chat con las operaciones de inferencia básicas (InvokeModelo InvokeModelWithResponseStream). Sin embargo, te recomendamos que utilices la API de Converse para implementar los mensajes en tu aplicación. La API de Converse proporciona un conjunto unificado de parámetros que funcionan en todos los modelos que admiten mensajes. Para obtener más información, consulte Usa la API de Converse.

Mistral AIlos modelos están disponibles con la licencia Apache 2.0. Para obtener más información sobre el uso de Mistral AI modelos, consulte la Mistral AIdocumentación.

Modelos compatibles

Puede utilizar los siguientes Mistral AI modelos.

  • Mistral Large

Necesitará el ID de modelo del modelo que desee utilizar. Para obtener el identificador del modelo, consulteID de modelo de Amazon Bedrock.

Solicitud y respuesta

Request

Los Mistral AI modelos tienen los siguientes parámetros de inferencia.

{ "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 }

Los siguientes parámetros son obligatorios.

  • mensajes: (obligatorio) los mensajes que desea pasar al modelo.

    • rol: el rol del mensaje. Los valores válidos son:

      • sistema: establece el comportamiento y el contexto del modelo en la conversación.

      • usuario: el mensaje de usuario que se va a enviar al modelo.

      • asistente: la respuesta del modelo.

    • contenido: el contenido del mensaje.

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

    Para pasar el resultado de una herramienta, usa JSON con los siguientes campos.

    • rol: el rol del mensaje. El valor debe ser tool.

    • tool_call_id: el ID de la solicitud de herramienta. El ID se obtiene de los tool_calls campos de la respuesta de la solicitud anterior.

    • contenido: el resultado de la herramienta.

    El siguiente ejemplo es el resultado de una herramienta que obtiene la canción más popular de una emisora de radio.

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

Los siguientes son parámetros opcionales.

  • herramientas: definiciones de las herramientas que puede utilizar el modelo.

    Si lo incluye tools en su solicitud, es posible que el modelo devuelva un tool_calls campo en el mensaje que represente el uso de esas herramientas por parte del modelo. A continuación, puede ejecutar esas herramientas con la entrada de herramientas generada por el modelo y, si lo desea, devolver los resultados al modelo mediante bloques de tool_result contenido.

    El siguiente ejemplo corresponde a una herramienta que obtiene las canciones más populares de una emisora de 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 — Especifica cómo se llaman las funciones. Si se establece en none el modelo, no llamará a ninguna función y, en su lugar, generará un mensaje. Si se establece auto en el modelo, puede elegir entre generar un mensaje o llamar a una función. Si se establece en any el modelo, se ve obligado a llamar a una función.

  • max_tokens: especifique la cantidad máxima de tokens que se utilizarán en la respuesta generada. El modelo trunca la respuesta una vez que el texto generado excede max_tokens.

    Predeterminado Mínimo Máximo

    Mistral Large— 8.192

    1

    Mistral Large— 8.192

  • temperatura: controla la aleatoriedad de las predicciones realizadas por el modelo. Para obtener más información, consulte Parámetros de inferencia.

    Predeterminado Mínimo Máximo

    Mistral Large— 0.7

    0

    1

  • top_p: controla la diversidad de texto que genera el modelo al establecer el porcentaje de candidatos más probables que el modelo considera para el siguiente token. Para obtener más información, consulte Parámetros de inferencia.

    Predeterminado Mínimo Máximo

    Mistral Large— 1

    0

    1

Response

La respuesta body de una llamada a InvokeModel es la siguiente:

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

La respuesta body tiene los siguientes campos posibles:

  • elecciones: la salida del modelo. campos.

    • índice: el índice del mensaje.

    • mensaje: el mensaje del modelo.

      • rol: el rol del mensaje.

      • contenido: el contenido del mensaje.

      • tool_calls: si el valor de stop_reason estool_calls, este campo contiene una lista de solicitudes de herramientas que el modelo quiere que ejecute.

        • id: el ID de la solicitud de herramienta.

        • función: la función que solicita el modelo.

          • nombre: el nombre de la función.

          • argumentos: los argumentos que se van a pasar a la herramienta

        El siguiente es un ejemplo de solicitud de una herramienta que obtiene la canción más popular de una emisora de radio.

        [ { "id": "v6RMMiRlT7ygYkT4uULjtg", "function": { "name": "top_song", "arguments": "{\"sign\": \"WZPZ\"}" } } ]
    • stop_reason: el motivo por el que la respuesta dejó de generar texto. Los valores posibles son los siguientes:

      • detener: el modelo ha terminado de generar texto para la solicitud de entrada. El modelo se detiene porque no tiene más contenido que generar o si genera una de las secuencias de paradas que usted define en el parámetro de stop solicitud.

      • longitud: la longitud de los símbolos del texto generado supera el valor demax_tokens. La respuesta se trunca en tokens max_tokens.

      • tool_calls: el modelo solicita que ejecute una herramienta.