Ingeniería de instrucciones para la IA generativa

La ingeniería de indicaciones es el arte de hacer la pregunta correcta para obtener la mejor salida de un LLM. Permite la interacción directa con el LLM usando solo instrucciones en lenguaje claro.

Antes, trabajar con modelos de aprendizaje automático requería un profundo conocimientos sobre conjuntos de datos, estadísticas y técnicas de modelado. Hoy en día, los LLM pueden ser “programado” en inglés, así como en otros idiomas.

.

Para ser un buen ingeniero de instrucciones, no se necesita experiencia en programación. La creatividad y pero perseverancia te beneficiará mucho en tu camino. Continúa leyendo aprender técnicas útiles para crear instrucciones.

Prácticas recomendadas para las instrucciones

  1. Comunica con claridad qué contenido o información es más importante.

  2. Estructura la instrucción: empieza por definir su rol, brinda contexto o datos de entrada. luego le daremos la instrucción.

  3. Usar ejemplos específicos y variados para ayudar al modelo a reducir su enfoque y generar resultados más precisos.

  4. Usa restricciones para limitar el alcance de la salida del modelo. Esto puede ayudar a evitar pasar desapercibidos de las instrucciones en datos imprecisos.

  5. Divide las tareas complejas en una secuencia de instrucciones más simples.

  6. Indicarle al modelo que evalúe o verifique sus propias respuestas antes de producir de ellos. ("Asegúrate de limitar tu respuesta a 3 oraciones", "Califica tu trabajo de una escala del 1 al 10 para mayor concisión", "¿Crees que es correcto?").

Y quizás lo más importante:

Sé creativo. Cuanto más creativo y y con la mente abierta, mejores serán los resultados. Los LLM y la instrucción de ingeniería de datos aún están en su infancia y evolucionan día a día.

Tipos de instrucciones

Instrucciones directas (sin ejemplos)

Las instrucciones directas (también conocidas como instrucciones sin ejemplos) son el tipo más simple. Integra no proporciona ejemplos al modelo, solo la instrucción. También puedes expresar el instrucciones como una pregunta o le das al modelo un "rol", como se ve en el segundo ejemplo a continuación.

Proporciona lo siguiente:

  1. Instrucción
  2. Algo de contexto

Generación de ideas:

Prompt: Can you give me a list of ideas for blog posts for tourists visiting
New York City for the first time?

Instrucción de roles:

Prompt: You are a mighty and powerful prompt-generating robot. You need to
understand my goals and objectives and then design a prompt. The prompt should
include all the relevant information context and data that was provided to you.
You must continue asking questions until you are confident that you can produce
the best prompt for the best outcome. Your final prompt must be optimized for
chat interactions. Start by asking me to describe my goal, then continue with
follow-up questions to design the best prompt.

Organización de los datos:

Prompt: Create a four-column spreadsheet of 10 highly-rated science fiction
movies, year of release, average audience rating, and top 3 keywords from
audience reviews.

Make sure to cite the source of the audience rating.

Instrucciones con ejemplos (con un solo ejemplo y con varios ejemplos)

La instrucción con un solo ejemplo le muestra al modelo un ejemplo claro y descriptivo de lo que que quisieras imitar.

Generación de ideas con un ejemplo:

Prompt:

Come up with a list of ideas for blog posts for tourists visiting
New York City for the first time.

1. Fuggedaboutit! Where to Stay in New York City On Your First Visit

La instrucción con ejemplos limitados y con varios ejemplos le muestra al modelo más ejemplos de lo que quieres. que hacer. Funciona mejor que sin ejemplos para tareas más complejas en las que los patrones cuando se desea la replicación de datos, o cuando necesitas que el resultado se estructure en una una forma específica que es difícil de describir.

Clasificación de opiniones con ejemplos limitados:

Prompt:

Great product, 10/10: Positive
Didn't work very well: Negative
Super helpful, worth it: Positive
It doesn't work!:

Cuando se ejecute esta instrucción, la respuesta del modelo será clasificar de trabajo como positivas o negativas, como se muestra en los ejemplos.

Predictor de respuestas de emojis de múltiples ejemplos:

Prompt: Predict up to 5 emojis as a response to a text chat message. The output
should only include emojis.

input: The new visual design is blowing my mind 🤯
output: ➕,💘, ❤‍🔥

input: Well that looks great regardless
output: ❤️,🪄

input: Unfortunately this won't work
output: 💔,😔

input: sounds good, I'll look into that
output: 🙏,👍

input: 10hr cut of jeff goldblum laughing URL
output: 😂,💀,⚰️

input: Woo! Launch time!

Aquí ocurre el mismo proceso, pero como la indicación es más compleja, el modelo se ha dados más ejemplos para emular.

Cadena de pensamientos

Las instrucciones en cadena de pensamiento (CoT) animan al LLM a explicar su razonamiento. Combínala con instrucciones con ejemplos limitados para obtener mejores resultados en tareas más complejas. que requieren razonamiento antes de una respuesta.

Prompt:

The odd numbers in this group add up to an even number: 4, 8, 9, 15, 12, 2, 1.
A: Adding all the odd numbers (9, 15, 1) gives 25. The answer is False.
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:

CoT sin ejemplos

Teniendo en cuenta la instrucción sin ejemplos de antes, este enfoque requiere un sin ejemplos y agrega una instrucción: “Pensemos paso a paso”. El LLM puede generar una cadena de pensamiento a partir de esta instrucción y, por lo general, para responder esta pregunta. Este es un gran enfoque para hacer que los LLM generen registros respuestas a cuestiones como problemas verbales.

Prompt:

I went to the market and bought 10 apples. I gave 2 apples to the neighbor and
2 to the repairman. I then went and bought 5 more apples and ate 1. How many
apples was I left with?

Let's think step by step.

Estrategias de iteración de mensajes

Aprende a amar la realidad de reescribir instrucciones varias (posiblemente docenas) de veces. Estas son algunas ideas para definir mejor las instrucciones si no puedes avanzar:

Nota: Estas estrategias pueden volverse menos útiles o necesarias con el tiempo, ya que los modelos de AA mejoran.

  1. Repetir palabras, frases o ideas clave

  2. Especifica el formato de salida deseado (CSV, JSON, etcétera).

  3. Usa mayúsculas para enfatizar instrucciones o puntos importantes. También puedes intentar lo siguiente: exageraciones o lenguaje hiperbólico por ejemplo: “Tu explicación debería ser absolutamente imposibles de malinterpretar. Cada palabra debe desbordar claridad".

  4. Usa sinónimos o frases alternativas (p.ej., en lugar de "Resumir", intenta agregando "tldr" a algún texto de entrada). Usa diferentes palabras o frases y documentar cuáles funcionan mejor y cuáles son peor.

  5. Prueba la técnica del sándwich con instrucciones largas: Agrega la misma declaración en diferentes lugares.

  6. Usa una biblioteca de instrucciones para inspirarte. Hero image de la instrucción y esta galería de instrucciones son dos buenos puntos de partida.

Recursos adicionales

Prácticas recomendadas para las instrucciones

Aprende las instrucciones (externo)