文件聊天消息历史#

class langchain_community.chat_message_histories.file.FileChatMessageHistory(file_path: str, *, encoding: str | None = None, ensure_ascii: bool = True)[source]#

聊天消息历史记录,将历史记录存储在本地文件中。

初始化聊天历史记录的文件路径。 :param file_path: 用于存储聊天历史记录的本地文件路径。 :param encoding: 用于文件操作的编码。默认为None。 :param ensure_ascii: 如果为True,则在JSON中转义非ASCII字符。默认为True。

属性

messages

从本地文件中检索消息

方法

__init__(file_path, *[, encoding, ensure_ascii])

初始化聊天历史记录的文件路径。

aadd_messages(messages)

异步添加消息列表。

aclear()

异步从存储中移除所有消息

add_ai_message(message)

用于将AI消息字符串添加到存储中的便捷方法。

add_message(message)

将消息追加到本地文件的记录中

add_messages(messages)

添加消息列表。

add_user_message(message)

方便的方法,用于将人类消息字符串添加到存储中。

aget_messages()

获取消息的异步版本。

clear()

清除本地文件中的会话内存

Parameters:
  • file_path (str)

  • encoding (str | None)

  • ensure_ascii (bool)

__init__(file_path: str, *, encoding: str | None = None, ensure_ascii: bool = True) None[源代码]#

初始化聊天历史记录的文件路径。 :param file_path: 用于存储聊天历史记录的本地文件路径。 :param encoding: 用于文件操作的编码。默认为None。 :param ensure_ascii: 如果为True,则在JSON中转义非ASCII字符。默认为True。

Parameters:
  • file_path (str)

  • encoding (str | None)

  • ensure_ascii (bool)

Return type:

async aadd_messages(messages: Sequence[BaseMessage]) None#

异步添加消息列表。

Parameters:

messages (Sequence[BaseMessage]) – 要存储的BaseMessage对象序列。

Return type:

async aclear() None#

异步从存储中移除所有消息

Return type:

add_ai_message(message: AIMessage | str) None#

向存储中添加AI消息字符串的便捷方法。

请注意,这是一个便捷方法。代码应优先使用批量 add_messages 接口,以减少与底层持久层的往返次数。

此方法可能在未来的版本中被弃用。

Parameters:

message (AIMessage | str) – 要添加的AI消息。

Return type:

add_message(message: BaseMessage) None[source]#

将消息附加到本地文件中的记录

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]#

获取消息的异步版本。

可以重写此方法以提供高效的异步实现。

通常,获取消息可能涉及到底层持久层的IO操作。

Return type:

列表[BaseMessage]

clear() None[source]#

从本地文件清除会话内存

Return type: