Diseñe las indicaciones más inteligentes y aumente la salida de su LLM: trucos reales de la caja de herramientas de un ingeniero de IA

pero buena indicación que proporciona salidas eficientes y confiables no lo es. A medida que los modelos de idiomas crecen en capacidad y versatilidad, obtener resultados de alta calidad depende más Cómo preguntas el modelo que el modelo en sí. Ahí es donde entra la ingeniería rápida, no como un ejercicio teórico, sino como un Experiencia práctica de día a día incorporada en entornos de producción, con miles de llamadas todos los días.

En este artículo, estoy compartiendo Cinco técnicas prácticas de ingeniería inmediata Utilizo casi todos los días para construir flujos de trabajo de IA de alto rendimiento estables y confiables. No son solo consejos sobre los que he leído, sino los métodos que he probado, refinado y confiado en los casos de uso del mundo real en mi trabajo.

Algunos pueden parecer contradictorio, otros sorprendentemente simples, pero todos han marcado una verdadera diferencia en mi competencia para obtener los resultados que espero de LLM. Vamos a sumergirnos.

Consejo 1 – Pídale al LLM que escriba su propio aviso

Esta primera técnica podría sentirse contradictoriopero es uno que uso todo el tiempo. En lugar de tratar de crear el aviso perfecto desde el principio, generalmente comienzo con un contorno aproximado de lo que quiero, luego le pido al LLM que Refina el aviso ideal para sí mismobasado en el contexto adicional que proporciono. Este estrategia de co-contratación permite la producción rápida de muy indicaciones precisas y efectivas.

El proceso general a menudo se compone de tres pasos:

  • Comience con la estructura general explicando tareas y reglas a seguir
  • Evaluación iterativa/refinamiento de la solicitud para que coincida con el resultado deseado
  • Integración iterativa de casos de borde o necesidades específicas

Una vez que el LLM propone un aviso, lo ejecuto en algunos Ejemplos típicos. Si los resultados están apagados, no solo modifico el aviso manualmente. En cambio, le pido al LLM que lo haga, preguntando específicamente para una corrección genéricacomo LLMS tiende a parchar las cosas de una manera demasiado específica de lo contrario. Una vez que obtengo la respuesta deseada para los más del 90 por ciento de los casos, generalmente la ejecuto en un lote de datos de entrada para analizar los casos de bordes que deben abordarse. Luego envío el problema al LLM que explica el problema al enviar la entrada y la salida, para ajustar iterativamente las indicaciones y obtener el resultado deseado.

Un buen consejo que generalmente ayuda mucho es para exigir que el LLM haga preguntas Antes de proponer modificaciones rápidas para asegurar que comprenda completamente la necesidad.

Entonces, ¿por qué funciona tan bien esto?

a. Inmediatamente está mejor estructurado.
Especialmente para tareas complejas, la LLM ayuda a estructurar el espacio de problemas de una manera que sea lógico y operacional. También me ayuda aclara mi propio pensamiento. Evito que me empantane en la sintaxis y me mantengo enfocado en resolver el problema en sí.

b. Reduce las contradicciones.
Debido a que el LLM está traduciendo la tarea en sus “propias palabras”, es mucho más probable que detecte la ambigüedad o las contradicciones. Y cuando lo hace, a menudo solicita una aclaración antes de proponer una formulación más limpia y libre de conflictos. Después de todo, ¿quién es mejor expresar un mensaje que el que está destinado a interpretarlo?

Piense en ello como comunicarse con un humano: una porción significativa de falta de comunicación proviene de interpretaciones diferentes. El LLM encuentra a veces algo poco claro o contradictorio que pensé que era perfectamente obvio … y al final, es el que hace el trabajo, por lo que es es interpretación que importa, no la mía.

do. Se generaliza mejor.
A veces lucho por encontrar una formulación clara y abstracta para una tarea. El LLM es sorprendentemente bueno en esto. Vea el patrón y produce un aviso generalizado que es más escalable y robusto para lo que podría producir yo mismo.

Consejo 2-Use la autoevaluación

La idea es simple, pero una vez más, muy poderosa. El objetivo es obligar a la LLM a autoevaluar la calidad de su respuesta antes de emitirlo. Más específicamente, lo pregunto para calificar su propia respuesta En una escala predefinida, por ejemplo, de 1 a 10. Si la puntuación está por debajo de cierto umbral (generalmente lo configuro en 9), le pido que cualquiera rever o mejorar La respuesta, dependiendo de la tarea. A veces agrego el concepto de “si puedes hacerlo mejor” para evitar un bucle interminable.

En la práctica, me parece fascinante que un LLM tiende a comportarse de manera similar a los humanos: a menudo va por la respuesta más fácil en lugar de la mejor uno. Después de todo, los LLM están entrenados en datos producidos por humanos y, por lo tanto, están destinados a replicar los patrones de respuesta. Por lo tanto, dándole un Estándar de calidad explícita Ayuda a mejorar significativamente el resultado final de salida.

Se puede utilizar un enfoque similar para un cheque de calidad final centrado en el cumplimiento de las reglas. La idea es pedirle al LLM que revise su respuesta y confirme si siguió una regla específica o todas las reglas antes de enviar la respuesta. Esto puede ayudar a mejorar la calidad de la respuesta, especialmente cuando una regla tiende a omitirse a veces. Sin embargo, en mi experiencia, este método es un poco menos efectivo que pedir un puntaje de calidad autoasignado. Cuando esto sea necesario, probablemente significa su aviso o su flujo de trabajo de IA necesita una mejora.

Consejo 3: use una estructura de respuesta más un ejemplo específico que combina formato y contenido

Usar ejemplos es una forma bien conocida y poderosa de mejorar los resultados … Mientras no te excedas. Un ejemplo bien elegido es a menudo más útil que muchas líneas de instrucción.

La estructura de respuesta, por otro lado, ayuda a definir exactamente cómo debe verse la salida, especialmente para tareas técnicas o repetitivas. Evita sorpresas y mantiene los resultados consistentes.

El ejemplo complementa esa estructura mostrando cómo llenarla con contenido procesado. Este combo «Estructura + Ejemplo» tiende a funcionar bien.

Sin embargo, los ejemplos son a menudo de texto pesadoy usar demasiados puede diluir las reglas más importantes o llevar a que sean seguidos de manera menos consistente. También aumentan el número de tokens, lo que puede causar efectos secundarios.

Por lo tanto, use ejemplos sabiamente: uno o dos ejemplos bien elegidos que cubren la mayoría de sus reglas esenciales o de borde suelen ser suficientes. Agregar más puede no valer la pena. También puede ayudar a agregar un explicación corta Después del ejemplo, justificar por qué coincide con la solicitud, especialmente si eso no es realmente obvio. Personalmente, rara vez uso ejemplos negativos.

Por lo general, doy uno o dos ejemplos positivos junto con una estructura general de la salida esperada. La mayoría de las veces elijo etiquetas XML como <open_tag></close_tag>. ¿Por qué? Porque es fácil de analizar y se puede utilizar directamente en los sistemas de información para el procesamiento posterior.

Dar un ejemplo es especialmente útil cuando la estructura está anidada. Deja las cosas mucho más claras.

## Here is an example

Expected Output :

<items>
    <item>
        <sub_item>
            <sub_sub_item>
                My sub sub item 1 text
            </sub_sub_item>
            <sub_sub_item>
                My sub sub item 2 text
            </sub_sub_item>
        </sub_item>
        <sub_item>
            My sub item 2 text
        </sub_item>
        <sub_item>
            My sub item 3 text
        </sub_item>
    </item>
    <item>
        <sub_item>
            My sub item 1 text
        </sub_item>
        <sub_item>
            <sub_sub_item>
                My sub sub item 1 text
            </sub_sub_item>
        </sub_item>
    </item>
</items>

Explanation :

Text of the explanation

Consejo 4 – Desglose tareas complejas en pasos simples

Este puede parecer obvio, pero es esencial para mantener una calidad de respuesta alta cuando se trata de tareas complejas. La idea es para dividir una gran tarea en varios pasos más pequeños y bien definidos.

Al igual que las luchas del cerebro humano cuando tiene que realizar múltiples tareas, los LLM tienden a producir respuestas de menor calidad cuando la tarea es demasiado amplia o implica demasiados objetivos diferentes a la vez. Por ejemplo, si le pido que calcule 125 + 47, entonces 256 – 24 y finalmente 78 + 25, uno tras otro, esto debería estar bien (con suerte :)). Pero si le pido que me dé las tres respuestas de un solo vistazo, la tarea se vuelve más compleja. Me gusta pensar que los LLM se comportan de la misma manera.

Entonces, en lugar de pedirle a un modelo que haga todo en uno, como revisando un artículo, traducirlo y formatearlo en HTML, prefiero dividir el proceso en dos o tres pasos más simples, cada uno manejado por un mensaje separado.

La principal desventaja de este método es que agrega cierta complejidad a su código, especialmente cuando se pasa información de un paso a otro. Pero marcos modernos como Langchainque personalmente amo y uso cada vez que tengo que lidiar con esta situación, hacer que este tipo de gestión de tareas secuencial sea muy fácil de implementar.

Consejo 5 – Pregúntele a la LLM para explicación

A veces, es difícil de entender por qué El LLM dio una respuesta inesperada. Es posible que comience a hacer conjeturas, pero el enfoque más fácil y confiable podría simplemente pedirle al modelo que explique su razonamiento.

Algunos podrían decir que la naturaleza predictiva de LLM no permite que LLM realmente explique su razonamiento porque simplemente lo hace no razón pero mi experiencia muestra que:

1- la mayoría de las veces, es efectivamente describir Una explicación lógica que produjo su respuesta

2- Hacer una modificación rápida de acuerdo con esta explicación generalmente corrige la respuesta incorrecta de LLM.

Por supuesto, esta no es una prueba de que el LLM es realmente razonamiento, y No es mi trabajo probar estopero puedo afirmar que esta solución funciona muy bien en Pratice para la optimización inmediata.

Esta técnica es especialmente útil durante el desarrollo, la preproducción o incluso las primeras semanas después de ir en vivo. En muchos casos, es difícil anticipar todos los casos de borde posibles en un proceso que se basa en una o varias llamadas LLM. Ser capaz de entender por qué El modelo produjo una determinada respuesta lo ayuda a diseñar la solución más precisa posible, una que resuelva el problema sin causar efectos secundarios no deseados en otros lugares.

Conclusión

Trabajar con LLM es un poco como trabajar con un interno genio, increíblemente rápido y capaz, pero a menudo desordenado y ir en todas las direcciones si no le dice claramente lo que espera. Obtener lo mejor de un interno requiere instrucciones claras y un poco de experiencia en gestión. Lo mismo ocurre con los LLM para los cuales La solicitud inteligente y la experiencia marcan la diferencia.

Las cinco técnicas que he compartido anteriormente no son “trucos de magia” sino métodos prácticos Uso diariamente para ir más allá de los resultados genéricos obtenido con la técnica de solicitación estándar y obtener las de alta calidad que necesito. Consistentemente me ayudan a convertir las salidas correctas en grandes. Ya sea que se trate de forma conjunta con el modelo, rompa tareas en piezas manejables o simplemente solicite al LLM por qué Una respuesta es lo que es Estas estrategias se han convertido en herramientas esenciales en mi trabajo diario para elaborar los mejores flujos de trabajo de IA que pueda.

La ingeniería rápida no se trata solo de escribir instrucciones claras y bien organizadas. Se trata de comprender cómo el modelo interpreta ellos y diseñando su enfoque en consecuencia. La ingeniería rápida es de alguna manera como una especie de arte, uno de matices, delicadeza y estilo personal, donde no hay dos diseñadores de inmediato escriben las mismas líneas que resulta en diferentes resultados en términos de fuerza y ​​debilidades. Después de todo, una cosa se mantiene cierta con LLM: Cuanto mejor hables con ellos, mejor funcionarán para ti.