top of page

LangChain langchain==1.4.3 corrige las rutas de fallo que los agentes no pueden ignorar

29 sept
14 min de lectura

LangChain lanzó langchain==1.4.3 con siete cambios, incluidas correcciones para el respaldo de modelos, la salida estructurada y las llamadas de herramientas malformadas. El parche también añade soporte para Bedrock Mantle al inicializador de modelos del framework. Esta combinación hace que la versión sea más relevante de lo que su número de parche sugiere.

El conflicto central es la fiabilidad frente a la abstracción. LangChain permite a los desarrolladores colocar una única interfaz de agente sobre distintos modelos y proveedores. Sin embargo, las configuraciones específicas de cada proveedor, los formatos de respuesta y las reglas de mensajes siguen filtrándose a través de esa interfaz.

La versión 1.4.3 aborda varios puntos en los que esas diferencias podían detener a un agente tras su despliegue. El lanzamiento oficial llegó el 28 de septiembre de 2026, un día después de que dos informes de seguimiento cuestionaran una reparación anterior de llamadas de herramientas.

La actualización no introduce una nueva arquitectura de agentes. Refuerza la capa de traducción entre el código de los agentes y el comportamiento cambiante de los proveedores. Para los equipos que operan agentes en endpoints compatibles con OpenAI, Amazon Bedrock, Anthropic, Fireworks o Azure OpenAI, esa capa suele determinar si el respaldo funciona realmente.

Qué cambió en langchain==1.4.3

La versión se concentra en fallos que aparecen cuando los agentes cruzan fronteras entre proveedores o reproducen un historial de conversación imperfecto.

Las notas de la versión de LangChain enumeran siete pull requests desde la versión 1.4.2. Cuatro afectan directamente al comportamiento de los modelos o agentes. Los cambios restantes actualizan la documentación, eliminan código comentado y renuevan una dependencia bloqueada.

La primera corrección de comportamiento depura las configuraciones de modelo relacionadas con la caché durante el respaldo. Un respaldo ocurre cuando un agente pasa de su modelo preferido a otro después de un error o un problema de disponibilidad.

Antes de esta corrección, las configuraciones destinadas al primer proveedor podían acompañar la solicitud. El proveedor de respaldo podía rechazar esas configuraciones desconocidas en lugar de completar la solicitud. Eso convierte una función de resiliencia en otro punto de fallo.

El segundo cambio importante registra dos proveedores de Amazon Bedrock Mantle con init_chat_model. Esta función ofrece a las aplicaciones un punto de entrada común para crear integraciones de modelos de chat.

Los desarrolladores ahora pueden identificar bedrock_mantle_openai o bedrock_mantle_anthropic como proveedor. LangChain conecta entonces la solicitud con las clases correspondientes proporcionadas por langchain-aws.

El tercer cambio ajusta cómo los agentes seleccionan la salida estructurada para GPT-6 Sol, Luna y Astra. La salida estructurada significa que el modelo devuelve datos que coinciden con un esquema esperado, en lugar de texto libre sin restricciones.

Cuando los perfiles de modelo no estaban disponibles, LangChain podía enviar anteriormente estos modelos mediante una estrategia basada en herramientas. Esa ruta podía entrar en bucle o fallar en Bedrock. La versión 1.4.3 reconoce los nombres de los modelos y selecciona de forma predeterminada la salida estructurada nativa del proveedor.

El cuarto cambio de comportamiento repara llamadas de herramientas malformadas almacenadas en el historial del agente. Las llamadas de herramientas son solicitudes generadas por el modelo para que una aplicación ejecute una función, recupere datos o realice otra acción definida.

Algunos proveedores exigen que toda llamada de herramienta identificable tenga un mensaje de resultado correspondiente. Una llamada malformada sin ese resultado puede invalidar una reproducción posterior, incluso cuando el turno original ya ha terminado.

LangChain ahora añade un resultado de error para las llamadas no válidas identificables, al tiempo que conserva los resultados válidos asociados mediante el ID de llamada de herramienta. La reparación se aplica a mensajes actuales e históricos y no pide al modelo que repita la llamada.

La versión también cambia la versión bloqueada de AnyIO de 4.11.0 a 4.14.2. AnyIO proporciona compatibilidad asíncrona entre implementaciones de bucles de eventos de Python. Las notas de la versión caracterizan esto como una actualización de dependencia, no como una nueva capacidad de ejecución.

Una corrección documental actualiza la guía de configuración del repositorio y los detalles del paquete. Otro cambio de mantenimiento elimina un extra comentado de Cohere. Ninguno debería alterar el comportamiento de las aplicaciones.

En conjunto, estos cambios hacen de la versión 1.4.3 una versión de compatibilidad. Amplía una ruta de proveedor mientras refuerza tres rutas de fallo que afectan la continuidad de los agentes.

El respaldo de modelos ahora elimina configuraciones de caché incompatibles

El respaldo solo mejora la disponibilidad cuando el segundo modelo recibe una solicitud que puede comprender.

El respaldo de modelos parece sencillo a nivel de política. Una aplicación elige un modelo principal, identifica una o más alternativas y avanza por esa lista cuando una solicitud falla.

La solicitud real transporta más que mensajes. Puede incluir claves de caché, encabezados personalizados, instrucciones de formato de respuesta, definiciones de herramientas, tiempos de espera y opciones específicas del proveedor.

Estas configuraciones crean un problema oculto de compatibilidad. Un parámetro de caché aceptado por un proveedor podría carecer de sentido o no ser válido para otro. Transmitirlo sin cambios puede hacer que la solicitud de respaldo falle antes de que el modelo alternativo produzca un token.

La corrección de caché para respaldo se dirige a dos configuraciones. Elimina x-session-affinity cuando el respaldo no usa Fireworks. También elimina prompt_cache_key fuera de Fireworks, OpenAI y Azure OpenAI.

La afinidad de sesión dirige solicitudes relacionadas hacia la misma ubicación de servicio, lo que puede mejorar la reutilización de caché. Ese comportamiento depende de la infraestructura del proveedor y no puede asumirse entre endpoints.

Una clave de caché de prompt ayuda de forma similar a los proveedores compatibles a asociar solicitudes con material de prompt almacenado en caché. No es un campo universal en todas las API de modelos.

El middleware conserva esas configuraciones cuando el respaldo seleccionado las admite. También deja intacta la configuración y los encabezados no relacionados, incluido el manejo existente de marcadores de caché de Anthropic.

Esa distinción importa. Eliminar todas las configuraciones opcionales evitaría algunos errores de compatibilidad, pero también descartaría comportamientos útiles en proveedores que sí las admiten.

En su lugar, la implementación usa el _llm_type del modelo de respaldo para decidir qué debe permanecer. Crea configuraciones depuradas para la llamada de respaldo sin modificar la solicitud original.

Ese diseño protege el procesamiento posterior. Si un objeto de solicitud se comparte entre middleware o se reintenta por otra ruta, un intento de respaldo no debería borrar permanentemente su configuración.

El pull request incluye cobertura síncrona y asíncrona. Las pruebas verifican la limpieza de encabezados, la eliminación de claves de caché no compatibles y la conservación cuando el proveedor de respaldo acepta la configuración.

Esta es una corrección acotada con una lección operativa amplia. El respaldo entre proveedores no es simplemente una lista de nombres de modelos. Es un problema de traducción que involucra todos los campos adjuntos a la solicitud.

Los equipos deberían seguir probando cada par ordenado de proveedores que desplieguen. Una ruta exitosa de OpenAI a Azure no valida el comportamiento de OpenAI a Anthropic ni de Fireworks a Bedrock.

El parche solo depura las configuraciones abordadas por el pull request. Otros parámetros específicos de proveedores todavía pueden generar incompatibilidades a medida que evolucionan las API de modelos.

Por tanto, los equipos de aplicaciones deberían supervisar la finalización de respaldos por separado del éxito del modelo principal. Un panel que combine ambas rutas puede ocultar un sistema de respaldo que nunca alcanza una respuesta utilizable.

También deberían registrar qué modelo atendió finalmente cada solicitud. Sin esa señal, un equipo no puede vincular cambios en las salidas o una latencia elevada con una transición de proveedor.

La prueba más reveladora no es si el middleware captura una excepción forzada. Es si toda la solicitud posterior tiene éxito con las configuraciones exactas utilizadas en producción.

Eso incluye salida estructurada, herramientas, caché e historial de mensajes. La versión 1.4.3 elimina dos trampas conocidas, pero no hace que todos los proveedores sean intercambiables.

Bedrock Mantle se incorpora al punto de entrada común de modelos de LangChain

LangChain ahora expone Bedrock Mantle mediante su inicializador compartido, pero las aplicaciones deben identificar explícitamente al proveedor.

La nueva integración añade bedrock_mantle_openai y bedrock_mantle_anthropic a los proveedores reconocidos por init_chat_model. Esos nombres se conectan con ChatOpenAIMantle y ChatAnthropicMantle.

Ambas clases residen en langchain-aws, no en el paquete principal de LangChain. La integración Mantle requiere langchain-aws versión 1.7.9 o posterior durante la ejecución.

Según el pull request fusionado, las clases resuelven por sí mismas el endpoint regional de Mantle. También pueden gestionar una clave de API de Bedrock, la variable de entorno AWS_BEARER_TOKEN_BEDROCK o credenciales temporales derivadas de credenciales estándar de AWS.

Esto evita funciones de creación personalizadas en la configuración habitual. Los desarrolladores pueden utilizar el mismo inicializador de alto nivel que ya enruta otros proveedores.

Sin embargo, la inferencia basada en nombres sigue siendo deliberadamente limitada. LangChain continúa asociando los identificadores de modelo que empiezan por anthropic.* con su proveedor Bedrock existente.

Los identificadores OpenAI alojados en Bedrock que empiezan por openai.* no seleccionan Mantle automáticamente. Los desarrolladores deben proporcionar el nombre del proveedor Mantle o un prefijo de proveedor explícito.

Los mantenedores evitaron cambiar la inferencia existente porque eso redirigiría silenciosamente las aplicaciones hacia un endpoint diferente. Conservar el comportamiento actual reduce el riesgo de actualización para los equipos que ya usan integraciones de Bedrock.

Esto crea una compensación razonable. La configuración explícita añade un pequeño requisito de preparación, pero evita que una versión de parche cambie el destino al que las cargas de trabajo establecidas envían sus solicitudes.

La instalación de dependencias merece una atención similar. La discusión del pull request se inclinó por extras compuestos para la familia de modelos utilizada.

Las combinaciones documentadas son langchain[aws,openai] para modelos Mantle compatibles con OpenAI y langchain[aws,anthropic] para modelos compatibles con Anthropic. Este enfoque mantiene más ligero el extra general de AWS.

La discusión también registra una preocupación residual sobre dependencias en langchain-aws. Las claves temporales derivadas de credenciales pueden importar de forma diferida un paquete adicional de generación de tokens durante la renovación.

Esto significa que una prueba de importación o de inicio exitosa podría no cubrir todas las rutas de autenticación. Los equipos que usan credenciales temporales deberían probar el comportamiento de renovación durante la fase de staging, no solo la primera solicitud.

La presión más amplia recae sobre los mantenedores de frameworks, más que sobre una única empresa competidora. Las plataformas en la nube exponen cada vez más modelos mediante varias familias de API, sistemas de credenciales y endpoints regionales.

Un inicializador común debe ocultar suficiente variación para reducir el código de la aplicación. También debe exponer suficiente variación para evitar elecciones automáticas engañosas.

La decisión de LangChain favorece el enrutamiento explícito en el límite del proveedor. Es más seguro que adivinar cuando prefijos idénticos de familias de modelos pueden alcanzar servicios Bedrock distintos.

Para los desarrolladores, el beneficio práctico es una construcción coherente. Una aplicación puede seleccionar un modelo respaldado por Mantle mediante configuración sin construir una función de fábrica independiente.

La limitación es igualmente importante. Una construcción común no garantiza un comportamiento idéntico entre proveedores. La autenticación, los parámetros compatibles, los eventos de streaming, las llamadas de herramientas y la salida estructurada aún pueden diferir.

Los equipos que adopten la nueva ruta deberían probar su carga de trabajo real de agentes. Un prompt básico confirma la conectividad, pero no valida la ejecución de herramientas, la aplicación de esquemas, el respaldo ni la renovación de credenciales.

Esta versión facilita el acceso a Mantle. La preparación para producción sigue dependiendo de verificar el ciclo de vida completo de la solicitud.

La salida estructurada de GPT-6 se aleja de la emulación mediante herramientas

La corrección de GPT-6 elige el manejo nativo de esquemas cuando faltan los metadatos del perfil del modelo, reduciendo la dependencia de llamadas a herramientas sintéticas.

Los frameworks de agentes necesitan una estrategia para convertir la salida del modelo en datos de aplicación tipados. Una vía solicita al proveedor una salida estructurada nativa. Otra representa el esquema deseado como una herramienta invocable.

La estrategia de herramientas puede funcionar con modelos que no cuentan con controles nativos de esquemas. También añade otra capa de protocolo, incluida la selección de herramientas, la generación de argumentos, el manejo de resultados y la reproducción de conversaciones.

LangChain suele usar perfiles de modelo para determinar qué estrategia admite un modelo. Un perfil de modelo es metadato que describe capacidades como la salida estructurada nativa.

El problema surge cuando esos metadatos faltan. LangChain necesita una decisión de respaldo basada en el identificador del modelo u otra información disponible.

Para GPT-6 Sol, Luna y Astra, el respaldo anterior seleccionaba salida estructurada basada en herramientas. La corrección de GPT-6 indica que esta ruta podía entrar en un bucle o fallar en Bedrock.

La versión 1.4.3 añade esos identificadores de modelo a la lista de respaldo de salida nativa. Según las pruebas asociadas, reconoce nombres sin prefijos y formas con prefijo de Bedrock.

El efecto es específico. Los agentes que usan esas variantes de GPT-6 sin perfiles ahora eligen, de forma predeterminada, salida estructurada nativa del proveedor.

Esto no significa que todos los modelos reciban el mismo tratamiento. Es una regla de compatibilidad para modelos identificados cuya capacidad esperada ya se conoce.

El cambio también muestra por qué los metadatos de capacidades se han convertido en infraestructura crítica. Los nombres de los modelos por sí solos suelen ofrecer una descripción incompleta del comportamiento de los endpoints.

Un proveedor puede alojar un modelo mediante múltiples interfaces. Esas interfaces pueden exponer distintas funciones de esquema, campos aceptados o semánticas de error.

Un sistema basado en perfiles ofrece a los frameworks un lugar central para describir esa variación. Sin embargo, las aplicaciones aún necesitan un comportamiento razonable cuando los perfiles están ausentes, retrasados o no disponibles.

La lista de respaldo de LangChain cubre esa brecha. La debilidad es el mantenimiento: cada familia de modelos recién compatible debe reconocerse con precisión y actualizarse a medida que cambia el comportamiento del proveedor.

Los falsos negativos envían a un modelo capaz a través de una emulación de herramientas innecesaria. Los falsos positivos pueden solicitar salida nativa a un endpoint que no la implementa correctamente.

La corrección actual prioriza un caso de fallo conocido. Elimina una ruta problemática para los modelos GPT-6 nombrados sin redefinir la selección de salida estructurada en todo el framework.

Los desarrolladores deben seguir validando esquemas que se parezcan a sus contratos de producción. Los objetos anidados, las uniones, los campos opcionales y las enumeraciones extensas pueden revelar diferencias que un ejemplo pequeño no detecta.

También deben inspeccionar por separado los errores de validación y los errores del proveedor. Una solicitud de salida estructurada aceptada aún puede devolver datos que no superan el esquema de la aplicación.

Los reintentos necesitan límites cuidadosos. Un fallo de esquema que desencadena otra solicitud idéntica puede producir un bucle costoso, especialmente cuando el framework clasifica incorrectamente las capacidades del endpoint.

La implementación más segura compara tres resultados: aceptación del proveedor, validación del esquema y uso posterior. Superar solo el primer paso no demuestra una salida estructurada fiable.

Esta versión reduce la emulación innecesaria de herramientas para modelos específicos. También refuerza el valor de perfiles precisos a medida que los catálogos de modelos siguen expandiéndose.

Las Llamadas de Herramientas Inválidas Revelan el Problema Más Difícil del Estado de los Agentes

La reparación de LangChain conserva un historial reproducible, pero los informes posteriores muestran que la normalización de mensajes sigue siendo sensible a las reglas de los proveedores.

Una conversación de agente es más que una transcripción. Es una máquina de estados en la que las solicitudes de herramientas del asistente y los resultados de herramientas deben formar pares válidos.

Una llamada de herramienta malformada puede romper esa secuencia. El modelo podría producir argumentos inválidos, omitir identificadores obligatorios o devolver una estructura que el framework no puede analizar.

Si el framework almacena esa llamada sin un resultado correspondiente, las solicitudes posteriores pueden fallar cuando el proveedor valida el historial reproducido. El error puede aparecer varios turnos después del defecto original.

La reparación de llamadas de herramientas de LangChain añade un ToolMessage de error para cada llamada de herramienta inválida identificable. También verifica las llamadas históricas al reconstruir el estado de los mensajes.

La reparación conserva los resultados existentes al hacer coincidir sus IDs de llamada de herramienta. No reintenta la solicitud malformada, lo que evita pedir al modelo que repita una acción automáticamente.

Este comportamiento respalda un objetivo importante de recuperación. La conversación puede registrar que la acción de herramienta solicitada falló mientras mantiene utilizable el historial circundante.

Sin ese registro, un agente podría volverse imposible de reanudar. Las aplicaciones tendrían que descartar el historial, reescribir manualmente los mensajes o iniciar un hilo nuevo.

El desafío es que los proveedores no interpretan de forma idéntica las relaciones entre mensajes de herramientas. Una reparación válida bajo un protocolo de mensajes puede infringir las reglas de orden más estrictas de otro proveedor.

La cronología del pull request hace visible esa incertidumbre. El 27 de septiembre, usuarios abrieron informes posteriores relacionados con hilos de Anthropic y resultados de herramientas reparados.

Un informe afirmaba que un tool_result generado carecía de un tool_use correspondiente, lo que provocaba un error del proveedor después de una llamada inválida. Otro propuso mantener las llamadas reparadas con una relación padre en cada payload.

Esos informes se cerraron antes del lanzamiento de la versión 1.4.3, y la reparación se mantuvo en la versión. Aun así, su presencia es una advertencia útil contra tratar la normalización de mensajes como un asunto resuelto.

El pull request también recibió una alerta de rendimiento durante el desarrollo. Un benchmark registrado mostró que el tiempo de instanciación de agentes pasó de 4,5 milisegundos a 5,4 milisegundos, una regresión del 16,62 por ciento.

Esa cifra procedía de una comparación intermedia y no debe considerarse un benchmark independiente de la versión final. Identifica un área que vale la pena probar, en lugar de un impacto confirmado en producción.

Para la mayoría de los agentes desplegados, la latencia del proveedor eclipsará una diferencia de construcción de un milisegundo. Los servicios de alto rendimiento que construyen agentes repetidamente pueden afrontar un perfil de costes distinto.

Los equipos deben evaluar el paquete final dentro de su propio proceso. El resultado depende de los patrones de inicialización, middleware, herramientas, configuración del modelo y reutilización de objetos.

La corrección sigue siendo el asunto principal. Un historial reparado debe satisfacer al proveedor y representar con precisión lo ocurrido.

Un resultado de error no debe implicar que se ejecutó una acción externa. También debe evitar inducir al agente a asumir éxito durante razonamientos posteriores.

Las aplicaciones con herramientas de consecuencias importantes deben conservar registros de ejecución separados fuera de la lista de mensajes conversacionales. El historial orientado al modelo no es una pista de auditoría suficiente.

Esos registros deben incluir la herramienta solicitada, los argumentos validados, el estado de ejecución, los datos devueltos y cualquier efecto secundario. También ayudan a los equipos a reconstruir fallos sin depender de prosa generada.

Los equipos de ingeniería pueden respaldar este trabajo con una colección consultable de documentos técnicos locales. Los manuales operativos, esquemas y notas de incidentes resultan especialmente valiosos cuando los errores del proveedor aparecen tras una reproducción retrasada.

La lección más profunda es que la durabilidad de los agentes depende de la reparación del estado. Mejores modelos no eliminan la necesidad de normalizar mensajes malformados, preservar la causalidad y distinguir entre acciones intentadas y acciones completadas.

La versión 1.4.3 mejora esa ruta de reparación. La discusión posterior muestra por qué los desarrolladores deben probarla con cada proveedor frente al que pretendan reproducir conversaciones.

Qué Deben Vigilar los Desarrolladores Tras el Lanzamiento

La siguiente evidencia debe proceder de cargas de trabajo entre proveedores, perfiles de modelo actualizados y pruebas de reproducción basadas en fallos reales.

La primera señal es la finalización del respaldo entre proveedores mixtos. Los equipos deben probar modelos principales y de respaldo con configuraciones de caché, herramientas, streaming y salida estructurada activadas a la vez.

Si esas solicitudes se completan sin limpieza manual por proveedor, la nueva lógica de saneamiento está cumpliendo su función. Nuevos parámetros rechazados debilitarían la suposición de que el filtro actual es suficientemente amplio.

La segunda señal es el comportamiento de Bedrock Mantle bajo autenticación sostenida. Una prueba de inicio no puede ejercitar la renovación de credenciales temporales, los workers de larga duración ni los cambios de endpoints regionales.

Una renovación exitosa en ambas familias de modelos compatibles fortalecería el caso de integración. Los fallos de dependencias durante la renovación revelarían que la guía de instalación aún necesita trabajo.

La tercera señal es la portabilidad del historial reparado. Los desarrolladores deben reproducir historiales de llamadas de herramientas malformadas y parcialmente reparadas a través de cada proveedor utilizado en producción.

Un resultado sólido significa que el agente se reanuda sin descartar contexto ni inventar éxito de herramientas. Los errores de validación específicos de un proveedor mostrarían que una estrategia de reparación compartida necesita mayor especialización.

Los equipos que actualicen desde 1.4.2 deben comenzar con pruebas de regresión en lugar de un despliegue amplio en producción. Los casos más valiosos son los historiales y las configuraciones de solicitudes que antes fallaban.

Fije langchain-aws en una versión compatible al usar Mantle y, después, verifique los extras necesarios en un entorno limpio. Las máquinas de desarrollo existentes pueden ocultar dependencias faltantes mediante instalaciones no relacionadas.

Para la salida estructurada de GPT-6, inspeccione la estrategia seleccionada y valide esquemas realistas. No suponga que un objeto simple exitoso cubre respuestas de producción anidadas.

Para el respaldo de modelos, registre el modelo seleccionado y las categorías de solicitudes saneadas. Evite registrar secretos, credenciales sin procesar o contenido confidencial de prompts.

Para la reparación de llamadas de herramientas, capture las llamadas malformadas como fixtures de prueba después de eliminar datos sensibles. Esos fixtures pueden proteger contra regresiones cuando cambian los proveedores o las versiones del framework.

Ninguno de estos cambios elimina la necesidad de controles a nivel de aplicación. Los tiempos de espera, reintentos limitados, claves de idempotencia, registros de ejecución y revisión humana siguen siendo necesarios para acciones de consecuencias importantes.

En cambio, la versión mejora el comportamiento del framework cuando las diferencias entre proveedores alcanzan la capa de agentes. Esto es valioso porque esas diferencias son cada vez más comunes, no menos.

Por tanto, langchain==1.4.3 se entiende mejor como un parche de fiabilidad con una incorporación de integración destacable. Su importancia reside en las situaciones que intenta preservar: respaldo, generación de esquemas, reproducción de conversaciones y enrutamiento de proveedores.

Si sus agentes utilizan esas rutas, reproduzca los fallos antes de actualizar y vuelva a ejecutarlos después. Luego pruebe el flujo de trabajo combinado, porque los fallos de producción rara vez respetan los límites entre correcciones individuales.

 
 

Empieza gratis

Un asistente de IA local-first con gestión del conocimiento personal

Para ofrecer una mejor experiencia con la IA,

actualmente remio solo es compatible con Windows 10+ (x64) y M-Chip Macs.

Tu aliado de IA para el trabajo
Haz más con remio

Planifica. Crea. Entrega.
Todo en un solo lugar.

bottom of page