Couchbase聊天消息历史#
- class langchain_couchbase.chat_message_histories.CouchbaseChatMessageHistory(*, cluster: Cluster, bucket_name: str, scope_name: str, collection_name: str, session_id: str, session_id_key: str = 'session_id', message_key: str = 'message', create_index: bool = True, ttl: timedelta | None = None)[源代码]#
Couchbase 聊天消息历史 使用 Couchbase 作为存储的聊天消息历史
初始化Couchbase聊天消息历史 :param cluster: 具有活动连接的couchbase集群对象。 :type cluster: Cluster :param bucket_name: 存储文档的桶的名称。 :type bucket_name: str :param scope_name: 存储文档的桶中的范围的名称。 :type scope_name: str :param collection_name: 存储文档的范围中的集合的名称。
文档在。
- Parameters:
session_id (str) – 用于关联来自单个聊天会话的消息的会话值。它作为聊天消息中的一个字段存储。
session_id_key (str) – 用于会话ID的字段名称。 默认设置为“session_id”。
message_key (str) – 用于消息的字段名称 默认设置为“message”。
create_index (bool) – 如果为True,则创建索引。默认设置为True。
ttl (timedelta) – 集合中文档的生存时间。 设置后,文档在 ttl 过期后会自动删除。
cluster (Cluster)
bucket_name (str)
scope_name (str)
collection_name (str)
属性
messages
获取与session_id关联的缓存中的所有消息
方法
__init__
(*, cluster, bucket_name, ...[, ...])初始化Couchbase聊天消息历史记录 :param cluster: 具有活动连接的couchbase集群对象。 :type cluster: Cluster :param bucket_name: 存储文档的桶的名称。 :type bucket_name: str :param scope_name: 存储文档的桶中的范围的名称。 :type scope_name: str :param collection_name: 存储文档的范围中的集合的名称。 :type collection_name: str :param session_id: 用于关联来自单个聊天会话的消息的会话值。它作为聊天消息中的一个字段存储。 :type session_id: str :param session_id_key: 用于会话ID的字段名称。默认设置为"session_id"。 :type session_id_key: str :param message_key: 用于消息的字段名称。默认设置为"message"。 :type message_key: str :param create_index: 如果为True,则创建索引。默认设置为True。 :type create_index: bool :param ttl: 集合中文档的生存时间。设置后,文档在ttl到期后自动删除。 :type ttl: timedelta.
aadd_messages
(messages)异步添加消息列表。
aclear
()异步从存储中移除所有消息
add_ai_message
(message)方便的方法,用于将AI消息字符串添加到存储中。
add_message
(message)向缓存中添加一条消息
add_messages
(messages)以批处理方式将消息添加到缓存中
add_user_message
(message)用于将人类消息字符串添加到存储中的便捷方法。
获取消息的异步版本。
clear
()清除缓存
- __init__(*, cluster: Cluster, bucket_name: str, scope_name: str, collection_name: str, session_id: str, session_id_key: str = 'session_id', message_key: str = 'message', create_index: bool = True, ttl: timedelta | None = None) None [来源]#
初始化Couchbase聊天消息历史 :param cluster: 具有活动连接的couchbase集群对象。 :type cluster: Cluster :param bucket_name: 存储文档的桶的名称。 :type bucket_name: str :param scope_name: 存储文档的桶中的范围的名称。 :type scope_name: str :param collection_name: 存储文档的范围中的集合的名称。
文档在。
- Parameters:
session_id (str) – 用于关联来自单个聊天会话的消息的会话值。它作为聊天消息中的一个字段存储。
session_id_key (str) – 用于会话ID的字段名称。 默认设置为“session_id”。
message_key (str) – 用于消息的字段名称 默认设置为“message”。
create_index (bool) – 如果为True,则创建索引。默认设置为True。
ttl (timedelta) – 集合中文档的生存时间。 设置后,文档在 ttl 过期后会自动删除。
cluster (Cluster)
bucket_name (str)
scope_name (str)
collection_name (str)
- 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 [来源]#
向缓存添加一条消息
- Parameters:
消息 (BaseMessage)
- Return type:
无
- add_messages(messages: Sequence[BaseMessage]) None [source]#
以批处理方式将消息添加到缓存中
- Parameters:
消息 (序列[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]