Saltar al contenido principal
InicioTutorialesInteligencia Artificial (IA)

Cómo ajustar GPT 3.5: Liberar todo el potencial de la IA

Explore GPT-3.5 Turbo y descubra el potencial transformador del ajuste fino. Aprenda a personalizar este modelo de lenguaje avanzado para aplicaciones especializadas, mejore su rendimiento y comprenda los costes asociados, la seguridad y las consideraciones de privacidad.
may 2024  · 11 min leer

El último modelo lingüístico de OpenAI, GPT-3.5 Turbo, representa un gran salto adelante en las capacidades de los grandes modelos lingüísticos. Basado en la familia de modelos GPT-3, GPT-3.5 Turbo es capaz de generar un texto notablemente similar al humano, al tiempo que resulta más asequible y accesible que las versiones anteriores. Sin embargo, la verdadera potencia de GPT-3.5 Turbo reside en su capacidad de personalización mediante un proceso denominado ajuste fino.

El ajuste fino permite a los desarrolladores aportar sus propios datos para adaptar el modelo a casos de uso específicos y aumentar significativamente el rendimiento en tareas especializadas. Con un ajuste fino, GPT-3.5 Turbo ha llegado a igualar o superar a GPT-4 en determinadas aplicaciones estrechas.

Este nuevo nivel de personalización abre a empresas y desarrolladores la posibilidad de implantar GPT-3.5 Turbo para crear aplicaciones de IA a medida y de alto rendimiento. A medida que la GPT-3.5 Turbo y la aún más potente GPT-4 estén disponibles este año, nos encontraremos en la cúspide de una nueva era de la IA aplicada.

¿Por qué afinar los modelos lingüísticos?

El ajuste fino se ha convertido en una técnica crucial para sacar el máximo partido de grandes modelos lingüísticos como GPT-3.5 Turbo. Por ejemplo, tenemos una guía aparte sobre el ajuste fino de GPT-3.

Aunque los modelos preformados pueden generar textos muy parecidos a los humanos, su verdadera capacidad se desbloquea con el ajuste fino. El proceso permite a los desarrolladores personalizar el modelo entrenándolo con datos específicos del dominio, adaptándolo a casos de uso especializado más allá de lo que puede conseguir el entrenamiento de uso general. El ajuste fino mejora la pertinencia, la precisión y el rendimiento del modelo para aplicaciones especializadas.

Personalización para casos de uso específicos

El ajuste fino permite a los desarrolladores personalizar el modelo para crear experiencias únicas y diferenciadas, atendiendo a requisitos y dominios específicos. Al entrenar el modelo con datos específicos del ámbito, puede generar resultados más pertinentes y precisos para ese nicho. Este nivel de personalización permite a las empresas crear aplicaciones de IA a medida.

Mayor maniobrabilidad y fiabilidad

El ajuste fino mejora la capacidad del modelo para seguir instrucciones y producir un formato de salida fiable y coherente. Mediante el entrenamiento con datos formateados, el modelo aprende la estructura y el estilo deseados, lo que mejora la direccionabilidad. Así se obtienen resultados más predecibles y controlables.

Rendimiento mejorado

El ajuste fino puede mejorar significativamente el rendimiento del modelo, permitiendo incluso que el GPT-3.5 Turbo ajustado iguale o supere las capacidades del GPT-4 en determinadas tareas especializadas. Al optimizar el modelo para un dominio estrecho, consigue resultados superiores en ese espacio de problemas nicho en comparación con un modelo generalista. El aumento del rendimiento gracias a la puesta a punto es considerable.

Echa un vistazo a nuestra guía sobre 12 alternativas de código abierto a GPT-4, que explora algunas de las herramientas que pueden ofrecer un rendimiento similar y requieren menos recursos computacionales para ejecutarse.

Impacto del ajuste GPT 3.5-Turbo

En las pruebas beta realizadas por OpenAI, observaron que los clientes que ajustaron el modelo experimentaron notables mejoras en su rendimiento para diversas aplicaciones estándar. He aquí algunos puntos clave:

1. Direccionabilidad mejorada

Mediante el ajuste, las empresas pueden orientar mejor el modelo para que se ajuste a determinadas directrices. Por ejemplo, si una empresa quiere respuestas concisas o necesita que el modelo responda siempre en un idioma concreto, el ajuste puede ayudar a conseguirlo. Un ejemplo clásico es que los desarrolladores pueden ajustar el modelo para responder sistemáticamente en alemán siempre que se solicite.

2. Estructuración coherente de las respuestas

Una de las ventajas más destacadas del ajuste fino es su capacidad para uniformizar los resultados del modelo. Esto es especialmente valioso para tareas que requieren una estructura de respuesta particular, como sugerencias de código o generación de interacciones API. Por ejemplo, con un ajuste fino, los desarrolladores pueden confiar en el modelo para transformar las consultas de los usuarios en formatos JSON de calidad compatibles con sus sistemas.

3. Tono personalizado

Se pueden realizar ajustes para adaptar mejor las respuestas del modelo a la voz o el estilo propios de la empresa. Las empresas con una voz de marca definida pueden aprovechar esta función para asegurarse de que el tono del modelo coincide con la esencia de su marca.

Requisitos previos para la puesta a punto

El ajuste fino permite personalizar un modelo lingüístico preentrenado como GPT-3.5 Turbo continuando el proceso de entrenamiento con sus propios datos. Esto adapta el modelo a su caso de uso específico y mejora significativamente su rendimiento.

Para empezar a afinar, primero necesitas acceder a la API de OpenAI. Tras registrarse en el sitio web de OpenAI, podrá obtener una clave API que le permitirá interactuar con la API y los modelos.

A continuación, hay que preparar un conjunto de datos para el ajuste fino. Para ello, hay que recopilar ejemplos de mensajes de texto y respuestas modelo deseadas. Los datos deben coincidir con el formato para el que su aplicación utilizará el modelo. También es importante limpiar y formatear los datos en la estructura JSONL requerida.

La CLI de OpenAI proporciona herramientas útiles para validar y preprocesar tus datos de entrenamiento.

Una vez validados, puedes subir los datos a los servidores de OpenAI.

Por último, inicie un trabajo de ajuste fino a través de la API, seleccionando la base GPT-3.5

modelo Turbo y pasando su archivo de datos de entrenamiento. El proceso de ajuste puede durar horas o días, dependiendo del tamaño de los datos. Puede supervisar el progreso del entrenamiento a través de la API.

Cómo afinar el modelo OpenAI GPT 3.5-Turbo: Guía paso a paso

OpenAI ha lanzado recientemente una interfaz de usuario para ajustar los modelos lingüísticos. En este tutorial, utilizaré la interfaz de usuario de OpenAI para crear un modelo GPT ajustado. Para seguir con esta parte, debes tener una cuenta y una clave de OpenAI.

1. Iniciar sesión en platform.openai.com

Página de la plataforma OpenAI

2. Prepare sus datos

Para la demostración, he curado un pequeño conjunto de datos de respuestas a preguntas, y actualmente se almacena como Pandas DataFrame.

Marco de datos de preguntas y respuestas

Para demostrar lo que he hecho, he creado 50 preguntas de aprendizaje automático y sus respuestas al estilo de Shakespeare. Con este trabajo de puesta a punto, estoy personalizando el estilo y el tono del modelo GPT3.5-turbo.

Aunque no es un caso de uso muy práctico, ya que puedes simplemente añadir "Responde en el estilo de Shakespeare" en el prompt, GPT3.5 es ciertamente consciente de Shakespeare y generará respuestas en el tono requerido.

Para OpenAI los datos deben estar en formato jsonl. JSONL es un formato en el que cada línea es un objeto JSON válido, separado por nuevas líneas. He escrito un código sencillo para convertir pd.DataFrame en jsonl.

import json
import pandas as pd

DEFAULT_SYSTEM_PROMPT = 'You are a teaching assistant for Machine Learning. You should help the user to answer his question.'

def create_dataset(question, answer):
    return {
        "messages": [
            {"role": "system", "content": DEFAULT_SYSTEM_PROMPT},
            {"role": "user", "content": question},
            {"role": "assistant", "content": answer},
        ]
    }

if __name__ == "__main__":
    df = pd.read_csv("path/to/file.csv", encoding='cp1252')
    with open("train.jsonl", "w") as f:
        for _, row in df.iterrows():
            example_str = json.dumps(create_dataset(row["Question"], row["Answer"]))
            f.write(example_str + "\n")

Este es el aspecto de mi archivo jsonl:

json File

3. Crear el trabajo de ajuste

Diríjase a platform.openai.com, vaya a Ajuste fino en el menú superior y haga clic en Create New.

Creación de un nuevo modelo de ajuste fino

Selecciona el modelo base. Por el momento, sólo hay 3 modelos disponibles para el ajuste fino (babbage-002, davinci-002, gpt-3.5-turbo-0613).

A continuación, cargue el archivo jsonl, indique el nombre de la tarea y haga clic en Crear.

El trabajo de ajuste puede llevar varias horas o incluso días, en función del tamaño del conjunto de datos. En mi ejemplo, el conjunto de datos sólo tenía 5.500 tokens, y tardamos más de 6 horas en realizar el ajuste. El coste de este trabajo fue insignificante (<1 $ = 5.500/1000 x 0,08 $).

Este tutorial muestra cómo utilizar la interfaz de usuario para ajustar los modelos GPT. Si quieres aprender a conseguir lo mismo utilizando la API, consulta el tutorial Fine-Tuning GPT-3 Using the OpenAI API and Python de Zoumana Keita en DataCamp.

4. Utilizar el modelo ajustado

Una vez finalizado el trabajo de ajuste, ya puede utilizar el modelo ajustado a través de la API o utilizando el patio de recreo disponible en platform.openai.com.

OpenAI Playground en blanco

Observe que bajo el desplegable Modelo, ahora hay un 3.5-turbo personal disponible para su selección. Vamos a intentarlo.

OpenAI Playground con un modelo perfeccionado

Fíjese en el tono y el estilo de las respuestas.

Si quieres aprender a trabajar con el paquete OpenAI Python para mantener conversaciones de forma programática con ChatGPT, consulta Using GPT-3.5 and GPT-4 via the OpenAI API en el blog de Python en DataCamp.

Seguridad y privacidad

OpenAI se toma muy en serio la seguridad y cuenta con rigurosos procesos antes de lanzar nuevos modelos, que incluyen pruebas, comentarios de expertos, técnicas para mejorar el comportamiento de los modelos y sistemas de supervisión. Su objetivo es conseguir que los potentes sistemas de IA sean beneficiosos y minimizar los riesgos previsibles.

El ajuste fino permite personalizar modelos como el GPT-3.5 Turbo conservando importantes características de seguridad. OpenAI aplica intervenciones a múltiples niveles -mediciones, cambios de modelo, políticas, supervisión- para mitigar los riesgos y alinear los modelos.

OpenAI elimina la información personal de los datos de formación siempre que es posible y tiene políticas contra la generación de contenidos con información de particulares. Esto minimiza los riesgos para la privacidad.

Para casos de uso comunes sin datos sensibles, los modelos de OpenAI pueden aprovecharse de forma segura. Pero en el caso de datos protegidos o regulados, pueden ser preferibles opciones como la ofuscación de datos, los procesadores de IA privados o los modelos internos.

Coste de la puesta a punto del GPT 3.5-turbo

La puesta a punto y el uso del modelo GPT 3.5-turbo tienen tres costes asociados.

  1. Preparación de los datos de entrenamiento. Se trata de crear un conjunto de datos de preguntas de texto y respuestas deseadas adaptadas a su caso de uso específico. El coste dependerá del tiempo y el esfuerzo necesarios para obtener y formatear los datos.
  2. Coste de formación inicial. Se cobra por token de datos de entrenamiento. A 0,008 dólares por cada 1.000 fichas, un conjunto de entrenamiento de 100.000 fichas costaría 800 dólares para el ajuste fino inicial.
  3. Costes de uso continuado. Se cobran por ficha, tanto para las entradas como para las salidas del modelo. A 0,012 dólares por cada 1.000 fichas de entrada y 0,016 dólares por cada 1.000 fichas de salida, los costes pueden aumentar rápidamente en función del uso de la aplicación.

Veamos un ejemplo de escenario de costes de uso:

  • Chatbot con 4.000 tokens de solicitud/respuesta, 1.000 interacciones al día:
    (4.000/1.000) tokens de entrada x 0,012 $ x 1.000 interacciones = 48 $ al día
    (4.000/1.000) tokens de salida x 0,016 $ x 1.000 interacciones = 64 $ al día
    Total = 112 $ al día o 3.360 $ al mes
  • API de resumen de texto con 2.000 tokens de entrada, 500 solicitudes al día:
    (2.000/1.000) tokens de entrada x 0,012 $ x 500 solicitudes = 12 $ al día
    (2.000/1.000) tokens de salida x 0,016 $ x 500 solicitudes = 16 $ al día
    Total = 28 $ al día u 840 $ al mes

Nota: Tokens divididos por 1000 porque el precio de OpenAI se cotiza por 1K token.

Aprenda a utilizar ChatGPT en un proyecto real de ciencia de datos de extremo a extremo. Consulte la Guía de uso de ChatGPT para proyectos de ciencia de datos para aprender a utilizar ChatGPT para la planificación de proyectos, el análisis de datos, el preprocesamiento de datos, la selección de modelos, el ajuste de hiperparámetros, el desarrollo de una aplicación web y su despliegue en los Spaces.

Conclusión

A medida que nos adentramos en la frontera de las capacidades de los grandes modelos lingüísticos, GPT-3.5 Turbo destaca no sólo por su generación de texto similar al humano, sino también por el potencial transformador que desbloquea el ajuste fino. Este proceso de personalización permite a los desarrolladores perfeccionar la destreza del modelo para adaptarlo a aplicaciones especializadas, con lo que se consiguen resultados superiores que incluso igualan o superan a los de sus sucesores en dominios especializados.

Las mejoras en la direccionabilidad, la estructuración de las respuestas y la personalización del tono son evidentes en las aplicaciones, que se ajustan a las distintas necesidades y permiten a las empresas ofrecer experiencias únicas basadas en la IA. Sin embargo, un gran poder conlleva una gran responsabilidad. Es crucial comprender los costes asociados y tener en cuenta las consideraciones de seguridad y privacidad a la hora de implantar la IA Generativa y los modelos lingüísticos.

Obtenga acceso a más de 60 preguntas de ChatGPT para tareas de ciencia de datos con ChatGPT Cheat Sheet for Data Science.

Temas

¡Comience su viaje OpenAI hoy mismo!

Course

Working with the OpenAI API

3 hr
13.3K
Start your journey developing AI-powered applications with the OpenAI API. Learn about the functionality that underpins popular AI applications like ChatGPT.
See DetailsRight Arrow
Start Course
Ver másRight Arrow
Relacionado

blog

Todo lo que sabemos sobre GPT-5

Predecir cómo podría ser la próxima evolución de la tecnología de IA de OpenAI y qué avances podría tener el modelo GPT-5.
Josep Ferrer's photo

Josep Ferrer

10 min

blog

Los 16 mejores marcos y bibliotecas de IA: Guía para principiantes

Explore los mejores marcos y bibliotecas de IA y sus fundamentos en esta guía definitiva para profesionales de datos noveles que comienzan su carrera profesional.
Yuliya Melnik's photo

Yuliya Melnik

15 min

blog

¿Qué es la tokenización?

La tokenización divide el texto en partes más pequeñas para facilitar el análisis mecánico y ayudar a las máquinas a comprender el lenguaje humano.
Abid Ali Awan's photo

Abid Ali Awan

9 min

tutorial

Primeros pasos con Claude 3 y la API de Claude 3

Conozca los modelos Claude 3, las pruebas de rendimiento detalladas y cómo acceder a ellas. Además, descubra la nueva API Python de Claude 3 para generar texto, acceder a funciones de visión y streaming.
Abid Ali Awan's photo

Abid Ali Awan

tutorial

Guía introductoria para perfeccionar los LLM

La puesta a punto de grandes modelos lingüísticos (LLM) ha revolucionado el Procesamiento del Lenguaje Natural (PLN), ofreciendo capacidades sin precedentes en tareas como la traducción de idiomas, el análisis de sentimientos y la generación de textos. Este enfoque transformador aprovecha modelos preentrenados como GPT-2, mejorando su rendimiento en dominios específicos mediante el proceso de ajuste fino.
Josep Ferrer's photo

Josep Ferrer

12 min

tutorial

Cómo utilizar la API de conversión de texto a voz de OpenAI

La API TTS de OpenAI es un punto final que permite a los usuarios interactuar con su modelo de inteligencia artificial TTS, que convierte el texto en lenguaje hablado con sonido natural.
Kurtis Pykes 's photo

Kurtis Pykes

12 min

See MoreSee More