Compartir vía


Ajuste preciso de modelos de Meta Llama en el portal de Azure AI Foundry

Importante

Los elementos marcados (versión preliminar) en este artículo se encuentran actualmente en versión preliminar pública. Esta versión preliminar se ofrece sin acuerdo de nivel de servicio y no se recomienda para las cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.

Azure AI Foundry le permite adaptar los modelos de lenguaje de gran tamaño a sus conjuntos de datos personales mediante un proceso conocido como ajuste preciso.

El ajuste preciso proporciona un valor significativo al permitir la personalización y optimización de tareas y aplicaciones específicas. Conduce a la mejora del rendimiento, la rentabilidad, la latencia reducida y las salidas adaptadas.

En este artículo, aprenderá a ajustar de forma precisa modelos de Meta Llama en Azure AI Foundry.

La familia Meta Llama de modelos de lenguaje grandes (LLM) es una colección de modelos de texto generativos previamente entrenados y con ajuste preciso con una escala de entre 7000 y 70 000 millones de parámetros. La familia de modelos también incluye versiones con ajuste preciso optimizadas para casos de uso de diálogo con aprendizaje de refuerzo de comentarios humanos (RLHF), llamado Llama-Instruct.

Importante

Los modelos que están en versión preliminar se marcan como versión preliminar en sus tarjetas de modelo en el catálogo de modelos.

Models

Los siguientes modelos están disponibles en Azure Marketplace para Llama 3.1 cuando se ajustan de forma precisa como servicio con facturación de pago por uso:

  • Meta-Llama-3.1-70B-Instruct (versión preliminar)
  • Meta-LLama-3.1-8b-Instruct (versión preliminar)

El ajuste preciso de los modelos Llama 3.1 se admite actualmente en proyectos ubicados en Oeste de EE. UU. 3.

Importante

En este momento no se puede realizar un ajuste preciso para Llama 3.1 con una longitud de secuencia de 128K.

Requisitos previos

Una suscripción de Azure con un método de pago válido. Las suscripciones gratuitas o de evaluación de Azure no funcionarán. Si no tiene una suscripción de Azure, cree una cuenta de Azure de pago para comenzar.

  • Un centro de Azure AI Foundry.

    Importante

    Para los modelos meta Llama 3.1, la oferta de ajuste del modelo de pago por uso solo está disponible con centros creados en regiones de Oeste de EE. UU. 3.

  • Un proyecto de Azure AI Foundry en el portal de Azure AI Foundry.

  • Los controles de acceso basado en roles de Azure (RBAC de Azure) se usan para conceder acceso a las operaciones en el portal de Azure AI Foundry. Para realizar los pasos descritos en este artículo, la cuenta de usuario debe tener asignado el rol de propietario o colaborador para la suscripción de Azure. Como alternativa, a la cuenta se le puede asignar un rol personalizado que tenga los permisos siguientes:

    • En la suscripción de Azure: para suscribir el proyecto de AI Foundry a la oferta de Azure Marketplace, una vez para cada proyecto, por oferta:

      • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
      • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
      • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.SaaS/register/action
    • En el grupo de recursos, para crear y usar el recurso de SaaS:

      • Microsoft.SaaS/resources/read
      • Microsoft.SaaS/resources/write
    • En el proyecto de AI Foundry: para implementar puntos de conexión (el rol de desarrollador de Azure AI ya contiene estos permisos):

      • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
      • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

    Para más información sobre los permisos, consulte control de acceso basado en roles en el portal de Azure AI Foundry.

Registro del proveedor de suscripciones

Compruebe que la suscripción de Azure está registrada en el proveedor de recursos Microsoft.Network.

  1. Inicie sesión en Azure Portal.

  2. Seleccione Suscripciones en el menú izquierdo.

  3. Seleccione la suscripción que quiere usar.

  4. Seleccione Configuración>Proveedores de recursos en el menú izquierdo.

  5. Confirme que Microsoft.Network está en la lista de proveedores de recursos. De lo contrario, agréguelo.

    Captura de pantalla de los proveedores de recursos de suscripción en Azure Portal.

Preparación de los datos

Preparación de los datos de entrenamiento y validación para el ajuste preciso del modelo El conjunto de datos de validación y los datos de entrenamiento consisten en ejemplos de entrada y salida para el rendimiento del modelo.

Asegúrese de que todos los ejemplos de entrenamiento siguen el formato esperado para la inferencia. Para realizar el ajuste preciso de los modelos de forma eficaz, asegúrese de contar con un conjunto de datos equilibrado y diverso.

Esto supone mantener el equilibrio de los datos, lo que incluye varios escenarios, y refinar periódicamente los datos de entrenamiento para que estén en consonancia con las expectativas del mundo real, lo que en última instancia conduce a respuestas de los modelos más precisas y equilibradas.

Los distintos tipos de modelo requieren un formato diferente de datos de entrenamiento.

Los datos de entrenamiento y validación que usa deben tener formato como documento de líneas JSON (JSONL). Para Meta-Llama-3.1-70B-Instruct, el conjunto de datos de ajuste preciso debe tener el formato conversacional que usa la API de finalizaciones de chat.

Formato de archivo de ejemplo

    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Is Xbox better than PlayStation?"}, {"role": "assistant", "content": "I apologize, but I cannot provide personal opinions. My primary job is to assist you with any issues related to your Xbox device. Do you have any Xbox-related issues that need addressing?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Can I play PC games on my Xbox?"}, {"role": "assistant", "content": "While Xbox consoles don't natively support PC games, they can play an array of Xbox games, many of which are also available on PC. Can I assist you with finding games compatible with your Xbox device?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "I'm having trouble connecting my Xbox to the Wi-Fi."}, {"role": "assistant", "content": "No worries, let's go through the network settings on your Xbox. Can you please tell me what happens when you try to connect it to the Wi-Fi?"}]}

El tipo de archivo admitido es líneas JSON. Los archivos se cargan en el almacén de datos predeterminado y están disponibles en el proyecto.

Ajuste preciso de un modelo Meta Llama

Para el ajuste preciso de un modelo Llama 3.1:

  1. Inicie sesión en Azure AI Foundry.

  2. Elija el modelo que quiera ajustar del catálogo de modelo del portal de Azure AI Foundry.

  3. En la página Detalles del modelo, seleccione Ajuste preciso.

  4. Seleccione el proyecto en el que quiera realizar el ajuste preciso de los modelos. Para usar la oferta de ajuste preciso de modelos de pago por uso, el área de trabajo debe pertenecer a la región Este de EE. UU. 3.

  5. En el Asistente para ajuste preciso, seleccione el vínculo a Términos de Azure Marketplace para más información sobre los términos de uso. También puede seleccionar la pestaña Detalles de la oferta de Marketplace para obtener información sobre los precios del modelo seleccionado.

  6. Si es la primera vez que realiza el ajuste preciso del modelo en el proyecto, debe suscribir el proyecto para la oferta concreta (por ejemplo, Meta-Llama-3.1-70B-Instruct) desde Azure Marketplace. Este paso requiere que la cuenta tenga los permisos de suscripción de Azure y los permisos del grupo de recursos enumerados en los requisitos previos. Cada proyecto tiene su propia suscripción a la oferta concreta de Azure Marketplace, lo que le permite controlar y supervisar los gastos. Seleccione Suscribir y ajuste preciso.

    Nota:

    La suscripción de un proyecto a una oferta determinada de Azure Marketplace (en este caso, Meta-Llama-3.1-70B-Instruct) requiere que la cuenta tenga acceso de colaborador o propietario en el nivel de suscripción donde se crea el proyecto. Como alternativa, a la cuenta de usuario se le puede asignar un rol personalizado que tenga los permisos de suscripción de Azure y los permisos del grupo de recursos enumerados en los requisitos previos.

  7. Una vez que registre el proyecto para la oferta concreta de Azure Marketplace, para el ajuste preciso posterior de la misma oferta en el mismo proyecto no es necesario volver a suscribirse. Por tanto, no es necesario tener los permisos de nivel de suscripción para los trabajos de ajuste preciso posteriores. Si este escenario se aplica a su caso, seleccione Continuar para el ajuste preciso.

  8. Escriba un nombre para el modelo con ajuste preciso y las etiquetas y la descripción opcionales.

  9. Seleccione los datos de entrenamiento para el ajuste preciso del modelo. Para más información, consulte Preparación de datos.

    Nota:

    Si tiene los archivos de entrenamiento o validación en un almacén de datos sin credenciales, deberá permitir que la identidad administrada del área de trabajo acceda a su almacén de datos para continuar con el ajuste preciso de MaaS con un almacenamiento sin credenciales. En la página "Almacén de datos", después de hacer clic en "Actualizar autenticación" > Seleccione la siguiente opción:

    Use la identidad administrada del área de trabajo para la versión preliminar de datos y la generación de perfiles en Estudio de Azure Machine Learning.

    Asegúrese de que todos los ejemplos de entrenamiento siguen el formato esperado para la inferencia. Para realizar el ajuste preciso de los modelos de forma eficaz, asegúrese de contar con un conjunto de datos equilibrado y diverso. Esto supone mantener el equilibrio de los datos, lo que incluye varios escenarios, y refinar periódicamente los datos de entrenamiento para que estén en consonancia con las expectativas del mundo real, lo que en última instancia conduce a respuestas de los modelos más precisas y equilibradas.

    • El tamaño del lote a usar para el entrenamiento. Cuando se establece en -1, batch_size se calcula como un 0,2 % de los ejemplos del conjunto de entrenamiento y el máximo es 256.
    • La velocidad de aprendizaje del ajuste preciso es la velocidad de aprendizaje original que se usó para el entrenamiento previo multiplicada por este valor. Se recomienda experimentar con valores de entre 0,5 y 2. Empíricamente, comprobamos que las tasas de aprendizaje más altas suelen dar mejores resultados con tamaños de lote más grandes. Debe estar entre 0,0 y 5,0.
    • Número de épocas de entrenamiento. Una época se refiere a un ciclo completo a través del conjunto de datos.
  10. Los parámetros de tarea son un paso opcional y una opción avanzada: el ajuste de hiperparámetros es esencial para optimizar modelos de lenguaje grandes (LLM) en aplicaciones reales. Permite mejorar el rendimiento y el uso eficaz de los recursos. Se puede usar la configuración predeterminada o los usuarios avanzados pueden personalizar parámetros como épocas o velocidad de aprendizaje.

  11. Revise las selecciones y proceda a entrenar el modelo.

Una vez realizado el ajuste preciso al modelo, puede implementarlo y usarlo en su propia aplicación, en el área de juegos o en el flujo de avisos. Para más información, vea Procedimiento para implementar la familia Llama 3.1 de modelos de lenguaje grandes con Azure AI Foundry.

Limpieza de los modelos con ajuste preciso

Puede eliminar un modelo con ajuste preciso de la lista de modelos con ajuste preciso en Azure AI Foundry o desde la página de detalles del modelo. En la página ”Ajuste preciso”, seleccione el modelo con ajuste preciso que quiere eliminar y, luego, seleccione el botón ”Eliminar” para eliminar el modelo.

Nota:

No se puede eliminar un modelo personalizado si tiene una implementación existente. Primero debe eliminar la implementación del modelo para poder eliminar el modelo personalizado.

Costo y cuotas

Consideraciones de costos y cuotas para los modelos de Meta Llama con ajuste preciso como servicio

Los modelos de Meta Llama con ajuste preciso como servicio son ofrecidos por Meta desde Azure Marketplace y se integran con Azure AI Foundry para su uso. Puede encontrar los precios de Azure Marketplace al implementar o ajustar los modelos.

Cada vez que un proyecto se suscribe a una oferta determinada de Azure Marketplace, se crea un nuevo recurso para realizar un seguimiento de los costos asociados a su consumo. El mismo recurso se usa para hacer un seguimiento de los costos asociados con la inferencia y la optimización. Sin embargo, hay varios medidores disponibles para hacer un seguimiento de cada escenario de forma independiente.

Para más información sobre cómo realizar un seguimiento de los costos, consulte Supervisar los costos de los modelos ofrecidos en Azure Marketplace.

Cuaderno de ejemplo

Puede usar este cuaderno de ejemplo para crear un trabajo independiente de ajuste preciso para mejorar la capacidad de un modelo para resumir los diálogos entre dos personas mediante el conjunto de datos Samsum. Los datos de entrenamiento utilizados son el conjunto de datos ultrachat_200k, que se divide en cuatro partes adecuadas para la optimización supervisada (sft) y la clasificación de generación (gen). El cuaderno emplea los modelos de Azure AI disponibles para la tarea de finalización de chat (si desea usar un modelo diferente al que se usa en el cuaderno, puede reemplazar el nombre del modelo). El cuaderno incluye la configuración de requisitos previos, la selección de un modelo para ajustar, crear conjuntos de datos de entrenamiento y validación, configurar y enviar el trabajo de ajuste y, por último, crear una implementación sin servidor mediante el modelo optimizado para la inferencia de ejemplo.

Filtrado de contenido

Los modelos implementados como un servicio con facturación de pago por uso están protegidos por Seguridad del contenido de Azure AI. Cuando se implementa en puntos de conexión en tiempo real, puede optar por dejar de usar esta funcionalidad. Con la seguridad de contenido de Azure AI habilitada, tanto la solicitud como la finalización pasan por un conjunto de modelos de clasificación destinados a detectar y evitar la salida de contenido dañino. El sistema de filtrado de contenido (versión preliminar) detecta y toma medidas en categorías específicas de contenido potencialmente perjudicial tanto en solicitudes de entrada como en finalizaciones de salida. Obtenga más información sobre Seguridad del contenido de Azure AI.

Pasos siguientes