MessageGraph: convert message chunks to messages when added to graph

This commit is contained in:
Nuno Campos
2024-03-21 13:32:11 -07:00
parent 98ac7ef71a
commit 6cdb8925c8
+7 -3
View File
@@ -1,7 +1,7 @@
import uuid
from typing import Annotated, Union
from langchain_core.messages import AnyMessage
from langchain_core.messages import AnyMessage, message_chunk_to_message
from langgraph.graph.state import StateGraph
@@ -11,9 +11,13 @@ Messages = Union[list[AnyMessage], AnyMessage]
def add_messages(left: Messages, right: Messages) -> Messages:
# coerce to list
if not isinstance(left, list):
left = [left]
left = [message_chunk_to_message(left)]
else:
left = [message_chunk_to_message(m) for m in left]
if not isinstance(right, list):
right = [right]
right = [message_chunk_to_message(right)]
else:
right = [message_chunk_to_message(m) for m in right]
# assign missing ids
for m in left:
if m.id is None: