Ingeniería de prompts
La Guía Esencial para la Ingeniería de Prompts en ChatGPT

Desde su lanzamiento, ChatGPT ha estado causando un gran impacto en la esfera de la IA, atrayendo a más de 100 millones de usuarios en un tiempo récord. El secreto detrás del rendimiento impresionante y la versatilidad de ChatGPT se encuentra en un arte sutilmente integrado en su programación: la ingeniería de prompts.
Lanzado en 2022, DALL-E, MidJourney y StableDiffusion subrayaron el potencial disruptivo de la IA generativa. Pero fue Open AI‘s ChatGPT el que realmente se llevó el centro de atención más tarde en 2022. Y este impulso no mostró signos de desaceleración.
El anuncio de Google de Bard y la respuesta de Meta con Llama 2 a ChatGPT de OpenAI ha amplificado significativamente el impulso de la carrera de IA. Al proporcionar estos modelos con entradas, estamos guiando su comportamiento y respuestas. Esto nos convierte a todos en ingenieros de prompts en cierta medida. La industria tecnológica ha tomado nota. Los capitalistas de riesgo están invirtiendo fondos en startups que se centran en la ingeniería de prompts, como Vellum AI. Además, Forbes informa que los ingenieros de prompts pueden ganar salarios que superan los $300,000, lo que indica un mercado laboral próspero y valioso.
En este artículo, desmitificaremos el mundo de la ingeniería de prompts en el contexto de ChatGPT. Exploraremos los principios y técnicas básicas y examinaremos sus aplicaciones comerciales.
Comencemos por entender cómo funciona ChatGPT y el papel fundamental que juega la ingeniería de prompts en este proceso.
La Mecánica Detrás de la Ingeniería de Prompts de ChatGPT
El secreto detrás del éxito de ChatGPT es su capacidad para entender y emular las sutilezas de la conversación humana. El modelo se entrena en una amplia variedad de textos de Internet, pero crucialmente, no conoce documentos o fuentes específicas en su conjunto de entrenamiento, lo que garantiza la generalización sobre la especificidad. Este enfoque de entrenamiento permite que ChatGPT genere respuestas creativas, navegue por diálogos complejos y甚至 exhiba un sentido del humor. Sin embargo, es importante recordar que ChatGPT no entiende realmente ni tiene creencias; genera respuestas basadas en patrones que aprendió durante el entrenamiento.
La capacidad de ChatGPT para entender y responder al lenguaje humano de manera sutil y consciente del contexto lo convierte en una herramienta increíblemente versátil.
La mecánica de estos modelos se basa en el concepto de ‘tokens’ – fragmentos discretos de lenguaje que pueden variar desde un solo carácter hasta una palabra completa. Estos modelos trabajan con un número específico de tokens a la vez (4096 para GPT-3.5-Turbo o 8192 o 32768 para GPT-4), prediciendo la siguiente secuencia de tokens probables. Los modelos procesan los tokens utilizando álgebra lineal compleja, prediciendo el token subsiguiente más probable.
Por ejemplo, una oración simple de nueve palabras podría convertirse en diez tokens. Incluso una sola palabra compleja podría convertirse en múltiples tokens, lo que ayuda al modelo a entender y generar lenguaje mejor. Incluso los lenguajes con estructuras de palabras complejas, como el alemán, se manejan a través de la tokenización.
Los modelos GPT (Generative Pre-trained Transformer) funcionan generando un token a la vez, comenzando desde el primer token y continuando hasta el último. Después de generar cada token, el modelo vuelve a procesar la secuencia completa para generar el siguiente token. Este proceso iterativo continúa hasta que se genera el token final, lo que hace que la generación de texto sea similar a un gran bucle for.
Pero aquí está la cuestión – la calidad de estas respuestas depende en gran medida de los prompts que recibe. Al igual que dirigir una conversación con un humano, guiar un diálogo con ChatGPT requiere un cierto nivel de habilidad y comprensión. Ahí es donde entra en juego la ingeniería de prompts.
¿Qué es la Ingeniería de Prompts?
La Ingeniería de Prompts es el arte de crear prompts precisos y efectivos para guiar a los modelos de IA (NLP/Vision) como ChatGPT hacia la generación de salidas más rentables, precisas, útiles y seguras.
La ingeniería de prompts no se limita solo a la generación de texto, sino que tiene aplicaciones más amplias en todo el dominio de la IA. Está siendo cada vez más empleada en áreas como la automatización de procesos robóticos, activos 3D, guiones, instrucciones de robots y otros tipos de contenido y medios digitales. Proporciona una mezcla única de lógica, codificación, arte y, en ciertos casos, modificadores especiales.
Mientras que un prompt puede incluir texto de lenguaje natural, imágenes u otros tipos de datos de entrada, la salida puede variar significativamente entre los servicios y herramientas de IA. Cada herramienta tiene sus modificadores especiales que describen el peso de las palabras, estilos, perspectivas, diseño u otras propiedades de la respuesta deseada.
Este campo es esencial para crear mejores servicios impulsados por IA y obtener resultados superiores de las herramientas de IA generativa existentes. Los desarrolladores empresariales, por ejemplo, a menudo utilizan la ingeniería de prompts para personalizar los grandes modelos de lenguaje (LLM) como GPT-3 para alimentar un chatbot orientado al cliente o realizar tareas como la creación de contratos específicos de la industria.
Este proceso iterativo de refinamiento de prompts y medición del rendimiento de la IA es un elemento clave para permitir que los modelos de IA generen respuestas altamente dirigidas y útiles en diversos contextos.
Convertirse en un Ingeniero de Prompts
El modelo GPT-4 tiene una gran capacidad para comprender instrucciones complejas y resolver problemas intrincados con precisión, lo que lo convierte en un recurso invaluable. Sin embargo, hay diferentes métodos para acceder a las capacidades de este modelo, y comprender estos métodos es crucial para el papel de un ingeniero de prompts en la optimización de la eficiencia y la rentabilidad.
Hay esencialmente dos formas de interactuar con los modelos GPT como GPT-4. Una forma es a través de la API de OpenAI, donde los costos se calculan por tokens de entrada y salida. En este escenario, los costos por 1K tokens pueden fluctuar según el tamaño del contexto. Por ejemplo, en un contexto más grande de 32K, el costo podría aumentar a $0,06 por tokens de entrada y $0,12 por tokens de salida. Así, al manejar un gran volumen de solicitudes, el costo de uso puede acumularse rápidamente.
Alternativamente, ChatGPT, que aprovecha el modelo GPT-4, opera en un modelo de suscripción.
Otra tarea clave en la ingeniería de prompts implica el ajuste de parámetros del modelo. Este proceso implica ajustar las variables que el modelo utiliza para hacer predicciones. Al afinar estos parámetros, los ingenieros de prompts pueden mejorar la calidad y precisión de las respuestas del modelo, haciéndolas más relevantes y útiles en el contexto.
Aunque muchos ingenieros de prompts provienen de un fondo técnico, la naturaleza multidisciplinaria del campo lo hace accesible a personas de diversos orígenes profesionales. Cada vez más, escritores, investigadores e incluso artistas están aprovechando sus habilidades únicas para mejorar la eficacia de los modelos de IA. Este cambio se refleja en el mercado laboral, con un número creciente de empresas que buscan ingenieros de prompts con una amplia gama de habilidades y antecedentes.
Diseño y Ingeniería de Prompts en ChatGPT
El Diseño y la Ingeniería de Prompts juegan un papel fundamental en la optimización del rendimiento de los modelos de lenguaje y conllevan más que simplemente crear preguntas; requieren una comprensión profunda del modelo de IA y un enfoque altamente iterativo y refinado.
Diseño de Prompts
El diseño de prompts, en su núcleo, es el arte y la ciencia de crear el prompt perfecto para un modelo de lenguaje grande (LLM) como ChatGPT, para lograr un objetivo claramente establecido. Es una mezcla de:
- Comprensión del LLM: Diferentes modelos de lenguaje pueden responder de manera variable al mismo prompt. Además, ciertos modelos de lenguaje pueden tener palabras clave o desencadenadores únicos que interpretan de una manera específica.
- Conocimiento del dominio: La experiencia en el campo relevante es crucial al diseñar prompts. Por ejemplo, generar un prompt para inferir un diagnóstico médico requeriría conocimiento médico.
- Enfoque iterativo y medición de la calidad: El proceso de crear el prompt ideal a menudo implica prueba y error. Por lo tanto, tener una forma de evaluar la calidad de la salida más allá de solo el juicio subjetivo es vital, particularmente cuando se utiliza el prompt a una escala más grande.
Ingeniería de Prompts
La ingeniería de prompts es un ámbito extendido del diseño de prompts que incluye varios procesos críticos:
- Diseño de prompts a escala: Este proceso incluye el diseño de metaprompts (prompts que generan otros prompts) y plantillas de prompts, que son prompts parameterizados que se pueden instanciar en tiempo de ejecución.
- Diseño de herramientas y integración: Los prompts pueden incluir resultados de herramientas externas, y la integración de estas herramientas de manera fluida en el sistema es crucial.
- Flujo de trabajo, planificación y gestión de prompts: Desplegar una aplicación de LLM, como un chatbot, a menudo requiere gestionar bibliotecas de prompts, planificar y elegir los prompts adecuados, e integrar eficientemente varias herramientas.
- Evaluación y garantía de calidad de los prompts: Este aspecto incluye definir métricas y procesos para evaluar los prompts tanto de manera automática como con la participación humana.
- Optimización de prompts: El costo y la latencia del modelo de IA pueden depender de la elección del modelo y la longitud del prompt (número de tokens).
Muchos enfoques automatizados de diseño de prompts, herramientas y marcos han sido desarrollados para gestionar prompts a escala. Sin embargo, es importante comprender que ninguna de estas herramientas puede reemplazar la comprensión matizada, el juicio y la experiencia de un ingeniero de prompts experimentado.
Técnicas y Mejores Prácticas de Ingeniería de Prompts
1) Colocación y Descripción de Prompts
Colocar instrucciones al comienzo del prompt puede impactar significativamente la comprensión y respuesta de la IA. Consideremos la tarea de resumir un texto en un formato de lista de puntos de los puntos más importantes.
Un enfoque menos efectivo sería:
Usuario: Resumir el texto a continuación como una lista de puntos de los puntos más importantes.
{text input aquí}
Por otro lado, un enfoque más efectivo podría ser:
Usuario: Resumir el texto a continuación como una lista de puntos de los puntos más importantes.
“””
{text input aquí}
“””
Al separar claramente las instrucciones y el contexto con símbolos como ### o “”, el modelo de IA puede delinear mejor su tarea y el texto que necesita procesar, lo que da como resultado respuestas más precisas y relevantes.
En segundo lugar, ser específico, descriptivo y detallado sobre el contexto, el resultado esperado, la longitud, el formato, el estilo, etc., puede mejorar significativamente la precisión de las respuestas de la IA.
Supongamos que necesitamos generar una visión general concisa de un artículo científico en un estilo atractivo y accesible para los legos. Una instrucción vaga como “Resumir el artículo científico” produciría resultados menos efectivos en comparación con un prompt específico y detallado:
Usuario: Generar una visión general concisa (aproximadamente 200 palabras) del siguiente artículo científico. La visión general debe ser comprensible para alguien sin antecedentes científicos, mientras refleja con precisión los hallazgos clave del artículo.
Artículo: “””
{texto del artículo científico aquí}
“””
2) Patrón de Persona
El patrón de persona es una estrategia que configura a la IA para funcionar desde una perspectiva específica, como un rol profesional o un personaje ficticio. Esta táctica permite que el modelo proporcione salidas relacionadas con los roles específicos que el personaje manejaría.
Por ejemplo, podríamos instruir a la IA para actuar como un experto en ciberseguridad durante una revisión de código.
Un prompt de ejemplo podría ser:
Usuario: “Asuma el personaje de un historiador senior especializado en la Revolución Francesa. Dado ese personaje, explique los eventos clave y las razones que llevaron al declive de la monarquía francesa.”
En este escenario, la IA se espera que responda con un análisis profundo de la Revolución Francesa, centrado en la caída de la monarquía, como lo haría un historiador.
Introducción de Nueva Información
ChatGPT no posee conocimiento más allá de su fecha de corte de entrenamiento, por lo que no puede proporcionar información sobre eventos recientes o actualizaciones posteriores a su entrenamiento. Sin embargo, puedes introducir nueva información al modelo a través de tus prompts.
Usuario: “¿Qué es la criptomoneda?”
ChatGPT: “La criptomoneda es un tipo de moneda digital o virtual que utiliza criptografía para la seguridad. La criptomoneda más conocida es Bitcoin.”
Ahora, si agregamos un poco más de contexto al prompt, podemos hacer que la explicación sea aún más intuitiva:
Usuario: “Explique el concepto de criptomoneda a un estudiante de secundaria que estudia finanzas digitales”
“Imagina que estás jugando un juego en línea y hay dinero del juego que puedes ganar para comprar mejoras o nuevos personajes. La criptomoneda es como eso, pero en lugar de estar limitada al juego, puedes usarla para comprar bienes y servicios del mundo real.”
3) Limitaciones de Tamaño de Prompts
Comprender las limitaciones de tamaño de ChatGPT es esencial, ya que afecta directamente el volumen y el tipo de información que podemos ingresar. Los modelos de lenguaje no están diseñados para procesar datos ilimitados de una vez. Tienen una restricción inherente en el tamaño del prompt que podemos crear y ingresar. Esta limitación tiene implicaciones profundas para el diseño y la ejecución de los prompts.
ChatGPT tiene un límite de tokens (generalmente 2048 tokens), que incluye tanto el prompt como la respuesta generada. Esto significa que los prompts largos pueden limitar la longitud de la respuesta. Por lo tanto, es importante mantener los prompts concisos pero informativos.
En la práctica, debemos actuar como editores, seleccionando cuidadosamente la información más relevante para la tarea en cuestión. Imagina escribir un artículo o un documento con un límite de palabras o páginas – no puedes simplemente volcar hechos aleatorios, sino que debes seleccionar y estructurar información relevante para el tema.
Usuario: “Dada la limitación de tokens del modelo, resumir los eventos clave de la Segunda Guerra Mundial en menos de 1000 palabras.”
Al reconocer la limitación de tokens del modelo, este prompt dirige a la IA para proporcionar un resumen conciso pero completo de la Segunda Guerra Mundial.















