nemo_relay.integrations.langchain.middleware#
LangChain AgentMiddleware implementation for NeMo Relay.
Classes#
Route LangChain agent model and tool calls through NeMo Relay. |
Module Contents#
- class nemo_relay.integrations.langchain.middleware.NemoRelayMiddleware(*, name: str = 'NemoRelayMiddleware')#
Bases:
langchain.agents.middleware.AgentMiddlewareRoute LangChain agent model and tool calls through NeMo Relay.
This uses LangChain’s public
AgentMiddlewarehooks. It applies to agents built withlangchain.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]],
Wrap a sync LangChain agent model call in NeMo Relay 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]]],
Wrap an async LangChain agent model call in NeMo Relay 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]],
Wrap a sync LangChain agent tool call in NeMo Relay 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]]],
Wrap an async LangChain agent tool call in NeMo Relay tool execution.