_exit_history() — langchain Function Reference
Architecture documentation for the _exit_history() function in history.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 9297f3bd_05a3_097d_3fa4_b9184b373e13["_exit_history()"] f9cb8198_4568_d401_f003_82c579cfa18f["RunnableWithMessageHistory"] 9297f3bd_05a3_097d_3fa4_b9184b373e13 -->|defined in| f9cb8198_4568_d401_f003_82c579cfa18f 1978b1f4_7f00_d1ef_ed53_b27b8e0a8df8["_get_input_messages()"] 9297f3bd_05a3_097d_3fa4_b9184b373e13 -->|calls| 1978b1f4_7f00_d1ef_ed53_b27b8e0a8df8 293dcfbd_674c_d56d_4708_39019a6881d5["_get_output_messages()"] 9297f3bd_05a3_097d_3fa4_b9184b373e13 -->|calls| 293dcfbd_674c_d56d_4708_39019a6881d5 style 9297f3bd_05a3_097d_3fa4_b9184b373e13 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/core/langchain_core/runnables/history.py lines 538–553
def _exit_history(self, run: Run, config: RunnableConfig) -> None:
hist: BaseChatMessageHistory = config["configurable"]["message_history"]
# Get the input messages
inputs = load(run.inputs, allowed_objects="all")
input_messages = self._get_input_messages(inputs)
# If historic messages were prepended to the input messages, remove them to
# avoid adding duplicate messages to history.
if not self.history_messages_key:
historic_messages = config["configurable"]["message_history"].messages
input_messages = input_messages[len(historic_messages) :]
# Get the output messages
output_val = load(run.outputs, allowed_objects="all")
output_messages = self._get_output_messages(output_val)
hist.add_messages(input_messages + output_messages)
Domain
Subdomains
Source
Frequently Asked Questions
What does _exit_history() do?
_exit_history() is a function in the langchain codebase, defined in libs/core/langchain_core/runnables/history.py.
Where is _exit_history() defined?
_exit_history() is defined in libs/core/langchain_core/runnables/history.py at line 538.
What does _exit_history() call?
_exit_history() calls 2 function(s): _get_input_messages, _get_output_messages.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free