La ingeniería es un concepto poderoso que puede utilizar para aumentar la efectividad de sus aplicaciones LLM. En este artículo, elaboro sobre las técnicas de ingeniería de contexto y cómo tener éxito con aplicaciones de IA utilizando una gestión de contexto efectiva. Por lo tanto, si está trabajando en aplicaciones de IA utilizando LLM, le recomiendo leer el contenido completo del artículo.
Primero escribí sobre el tema de la ingeniería del contexto En mi artículo: Cómo puede mejorar las LLM con la ingeniería de contextodonde discutí algunas técnicas de ingeniería de contexto y notas importantes. En este artículo, me expandro el tema discutiendo más técnicas de ingeniería de contexto y cómo hacer evaluaciones en su gestión de contexto.
Si aún no lo ha leído, le recomiendo que lea por primera vez Mi artículo inicial sobre ingeniería de contextoo puedes leer sobre Garantizar la confiabilidad en las aplicaciones LLM.
Tabla de contenido
Motivación
Mi motivación para escribir este artículo es similar a mi Último artículo sobre ingeniería de contexto. Los LLM se han vuelto increíblemente importantes en muchas aplicaciones desde el lanzamiento de CHATGPT en 2022. Sin embargo, los LLM a menudo no se utilizan a su máximo potencial debido a una mala gestión del contexto. La gestión adecuada del contexto requiere habilidades y técnicas de ingeniería de contexto, que es lo que discutiré en este artículo. Por lo tanto, si está trabajando en alguna aplicación que utilice LLM, le recomiendo tomar notas de este artículo e integrarlo en su propia aplicación.
Técnicas de ingeniería de contexto
En mi último artículo, discutí técnicas de ingeniería contextual como:
- Cero/pocos disparos
- TRAPO
- Herramientas (MCP)
Ahora explicaré más técnicas que son importantes para la gestión del contexto adecuada.
Estructuración rápida
Con una estructura rápida, me refiero a cómo se organiza su aviso. Un mensaje desordenado, por ejemplo, contendrá todo el texto sin descansos de línea, instrucciones repetitivas y seccionamiento poco claro. Consulte el ejemplo a continuación para obtener un mensaje estructurado correctamente, frente a un mensaje desordenado:
# unstructured prompt. No line breaks, repetitive instructions, unclear sectioning
"You are an AI assistant specializing in question answering. You answer the users queries in a helpful, concise manner, always trying to be helpful. You respond concisely, but also avoid single-word answers."
# structured prompt:
"""
## Role
You are an **AI assistant specializing in question answering**.
## Objectives
1. Answer user queries in a **helpful** and **concise** manner.
2. Always prioritize **usefulness** in responses.
## Style Guidelines
- **Concise, but not overly brief**: Avoid single-word answers.
- **Clarity first**: Keep responses straightforward and easy to understand.
- **Balanced tone**: Professional, helpful, and approachable.
## Response Rules
- Provide **complete answers** that cover the essential information.
- Avoid unnecessary elaboration or filler text.
- Ensure answers are **directly relevant** to the user’s question.
"""
La estructura rápida es importante por dos razones.
- Deja las instrucciones más claras para la IA
- Aumenta la legibilidad (humana) del aviso, que lo ayuda a detectar problemas potenciales con su aviso, evitar instrucciones repetitivas, etc.
Siempre debe tratar de evitar instrucciones repetitivas. Para evitar esto, recomiendo alimentar su aviso a otro LLM y pedir comentarios. Por lo general, recibirá un mensaje mucho más limpio, con instrucciones más claras. Antrópico también tiene un generador de inmediato En su tablero, y también hay muchas otras herramientas para mejorar sus indicaciones.
Gestión de ventanas de contexto
Otro punto importante a tener en cuenta es la gestión de las ventanas del contexto. Con esto, me refiero a la cantidad de tokens que está alimentando en su LLM. Es importante recordar que si bien los LLM recientes tienen ventanas de contexto súper largas (para examplio, Llama 4 Scout con una ventana de contexto de 10 m), no necesariamente pueden utilizar todas esas fichas. Puedes, por ejemplo, Lea este artículodestacando cómo los LLM funcionan peor con más tokens de entrada, incluso si la dificultad del problema sigue siendo la misma.
Por lo tanto, es importante administrar adecuadamente su ventana de contexto. Recomiendo centrarse en dos puntos:
- Mantenga el aviso lo más corto posible, mientras incluye toda la información relevante. Mire a través del mensaje y determine si hay algún texto irrelevante allí. Si es así, eliminarlo probablemente aumentará el rendimiento de LLM
- Es posible que esté experimentando problemas en los que el LLM se queda fuera de la ventana de contexto. Ya sea por el límite de tamaño de contexto duro, o porque demasiados tokens de entrada hacen que el LLM sea lento para responder. En estos casos, debe considerar compresión de contexto
Para el punto uno, es importante tener en cuenta que esta información irrelevante a menudo no forma parte de su mensaje de sistema estático, sino más bien la información dinámica que está alimentando en el contexto. Por ejemplo, si está obteniendo información utilizando RAG, debe considerar excluir fragmentos que tienen similitud por debajo de un umbral específico. Este umbral variará de la aplicación a la aplicación, aunque el razonamiento empírico aquí generalmente funciona bien.
La compresión del contexto es otra técnica poderosa que puede usar para administrar adecuadamente el contexto de su LLM. La compresión del contexto generalmente se realiza al incitar a otra LLM a resumir parte de su contexto. De esta manera, puede contener la misma información utilizando menos tokens. Este enfoque se utiliza, por ejemplo, para manejar la ventana de contexto de los agentes, que puede expandirse rápidamente a medida que el agente realiza más acciones.
Búsqueda de palabras clave (vs trapo)
Otro tema que creo que vale la pena destacar es utilizar la búsqueda de palabras clave, además de la generación de recuperación aumentada (RAG). En la mayoría de las aplicaciones de IA, el enfoque está en el trapo, considerando que puede obtener información basada en la similitud semántica.
La similitud semántica es súper poderosa porque en muchos casos, el usuario no sabe la redacción exacta de lo que está buscando. La búsqueda de similitud semántica funciona muy bien. Sin embargo, en muchos casos, la búsqueda de palabras clave también funcionará súper bien. Por lo tanto, recomiendo integrar una opción para obtener documentos utilizando algún tipo de búsqueda de palabras clave, además de su trapo. La búsqueda de palabras clave, en algunos escenarios, recuperará documentos más relevantes que RAG.
Anthrope destacó este enfoque con su artículo sobre recuperación contextual de septiembre de 2024. En este artículo, le muestran cómo puede utilizar BM25 para obtener información relevante en su sistema RAG de manera efectiva.
Evaluación
La evaluación es una parte importante de cualquier sistema de aprendizaje automático. Si no sabe qué tan bien están funcionando sus LLM, es difícil mejorar su sistema.
El primer paso para la evaluación es la observabilidad. Por lo tanto, recomiendo implementar un software de gestión rápida. Puedes encontrar una serie de tales herramientas en Esta página de Github.
Una forma de evaluar su gestión del contexto es realizar pruebas A/B. Simplemente ejecute dos versiones diferentes de un aviso, utilizando diferentes técnicas de gestión del contexto. Luego, puede, por ejemplo, recopilar comentarios de los usuarios para determinar qué enfoque funciona mejor. Otra forma de probarlo es provocar un LLM con el problema que está tratando de resolver (por ejemplo, trapo) y el contexto que está utilizando para responder la consulta de RAG. El LLM puede proporcionarle comentarios sobre cómo mejorar su gestión del contexto.
Además, un enfoque subestimado para mejorar la calidad de los contextos es inspeccionarlos manualmente. Creo que muchos ingenieros que trabajan con LLM pasan muy poco tiempo en inspecciones manuales, y el análisis de los tokens de entrada alimentados en LLMS cae en esta categoría. Por lo tanto, recomiendo reservar tiempo para pasar por una serie de contextos diferentes que se alimentan en su LLM, para determinar cómo puede mejorar. La inspección manual le brinda la oportunidad de comprender adecuadamente los datos con los que está trabajando y con lo que está alimentando en sus LLM.
Conclusión
En este artículo, he elaborado el tema de la ingeniería del contexto. Trabajar en la ingeniería del contexto es un enfoque poderoso para mejorar su aplicación LLM. Hay una serie de técnicas que puede utilizar para administrar mejor el contexto de sus LLM, por ejemplo, mejorar su estructura rápida, la gestión adecuada de las ventanas de contexto, la búsqueda de la búsqueda de palabras clave y la compresión del contexto. Además, también discutí la evaluación de los contextos.
👉 Encuéntrame en Socials:
✍️ Medio