langchain_community.chat_message_histories.mongodb.MongoDBChatMessageHistory

class langchain_community.chat_message_histories.mongodb.MongoDBChatMessageHistory(connection_string: str, session_id: str, database_name: str = 'chat_history', collection_name: str = 'message_store', create_index: bool = True)[来源]

自版本 0.0.25 被弃用:改用 langchain_mongodb.MongoDBChatMessageHistory

存储聊天历史消息的 MongoDB。

参数
  • connection_string (str) – 连接到 MongoDB 的连接字符串

  • session_id (str) – 用于存储单个聊天会话消息的任意键。

  • database_name (str) – 要使用的数据库名称

  • collection_name (str) – 要使用的集合名称

  • create_index (bool) – 是否创建名为 SessionId 的索引。如果已存在此类索引,则设置为 False。

属性

messages

从 MongoDB 中检索消息

方法

__init__(connection_string, session_id[, ...])

aadd_messages(messages)

异步添加消息列表。

aclear()

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

add_ai_message(message)

为添加 AI 消息字符串到存储提供便利的方法。

add_message(message)

将消息添加到 MongoDB 中的记录

add_messages(messages)

添加消息列表。

add_user_message(message)

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

aget_messages()

获取消息的异步版本。

clear()

从MongoDB清除非会话内存。

__init__(connection_string: str, session_id: str, database_name: str = 'chat_history', collection_name: str = 'message_store', create_index: bool = True)[source]
参数
  • connection_string (str) –

  • session_id (str) –

  • database_name (str) –

  • collection_name (str) –

  • create_index (bool) –

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 消息字符串到存储提供便利的方法。

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

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

参数

消息 (联合[AIMessagestr]) – 待添加的人工智能消息。

返回类型

None

add_message(message: BaseMessage) None[源代码]

将消息添加到 MongoDB 中的记录

参数

消息 (BaseMessage) –

返回类型

None

add_messages(messages: Sequence[BaseMessage]) None

添加消息列表。

实现应该重写此方法以高效处理消息的批量添加,以避免不必要的底层存储往返。

参数

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

返回类型

None

add_user_message(message: Union[HumanMessagestr]) None

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

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

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

参数

消息 (联合[HumanMessagestr]) – 添加到存储中的人类消息。

返回类型

None

asyncaget_messages() List[BaseMessage]

获取消息的异步版本。

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

通常,获取消息可能涉及到底层数据库的输入输出操作。

返回类型

列表BaseMessage

clear() None[源代码]

从MongoDB清除非会话内存。

返回类型

None