Cómo crear un buen prompt para ChatGPT: Guía y ejemplos prácticos

Cómo crear un buen prompt para ChatGPT: Guía y ejemplos prácticos

En este post vamos a hablar de los prompts, esos pequeños pero poderosos aliados del mundo de la inteligencia artificial y que podemos definir como las brújulas que guían a los modelos de IA generativa, como ChatGPT, hacia respuestas precisas y útiles.

Lo cierto es que la elaboración de un prompt tiene su «arte» pero, una vez que conoces las reglas, las respuestas que obtienes (y después de darles tu toque personal), pueden convertirse en contenido de gran calidad y alto valor.

En este post te voy a hablar de los prompts, esos pequeños pero poderosos aliados del mundo de la inteligencia artificial y que podemos definir como las brújulas que guían a los modelos de inteligencia artificial generativa, como ChatGPT, hacia respuestas precisas y útiles.

Un prompt representa porciones de información que direccionan al modelo hacia la generación de las respuestas deseadas.

Sin más, vamos a ver cómo sacar el máximo provecho de los prompts para optimizar la generación de respuestas en la IA.

¿Qué es un prompt?

Son fragmentos de texto  necesarios para interactuar con los modelos de inteligencia artificial generativa y esenciales si queremos obtener respuestas precisas y relevantes.

Representan una señal escrita que le das a la IA para que te devuelva una respuesta o termine una idea.

Imagínalo como una especie de guion escrito en lenguaje natural (por ejemplo en castellano) que le proporcionas al modelo para que sepa qué estás buscando y ofrecer una respuesta o finalización (en inglés completion).

Cómo elaborar prompts eficaces.

Por tanto, parece que la clave es ser capaz de hacer un prompt que sea efectivo ¿no? pues vamos ver cómo conseguirlo

Diferencia entre el contexto y la consulta

Sabiendo, por tanto, que la elección del prompt puede influir significativamente en la calidad y el tipo de respuesta que obtengas, mi recomendación es empezar a dar indicaciones claras y concisas al modelo de IA sobre lo que «esperas» obtener, es decir, si escribes un prompt ambiguo o poco específico, es probable que la respuesta también lo sea, pero si le das un prompt claro y detallado, es más probable que la respuesta sea relevante

Consta de dos componentes principales: el contexto y la consulta. Ambos están relacionados entre sí y la validez de la respuesta será proporcional a la cantidad de contexto que acompañas a una pregunta determinada. Es un error hacer preguntas sin aportar un contexto.

El contexto proporciona información relevante y necesaria para que, por ejemplo ChatGPT, comprenda el entorno en el que debe considerar tu pregunta. Un prompt adecuado será aquel que incluya tanto el contexto del problema como la consulta específica que deseas resolver.

Proporciona antecedentes claros y relevantes para que el modelo comprenda el tema en cuestión.

Por ejemplo:

Contexto: «El comercio electrónico de ropa de segunda mano está en auge y las empresas buscan fórmulas para mejorar la experiencia del cliente en sus tiendas online»

Tarea/Consulta: «Proporciona recomendaciones sobre cómo optimizar la navegación del sitio web y aumentar las conversiones en una tienda online de ropa de segunda mano para mujeres»

Contexto: La fotosíntesis es un proceso fundamental en las plantas. A través de la fotosíntesis, las plantas utilizan la energía del sol para convertir el dióxido de carbono y el agua en glucosa y oxígeno.

Tarea/Consulta: Explica con lenguaje divulgativo para un público juvenil cómo funciona la fotosíntesis en las plantas, en unas 400 palabras.

Sé claro y específico en cómo debe ser la respuesta

Proporciona detalles precisos en tu pregunta para guiar al modelo hacia la respuesta deseada, es decir, detalla claramente lo que esperas como resultado del modelo. Cuanta más información proporciones, menos suposiciones tendrá que hacer el modelo de lo que esperas.

Tarea/Consulta: Clasifica el tono de este correo electrónico como positivo, neutral o negativo y sugiere posibles respuestas adecuadas en función de la clasificación obtenida.»

Puedes especificar muchos más detalles sobre la respuesta, como el formato (columnas, cuadros), el tono del texto (coloquial, formal) el tipo de audiencia a la que va dirigida (edad, país).

Para conseguir la respuesta que deseas, estos trucos te pueden resultar útiles:

«Sé conciso, minimiza la prosa en exceso»
«Utiliza poca jerga corporativa»
«Devuelve la respuesta en puntos separados (bullets) con frases cortas»
«Devuelve tu respuesta en una tabla con las columnas X, Y, Z»
«Sé extremadamente detallado»
«Devuelve tu respuesta en formato JSON siguiendo este ejemplo []» (esto te permite hacer un tratamiento automatizado de la respuesta)

Proporciona ejemplos de resultados (Few Shot Learning)

El aprendizaje «de pocos disparos» (o few-shot learning como se denomina en inglés), es una técnica útil para guiar al modelo IA mediante ejemplos específicos.

Como parte de tu prompt, puedes incluir ejemplos de resultados similares a los que deseas obtener. Esto ayudará al modelo a generar respuestas más adecuadas.

Por ejemplo: «Te voy a decir una serie de objetos y quiero que me respondas si son pequeños, medianos o grandes. Como ejemplo, un coche lo considero mediano, una bicicleta la considero pequeña y cualquier cosa tan grande como un elefante o más, la considero grande. Aquí van los datos: Cohete, casa, pulga, pelota de futbol, perro, silla, ciudad»

Proporcionar ejemplos de resultados y explicar el tipo de respuesta válido es necesario si pretendes automatizar la respuesta que te dé un modelo como ChatGPT.

En los casos en los que necesitas que su respuesta sea un número o una palabra concreta, debes proporcionar esa información en el prompt. Por ejemplo:

«Dada esta incidencia que un usuario ha enviado a mi servicio de asistencia técnica informática, quiero que me respondas únicamente con un número del uno al 10 donde un 1 sería una consulta muy poco urgente y un 10 sería una consulta extremadamente urgente. Considero urgente cualquier incidencia que impida a los usuarios continuar haciendo su trabajo. Considero poco urgente las que, aunque son un problema, permiten continuar trabajando. Aquí va la incidencia: MI ORDENADOR NO ENCIENDE»

En este caso, seguramente obtuvieras como respuesta un 10.

Tip técnico: Puedes pedirle a ChatGPT que te dé respuestas en cualquier idioma y formato (por ejemplo en JSON), lo que te permitirá hacer un tratamiento automatizado de las respuestas a través de tu plataforma de correo electrónico o CRM

Prioriza las fuentes que quieres que la IA utilice (Grounding)

Ten presente que los modelos de IA han sido entrenados con una gran cantidad de información presente en Internet, algunos de ellos incluso tienen conexión en tiempo real a la red.

Esto significa que el modelo recurre a toda la información que hay (y hay de todo) y aunque ha sido preparado para intentar no hacerlo, los modelos de Ia como ChatGPT podrían crear una respuesta dando más importancia a conocimientos divulgativos, científicos, humorísticos o simplemente eligiendo al azar una posición en un tema controvertido.

Proporcionar contexto y priorizar fuentes en tus prompts evitará respuestas incorrectas o ficticias.

Por tanto, si quieres que la respuesta a un prompt otorgue más valor a un tipo de conocimiento que a otro, debes decirle al modelo qué fuentes, hechos, autoridades o referencias consideras válidas. A esta técnica se la denomina «Grounding» ya que estás asentando la respuesta del modelo a cosas que tú consideras ciertas.

Por ejemplo, si dices: «Galileo demostró que los planetas giraban alrededor del sol a principios del Siglo XVII. Los planetas describen órbitas elípticas. Proporciona una explicación sencilla para un público de 12 años sobre cómo son las órbitas del sistema solar».

Te estás asegurando que ChatGPT no va a utilizar ningún tipo de rumor o teoría terraplanista distinta en su explicación del heliocentrismo.

Proporcionar datos específicos y hechos importantes sobre el tema y citar fuentes o autoridades que consideras fiables, ayudará al modelo a generar una respuesta más precisa a la que tú otorgues más valor, que es al fin y al cabo lo que esperas.

Temperatura: Ajusta la creatividad de la respuesta

Cuando envías un prompt a ChatGPT puedes decirle que utilice una temperatura de X, donde X es un número con decimales entre 0 y 1 (por ejemplo: «[…] para tu respuesta utiliza una temperatura de 0,3»). El parámetro «temperatura» controla la aleatoriedad de las respuestas generadas por el modelo haciéndolas más «atrevidas» (temperatura más alta o cercana a 1) o más «moderadas» (temperatura más baja o cercana a 0).

La temperatura se utiliza para ajustar el nivel de creatividad de la respuesta.

Cuando se establece una temperatura baja (por ejemplo, 0,1), el modelo es más estricto y produce respuestas más coherentes y predecibles, seleccionando las palabras con mayor probabilidad. Esto puede ser útil cuando se desea obtener resultados más precisos y menos ambiguos.

Por otro lado, cuando se aumenta la temperatura (por ejemplo, 1,0), el modelo se vuelve más creativo y genera respuestas más diversas y sorprendentes. En este caso, el modelo tiene más libertad para explorar diferentes palabras y generar respuestas más originales y a veces menos coherentes.

Por ejemplo podríamos decirle a ChatGPT: «Escribe un relato en el que un grupo de amigos corren aventuras en un barco pirata por los mares del caribe. Utiliza una temperatura de 0,7 para tu respuesta.»

De este modo, la temperatura actúa como una especie de «ajuste de creatividad» que permite ajustar el equilibrio entre la coherencia y la diversidad de las respuestas generadas. Es importante tener en cuenta que, al aumentar la temperatura, la probabilidad de generar respuestas incoherentes o poco relacionadas con el contexto de la conversación también aumenta.

Estilo de escritura: Configura el tono de los resultados

Puedes pedirle a ChatGPT que genere una respuesta con un estilo de escritura concreto (por ejemplo «[…] para tu respuesta utiliza un tono persuasivo»). Si además combinas el estilo de escritura con la temperatura, puedes obtener resultados muy ajustados a lo que necesitas. Aquí van algunos ejemplos:

Formal:
Temperatura baja (0.1): «Agradezco su consulta y me complace brindarle la información solicitada. Según los datos recopilados, el resultado esperado es el siguiente: [respuesta precisa].»
Temperatura alta (1.0): «Saludos cordiales. Hemos revisado diligentemente su inquietud y los resultados obtenidos son los siguientes: [respuesta más detallada y formal].»

Informal:
Temperatura baja (0.1): «Ey, aquí tienes lo que necesitas: [respuesta breve y sencilla].»
Temperatura alta (1.0): «¡Hey! No te preocupes, ¡aquí te lo cuento todo! [respuesta más relajada y conversacional].»

Persuasivo:
Temperatura baja (0.1): «Basado en estudios exhaustivos, te recomiendo encarecidamente considerar la opción que te estoy presentando. Sus beneficios son notables y podrías experimentar mejoras significativas.»
Temperatura alta (1.0): «¡Vamos, te aseguro que esta opción es genial! ¡No te arrepentirás, te lo prometo! Solo imagina todos los beneficios que obtendrás.»

Descriptivo:
Temperatura baja (0.1): «La escena se desarrolla en un prado verde y extenso, con flores de colores vibrantes danzando al viento. Los rayos del sol iluminan el paisaje, creando una atmósfera cálida y acogedora.»
Temperatura alta (1.0): «¡El escenario es alucinante! Te transportarás a un prado mágico, lleno de flores que se inclinan como si estuvieran bailando. Los rayos del sol iluminan todo con una energía deslumbrante. ¡Es una escena que te quitará el aliento!»

Humorístico:
Temperatura baja (0.1): «¿Por qué los pájaros no usan Facebook? ¡Porque ya tienen Twitter! ¿Listo para la respuesta? [respuesta con un toque de humor].»
Temperatura alta (1.0): «¿Qué hacen las abejas en el gimnasio? ¡Zum-ba! ¡Ja ja! Te cuento más: [respuesta con un tono más divertido y chistes adicionales].»

Narrativo:
Temperatura baja (0.1): «El sol se asomaba tímidamente entre las montañas, pintando el cielo de tonos dorados. Los pájaros cantaban alegremente mientras el viento susurraba entre los árboles. En ese momento, sucedió algo inesperado…»
Temperatura alta (1.0): «La mañana amaneció espectacular, el sol brillaba con fuerza y las montañas parecían cobrar vida. Los pájaros, llenos de entusiasmo, cantaban en armonía mientras el viento jugueteaba con las hojas. Y de repente, ocurrió algo que nadie esperaba…»

Inspiracional:
Temperatura baja (0.1): «No importa cuán oscuro sea el camino, siempre habrá una luz al final del túnel. La perseverancia y la determinación son clave para superar cualquier desafío. ¡Tú puedes lograrlo!»
Temperatura alta (1.0): «¡No te rindas, nunca! Recuerda que dentro de ti hay una fuerza poderosa que te impulsa a alcanzar tus sueños. Siempre que caigas, levántate con más fuerza y sigue adelante. ¡Eres capaz de grandes cosas!»

Confrontacional:
Temperatura baja (0.1): «Lamentablemente, sus argumentos carecen de fundamento y no se ajustan a los hechos. Sugiero que reconsidere su posición y revise la información proporcionada anteriormente.»
Temperatura alta (1.0): «¿En serio crees eso? ¡Vaya, estás muy equivocado! Permíteme mostrarte la realidad y dejarte sin palabras. Presta atención a esto…»

Empieza una historia y haz que ChatGPT continúe (Role Playing)

Una de las técnicas más efectivas para dar contexto y calidad a un prompt y ajustar la precisión de la respuesta es utilizar la técnica de «Role Playing» o interpretación de un papel o personaje. En este ejemplo de prompt lo verás más claro:

«Eres un agente del servicio de Atención al Cliente de una empresa mediana de reparación de electrodomésticos en Vigo. Tus clientes son personas que han tenido un problema con su lavadora, lavavajillas o frigorífico y te llaman en busca de ayuda. Uno de ellos acaba de rellenar un formulario y dice esto: LA LAVADORA NO ACLARA BIEN. Escribe una respuesta descriptiva con una solución propuesta al problema de 800 palabras, con temperatura 0,8»

En el prompt, hacemos que ChatGPT asuma el papel de un personaje específico en una «historia». En lugar de presentar una consulta o solicitud directa, simulamos un guión o una conversación con un personaje ficticio, permitiendo que el modelo responda en consecuencia.

Esta técnica es útil por varias razones. Primero, puede ayudarte a obtener respuestas más contextualizadas y coherentes, ya que le estás proporcionando al modelo un marco de referencia claro.

Al establecer un escenario y definir los roles, ChatGPT puede ajustar sus respuestas en función de la personalidad o perspectiva del personaje que le pides que represente.

Además, el role-playing puede ser una herramienta creativa para explorar diferentes puntos de vista. Puedes simular una conversación con un cliente enfadado, uno experto o uno novato. Esto te permite obtener respuestas imaginativas y ver cómo el modelo interpreta y responde desde esa perspectiva particular.

Cómo utilizar un prompt para automatizar tu trabajo diario

Aunque el desarrollo de los modelos de IA como ChatGPT ha evolucionado mucho en los últimos meses, la generación de resultados a través de prompts es un proceso de ensayo y error. No te desanimes si no obtienes los resultados esperados de inmediato. Sigue probando combinaciones para obtener la respuesta deseada.

Experimenta con diferentes enfoques y técnicas y utiliza los resultados iniciales generados por el modelo como base para refinar y mejorar tus prompts.

Un buen prompt que tenga un porcentaje de acierto elevado para una tarea que te sea útil, es un tesoro.

Imagina que has logrado un prompt que es capaz de resolver alguna de las tareas de oficina que haces a cabo diariamente (crear una respuesta para un email, clasificar un texto, extraer datos de un párrafo, etc.).

A partir de ese momento puedes utilizar ChatGPT para tu trabajo, pero en lugar de tener que copiar y pegar textos en el navegador, puedes utilizar un software de gestión de procesos para automatizar la utilización de ese prompt.

También podrás extraer información de documentos de trabajo, responder cuestionarios de tus clientes o detectar datos en textos de negocio de forma automática dentro de la aplicación, etc

Pero de eso, ya hablaremos en otro post.