Cassandra聊天消息历史#
- class langchain_community.chat_message_histories.cassandra.CassandraChatMessageHistory(session_id: str, session: Session | None = None, keyspace: str | None = None, table_name: str = 'message_store', ttl_seconds: int | None = None, *, setup_mode: SetupMode = SetupMode.SYNC)[source]#
由Cassandra支持的聊天消息历史记录。
初始化一个新的CassandraChatMessageHistory实例。
- Parameters:
session_id (str) – 用于存储单个聊天会话消息的任意键。
session (可选[Session]) – Cassandra 驱动会话。 如果未提供,则从 cassio 解析。
keyspace (可选[str]) – Cassandra 键空间。如果未提供,则从 cassio 解析。
table_name (str) – 要使用的表的名称。
ttl_seconds (可选[int]) – 存储条目的自动过期时间(秒)。默认值为 None,表示永不过期。
setup_mode (SetupMode) – 用于创建Cassandra表的模式(SYNC、ASYNC或OFF)。
属性
messages
从数据库中检索所有会话消息
方法
__init__
(session_id[, session, keyspace, ...])初始化一个新的CassandraChatMessageHistory实例。
aadd_messages
(messages)异步添加消息列表。
aclear
()从数据库中清除会话内存
add_ai_message
(message)用于将AI消息字符串添加到存储中的便捷方法。
add_message
(message)将消息写入表中
add_messages
(messages)添加消息列表。
add_user_message
(message)用于将人类消息字符串添加到存储中的便捷方法。
从数据库中检索所有会话消息
clear
()从数据库中清除会话内存
- __init__(session_id: str, session: Session | None = None, keyspace: str | None = None, table_name: str = 'message_store', ttl_seconds: int | None = None, *, setup_mode: SetupMode = SetupMode.SYNC) None [source]#
初始化一个新的CassandraChatMessageHistory实例。
- Parameters:
session_id (str) – 用于存储单个聊天会话消息的任意键。
session (可选[Session]) – Cassandra 驱动会话。 如果未提供,则从 cassio 解析。
keyspace (可选[str]) – Cassandra 键空间。如果未提供,则从 cassio 解析。
table_name (str) – 要使用的表的名称。
ttl_seconds (可选[int]) – 存储条目的自动过期时间(秒)。默认值为 None,表示永不过期。
setup_mode (SetupMode) – 用于创建Cassandra表的模式(SYNC、ASYNC或OFF)。
- Return type:
无
- async aadd_messages(messages: Sequence[BaseMessage]) None [来源]#
异步添加消息列表。
- Parameters:
messages (Sequence[BaseMessage]) – 要存储的BaseMessage对象序列。
- Return type:
无
- add_ai_message(message: AIMessage | str) None #
向存储中添加AI消息字符串的便捷方法。
请注意,这是一个便捷方法。代码应优先使用批量 add_messages 接口,以减少与底层持久层的往返次数。
此方法可能在未来的版本中被弃用。
- Parameters:
message (AIMessage | str) – 要添加的AI消息。
- Return type:
无
- add_message(message: BaseMessage) None [来源]#
向表格写入一条消息
- Parameters:
消息 (BaseMessage) – 要写入的消息。
- Return type:
无
- add_messages(messages: Sequence[BaseMessage]) None #
添加消息列表。
实现应重写此方法,以高效地处理消息的批量添加,避免对底层存储进行不必要的往返。
- Parameters:
messages (Sequence[BaseMessage]) – 要存储的BaseMessage对象序列。
- Return type:
无
- add_user_message(message: HumanMessage | str) None #
用于向存储中添加人类消息字符串的便捷方法。
请注意,这是一个便捷方法。代码应优先使用批量 add_messages 接口,以减少对底层持久层的往返次数。
此方法可能在未来的版本中被弃用。
- Parameters:
message (HumanMessage | str) – 要添加到存储中的人类消息。
- Return type:
无
- async aget_messages() List[BaseMessage] [来源]#
从数据库中检索所有会话消息
- Return type:
列表[BaseMessage]
使用CassandraChatMessageHistory的示例