Home / Function/ _fetch_last_ai_and_tool_messages() — langchain Function Reference

_fetch_last_ai_and_tool_messages() — langchain Function Reference

Architecture documentation for the _fetch_last_ai_and_tool_messages() function in factory.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  895a4733_2a72_a5d8_7ab0_f205dfec9cd6["_fetch_last_ai_and_tool_messages()"]
  fd7a28b1_3772_169b_6524_1342f35143b1["factory.py"]
  895a4733_2a72_a5d8_7ab0_f205dfec9cd6 -->|defined in| fd7a28b1_3772_169b_6524_1342f35143b1
  20046200_0f69_48b9_d47c_7a3ea7d0358f["_make_model_to_tools_edge()"]
  20046200_0f69_48b9_d47c_7a3ea7d0358f -->|calls| 895a4733_2a72_a5d8_7ab0_f205dfec9cd6
  876bb633_dd26_1b0a_98e8_1ce27a9ed076["_make_tools_to_model_edge()"]
  876bb633_dd26_1b0a_98e8_1ce27a9ed076 -->|calls| 895a4733_2a72_a5d8_7ab0_f205dfec9cd6
  style 895a4733_2a72_a5d8_7ab0_f205dfec9cd6 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/langchain/agents/factory.py lines 1622–1640

def _fetch_last_ai_and_tool_messages(
    messages: list[AnyMessage],
) -> tuple[AIMessage | None, list[ToolMessage]]:
    """Return the last AI message and any subsequent tool messages.

    Args:
        messages: List of messages to search through.

    Returns:
        A tuple of (last_ai_message, tool_messages). If no AIMessage is found,
        returns (None, []). Callers must handle the None case appropriately.
    """
    for i in range(len(messages) - 1, -1, -1):
        if isinstance(messages[i], AIMessage):
            last_ai_message = cast("AIMessage", messages[i])
            tool_messages = [m for m in messages[i + 1 :] if isinstance(m, ToolMessage)]
            return last_ai_message, tool_messages

    return None, []

Domain

Subdomains

Frequently Asked Questions

What does _fetch_last_ai_and_tool_messages() do?
_fetch_last_ai_and_tool_messages() is a function in the langchain codebase, defined in libs/langchain_v1/langchain/agents/factory.py.
Where is _fetch_last_ai_and_tool_messages() defined?
_fetch_last_ai_and_tool_messages() is defined in libs/langchain_v1/langchain/agents/factory.py at line 1622.
What calls _fetch_last_ai_and_tool_messages()?
_fetch_last_ai_and_tool_messages() is called by 2 function(s): _make_model_to_tools_edge, _make_tools_to_model_edge.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free