nemo_flow.integrations.langchain.middleware#

LangChain AgentMiddleware implementation for NeMo Flow.

Classes#

NemoFlowMiddleware

Route LangChain agent model and tool calls through NeMo Flow.

Module Contents#

class nemo_flow.integrations.langchain.middleware.NemoFlowMiddleware(*, name: str = 'NemoFlowMiddleware')#

Bases: langchain.agents.middleware.AgentMiddleware

Route LangChain agent model and tool calls through NeMo Flow.

This uses LangChain’s public AgentMiddleware hooks. It applies to agents built with langchain.agents.create_agent(..., middleware=[...]).

property name: str#

Middleware name used by LangChain graph nodes and traces.

wrap_model_call(
request: langchain.agents.middleware.ModelRequest[Any],
handler: collections.abc.Callable[[langchain.agents.middleware.ModelRequest[Any]], langchain.agents.middleware.ModelResponse[Any]],
) langchain.agents.middleware.ModelResponse[Any]#

Wrap a sync LangChain agent model call in NeMo Flow LLM execution.

async awrap_model_call(
request: langchain.agents.middleware.ModelRequest[Any],
handler: collections.abc.Callable[[langchain.agents.middleware.ModelRequest[Any]], collections.abc.Awaitable[langchain.agents.middleware.ModelResponse[Any]]],
) langchain.agents.middleware.ModelResponse[Any]#

Wrap an async LangChain agent model call in NeMo Flow LLM execution.

wrap_tool_call(
request: langchain.agents.middleware.ToolCallRequest,
handler: collections.abc.Callable[[langchain.agents.middleware.ToolCallRequest], langchain_core.messages.ToolMessage | langgraph.types.Command[Any]],
) langchain_core.messages.ToolMessage | langgraph.types.Command[Any]#

Wrap a sync LangChain agent tool call in NeMo Flow tool execution.

async awrap_tool_call(
request: langchain.agents.middleware.ToolCallRequest,
handler: collections.abc.Callable[[langchain.agents.middleware.ToolCallRequest], collections.abc.Awaitable[langchain_core.messages.ToolMessage | langgraph.types.Command[Any]]],
) langchain_core.messages.ToolMessage | langgraph.types.Command[Any]#

Wrap an async LangChain agent tool call in NeMo Flow tool execution.