def __init__(self, *, uuid: Optional[UUID] = None, chat_info: dict[str, Any]):
carryover = chat_info.get("carryover", "")
message = chat_info.get("message")
verbose = chat_info.get("verbose", False)
sender_name = chat_info["sender"].name
recipient_name = chat_info["recipient"].name
summary_args = chat_info.get("summary_args")
max_turns = chat_info.get("max_turns")
# Fix Callable in chat_info
summary_method = chat_info.get("summary_method", "")
if callable(summary_method):
summary_method = summary_method.__name__
print_message = ""
if isinstance(message, str):
print_message = message
elif callable(message):
print_message = "Callable: " + message.__name__
elif isinstance(message, dict):
print_message = "Dict: " + str(message)
elif message is None:
print_message = "None"
super().__init__(
uuid=uuid,
carryover=carryover,
message=print_message,
verbose=verbose,
summary_method=summary_method,
summary_args=summary_args,
max_turns=max_turns,
sender_name=sender_name,
recipient_name=recipient_name,
)