Llamadas a herramientas
Ahora que comprendes cómo funciona el contexto, veamos cómo los modelos de IA pueden hacer más que generar texto. También pueden realizar acciones y obtener información de forma dinámica mediante llamadas a herramientas.
¿Recuerdas que comparamos los modelos de IA con endpoints de API? Las llamadas a herramientas son como darles a esos modelos la capacidad de llamar ellos mismos a otras API. Es como si el modelo de IA pudiera aprender nuevas skills.
Déjame darte una analogía. Imagina que ayudas a un amigo a preparar la cena por teléfono. Puedes darle instrucciones basándote en lo que sabes, pero no puedes ver qué hay en su refrigerador ni probar la comida que está preparando.
Ahora imagina que tu amigo te envía fotos del contenido de su refrigerador o te dice la temperatura exacta de su horno. De repente, puedes darle consejos mucho mejores porque tienes acceso a información en tiempo real. Eso es, en esencia, lo que las llamadas a herramientas permiten hacer a los modelos de IA.
Cómo funcionan las llamadas a herramientas
Cuando los desarrolladores crean aplicaciones de IA, pueden definir "herramientas" específicas que el modelo de IA puede usar. Estas herramientas son como habilidades especiales que amplían las Capacidades del modelo más allá de pensar y responder con texto.
¡Probablemente ya hayas usado llamadas a herramientas sin darte cuenta! Cuando le pides a ChatGPT que genere una imagen, busque en la web o ejecute código, está usando herramientas entre bastidores.
Esto es lo que sucede internamente:
- El modelo de IA recibe tu solicitud y determina que necesita Capacidades adicionales
- Genera una respuesta especial en JSON (un formato de datos estructurados) que especifica qué herramienta usar y qué Parámetros pasar
- La aplicación ejecuta esa herramienta y devuelve los resultados
- El modelo de IA incorpora esos resultados a su contexto y continúa la conversación
Por qué las herramientas son importantes para programar
Al desarrollar software, las herramientas son increíblemente potentes porque permiten al modelo de IA:
- Leer y escribir archivos en tu base de código
- Buscar en el código para encontrar funciones o patrones relevantes
- Ejecutar comandos de shell para probar código o instalar paquetes
- Acceder a la documentación o buscar información actualizada en la web
- Comprobar si hay errores ejecutando linters o pruebas
Sin herramientas, el modelo de IA se limitaría a la información que proporcionas explícitamente en el contexto. Con ellas, puede explorar e interactuar activamente con tu base de código.
¿Qué incluye una llamada a una herramienta?
Cada herramienta tiene tres componentes principales:
- Un nombre, como
read_fileosearch_web - Una descripción que indica al modelo cuándo y cómo usar la herramienta
- Parámetros, que son las entradas que la herramienta necesita para funcionar
Aquí tienes un ejemplo de cómo podría ser una definición de herramienta:
{ "name": "read_file", "description": "Read the contents of a file from the codebase", "parameters": { "filepath": "The path to the file to read" }}Cuando el modelo de IA quiere usar esta herramienta, genera una respuesta como esta:
{ "tool": "read_file", "parameters": { "filepath": "src/components/Button.tsx" }}Luego, la aplicación lee ese archivo y añade su contenido al contexto de la conversación, lo que permite al modelo entender tu componente Button y sugerir cambios relevantes.
¿Cuáles son las partes principales de una definición de herramienta?
Select all that applyEl coste de las herramientas
¿Recuerdas que hablamos de los tokens y los precios? Las llamadas a herramientas consumen tokens de dos maneras:
- Las definiciones de herramientas se incluyen en el contexto de entrada (normalmente unos cientos de tokens por herramienta)
- Los resultados de las herramientas se añaden al contexto de salida (varía según lo que devuelva la herramienta)
Esto significa que las conversaciones que usan mucho las herramientas llenarán la ventana de contexto más rápido y costarán más. Pero normalmente compensa, porque la IA puede ser mucho más útil con acceso a información en tiempo real.
Cuando se realizan llamadas a herramientas, los modelos de IA vuelven a evaluar el contexto hasta la propia llamada a la herramienta. En herramientas como Cherri Code, esto significa que verás un mayor consumo de tokens de entrada almacenados en caché, ya que reenviamos el contexto al modelo.
¿De qué dos maneras afectan las llamadas a herramientas al consumo de tokens?
Select all that applyMás allá de las herramientas integradas
Recientemente se creó un nuevo estándar llamado MCP (Model Context Protocol). Piensa en él como una forma universal para que los modelos de IA usen e integren herramientas en distintas aplicaciones.
Al igual que USB se convirtió en un estándar para conectar dispositivos a computadoras, MCP aspira a ser un estándar para conectar herramientas con modelos de IA. Esto significa que los desarrolladores pueden crear herramientas una vez y hacer que funcionen en muchas aplicaciones de IA diferentes.
Por ejemplo, puedes usar MCP para conectarte a Figma y acceder a archivos de diseño, a Linear para consultar y gestionar problemas, o incluso a una base de datos para consultar tus datos directamente. También puedes crear tus propios servidores MCP para integrarlos con herramientas internas y API.
Ahora que entiendes las llamadas a herramientas, veamos qué sucede cuando permitimos que los modelos de IA usen varias herramientas en secuencia. Ahí es donde las cosas se ponen interesantes con los agentes.