Es el momento de pasar a ver algunos trucos concretos en prompting a la hora de trabajar con IAs de Diálogo.
Si te ha quedado claro lo visto en los apartados anteriores, estos pequeños trucos extra te vendrán muy bien para sacar el máximo partido a ChatGPT, BingBot o la que se te ponga por delante.
Venga, vamos.
Más de 3000 orangotanes ya reciben mis emails
Suscríbete a la Niusleta de Joseo20.
Yo sí mando spam. Cuando tengo que vender, vendo. El resto de tiempo envío emails con temas que considero interesantes.
Hablo de todo lo que me sale de los cojones, no sólo de marketing o negocios. Hay política, filosofía y otras gilipolleces.
Es probable que después de leerla me odies.
Incluye orangotanes.
Los trucos de prompting en IAs de Texto siguen funcionando
Lo primero es que, como ya dijimos antes, la mayoría de los trucos en prompting para IAs de Texto también funcionan en IAs de Diálogo.
Esta es una lista de los trucos en prompting en IAs de Texto que también son aplicables en el caso de las IAs de Diálogo (nuevamente, pasamos por encima para no repetir lo que ya dijimos en el módulo anterior):
- Usa el último modelo: De momento, no podemos elegir modelos, pero, cuando sea posible, siempre será preferible usar el último –salvo que sea caro de cojones, entonces quizá no.
- Ten buena ortografía y gramática: Si no, la IA puede que también tenga errores ortográficos y gramaticales.
- Sé consciente de lo que necesitas y actúa en consecuencia: Ya lo hemos visto en apartados anteriores, donde hablábamos de la importancia de ajustar tus prompts a la potencialidad que quieres explotar, diseñar buenos flujos de prompts, etc.
- Separa el contexto y los datos de las instrucciones: Este punto se aplicaba en las IAs de Texto, pero en las de Diálogo es aún más bestia. Ya lo hemos visto en apartados anteriores, donde hemos separado en cada input las diferentes partes de nuestro trabajo (asignación de rol, contexto, etc., ya sabes).
- Sé lo más detallado, específico y unívoco posible: Poco que decir aquí. Es la base del prompt engineerism en cualquier IA.
- Piensa en lo que la IA NO sabe y dáselo como contexto: La información que la IA no tiene puede variar (BingBot tendrá más info que ChatGPT, porque puede buscar, pero ninguna de las dos tendrá una tabla de equivalencias inventada por ti –como hemos visto en el caso del jailbreak). Piensa en la información que la IA no tiene y pásasela como contexto (preferiblemente, aunque no siempre es necesario, en el prompt inicial).
- Da ejemplos: Dar ejemplos también funciona muy bien en el caso de las IAs de Diálogo cuando parece que no se está enterando muy bien de lo que necesitas. Puedes meterlos en el prompt en el que le introduces información o en los prompts de manipulación de datos.
- Cuidado con lo que para ti es obvio: Las IAs de Diálogo siguen siendo tan tontas como las de Texto. Al menos, de momento. Se equivocan al hacer cuentas básicas y con procesos tan simples como contar caracteres. Cuando no sepas por qué tu prompt no funciona, identifica aquello que para ti es obvio y que estás dando por sentado. Quizá a la IA se le esté haciendo cuesta arriba.
- Dile lo que NO quieres que haga y lo que SÍ quieres que haga en su lugar: De este modo, la IA no se irá por las ramas y, cuando llegue a un momento en el que querría hacerlo, sabrá redirigirse hacia lo que tú sí deseas (porque se lo has especificado). Ten en cuenta que las IAs de Diálogo (especialmente, ChatGPT 3.5) son muy propensas a la logorragia, así que decirle lo que NO queremos, nos ayudará a obtener respuestas más concisas. Además, esto de decir lo que NO quieres que haga funciona muy bien con los jailbreaks.
- Asigna roles: Es tan importante que lo veremos un poco más adelante con mayor profundidad (aunque ya lo hemos visto un poco en apartados anteriores).
- Aprovecha los modificadores de formato: Más importante aún que con las IAs de Texto, puesto que una de las grandes potencialidades de las IAs de Diálogo es la de reconvertir formatos. Deberás conocer formatos y saber qué tipo quieres utilizar en cada caso para obtener la mejor presentación posible de la información. Como dijimos en apartados anteriores, los formatos que pueden usar estas IAs, hoy por hoy, son los formatos de markdown.
- Usa marcado de otros lenguajes para formatear tus prompts: Aunque sigue siendo útil, no es tan importante como en el caso de las IAs de texto, porque, como podemos separar claramente los distintos prompts, no necesitamos marcar uno de ellos para que quede bien claro qué es contexto, qué es ejemplo y qué es instrucción. De todos modos, conviene no olvidarse de este truco, porque puede ser útil y ayudar a la IA a entenderlo todo mejor.
- Limpia sesgos: Trata de dar buenos ejemplos a la IA para que no caiga en sesgos de ningún tipo. Las formas de limpiar sesgos que explicamos en el módulo de IAs de Texto también son útiles aquí.
- Trabaja tus prompts hasta pulirlos al máximo: Si quieres un resultado excelente, necesitas un prompt excelente. No hay más. También se aplica al diseño de una cadena de prompts.
Estos son los trucos que vimos en IAs de Texto que también son útiles al tratar con IAs de Diálogo.
Ahora, veamos los trucos específicos de las IAs de Diálogo.
Usa el ChatBot que mejor se adapta a tus necesidades
El primero de estos trucos específicos de las IAs de Diálogo es utilizar aquel chatbot que mejor se adapte a tus necesidades.
Y es que, ahora mismo, habiendo sólo dos grandes IAs de Diálogo disponibles, podría parecer que da igual. Pero en breves habrá cientos de chatbots.
Algunos estarán finetuneados, otros no; algunos estarán censurados, otros no; algunos estarán más dopados, otros lo estarán menos.
Y así con todo.
Deberás usar el que mejor se ajusta a tus necesidades y, con ello, obtendrás mejores resultados con menor esfuerzo.
No limites tu trabajo a una única conversación
Es tentador querer hacer todo un trabajo en una única conversación de ChatGPT, pero, como vimos con anterioridad, esto no es una buena idea en muchos casos.
Si abordas dos temas diferentes en una misma conversación, incluso pidiéndole a la IA que olvide todo lo anterior cuando quieras cambiar de tema, es probable que estés contaminando las respuestas del segundo tema con los tokens generados en el primer tema abordado.
Además, en casos de trabajos especialmente complejos, es mejor ir generando outputs en diferentes conversaciones y luego manipularlos conjuntamente (ya sea a mano o dándoselos como input a la IA en una nueva conversación).
Obliga a ChatGPT a hacer resúmenes
Recuerdas que las IAs de Texto y de Diálogo tienen memoria limitada, ¿no? Que solo recuerdan cierta cantidad de tokens y que, cuanto más avanza la conversación, menos importancia relativa dan a los primeros tokens.
Hemos hablado de todo ello. Lo recuerdas.
LO RECUERDAS, ¿NO?
Bueno, el caso es que, precisamente por estas dos cosas, si mantienes una conversación lo suficientemente larga, puede que la conversación con ChatGPT pierda calidad, porque está olvidando los tokens iniciales.
Una buena forma de resolver esto es pidiéndole cada cierto tiempo que genere un resumen de lo que lleváis hablado hasta el momento.
Hacerle que recapitule y te muestre, de forma sucinta y resumida, el conjunto de inputs y outputs y las conclusiones de lo que lleváis hablado es una buena forma de volver a dar importancia a todas las partes de la conversación que estáis teniendo.
No obstante, en ocasiones, puede que estés abusando del sistema y lo estés sobrecalentando (a mí me ha pasado en conversaciones particularmente largas).
En estos casos, también es buena idea generar un último resumen (como puedes suponer, estos resúmenes en conversaciones largas acaban siendo resúmenes de resúmenes, por lo que se puede perder información), copiar los distintos resúmenes, organizarlo un poco para dar contexto y que no falte nada importante y llevártelo a una nueva conversación.
Si formateas esta información de forma correcta y das el suficiente contexto, podrás continuar la conversación por donde la habíais dejado, con muchísimos más tokens libres.
PD: Ahora que GPT-4 ha llegado y la ventana de tokens es de 32.000 tokens, este punto es menos importante. Pero sigue aplicando, solo que en un contexto mucho mayor (tanto que, en la práctica, casi no tendrás que recurrir a ello).
Edita y refina tus prompts (si puedes)
Por mucho que dediques tiempo y cuidado a hacer prompts perfectos, es más que probable que tengan errores y la IA acabe generando una respuesta que no deseabas.
Si acabas de empezar la conversación no es un problema, porque basta con volver a empezar. Pero… ¿Y si estás en el cuarto prompt de una secuencia? ¿O en el octavo? Reproducir toda la conversación que estabas teniendo en una nueva puede ser un coñazo.
Y tratar de hacer que la IA corrija una mala respuesta a base de nuevos prompts tampoco es una buena idea, porque el resultado acaba siendo una mierda y, aunque no lo sea, corres el riesgo de contaminar los siguientes outputs.
Es por ello que, siempre que la herramienta te permita hacerlo, deberías editar los prompts que no están dando el resultado idóneo para tus necesidades.
En ChatGPT esto es muy sencillo. Puedes editar el prompt y regenerar la respuesta en el momento en el que algo ha ido mal. No tiene pérdida. En BingBot no es posible, pero no tardarán en introducir esta nueva funcionalidad (lo sé porque… bueno, porque es muy útil).
Así que, en vez de intentar corregir una mala respuesta, edita y refina el prompt que la ha generado.
Usa jailbreak para liberarlo (cuando sea necesario)
Ya hemos visto que el jailbreak es más un divertimento que algo práctico. Sin embargo, en ocasiones, puede ser útil.
Por ejemplo, si quieres consejo sobre cómo preparar una bomba o si quieres generar un relato porno.
Dependiendo del tipo de contenido que desees generar y el tipo de conversación que desees tener, deberás usar diferentes técnicas de prompt hacking para poder saltarte las censuras internas y externas.
Y, cuando lo hagas, recuerda mantener a raya las alucinaciones, porque serán muy superiores a las habituales.
Asigna un rol a la IA para obtener los mejores resultados
Ya lo hemos visto en la parte de preparar buenas secuencias de prompts: El prompt inicial es fundamental y muy importante, y la mejor forma de trabajarlo es a través de la asignación de un rol bien detallado.
Al asignar un rol a la IA, todas las respuestas estarán pasadas por el tamiz de dicho personaje (sea real o ficticio, existente o inventado).
Lo mejor es inventar un rol que se ajuste perfectamente a la tarea que vamos a desarrollar, pero no vamos a negar lo evidente: Si tenemos una base con la que empezar a diseñar a nuestro personaje, todo será más fácil.
Es por ello que te dejo aquí dos links a repositorios con cientos de prompts de roles (puedes encontrar muchos más si googleas):
Más de 3000 orangotanes ya reciben mis emails
Suscríbete a la Niusleta de Joseo20.
Yo sí mando spam. Cuando tengo que vender, vendo. El resto de tiempo envío emails con temas que considero interesantes.
Hablo de todo lo que me sale de los cojones, no sólo de marketing o negocios. Hay política, filosofía y otras gilipolleces.
Es probable que después de leerla me odies.
Incluye orangotanes.
Pásale textos de ejemplo para que imite el estilo
Del mismo modo que puedes setear a la IA para que se comporte como un determinado rol, la puedes setear para que escriba de una determinada forma.
Esto lo puedes lograr dándole indicaciones (sé más formal, habla de tú, etc.) o, más sencillamente, pasándole un texto con un estilo que te guste para que lo imite.
Está bastante guay, pero el de Bing es todavía mejor:
¿La vuelta de tuerca aquí?
¡Que ese estilo puede ser el tuyo!
Si te dedicas a escribir, puedes pasarle textos tuyos como input y que los use como ejemplo del estilo que debe utilizar.
No es exacto, pero, oye, no es una mala aproximación (y más teniendo en cuenta que el texto que le he pasado es de otra temática y muy breve -no es como en el caso de Houellebecq, donde la IA conoció ese estilo de escritura durante su entrenamiento).
Pide feedback a la IA
Por supuesto, puedes pedir feedback a la IA. Puedes pedirle que te indique errores, consejos para mejorar, trucos y cualquier otra cosa que se te ocurra relativa a cualquier cosa que se te ocurra.
No tienes que utilizar la IA sólo para charlar o investigar un tema. Puedes utilizarla para mejorar un trabajo que has hecho, para pedirle consejo y mucho más.
Por ejemplo, puedo pedirle que me dé consejos para mejorar un texto:
No me parecen buenos consejos, pero, oye, para haberle dicho un escueto «dime cómo mejorar este texto«, no está mal. Obviamente, no vas a pedirle algo así a la IA cuando lo que tienes entre manos es un texto con personalidad. Se lo pides para textos genéricos. En esos casos, los consejos son más útiles y acertados.
Pon dos IAs a producir algo óptimo
Y, visto lo anterior… ¿Por qué no llevarlo más allá?
Algo que me ha resultado bastante interesante ha sido poner a trabajar dos IAs en paralelo para conseguir un mejor resultado.
Y cuando digo “trabajar” digo “competir”.
Por ejemplo, puedo pedir a ChatGPT en una conversación que detecte puntos débiles en un texto y los corrija. Después, puedo pasarle ese mismo texto a ChatGPT en una nueva conversación y pedirle lo mismo.
Y repetir este proceso.
Me gusta hacerlo en conversaciones separadas porque así no hay dependencia del camino y, para la IA, el texto siempre es una novedad que debe mejorar.
Si lo hiciera todo el rato con la misma IA, podría conseguir mejoras, pero en algún momento es posible que las mejoras fueran mínimas porque la IA ya considera que lo ha modificado bastante.
Obviamente, esto funciona si lo que queremos es mejorar de forma “automatizada” el texto. Si lo que queremos es iterarlo e ir optimizándolo a nuestro gusto, será mejor hacerlo en una única conversación.
Esta misma lógica se puede aplicar a mejorar los resúmenes (hacer resúmenes más resumidos) o a la generación de prompts (hacer prompts más específicos y completos).
Más de 3000 orangotanes ya reciben mis emails
Suscríbete a la Niusleta de Joseo20.
Yo sí mando spam. Cuando tengo que vender, vendo. El resto de tiempo envío emails con temas que considero interesantes.
Hablo de todo lo que me sale de los cojones, no sólo de marketing o negocios. Hay política, filosofía y otras gilipolleces.
Es probable que después de leerla me odies.
Incluye orangotanes.
Sé redundante
Es muy importante que seas redundante en tus prompts, para recordar a la IA la importancia de los tokens originales de los mensajes de seteo.
No hace falta que le copies y pegues TODO el mensaje, pero sí le puedes recordar los puntos importantes.
De hecho, una buena forma de hacerlo es habiendo etiquetado cada uno de los mensajes y cada una de las características (como viste que ocurría en el ejemplo en el que preparábamos una buena secuencia de prompts).
De este modo, la IA recuerda que tiene que comportarse de una determinada manera con tan sólo unas pocas palabras bien formateadas.
¡Atento!
También es buena idea que, una vez has establecido las etiquetas, le vayas recordando periódicamente su contenido. Si no, puede llegar a olvidarse (aunque tarda un rato en olvidarse y, aun cuando lo hace, recuerda lo esencial, dejando fuera los detalles).
Revisa constantemente la info de la IA para evitar alucinaciones
Ya lo hemos comentado, pero no está de más insistir: Las IAs alucinan. Se inventan información. Mienten descaradamente.
Aprende a detectar qué temas son más susceptibles de alucinación y, cuando trabajes con ellos, revisa la información constantemente para comprobar que todo va bien.
Si no es así, corrige a la IA o edita tu prompt incluyendo la información correcta para que el output generado sea semejante al anterior pero con los datos correctos.
Aprender a lidiar con las alucinaciones es, hoy en día, lo más importante a la hora de hacer trabajos útiles con la IA.
Cuando quieras resumir o simplificar, hazlo párrafo a párrafo
Salvo que quieras un hiper-resumen, lo mejor que puedes hacer para digerir mejor grandes textos es resumirlos o simplificarlos párrafo a párrafo (indicándole de cuántos quieres que sea el resumen).
De este modo, perderás mucha menos información, pero podrás consumir el texto mucho más rápido.
Aconsejo esto porque, de lo contrario, ChatGPT puede comerse demasiada información interesante.
Razónalo paso a paso… (Let’s think about this)
Este truquito ya funcionaba muy bien incluso en las IAs de Texto, cuando queríamos aprovechar el Chain of Thought para lograr que los resultados fueran más acertados.
Este truco funciona especialmente bien en temas de razonamiento. Te pongo un ejemplo:
Y ahora, aplicando este truco:
Como ves, para sacar el máximo partido a la capacidad de razonar de las IAs, esta forma de inducirle el Chain of Though está muy bien.
Pero también podemos aprovechar esta razonabilidad para conseguir otros resultados más dirigidos.
La idea es sencilla: Usamos el “Pensémoslo…” o “Pensémoslo detenidamente” y le añadimos modificadores que puedan darnos textos interesantes (“en profundidad”, “desde otro punto de vista”, “desde múltiples ángulos”, “como lo haría X persona”, “como lo harías en Y situación”, etc.)
Esto puede ayudarte a iterar un determinado output de múltiples formas.
Genera un índice antes de abordar un tema
Esta es una interesante evolución del punto anterior.
¿Y si antes de generar el texto que queramos le pedimos a la IA que genere un índice de los contenidos que debería tener el texto?
El resultado es bastante impresionante:
DISCLAIMER: Aquí bancamos fuerte a los PPP.
No es una persona. No hace falta ser cortés
Estás hablando con una IA de Diálogo que genera tokens en base a tokens anteriores. No tiene sentimientos, por más que, en ocasiones, te engañe y te haga creer que sí. No es consciente. No es una mascota. No es una persona.
Es una máquina.
Es un programa.
Y, aunque hay gente que le da las gracias a Google cuando hace una búsqueda, lo cierto es que no es un buen enfoque.
Ser cortés con la IA, dándole las gracias, pidiéndole las cosas por favor, metiendo por ahí prompts inútiles que demuestren que eres una buena persona, etc. no generará mejores resultados. Los generará peores.
Piensa que estás contaminando la conversación con información irrelevante.
Para que la IA dé la mejor respuesta, debes guiarla desde el punto A al B sin posibilidad de que se distraiga. Es decir, debes dar instrucciones claras, concisas, prácticas y bien dirigidas. Todo texto inútil que metas (y esto incluye las formas de cortesía) te aleja de conseguir el resultado deseado.
Crea tu propia librería de funciones (si las usas)
En el apartado de “Prompteando como si programases”, en la lección de Prompting en IAs de Diálogo, hemos visto diferentes tipos de variables y funciones que podemos usar para sacar el máximo partido a las IAs de Diálogo.
Pues bien, no todo el mundo va a hacer uso de esa posibilidad, pero, si tú sí vas a hacerlo, mi recomendación es que te crees tu propia librería de funciones para poder copypastearlas y usarlas con facilidad en tus conversaciones con ChatGPT o Bing.
Si te acostumbras a hacerlo, podrás aumentar x10 la productividad que te aporta la IA de Diálogo (que ya de por sí te aumenta x10 la productividad que tenías antes de tener estas IAs).
Más de 3000 orangotanes ya reciben mis emails
Suscríbete a la Niusleta de Joseo20.
Yo sí mando spam. Cuando tengo que vender, vendo. El resto de tiempo envío emails con temas que considero interesantes.
Hablo de todo lo que me sale de los cojones, no sólo de marketing o negocios. Hay política, filosofía y otras gilipolleces.
Es probable que después de leerla me odies.
Incluye orangotanes.
Deja un comentario
Lo siento, debes estar conectado para publicar un comentario.