Preparar los conjuntos de datos - 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.

Preparar los conjuntos de datos

Antes de poder empezar un trabajo de personalización de modelos, es necesario preparar un conjunto de datos de entrenamiento como mínimo. La compatibilidad con un conjunto de datos de validación y el formato del conjunto de datos de entrenamiento y validación dependen de los siguientes factores.

  • El tipo de trabajo de personalización (ajuste detallado o formación previa continua).

  • Las modalidades de entrada y salida de los datos.

Soporte de modelos para el ajuste preciso y la continuación del formato de los datos previos al entrenamiento

En la siguiente tabla se muestran los detalles del formato de datos previo al entrenamiento continuo y el ajuste preciso que admite cada modelo respectivo:

Nombre de modelo Ajuste de precisión: ext-to-text Ajuste fino: T & I ext-to-image mage-to-embeddings Formación previa continua: ext-to-text Ajuste preciso: mensajería en un solo turno Ajuste preciso: mensajería en varios turnos
Amazon Titan Text G1 - Express No No No
Amazon Titan Text G1 - Lite No No No
Amazon Titan Text Premier No No No No
Amazon Titan Image Generator G1 V1 No No No
Amazon Titan Multimodal Embeddings G1 G1 No No No
Anthropic Claude 3 Haiku No No No
Cohere Command No No No No
Cohere Command Light No No No No
MetaLlama 213B No No No No
MetaLlama 270B No No No No

Para ver las cuotas predeterminadas que se aplican a los conjuntos de datos de entrenamiento y validación que se utilizan para personalizar diferentes modelos, consulte. Cuotas de personalización de modelos

Prepare conjuntos de datos de entrenamiento y validación para su modelo personalizado

Seleccione la pestaña correspondiente a su caso de uso

Fine-tuning: Text-to-text

Para afinar un text-to-text modelo, prepare un conjunto de datos de entrenamiento y validación opcional creando un JSONL archivo con varias JSON líneas. Cada JSON línea es una muestra que contiene un campo prompt ycompletion. Utilice 6 caracteres por token como una aproximación del número de tokens. El formato es el siguiente.

{"prompt": "<prompt1>", "completion": "<expected generated text>"} {"prompt": "<prompt2>", "completion": "<expected generated text>"} {"prompt": "<prompt3>", "completion": "<expected generated text>"}

El siguiente es un ejemplo de una tarea de preguntas y respuestas:

{"prompt": "what is AWS", "completion": "it's Amazon Web Services"}
Fine-tuning: Text-to-image & Image-to-embeddings

Para ajustar un image-to-embedding modelo text-to-image o, prepare un conjunto de datos de entrenamiento creando un JSONL archivo con varias JSON líneas. No se admiten los conjuntos de datos de validación. Cada JSON línea es un ejemplo que contiene unimage-ref, el Amazon S3 URI para una imagen y un caption que podría ser un mensaje para la imagen.

Las imágenes deben estar en PNG formato JPEG o.

{"image-ref": "s3://bucket/path/to/image001.png", "caption": "<prompt text>"} {"image-ref": "s3://bucket/path/to/image002.png", "caption": "<prompt text>"} {"image-ref": "s3://bucket/path/to/image003.png", "caption": "<prompt text>"}

A continuación, se muestra un elemento de ejemplo:

{"image-ref": "s3://my-bucket/my-pets/cat.png", "caption": "an orange cat with white spots"}

Para permitir que Amazon Bedrock acceda a los archivos de imagen, añada una IAM política similar a la del rol del servicio de personalización de modelos de Amazon Bedrock que configuró o que se configuró automáticamente para usted en la consola. Permisos para acceder a los archivos de formación y validación y para escribir los archivos de salida en S3 Las rutas de Amazon S3 que proporcione en el conjunto de datos de entrenamiento deben estar en las carpetas que especifique en la política.

Continued Pre-training: Text-to-text

Para realizar una formación previa continua sobre un text-to-text modelo, prepare un conjunto de datos de formación y validación opcional creando un JSONL archivo con varias líneas. JSON Como la formación previa continua incluye datos sin etiquetar, cada JSON línea es una muestra que contiene solo un campo. input Utilice 6 caracteres por token como una aproximación del número de tokens. El formato es el siguiente.

{"input": "<input text>"} {"input": "<input text>"} {"input": "<input text>"}

A continuación aparece un elemento de ejemplo que podría estar en los datos de entrenamiento.

{"input": "AWS stands for Amazon Web Services"}
Fine-tuning: Single-turn messaging

Para ajustar un text-to-text modelo mediante el formato de mensajería de un solo paso, prepare un conjunto de datos de entrenamiento y validación opcional creando un JSON archivo con varias líneas. JSON Ambos archivos de datos deben estar en ese formato. JSONL Cada línea especifica una muestra de datos completa en formato json y cada muestra de datos debe tener el formato de 1 línea (elimine todas las '\n' de cada muestra). Una línea con varias muestras de datos o dividir una muestra de datos en varias líneas no funcionará.

Campos

  • system(opcional): cadena que contiene un mensaje del sistema que establece el contexto de la conversación.

  • messages: Matriz de objetos de mensaje, cada uno de los cuales contiene:

    • role: user O assistant

    • content: El contenido textual del mensaje

Reglas

  • La messages matriz debe contener 2 mensajes

  • El primer mensaje debe tener una role del usuario

  • El último mensaje debe tener una role del asistente

{"system": "<system message>","messages":[{"role": "user", "content": "<user query>"},{"role": "assistant", "content": "<expected generated text>"}]}

Ejemplo

{"system": "You are an helpful assistant.","messages":[{"role": "user", "content": "what is AWS"},{"role": "assistant", "content": "it's Amazon Web Services."}]}
Fine-tuning: Multi-turn messaging

Para afinar un text-to-text modelo mediante el formato de mensajería de varias vueltas, prepare un conjunto de datos de entrenamiento y de validación opcional creando un JSONL archivo con varias líneas. JSON Ambos archivos de datos deben tener ese formato. JSONL Cada línea especifica una muestra de datos completa en formato json y cada muestra de datos debe tener el formato de 1 línea (elimine todas las '\n' de cada muestra). Una línea con varias muestras de datos o dividir una muestra de datos en varias líneas no funcionará.

Campos

  • system(opcional): cadena que contiene un mensaje del sistema que establece el contexto de la conversación.

  • messages: Matriz de objetos de mensaje, cada uno de los cuales contiene:

    • role: user O assistant

    • content: El contenido textual del mensaje

Reglas

  • La messages matriz debe contener 2 mensajes

  • El primer mensaje debe tener una role del usuario

  • El último mensaje debe tener una role del asistente

  • Los mensajes deben alternar entre assistant funciones user y funciones.

{"system": "<system message>","messages":[{"role": "user", "content": "<user query 1>"},{"role": "assistant", "content": "<expected generated text 1>"}, {"role": "user", "content": "<user query 2>"},{"role": "assistant", "content": "<expected generated text 2>"}]}

Ejemplo

{"system": "system message","messages":[{"role": "user", "content": "Hello there."},{"role": "assistant", "content": "Hi, how can I help you?"},{"role": "user", "content": "what are LLMs?"},{"role": "assistant", "content": "LLM means large language model."},]}