From 6211908d983a0af697b63e1cd1ca4f559e0aadab Mon Sep 17 00:00:00 2001 From: ogabrielluiz Date: Mon, 17 Jun 2024 15:47:15 -0300 Subject: [PATCH] refactor: Update Message class to use jsonable_encoder for prompt serialization --- src/backend/base/langflow/schema/message.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/backend/base/langflow/schema/message.py b/src/backend/base/langflow/schema/message.py index 605efafb5..84428a6d7 100644 --- a/src/backend/base/langflow/schema/message.py +++ b/src/backend/base/langflow/schema/message.py @@ -1,6 +1,7 @@ from datetime import datetime, timezone from typing import Annotated, Any, AsyncIterator, Iterator, Optional +from fastapi.encoders import jsonable_encoder from langchain_core.load import load from langchain_core.messages import AIMessage, BaseMessage, HumanMessage from langchain_core.prompt_values import ImagePromptValue @@ -149,6 +150,6 @@ class Message(Data): content_dicts = await value.get_file_content_dicts() contents.extend(content_dicts) prompt_template = ChatPromptTemplate.from_messages([HumanMessage(content=contents)]) - instance.messages = prompt_template.messages - instance.prompt = prompt_template.to_json() + instance.prompt = jsonable_encoder(prompt_template.to_json()) + instance.messages = instance.prompt.get("kwargs", {}).get("messages", []) return instance