Prompting en Inteligencia artificial

Prompting en Inteligencia artificial

La Clave para Aprovechar el Potencial de la IA

En el mundo de la Inteligencia Artificial (IA), una técnica fundamental para interactuar con modelos avanzados y obtener resultados sorprendentes es el “prompting”. Este post “Prompting en Inteligencia Artificial” inicia una serie donde haré un recorrido completo por esta técnica. De momento, empezaremos con los conceptos más básicos: qué diablos significa este palabro tan raro, por qué es importante y cómo puede ayudarte a generar valor real.

¿Qué es el prompting en IA?

Introducción a los modelos de Lenguaje

ChatGPT irrumpió a finales de 2022 con tremenda fuerza. A este tipo de herramientas se las llama “Modelo de Lenguaje” (LM por sus siglas en inglés). Puedes pensar en un LM como un asistente virtual realmente inteligente, como Siri o Alexa, pero mucho más potente. Sorprendentemente, pese al potencial de este tipo de IAs, su funcionamiento radica en un concepto muy simple.

Los modelos de lenguaje son IAs cuya única tarea es de predecir las “palabras más probables” que vendrán a continuación en una secuencia. Por ejemplo, si le damos la frase “Por favor, entrega tu tarea…”, el modelo asignará una alta probabilidad a palabras como “hoy” o “mañana”, pero una probabilidad muy baja a palabras como “refrigerador” o “elefante”.

De esta forma, los modelos de lenguaje más potentes de la actualidad aprenden una enorme cantidad de conocimiento sobre el lenguaje y el mundo simplemente siendo entrenados para predecir palabras en base a su contexto. A partir de esta habilidad aparentemente sencilla, desarrollan la capacidad de generar textos coherentes, responder preguntas, resumir documentos y realizar una amplia variedad de tareas.

Para lograr que un modelo de lenguaje haga exactamente lo que necesitamos, tenemos que darle las instrucciones adecuadas. Y ahí es donde entra en juego el prompting. Solemos manejar el término inglés principalmente porque carecemos de una buena palabra en español (sería algo así como “instrucción” o “solicitación”). El prompting consiste en la habilidad de formular las preguntas o instrucciones correctas para obtener el mejor rendimiento posible del modelo. Es como programar, pero en lugar de escribir código, interactuamos con la IA en lenguaje natural.

Lo anterior es un aspecto crucial del trabajo con LMs: en estos modelos, la “entrada” es texto plano en lenguaje natural, a diferencia de la inmensa mayoría de modelos computacionales o matemáticos que requieren una entrada de datos compleja. Quizás esta sea una de las razones del tremendo éxito de estos modelos.

workflow promting con modelos de lenguaje

Con el prompting adecuado, podemos lograr que IAs como ChatGPT generen textos, respondan preguntas, analicen datos o realicen casi cualquier tarea relacionada con el lenguaje.

¿Por qué el prompting es tan importante?

El prompting es crucial porque permite aprovechar al máximo el potencial de los modelos de lenguaje. Sin un buen prompting, obtendríamos respuestas irrelevantes o de baja calidad. En cambio, con las instrucciones adecuadas, podemos lograr resultados sorprendentemente buenos para tareas empresariales del mundo real.

Algunos beneficios concretos de dominar el arte del prompting son:

  • Hacer que el modelo haga exactamente lo que necesitamos: Con las instrucciones adecuadas, podemos guiar al modelo para que realice la tarea deseada de forma precisa, evitando respuestas irrelevantes o erróneas.
  • Obtener resultados consistentes en el formato deseado: Mediante prompts bien diseñados, podemos lograr que el modelo genere siempre outputs estructurados según nuestras necesidades, como respuestas en puntos, tablas, código, etc.
  • Reducir “alucinaciones” o invenciones: Un buen prompting ayuda a mantener al modelo apegado a la información factual proporcionada, minimizando que genere contenido falso o inventado.
  • Expandir las capacidades de razonamiento del modelo: Con prompts astutamente construidos, podemos lograr que el modelo realice inferencias más complejas, conteste preguntas que requieren múltiples pasos de razonamiento, y aborde tareas de forma creativa.
  • Personalizar el estilo y tono de las respuestas: Podemos controlar si queremos que el modelo adopte un lenguaje formal o informal, un tono asertivo o cauteloso, un estilo técnico o divulgativo, etc., todo a través del prompting.

En esta serie de posts que comienzan con el actual, se explorará cómo debe realizarse un prompting efectivo. Pero antes de nada, es mejor si comenzamos asegurándonos que el modelo de lenguaje que vamos a usar es el adecuado. Igual estás pensando “¿¿Pero no vas a usar ChatGPT??”. Sigue leyendo.

Más allá de ChatGPT: ¿Qué modelo de lenguaje debo usar?

Seguramente el modelo más conocido sea ChatGPT. En verdad ChatGPT es la versión chat del modelo GTP3.5. Eso si eres usuario free. OpenAI, la empresa propietaria de ChatGPT nos deja usar su modelo GPT3.5 de forma gratuita, que es el que irrumpió con tanto éxito en el mundo a finales de 2022. En la actualidad, no es de los modelos más potentes, seguramente otros se adapten mejor a tus necesidades.

Si tu bolsillo te lo permite, puedes acceder a los modelos más avanzados. La web LMSYS Arena Leaderboard establece un ranking real e independiente de los modelos actuales. En el momento de escribir este artículo, GPT4-Turbo y Claude 3 Opus están en lo más alto. Ambos son de pago, funcionan pagando por cada uso (a través de API) o mediante suscripción mensual para el uso de su chat web. Estas suscripciones permiten la clásica interacción “tipo chat” con estos modelos, y rondan los 20€ mensuales.

comparación rendimiento modelos de lenguaje abiertos o de pago

Si no quieres pagar, tienes alternativas mejores que GPT3.5. En el momento de escribir este post, los modelos abiertos más potentes son Command R+, de Cohere, y Llama 3 70b, de Meta. Por suerte, también podemos interaccionar mediante chat con estos modelos: ve a https://cohere.com/ para usar Command R+ y a https://groq.com/ para usar Llama 3. Las alternativas open-source suelen ir algo retrasadas frente a las soluciones comerciales, si bien, como se ve en la gráfica anterior, esta diferencia ha ido reduciéndose. En la actualidad, el rendimiento de las soluciones gratuitas lleva un retraso de aproximadamente 6 meses en comparación con las de pago.

Por último, merece la pena mencionar que existen multitud de modelos entrenados para tareas concretas, que pueden ser más apropiados que un modelo generalista si tus requisitos son muy específicos. Por ejemplo, si quieres utilizar un modelo de lenguaje para generar código, tienes a tu disposición varias soluciones dedicadas, por ejemplo Gemini + Google Cloud Code.

Ten en cuenta que el campo avanza muy rápido, y lo que hoy es puntero puede quedar obsoleto en pocos meses. Por eso es clave mantenerse al día de los últimos avances.

En próximos posts profundizaremos en cómo usar de forma efectiva estos modelos de lenguaje, qué técnicas de prompting han demostrado ser eficientes para sacar el máximo de los modelos de lenguaje.

Posted in AI, TechnologyTags:
Write a comment