Haystack 的 Writer。
Module haystack_experimental.components.writers.chat_message_writer
ChatMessageWriter
将聊天消息写入底层的 ChatMessageStore。
使用示例
from haystack.dataclasses import ChatMessage
from haystack_experimental.components.writers import ChatMessageWriter
from haystack_experimental.chat_message_stores.in_memory import InMemoryChatMessageStore
messages = [
ChatMessage.from_assistant("Hello, how can I help you?"),
ChatMessage.from_user("I have a question about Python."),
]
message_store = InMemoryChatMessageStore()
writer = ChatMessageWriter(message_store)
writer.run(messages)
ChatMessageWriter.__init__
def __init__(message_store: ChatMessageStore)
创建一个 ChatMessageWriter 组件。
参数:
message_store: 要将聊天消息写入的 ChatMessageStore。
ChatMessageWriter.to_dict
def to_dict() -> Dict[str, Any]
将组件序列化为字典。
返回值:
包含序列化数据的字典。
ChatMessageWriter.from_dict
@classmethod
def from_dict(cls, data: Dict[str, Any]) -> "ChatMessageWriter"
从字典反序列化组件。
参数:
data: 要反序列化的字典。
引发:
DeserializationError: 如果在序列化数据中未正确指定 message store 或其类型无法导入。
返回值:
反序列化后的组件。
ChatMessageWriter.run
@component.output_types(messages_written=int)
def run(messages: List[ChatMessage]) -> Dict[str, int]
在给定输入数据上运行 ChatMessageWriter。
参数:
messages: 要写入 store 的聊天消息列表。
引发:
ValueError: 如果指定的 message store 未找到。
返回值:
messages_written: 写入 ChatMessageStore 的消息数量。
