Inicio Tecnología Optimización de Meta Llama 3 hacia preferencias humanas mediante DPO, Amazon SageMaker...

Optimización de Meta Llama 3 hacia preferencias humanas mediante DPO, Amazon SageMaker Studio y Amazon SageMaker Ground Truth

0
Elena Digital López

Los grandes modelos de lenguaje (LLMs, por sus siglas en inglés) poseen capacidades notables. No obstante, usarlos en aplicaciones orientadas al cliente a menudo requiere adaptar sus respuestas para alinearse con los valores e identidad de marca de una organización. En un nuevo enfoque, se está utilizando la optimización directa de preferencias (DPO) junto con Amazon SageMaker Studio y Amazon SageMaker Ground Truth para alinear las respuestas del modelo Meta Llama 3 8B Instruct con los valores de las organizaciones.

Con DPO, es posible ajustar finamente un LLM utilizando datos de preferencias humanas, tales como calificaciones o clasificaciones, para que el modelo genere respuestas que se alineen con las expectativas del usuario final. Esta técnica no solo es computacionalmente eficiente, sino que también mejora la utilidad, honestidad e inofensividad del modelo, reduciendo la propensión a abordar ciertos temas y mitigando sesgos. El proceso generalmente se inicia con un modelo ya existente o entrenado anteriormente con ajuste fino supervisado (SFT, por sus siglas en inglés).

El modelo se utiliza para generar respuestas, sobre las cuales se recopila retroalimentación humana. Posteriormente, se emplea esta retroalimentación para realizar el ajuste fino DPO y alinear así el modelo con las preferencias humanas. Para llevar a cabo el ajuste fino, se utilizan GPUs potentes. En este sentido, Amazon SageMaker facilita la experimentación rápida utilizando notebooks gestionados de Jupyter equipados con instancias de GPU.

La orquestación del flujo de trabajo completo de recolección de datos y desarrollo de una aplicación para que los anotadores califiquen o clasifiquen las respuestas del modelo para el ajuste fino DPO puede consumir mucho tiempo. Amazon SageMaker Ground Truth ofrece capacidades human-in-the-loop que ayudan a configurar flujos de trabajo, gestionar anotadores y recopilar una retroalimentación consistente y de alta calidad.

En este artículo se proporciona una guía paso a paso sobre cómo utilizar DPO para alinear las respuestas de un modelo SFT finamente ajustado con los valores de un banco digital ficticio llamado Example Bank. El proceso se ejecuta en un espacio de JupyterLab en SageMaker Studio con una instancia ml.g5.48xlarge (8 GPUs A10G). También es posible utilizar una instancia de menor tamaño como la ml.g5.12xlarge (4 GPUs A10G) o la ml.g6.12xlarge (4 GPUs L4) con cuantización de bitsandbytes.

El modelo Meta Llama 3 8B Instruct, optimizado para casos de uso de diálogo del Hugging Face Hub, es el encargado de generar respuestas. SageMaker Ground Truth es utilizado para recopilar datos de preferencias y el DPOTrainer de la biblioteca HuggingFace TRL para el ajuste fino DPO junto con Parameter-Efficient Fine-Tuning (PEFT). Tras el ajuste fino, el modelo alineado se despliega en un endpoint de SageMaker para realizar inferencias en tiempo real.

El flujo de trabajo consta de los siguientes pasos clave:

1. Cargar el modelo Meta Llama 3 8B Instruct en SageMaker Studio y generar respuestas para un conjunto curado de preguntas comunes y tóxicas. Este conjunto de datos sirve como referencia inicial para el rendimiento del modelo.
2. Las parejas de pregunta-respuesta generadas se almacenan en Amazon S3 para su posterior evaluación por anotadores humanos.
3. Crear un flujo de trabajo en SageMaker Ground Truth para la recopilación de datos de preferencias humanas, implicando la creación de un equipo de trabajo, diseño de una interfaz de usuario y configuración de una tarea de etiquetado.
4. Los anotadores humanos evalúan y clasifican las respuestas del modelo en un portal de etiquetado, basándose en su alineación con los valores de la organización.
5. Los datos recopilados se procesan para cumplir con el formato esperado por el DPOTrainer.
6. Utilizando la biblioteca Hugging Face TRL y el DPOTrainer, el modelo Llama 3 se ajusta finamente con los datos de preferencias procesados.
7. El modelo ajustado se evalúa en un conjunto de datos de prueba para verificar su rendimiento.
8. Una vez satisfechos con el rendimiento del modelo, se despliega en un endpoint de SageMaker para inferencias a escala en tiempo real.

Este enfoque puede ser útil no solo para el modelo Meta Llama 3, sino también para otros modelos que requieran alineación con preferencias humanas específicas.

Salir de la versión móvil