langchain_community.chat_message_histories.firestore
.FirestoreChatMessageHistory¶
- class langchain_community.chat_message_histories.firestore.FirestoreChatMessageHistory(collection_name: str, session_id: str, user_id: str, firestore_client: Optional[Client] = None)[source]¶
基于Google Firestore的聊天消息历史。
初始化FirestoreChatMessageHistory类的新实例。
- 参数
collection_name (str) – 使用的数据集名称。
session_id (str) – 聊天的会话ID。
user_id (str) – 聊天的用户ID。
firestore_client (Optional[Client]) –
属性
messages
返回消息列表的属性或属性。
方法
__init__
(collection_name, session_id, user_id)初始化FirestoreChatMessageHistory类的新实例。
aadd_messages
(messages)异步添加一系列消息。
aclear
()异步从存储中删除所有消息。
add_ai_message
(message)向存储添加AI消息字符串的便捷方法。
add_message
(message)向存储添加消息对象。
add_messages
(messages)添加一系列消息。
add_user_message
(message)向存储添加人类消息字符串的便捷方法。
获取消息的异步版本。
clear
()从此内存和Firestore清除会话内存。
从Firestore检索消息。
准备Firestore客户端。
upsert_messages
([new_message])更新 Firestore 文档。
- __init__(collection_name: str, session_id: str, user_id: str, firestore_client: Optional[Client] = None)[source]¶
初始化FirestoreChatMessageHistory类的新实例。
- 参数
collection_name (str) – 使用的数据集名称。
session_id (str) – 聊天的会话ID。
user_id (str) – 聊天的用户ID。
firestore_client (Optional[Client]) –
- 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消息字符串的便捷方法。
请注意,这是一个方便方法。代码应优先使用批量 add_messages 界面,以减少对底层持久化层的往返。
此方法可能在未来的版本中被弃用。
- 参数
message (Union[AIMessage, str]) – 要添加的 AI 消息。
- 返回类型
None
- add_message(message: BaseMessage) None [source]¶
向存储添加消息对象。
- 参数
message (BaseMessage) – 要存储的 BaseMessage 对象。
- 异常
NotImplementedError – 如果子类没有实现高效的 add_messages 方法。
- 返回类型
None
- add_messages(messages: Sequence[BaseMessage]) None ¶
添加一系列消息。
实现应重写此方法,以高效地处理消息的批量添加,以避免对底层存储进行不必要的来回循环。
- 参数
messages (Sequence[BaseMessage]) – 存储要存储的 BaseMessage 对象序列。
- 返回类型
None
- add_user_message(message: Union[HumanMessage, str]) None ¶
向存储添加人类消息字符串的便捷方法。
请注意,这是一个方便方法。代码应优先使用批量 add_messages 界面,以减少对底层持久化层的往返。
此方法可能在未来的版本中被弃用。
- 参数
message (Union[HumanMessage, str]) – 要添加到存储中的人类消息。
- 返回类型
None
- async aget_messages() List[BaseMessage] ¶
获取消息的异步版本。
可以重写此方法以提供高效的异步实现。
通常,获取消息可能涉及到对底层持久层的IO操作。
- 返回类型
List[BaseMessage]
- upsert_messages(new_message: Optional[BaseMessage] = None) None [源代码]¶
更新 Firestore 文档。
- 参数
new_message (可选[BaseMessage]) –
- 返回类型
None