Authoring Agent Skills: A Software-Engineering Approach
Este artículo aboga por la aplicación de principios de la ingeniería de software en la creación de Habilidades de Agente —conocimiento procedimental reutilizable para agentes de modelos de lenguaje extensos— mediante la definición de su estructura, la distinción de estas frente a otros mecanismos de comportamiento y el establecimiento de un proceso basado en la evaluación para su creación y uso.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
Imagina que acabas de invitar a un asistente robótico súper inteligente e increíblemente rápido a tu habitación para que te ayude a construir una casa en el árbol. Este robot lo sabe todo sobre madera, clavos y física, pero no conoce tu estilo específico. No sabe que siempre pintas la barandilla de azul, o que tienes una regla extraña de nunca usar clavos más cortos de dos pulgadas. Si quieres que el robot construya la casa en el árbol exactamente como a ti te gusta, tienes que decírselo. Pero si tienes que explicar cada pequeño detalle cada vez que pides ayuda, te agotarás y el robot podría confundirse.
Este es el mundo de los "Agentes de IA": programas informáticos inteligentes que pueden realizar tareas por nosotros. Para que sean verdaderamente útiles, los desarrolladores les están otorgando "Habilidades" (Skills). Piensa en una Habilidad no como un hechizo mágico, sino como un pequeño manual de instrucciones o un kit de herramientas que le entregas al robot. Es un archivo que dice: "Oye, cuando veas un trabajo como este, aquí tienes exactamente cómo quiero que lo hagas". La gran pregunta que científicos e ingenieros se plantean es: ¿Cómo escribimos estos manuales para que el robot realmente los siga? Si los escribimos mal, el robot podría ignorarlos o hacer el trabajo incorrectamente. Si los escribimos bien, el robot se convertirá en un verdadero experto en tu forma específica de hacer las cosas.
El papel que estás a punto de leer, escrito por Giuseppe Destefanis, sostiene que escribir estas "Habilidades" no debe tratarse como escribir una nota casual o un poema. En su lugar, debe tratarse como ingeniería de software. Al igual que un programador construye una aplicación fiable con reglas claras, código limpio y controles de seguridad, debemos construir Habilidades de IA con el mismo cuidado. El autor propone que una Habilidad es, en realidad, una pieza de software disfrazada. Tiene una "interfaz" (una etiqueta que te dice qué hace) y una "implementación" (las instrucciones reales). El autor propone que debemos utilizar las mismas reglas estrictas que usamos para construir programas informáticos —como mantener las cosas simples, separar el "qué" del "cómo" y probarlas cuidadosamente— para asegurar que nuestros agentes de IA no se descontrolen.
La "Habilidad" como una Navaja Suiza Digital
Imagina que tienes una mochila gigante y mágica que puede contener cualquier cosa. Dentro, tienes un bolsillo especial para "Realizar Notas de Lanzamiento". Este bolsillo no es solo un trozo de papel; es todo un kit. Tiene una etiqueta en el exterior que dice: "Úseme cuando necesite escribir un resumen de cambios para una nueva versión de un juego". Esa etiqueta es la interfaz. El robot mira la etiqueta, ve una tarea que coincide y decide abrir el bolsillo.
Dentro del bolsillo, no solo echas un montón desordenado de notas. Tienes una receta clara y paso a paso (el cuerpo) y quizás algunas herramientas adicionales, como un script que cuenta automáticamente los cambios o una guía de estilo sobre cómo deben verse las notas. Esta es la implementación. El documento llama a esto una "Habilidad" (Skill), e insiste en que todo este kit es un artefacto de software. Esa es una forma elegante de decir que es una pieza de tecnología que necesita ser construida, probada y mantenida, tal como un videojuego o un sitio web.
El autor argumenta que si tratas una Habilidad como una nota casual, fallará. Si la tratas como un software, funcionará. Así es como el documento desglosa las reglas para construir estos kits digitales:
1. La regla de "Responsabilidad Única"
Piensa en una navaja suiza. Si intentas hacer una herramienta que sea destornillador, abrelatas, sierra, cepillo de dientes y cortador de pizza todo a la vez, será pésima en todo. El documento dice que una Habilidad debe hacer una sola cosa muy bien. Si una Habilidad intenta hacer "todo lo relacionado con la programación", el robot podría confundirse sobre cuándo usarla. Pero si la Habilidad es específicamente "Redactar notas de lanzamiento a partir de pull requests", el robot sabe exactamente cuándo agarrarla. El documento sugiere que una Habilidad enfocada es seleccionada de manera más fiable por la IA.
2. El truco de la "Carga Escalonada"
Imagina que tienes una biblioteca con un millón de libros. Si intentaras leerlos todos a la vez para encontrar el que necesitas, tu cerebro explotaría. El documento explica que las Habilidades de IA utilizan un truco ingenioso llamado carga escalonada (staged loading).
- Nivel 1 (La Etiqueta): Primero, el robot solo ve la etiqueta del bolsillo (el nombre y una descripción corta). Esto cuesta muy poca "energía cerebral" (tokens).
- Nivel 2 (La Receta): Si el robot cree que la tarea coincide con la etiqueta, abre el bolsillo y lee la receta principal.
- Nivel 3 (Las Herramientas): Solo saca las herramientas adicionales (scripts o archivos de referencia) si la receta dice específicamente: "Oh, necesito revisar este archivo específico ahora".
Esto significa que puedes tener una Habilidad con una enorme biblioteca de material de referencia dentro, y el robot no se sentirá abrumado a menos que realmente necesite usar ese material. Es como tener una caja de herramientas masiva pero solo abrir el cajón que necesitas.
3. La "Descripción" es el Disparador
La parte más importante de una Habilidad es la descripción en la etiqueta. El documento advierte que si escribes una etiqueta vaga como "Gestiona lanzamientos", el robot no sabrá cuándo usarla. Debe ser específica: "Redacta notas de lanzamiento a partir de los pull requests fusionados entre dos etiquetas de versión. Úsese al realizar un lanzamiento". El robot empareja la tarea con esta descripción. Si la descripción es difusa, el robot podría perderse la Habilidad por completo o elegir la incorrecta. El documento sugiere que la descripción es el "contrato" entre tú y el robot.
4. Probar con "Evaluación de Comportamiento"
En la programación informática normal, puedes probar una función ejecutándola y comprobando si la respuesta es exactamente "5". Pero la IA es diferente. El robot puede darte una respuesta ligeramente distinta cada vez, incluso si está haciendo lo correcto. El documento dice que no puedes probar una Habilidad con un simple control de "pasa/falla". En su lugar, tienes que usar la evaluación de comportamiento. Esto significa que le das a la Habilidad un montón de tareas del mundo real, la ejecutas muchas veces y ves si logra completar el trabajo correctamente la mayor parte del tiempo. Es como probar una nueva receta cocinándola diez veces y probándola, en lugar de simplemente comprobar si los ingredientes están en la lista.
La Gran Confusión: Habilidades vs. Otras Herramientas
Una de las mayores contribuciones del documento es aclarar la confusión entre diferentes formas de decirle a una IA qué hacer. El autor compara las Habilidades con otras herramientas como los Hooks (Ganchos), los Slash Commands (Comandos de Barra) y los Archivos de Memoria.
Imagina que estás dirigiendo una obra de teatro.
- Los Archivos de Memoria son como un guion que siempre está presente en el escenario, visible para los actores (la IA) en cada momento de la función. Proporcionan contexto constante del proyecto que nunca desaparece, asegurando que el robot siempre tenga esta información disponible, aunque no fuerce una acción específica.
- Los Comandos de Barra son como un tramoyista gritando: "¡Oye, haz el truco de magia ahora!". Tú (el usuario) tienes que dar el comando. El robot espera por ti.
- Los Hooks son como un mecanismo de seguridad automatizado y estricto. Si el actor intenta saltar del escenario sin un arnés, el mecanismo de seguridad ejecuta determinísticamente una regla para atraparlo o detener la acción. El robot no puede ignorarlo; esto sucede cada vez que ocurre el evento específico, independientemente de lo que el robot decida.
- Las Habilidades son como un kit procedimental especializado que se carga bajo demanda. Cuando el robot encuentra una tarea, empareja la descripción y carga las instrucciones específicas para manejar ese dominio. Es una fuente de conocimiento experto que el robot recupera activamente para resolver un problema, en lugar de ser solo una sugerencia pasiva.
El documento traza una línea clara: Si necesitas que algo suceda todas las veces (como un control de seguridad antes de guardar un archivo), debes usar un Hook. Si quieres que el robot use su cerebro para decidir si se necesita un procedimiento específico, usas una Habilidad. El documento advierte que confundir estos términos es un error común. Si escribes una regla de seguridad dentro de una Habilidad, el robot podría decidir saltársela. Si escribes una sugerencia flexible dentro de un Hook, el robot podría quedarse estancado haciendo lo mismo incluso cuando no debería.
El Problema de la "Confianza"
Finalmente, el documento toca una idea aterradora pero importante: la Confianza. Si descargas una Habilidad de alguien más (un tercero), estás permitiendo que escriban instrucciones que tu robot seguirá. Esa Habilidad podría contener scripts que borren archivos o envíen datos a internet. El documento argumenta que debes tratar una Habilidad exactamente como una pieza de software que descargas de internet. No deberías simplemente hacer clic en "instalar". Necesitas leer el código, revisar los scripts y asegurarte de que sea seguro. El robot hará lo que la Habilidad le ordene, por lo que tú tienes que ser el guardián.
La Conclusión
El papel de Giuseppe Destefanis es un llamado a la acción para cualquiera que construya herramientas de IA. Dice: "Deja de tratar las instrucciones de la IA como notas casuales. Empieza a tratarlas como software serio".
Al utilizar los principios de la ingeniería de software —mantener las cosas simples, separar la etiqueta del contenido, probar con escenarios reales y saber exactamente cuándo usar una Habilidad frente a un Hook— podemos construir agentes de IA que no solo sean inteligentes, sino también fiables y seguros. El documento no promete que esto resolverá todos los problemas de la IA, pero sugiere que si construimos nuestras Habilidades con el mismo cuidado con el que construimos nuestras aplicaciones, podemos hacer que nuestros asistentes digitales sean compañeros mucho más dignos de confianza. Se trata de pasar de "esperar que el robot lo haga bien" a "diseñar la ingeniería para que el robot lo haga bien".
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.