Ajuste un modelo de lenguaje grande (LLM) mediante la adaptación de dominios - Amazon SageMaker

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.

Ajuste un modelo de lenguaje grande (LLM) mediante la adaptación de dominios

El ajuste para la adaptación a dominios le permite aprovechar los modelos fundacionales previamente entrenados y adaptarlos a tareas específicas utilizando datos limitados específicos de un dominio. Si los esfuerzos de ingeniería de peticiones no proporcionan una personalización suficiente, puede utilizar los ajustes de adaptación al dominio para que su modelo funcione con el lenguaje específico de un dominio, como la jerga de un sector, términos técnicos u otros datos especializados. Este proceso de ajuste modifica las ponderaciones del modelo.

Para ajustar el modelo en un conjunto de datos de un dominio específico:

  1. Prepara tus datos de entrenamiento. Para obtener instrucciones, consulte Prepare y cargue los datos de entrenamiento para ajustar la adaptación del dominio.

  2. Crea tu trabajo de entrenamiento perfeccionado. Para obtener instrucciones, consulte Cree un trabajo de formación para realizar ajustes precisos basados en la instrucción.

Puede encontrar end-to-end ejemplos en. Cuadernos de ejemplo

El ajuste con adaptación a dominios está disponible con los siguientes modelos fundacionales:

nota

Algunos modelos JumpStart básicos, como el Llama 2 7B, requieren la aceptación de un acuerdo de licencia para el usuario final antes de realizar ajustes y realizar inferencias. Para obtener más información, consulte Contratos de licencia para usuarios finales.

  • Bloom 3B

  • Bloom 7B1

  • BloomZ 3B FP16

  • BloomZ 7B1 FP16

  • GPT-2 XL

  • GPT-J 6B

  • GPT-Neo 1,3 B

  • GPT-Neo 125 M

  • GPT- 2,7 B NEO

  • Llama 2 13B

  • Llama 2 13B Chat

  • Llama 2 13B Neuron

  • Llama 2 70B

  • Llama 2 70B Chat

  • Llama 2 7B

  • Llama 2 7B Chat

  • Llama 2 7B Neuron

Prepare y cargue los datos de entrenamiento para ajustar la adaptación del dominio

Los datos de entrenamiento para el ajuste preciso de la adaptación del dominio se pueden proporcionar en CSVJSON, o en formato de archivo. TXT Todos los datos de entrenamiento deben estar en un solo archivo dentro de una sola carpeta.

Los datos de entrenamiento se toman de la columna de texto CSV o de los archivos de datos de JSON entrenamiento. Si ninguna columna tiene la etiqueta Texto, los datos de entrenamiento se toman de la primera columna CSV o de los archivos de datos de JSON entrenamiento.

A continuación se muestra un ejemplo del cuerpo de un TXT archivo que se utilizará para realizar ajustes precisos:

This report includes estimates, projections, statements relating to our business plans, objectives, and expected operating results that are “forward- looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E of ....

Divida los datos para el entrenamiento y las pruebas

Si lo desea, puede proporcionar otra carpeta que contenga los datos de validación. Esta carpeta también debe incluir uno CSVJSON, o un TXT archivo. Si no se proporciona ningún conjunto de datos de validación, se reserva una cantidad determinada de datos de entrenamiento para fines de validación. Puedes ajustar el porcentaje de datos de entrenamiento que se utilizan para la validación al elegir los hiperparámetros para ajustar el modelo.

Cargue datos de ajuste preciso a Amazon S3

Cargue los datos preparados en Amazon Simple Storage Service (Amazon S3) para utilizarlos a la hora de ajustar un modelo JumpStart básico. Puede utilizar los siguientes comandos para cargar los datos:

from sagemaker.s3 import S3Uploader import sagemaker import random output_bucket = sagemaker.Session().default_bucket() local_data_file = "train.txt" train_data_location = f"s3://{output_bucket}/training_folder" S3Uploader.upload(local_data_file, train_data_location) S3Uploader.upload("template.json", train_data_location) print(f"Training data: {train_data_location}")

Cree un trabajo de formación para realizar ajustes precisos basados en la instrucción

Una vez que los datos se hayan cargado en Amazon S3, podrá ajustar e implementar su modelo JumpStart base. Para ajustar el modelo en Studio, consulte. Ajusta un modelo en Studio Para ajustar el modelo con precisión mediante el SageMaker Python SDK, consulte. Ajuste los modelos básicos disponibles al público con la clase JumpStartEstimator

Cuadernos de ejemplo

Para obtener más información sobre el ajuste preciso de la adaptación de dominios, consulte los siguientes cuadernos de ejemplo: