Apps y APIs de IA: ¿Por qué no se conectan?
En un panorama digital en rápida evolución, los bots impulsados por inteligencia artificial recorren cada vez más internet, buscando diligentemente e intentando interactuar con las Interfaces de Programación de Aplicaciones (API). Si bien algunos de estos exploradores automatizados albergan intenciones maliciosas, un número significativo y creciente son consumidores bienintencionados que se esfuerzan por descubrir, utilizar y beneficiarse de las API existentes. Estas solicitudes frecuentemente se originan en plataformas impulsadas por el Protocolo de Contexto del Modelo (MCP), diseñadas para permitir que el software autónomo interactúe directamente con las API web.
A pesar de su naturaleza sofisticada, estos clientes de IA, en muchos aspectos, están teniendo dificultades. Las estadísticas recientes pintan un panorama desafiante: la tasa de éxito para los flujos de trabajo de API de múltiples pasos impulsados por IA ronda apenas el 30%. Complicando el problema, estos clientes persistentes a menudo no se desconectan después de los fallos iniciales. En cambio, continúan sus intentos, generando tráfico excesivo mientras disminuyen la propuesta de valor general de las API objetivo. Esto plantea una pregunta crucial: ¿por qué estos clientes avanzados de IA no pueden aprovechar eficazmente las API actuales, y qué se requiere para revertir esta tendencia?
La respuesta, resulta, no es nueva. Los requisitos fundamentales para los consumidores de API impulsados por IA reflejan los de los desarrolladores humanos: necesitan claridad, información contextual y una estructura significativa para interactuar con éxito. Sin embargo, muchas organizaciones han pasado por alto históricamente estos principios, aparentemente olvidando la profunda perspicacia del influyente artículo de 2017, “Attention Is All You Need”. Esta investigación pivotal introdujo el concepto de “transformers” en el mundo de la IA, modelos que puntúan matemáticamente las palabras basándose en sus relaciones dentro del contenido circundante. Este mecanismo de puntuación, denominado “atención”, permite que programas como ChatGPT generen respuestas notablemente coherentes y similares a las humanas.
La llegada de herramientas de IA generativa impulsadas por transformadores requiere una reevaluación completa de cómo se diseñan, documentan e implementan las API. Si bien plataformas como ChatGPT, Claude, Gemini y Copilot destacan en “prestar atención” a los diseños de API —identificando URL, métodos HTTP, entradas, esquemas y salidas esperadas—, intrínsecamente carecen de la capacidad de verdadera comprensión o razonamiento. Pueden discernir cómo se ve una API, pero no por qué debería usarse o qué significa la data devuelta. Esencialmente, los bots de IA actuales son consumidores de API rápidos y flexibles que tienen dificultades para tomar decisiones e interpretar el significado. La buena noticia es que, al aprovechar su fuerza en la coincidencia de patrones y la asociación contextual, podemos mejorar los diseños de API para compensar sus limitaciones actuales, haciendo así las API “preparadas para la IA”.
Para igualar el terreno de juego, hay cuatro prácticas clave, beneficiosas desde hace mucho tiempo para los desarrolladores humanos, que son igualmente cruciales para los clientes impulsados por IA. Primero, sea explícito. A diferencia de los humanos, las máquinas no son exploradores intuitivos. Aunque son hábiles para analizar texto, no pueden dar saltos intuitivos. Requieren pistas explícitas sobre lo que se puede lograr, cómo hacerlo y por qué. Una lista concisa de operaciones como GET /customers/
podría ser clara para un humano, que buscaría más documentación para obtener detalles. Para una máquina, sin embargo, esta brevedad conduce a conjeturas estadísticas. Proporcionar instrucciones explícitas, como “Para recuperar una lista de registros de clientes use GET /customers/
” o “Para crear un nuevo registro de cliente use POST /customers/
con el esquema createCustomer
”, aumenta significativamente las tasas de éxito al no dejar lugar a la ambigüedad.
Segundo, dígales por qué. Los modelos de IA son proficientes en discernir cómo se puede usar una API, pero menos en determinar por qué debería usarse. Enriquecer la documentación con explicaciones contextuales aborda esta brecha. Frases como “Use el endpoint PriorityAccounts
para identificar los diez principales clientes según el tamaño del mercado” o “Use el endpoint submitApplication
una vez que se hayan completado todos los demás pasos en el proceso de solicitud de empleo” proporcionan pistas invaluables. Los clientes impulsados por IA, especialmente aquellos respaldados por grandes modelos de lenguaje (LLM), son expertos en reconocer dicho texto y asociarlo con los endpoints de API relevantes.
Tercero, sea consistente y predecible. El inmenso poder de las aplicaciones basadas en LLM proviene de los vastos conjuntos de datos de código y documentos en los que se entrenan. Estos patrones históricos acumulados permiten a los clientes de IA interactuar con nuevas API. En consecuencia, una API que refleje patrones y convenciones comunes encontrados en estos datos de entrenamiento facilitará interacciones más fluidas. Desviarse con elementos únicos, respuestas inesperadas o usos no tradicionales de protocolos estándar (por ejemplo, usar HTTP PUT
exclusivamente para la creación cuando POST
es más común, o depender de esquemas XML cuando JSON es prevalente) inevitablemente dificultará el éxito de las aplicaciones impulsadas por IA.
Finalmente, haga que las respuestas de error sean accionables. Cuando los humanos encuentran errores, suelen escanear información, deducir el problema y formular una solución. Sin embargo, los clientes impulsados por máquinas carecen de esta capacidad intuitiva de resolución de problemas. A menudo recurren a reintentar con cambios aleatorios o simplemente se rinden. Para apoyarlos, las respuestas de error de la API deben ser explícitas, proporcionar contexto y adherirse a formatos consistentes. Se recomienda encarecidamente adoptar la especificación “Detalles del problema para API HTTP” (RFC7078). Este formato estructurado no solo identifica y explica el error, sino que también puede sugerir una posible resolución, como “Esta actualización falló porque faltaba un campo: hatsize
”. Este enfoque también se alinea con el principio de consistencia, ya que RFC7078 es ampliamente reconocido en los datos de entrenamiento de LLM. Además, al tratar los errores como “intentos parciales” y proporcionar retroalimentación clara, las API pueden “reentrenar” eficazmente a los clientes de máquinas, poblando su contexto local con ejemplos de cómo resolver problemas futuros.
En última instancia, las prácticas que mejoran las interacciones con los clientes de API impulsados por IA son precisamente las que se han defendido durante mucho tiempo para mejorar el diseño de API para desarrolladores humanos. Ser explícito reduce la carga cognitiva, decir a los desarrolladores (y a las máquinas) por qué agiliza la toma de decisiones, la consistencia fomenta una experiencia intuitiva y las respuestas de error accionables conducen a una resolución de problemas más rápida. El monitoreo continuo del uso de la API —observando endpoints comunes, condiciones de error persistentes y patrones de tráfico— proporciona información crucial para futuras mejoras de diseño. Ya sea que sirva a desarrolladores humanos o agentes de máquinas, prestar atención a estos principios fundamentales de diseño produce retornos sustanciales.