LangGraph + Ertas

    Construye agentes para produccion con LangGraph: el framework de orquestacion basado en grafos con auditoria, checkpoints y flujos de trabajo con estado, totalmente compatible con modelos locales entrenados con Ertas.

    Overview

    LangGraph es el sucesor de nivel produccion para los agentes de LangChain, disenado especificamente para los requisitos operativos de ejecutar agentes en produccion: maquinas de estado explicitas, checkpoints durables, auditorias y puntos de interrupcion con humano en el bucle. Donde las abstracciones de agente mas antiguas de LangChain usaban bucles implicitos al estilo ReAct, LangGraph requiere que definas el agente como un grafo dirigido de estados y transiciones, un costo inicial que se compensa con una depurabilidad, recuperabilidad y confiabilidad enormemente mejoradas en condiciones de produccion. A principios de 2026, LangGraph supero a CrewAI en estrellas de GitHub y ahora es el framework dominante de agentes para produccion en el ecosistema Python.

    El diseno basado en grafos habilita capacidades que los bucles de agente planos no pueden ofrecer facilmente: ejecucion paralela de ramas con agregacion estructurada, enrutamiento condicional segun el estado intermedio, checkpoints durables que permiten a los agentes pausar y reanudar a lo largo de horas o dias, y puntos de rollback que te permiten reproducir una ejecucion del agente desde cualquier estado. Para despliegues empresariales donde los agentes necesitan manejar flujos de trabajo de larga duracion, integrarse con pasos de aprobacion humana o recuperarse de fallos de infraestructura, LangGraph es cada vez mas la opcion por defecto frente a alternativas mas simples.

    How Ertas Integrates

    Los modelos entrenados con Ertas funcionan con LangGraph a traves de la misma interfaz de proveedor que LangChain: los dos frameworks comparten su abstraccion subyacente de LLM. Despues de ajustar tu modelo en Ertas Studio y desplegarlo en un endpoint compatible con OpenAI (Ollama, vLLM o Ertas Cloud), configuras una instancia ChatOpenAI o ChatOllama de LangChain apuntando a tu endpoint y luego pasas ese LLM a tus nodos de LangGraph. Cada nodo que llama al LLM usa tu modelo entrenado con Ertas, y las funciones de orquestacion de LangGraph (checkpoints, ramas, humano en el bucle) funcionan de forma transparente independientemente del modelo que este detras de la interfaz LLM.

    Para despliegues en produccion, la combinacion de LangGraph + Ertas atiende dos preocupaciones simultaneamente. LangGraph maneja las preocupaciones operativas: durabilidad del flujo de trabajo, registro de auditoria y confiabilidad. Ertas maneja las preocupaciones de calidad: especializacion del modelo a un dominio para un rendimiento sustancialmente mejor del que pueden ofrecer los modelos genericos. El resultado son agentes que estan tanto bien disenados (durables, depurables, recuperables) como bien entrenados (especializados, precisos, rapidos). Para equipos que construyen agentes en industrias reguladas — salud, finanzas, derecho — esta combinacion es especialmente atractiva porque las capacidades de auditoria de LangGraph y el despliegue on-premise de Ertas, juntos, cumplen con la mayoria de los requisitos de cumplimiento sin compromisos.

    Getting Started

    1. 1

      Ajusta un modelo de dominio en Ertas Studio

      Entrena un modelo que capture la experticia de tu dominio. Para flujos de LangGraph en particular, los datos de entrenamiento con pasos de razonamiento explicitos y trazas de uso de herramientas producen los mejores resultados.

    2. 2

      Despliega en un endpoint compatible con OpenAI

      Exporta a GGUF y sirve via Ollama, vLLM o Ertas Cloud. LangGraph llama a cualquier endpoint estandar de chat completion a traves de la abstraccion de proveedor de LangChain.

    3. 3

      Instala LangGraph y configura tu LLM

      Instala langgraph y un paquete de proveedor de LangChain (langchain-openai o langchain-ollama). Crea una instancia de LLM apuntando a tu endpoint de inferencia de Ertas.

    4. 4

      Define tu agente como un grafo

      Modela tu flujo de trabajo como un grafo dirigido: nodos para cada paso, aristas para las transiciones y logica condicional para el enrutamiento. Anade checkpoints para estado durable e interrupciones con humano en el bucle donde sea necesario.

    5. 5

      Despliega con LangGraph Cloud o autoalojado

      Despliega tu grafo en LangGraph Cloud para orquestacion gestionada, o autoalojalo usando LangGraph Server. Ambas opciones funcionan con inferencia de Ertas autoalojada.

    python
    from typing import TypedDict, Literal
    from langchain_openai import ChatOpenAI
    from langgraph.graph import StateGraph, END
    from langgraph.checkpoint.memory import MemorySaver
    
    # Point LangGraph at your Ertas-trained model
    llm = ChatOpenAI(
        base_url="http://localhost:11434/v1",
        model="ertas-claims-adjuster-14b",
        api_key="not-needed",
        temperature=0.1,
    )
    
    class ClaimState(TypedDict):
        claim_id: str
        claim_data: dict
        classification: str
        requires_review: bool
        decision: str
    
    def classify(state: ClaimState):
        response = llm.invoke(f"Classify this claim: {state['claim_data']}")
        return {"classification": response.content}
    
    def route(state: ClaimState) -> Literal["auto_approve", "human_review"]:
        return "human_review" if state["requires_review"] else "auto_approve"
    
    # Build the graph
    graph = StateGraph(ClaimState)
    graph.add_node("classify", classify)
    graph.add_node("auto_approve", lambda s: {"decision": "approved"})
    graph.add_node("human_review", lambda s: {"decision": "pending_review"})
    
    graph.set_entry_point("classify")
    graph.add_conditional_edges("classify", route, {
        "auto_approve": "auto_approve",
        "human_review": "human_review",
    })
    graph.add_edge("auto_approve", END)
    graph.add_edge("human_review", END)
    
    # Compile with persistent checkpointing
    app = graph.compile(checkpointer=MemorySaver())
    
    # Run with full audit trail
    result = app.invoke(
        {"claim_id": "C-12345", "claim_data": {...}},
        config={"configurable": {"thread_id": "claim-12345"}},
    )
    Construye un agente con estado para procesamiento de reclamaciones de seguros en LangGraph respaldado por un modelo de dominio entrenado con Ertas, con auditoria completa y checkpoints durables.

    Benefits

    • Las maquinas de estado explicitas ofrecen una depurabilidad enormemente mejor que los bucles de agente implicitos
    • Checkpoints durables: los agentes pueden pausar y reanudar a lo largo de horas, dias o fallos de infraestructura
    • Auditorias de cada transicion de estado para soportar cumplimiento en industrias reguladas
    • Puntos de interrupcion con humano en el bucle gestionan flujos de aprobacion de forma natural
    • Ejecucion paralela de ramas con agregacion estructurada de resultados
    • Combina la orquestacion de LangGraph con la especializacion de dominio de Ertas para agentes de calidad de produccion

    Related Resources

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.