Capacidad de los LLMs para generar llamadas estructuradas a funciones externas basándose en lenguaje natural, habilitando la integración con APIs, bases de datos y herramientas del mundo real.
Function calling es la capacidad de un LLM para decidir cuándo invocar una función externa y generar los argumentos necesarios en formato estructurado (típicamente JSON). El modelo no ejecuta la función — genera la especificación de la llamada que el sistema anfitrión ejecuta.
Esta capacidad transforma a los LLMs de generadores de texto a orquestadores de acciones.
Usuario: "¿Qué clima hace en Madrid?"
Modelo genera:
{
"function": "get_weather",
"arguments": { "city": "Madrid", "units": "celsius" }
}
Sistema ejecuta get_weather("Madrid", "celsius") → "18°C, parcialmente nublado"
Modelo responde: "En Madrid hace 18°C con cielo parcialmente nublado."
import anthropic
client = anthropic.Anthropic()
tools = [{
"name": "get_weather",
"description": "Obtiene el clima actual de una ciudad",
"input_schema": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "Nombre de la ciudad"},
"units": {"type": "string", "enum": ["celsius", "fahrenheit"]}
},
"required": ["city"]
}
}]
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=1024,
tools=tools,
messages=[{"role": "user", "content": "¿Qué clima hace en Madrid?"}]
)
# response.content incluye un bloque tool_use con name y input| Característica | OpenAI | Anthropic | Gemini | Bedrock |
|---|---|---|---|---|
| Llamadas paralelas | Sí | Sí | Sí | Depende del modelo |
| Streaming de herramientas | Sí | Sí | Sí | Sí |
| Modo forzado | tool_choice: required | tool_choice: any | Configuración de modo | Vía toolChoice |
| Formato de esquema | JSON Schema | JSON Schema | Protobuf o JSON | JSON Schema |
La calidad de las descripciones de funciones determina la precisión del modelo:
search_knowledge_base es mejor que search"enum": ["celsius", "fahrenheit"] en lugar de "type": "string"El Model Context Protocol estandariza cómo los modelos descubren y llaman herramientas. Function calling es el mecanismo subyacente; MCP es el protocolo que lo hace interoperable entre diferentes sistemas.
Function calling es el mecanismo que convierte a los LLMs de generadores de texto en agentes que interactúan con el mundo real. Sin él, los modelos solo pueden responder con texto. Con él, pueden consultar bases de datos, llamar APIs y ejecutar acciones concretas.
Sistemas autónomos que combinan modelos de lenguaje con razonamiento, memoria y uso de herramientas para ejecutar tareas complejas de múltiples pasos con mínima intervención humana.
Protocolo abierto creado por Anthropic que estandariza cómo las aplicaciones de IA se conectan con herramientas, datos y servicios externos mediante una interfaz universal.
Redes neuronales masivas basadas en la arquitectura Transformer, entrenadas con enormes corpus de texto para comprender y generar lenguaje natural con capacidades emergentes como razonamiento, traducción y generación de código.
Patrones de diseño donde agentes de IA ejecutan tareas complejas de múltiples pasos de forma autónoma, combinando razonamiento, uso de herramientas y toma de decisiones iterativa.
Crónica de construir un segundo cerebro con grafo de conocimiento, pipeline bilingüe y endpoints para agentes — en días, no semanas, y lo que eso enseña sobre la brecha entre teoría y sistemas que funcionan.
Estrategias y patrones de diseño para que los agentes de IA seleccionen, invoquen y combinen herramientas externas de forma efectiva para completar tareas complejas.
Técnica de prompting que mejora el razonamiento de los LLMs al pedirles que descompongan problemas complejos en pasos intermedios explícitos antes de llegar a una conclusión.
Patrones y frameworks para coordinar múltiples modelos de IA, herramientas y fuentes de datos en pipelines de producción, gestionando el flujo entre componentes, la memoria y la recuperación de errores.