IA 360
GPT-4

OpenAI añade 'function calling': GPT-4 ya invoca herramientas

OpenAI ha introducido en su API la capacidad de que GPT-4 y GPT-3.5-turbo generen argumentos JSON para invocar funciones externas, un paso clave hacia los agentes que actúan sobre otros sistemas.

4 min de lectura Read in English

OpenAI ha anunciado hoy una actualización de su API que cambia la forma en que los desarrolladores conectan sus modelos con el resto del software: el "function calling" o llamada a funciones. A partir de ahora, GPT-4 y GPT-3.5-turbo pueden devolver, en lugar de texto libre, un objeto JSON con el nombre de una función y los argumentos necesarios para ejecutarla.

Qué cambia exactamente

Hasta ahora, si un desarrollador quería que un modelo de OpenAI consultara el tiempo, buscara un vuelo o insertara datos en una base de datos, tenía que pedirle una respuesta en texto y luego escribir código propio para intentar extraer de ahí los datos útiles, con el riesgo de errores de formato o interpretación. Es un proceso frágil: el modelo podía responder "hace unos 20 grados" en vez de un número limpio, o cambiar el formato de una llamada de una respuesta a otra.

Con la nueva función, el desarrollador describe a la API una o varias "funciones" disponibles: su nombre, una descripción en lenguaje natural y un esquema JSON con los parámetros que aceptan. El modelo, entrenado específicamente para esta tarea, decide durante la conversación si conviene invocar alguna de ellas y devuelve una respuesta estructurada y válida en JSON con los argumentos correspondientes. El propio desarrollador se encarga después de ejecutar la función real (llamar a una API externa, consultar una base de datos, correr un cálculo) y puede devolver el resultado al modelo para que continúe la conversación con esa información.

Nuevas versiones de los modelos

Junto al function calling, OpenAI ha publicado nuevas versiones fechadas de sus modelos de chat: gpt-4-0613, gpt-4-32k-0613, gpt-3.5-turbo-0613 y gpt-3.5-turbo-16k-0613. Esta última es especialmente relevante porque cuadruplica la ventana de contexto habitual de gpt-3.5-turbo, pasando de 4.000 a 16.000 tokens, lo que permite procesar documentos o conversaciones mucho más largas sin perder el hilo de lo dicho al principio.

OpenAI ha aprovechado también el anuncio para reducir precios en su API, tanto en los tokens de entrada de gpt-3.5-turbo como en su modelo de embeddings text-embedding-ada-002, utilizado para tareas de búsqueda semántica y clasificación de texto.

Por qué es una pieza fundacional

El function calling no es una función vistosa de cara al usuario final: es infraestructura para desarrolladores. Pero es la infraestructura que faltaba para construir de forma fiable lo que en el sector se empieza a llamar "agentes": sistemas que no solo conversan, sino que actúan sobre otros programas, consultan datos reales y ejecutan tareas. Proyectos como los primeros experimentos de agentes autónomos que circulan estos meses dependían hasta ahora de trucos frágiles para lograr que un modelo de lenguaje devolviera algo parecido a una instrucción ejecutable. OpenAI resuelve ese problema de raíz entrenando el propio modelo para hacerlo bien.

Las aplicaciones inmediatas son concretas: convertir preguntas en lenguaje natural en consultas a bases de datos, crear chatbots que consulten APIs de terceros (el tiempo, vuelos, inventarios), o extraer información estructurada de textos largos sin necesidad de reglas manuales de análisis de texto.

Qué implica para el ecosistema

La actualización llega en un momento en que decenas de empresas están construyendo productos sobre la API de OpenAI y necesitaban precisamente esto: una forma predecible de integrar los modelos con sus sistemas existentes. Al resolverlo desde el propio proveedor del modelo, OpenAI reduce buena parte del trabajo de ingeniería que hasta ahora recaía en cada desarrollador por separado, y previsiblemente marcará el estándar que otros proveedores de modelos de lenguaje tendrán que igualar.

OpenAI ha indicado además que las versiones anteriores, gpt-4-0314 y gpt-3.5-turbo-0301, seguirán disponibles durante un año antes de ser sustituidas por las nuevas, dando margen a los desarrolladores para migrar sus aplicaciones sin prisa.

Compartir este artículo

Este sitio web utiliza cookies para mejorar la experiencia de navegación. Política de cookies.