Saltar al contenido principal
Glosario intermedio Function CallingOpenAIAPI

Function Calling: qué es

Capacidad de un LLM para devolver JSON estructurado que dispara una funcion de tu codigo en vez de texto libre.

· 1 min · 140 palabras

Definición rápida

Capacidad de un LLM para devolver JSON estructurado que dispara una funcion de tu codigo en vez de texto libre.

En este término

Que es Function Calling?

Defines funciones con JSON Schema y el modelo devuelve tool_calls en vez de texto. Tu ejecutas y reinyectas el resultado.

import OpenAI from 'openai';
const openai = new OpenAI();
const tools = [{ type: 'function', function: {
  name: 'create_issue', description: 'Crea ticket en Jira',
  parameters: { type: 'object', properties: { title: {type:'string'}, priority:{type:'string', enum:['low','high']} }, required:['title'] }
}}];
const r = await openai.chat.completions.create({
  model: 'gpt-4o-mini', messages: [{role:'user', content:'Crea bug critico por login roto'}],
  tools, tool_choice: 'auto', temperature: 0
});
if (r.choices[0].message.tool_calls) {
  const args = JSON.parse(r.choices[0].message.tool_calls[0].function.arguments);
  await jira.create(args);
}

Cuando usarlo

Pasarela lenguaje->codigo: reservas, emails, CRUD. 1-2 funciones -> function calling basta. 20+ -> MCP.

Errores comunes

  • No validar con Zod: priority:'urgent' rompe DB.
  • tool_choice:'required' siempre fuerza llamada.
  • Olvidar parallel_tool_calls.

Duda sobre Function Calling? Escribeme por LinkedIn.

Preguntas frecuentes

Function calling es fiable?

Si si validas con Zod. Nunca ejecutes sin validar.

Cuanto cuesta?

Mismo precio que respuesta normal, ahorras tokens.

¿Necesitas desarrollo a medida?

Apps web, IA, módulos ERP — cuéntame tu proyecto.