langchain_community.chat_message_histories.rocksetdb
.RocksetChatMessageHistory¶
- class langchain_community.chat_message_histories.rocksetdb.RocksetChatMessageHistory(session_id: str, client: ~typing.Any, collection: str, workspace: str = 'commons', messages_key: str = 'messages', sync: bool = False, message_uuid_method: ~typing.Callable[[], ~typing.Union[str, int]] = <function RocksetChatMessageHistory.<lambda>>)[源代码]¶
使用Rockset存储聊天消息。
使用本模块,请确保已安装rockset Python包。
示例
from langchain_community.chat_message_histories import ( RocksetChatMessageHistory ) from rockset import RocksetClient history = RocksetChatMessageHistory( session_id="MySession", client=RocksetClient(), collection="langchain_demo", sync=True ) history.add_user_message("hi!") history.add_ai_message("whats up?") print(history.messages) # noqa: T201
构造一个新的RocksetChatMessageHistory。
- 参数
session_id (-) – 聊天会话的ID
client (-) – 用于查询的RocksetClient对象
collection (-) – 用于存储聊天消息的集合名称。如果在工作区中不存在具有该名称的集合,则会创建。
workspace (-) – 包含集合的文件夹。默认为“commons”
messages_key (-) – 包含消息历史的数据库列。默认为“messages”
sync (-) – 是否等待添加消息。默认为False。注意:将此设置为True会降低性能。
message_uuid_method (-) – 生成消息ID的方法。如果设置,所有消息都将具有一个位于additional_kwargs属性中的id字段。如果未设置此参数且sync为False,则不会创建消息ID。如果未设置此参数且sync为True,将使用uuid.uuid4方法创建消息ID。
属性
ADD_TIMEOUT_MS
CREATE_TIMEOUT_MS
SLEEP_INTERVAL_MS
messages
聊天历史中的消息。
方法
__init__
(session_id, client, collection[, ...])构造一个新的RocksetChatMessageHistory。
aadd_messages
(messages)异步添加一组消息。
aclear
()异步从存储中删除所有消息
add_ai_message
(message)将AI消息字符串添加到存储中的便利方法。
add_message
(message)将消息对象添加到历史记录中。
add_messages
(messages)添加消息列表。
add_user_message
(message)将人类消息字符串添加到存储中的便捷方法。
获取消息的异步版本。
clear
()从聊天历史中删除所有消息。
- __init__(session_id: str, client: ~typing.Any, collection: str, workspace: str = 'commons', messages_key: str = 'messages', sync: bool = False, message_uuid_method: ~typing.Callable[[], ~typing.Union[str, int]] = <function RocksetChatMessageHistory.<lambda>>) None [来源]¶
构造一个新的RocksetChatMessageHistory。
- 参数
session_id (-) – 聊天会话的ID
client (-) – 用于查询的RocksetClient对象
collection (-) – 用于存储聊天消息的集合名称。如果在工作区中不存在具有该名称的集合,则会创建。
workspace (-) – 包含集合的文件夹。默认为“commons”
messages_key (-) – 包含消息历史的数据库列。默认为“messages”
sync (-) – 是否等待添加消息。默认为False。注意:将此设置为True会降低性能。
message_uuid_method (-) – 生成消息ID的方法。如果设置,所有消息都将具有一个位于additional_kwargs属性中的id字段。如果未设置此参数且sync为False,则不会创建消息ID。如果未设置此参数且sync为True,将使用uuid.uuid4方法创建消息ID。
- 返回类型
None
- async aadd_messages(messages: Sequence[BaseMessage]) None ¶
异步添加一组消息。
- 参数
messages (Sequence[BaseMessage]) – 要存储的 BaseMessage 对象的序列。
- 返回类型
None
- async aclear() None ¶
异步从存储中删除所有消息
- 返回类型
None
- add_ai_message(message: Union[AIMessage, str]) None ¶
将AI消息字符串添加到存储中的便利方法。
请注意,这是一个便捷方法。代码应优先使用批量添加消息接口,以减少对底层持久化层的往返。
此方法可能在未来的版本中被弃用。
- 参数
message (Union[AIMessage, str]) –要添加的AI消息。
- 返回类型
None
- add_message(message: BaseMessage) None [source]¶
将消息对象添加到历史记录中。
- 参数
message (BaseMessage) – 要存储的BaseMessage对象。
- 返回类型
None
- add_messages(messages: Sequence[BaseMessage]) None ¶
添加消息列表。
实现此方法来高效地处理批量添加消息,以避免不必要的底层存储往返。
- 参数
messages (Sequence[BaseMessage]) – 要存储的 BaseMessage 对象的序列。
- 返回类型
None
- add_user_message(message: Union[HumanMessage, str]) None ¶
将人类消息字符串添加到存储中的便捷方法。
请注意,这是一个便捷方法。代码应优先使用批量添加消息接口,以减少对底层持久化层的往返。
此方法可能在未来的版本中被弃用。
- 参数
message (Union[HumanMessage, str]) – 要添加到存储中的人类消息。
- 返回类型
None
- async aget_messages() List[BaseMessage] ¶
获取消息的异步版本。
可以覆盖此方法以提供高效的异步实现。
通常,获取消息可能涉及到底层数据持久化层的I/O操作。
- 返回类型
列表[BaseMessage]