langchain_community.chat_message_histories.cosmos_db
.CosmosDBChatMessageHistory¶
- class langchain_community.chat_message_histories.cosmos_db.CosmosDBChatMessageHistory(cosmos_endpoint: str, cosmos_database: str, cosmos_container: str, session_id: str, user_id: str, credential: Any = None, connection_string: Optional[str] = None, ttl: Optional[int] = None, cosmos_client_kwargs: Optional[dict] = None)[source]¶
使用Azure CosmosDB支持的聊天消息历史记录。
初始化一个新的 CosmosDBChatMessageHistory 类的实例。
确保调用 prepare_cosmos 或使用上下文管理器来确保你的数据库已经准备就绪。
必须提供凭据或连接字符串之一。
- Parameters
cosmos_endpoint (str) – Azure Cosmos DB 账户的连接端点。
cosmos_database (str) – 要使用的数据库的名称。
cosmos_container (str) – 要使用的容器的名称。
session_id (str) – 要使用的会话 ID,在加载时可以被覆盖。
user_id (str) – 要使用的用户 ID,在加载时可以被覆盖。
credential (Any) – 用于在 Azure Cosmos DB 进行身份验证的凭据。
connection_string (Optional[str]) – 用于进行身份验证的连接字符串。
ttl (Optional[int]) – 用于容器中文档的存活时间(以秒为单位)。
cosmos_client_kwargs (Optional[dict]) – 传递给 CosmosClient 的额外 kwargs。
Attributes
messages
一个返回消息列表的属性或特性。
Methods
__init__
(cosmos_endpoint, cosmos_database, ...)初始化一个新的 CosmosDBChatMessageHistory 类的实例。
aadd_messages
(messages)添加一个消息列表。
aclear
()从存储中删除所有消息。
add_ai_message
(message)便利方法,用于将AI消息字符串添加到存储中。
add_message
(message)向商店添加一个自定义消息
add_messages
(messages)添加消息列表。
add_user_message
(message)方便的方法,用于向存储添加人类消息字符串。
异步版本的获取消息。
clear
()清除此内存和宇宙中的会话内存。
从 Cosmos 检索消息
准备CosmosDB客户端。
更新cosmosdb项。
- __init__(cosmos_endpoint: str, cosmos_database: str, cosmos_container: str, session_id: str, user_id: str, credential: Any = None, connection_string: Optional[str] = None, ttl: Optional[int] = None, cosmos_client_kwargs: Optional[dict] = None)[source]¶
初始化一个新的 CosmosDBChatMessageHistory 类的实例。
确保调用 prepare_cosmos 或使用上下文管理器来确保你的数据库已经准备就绪。
必须提供凭据或连接字符串之一。
- Parameters
cosmos_endpoint (str) – Azure Cosmos DB 账户的连接端点。
cosmos_database (str) – 要使用的数据库的名称。
cosmos_container (str) – 要使用的容器的名称。
session_id (str) – 要使用的会话 ID,在加载时可以被覆盖。
user_id (str) – 要使用的用户 ID,在加载时可以被覆盖。
credential (Any) – 用于在 Azure Cosmos DB 进行身份验证的凭据。
connection_string (Optional[str]) – 用于进行身份验证的连接字符串。
ttl (Optional[int]) – 用于容器中文档的存活时间(以秒为单位)。
cosmos_client_kwargs (Optional[dict]) – 传递给 CosmosClient 的额外 kwargs。
- async aadd_messages(messages: Sequence[BaseMessage]) None ¶
添加一个消息列表。
- 参数:
messages: 要存储的BaseMessage对象列表。
- Parameters
messages (Sequence[BaseMessage]) –
- Return type
None
- async aclear() None ¶
从存储中删除所有消息。
- Return type
None
- add_ai_message(message: Union[AIMessage, str]) None ¶
便利方法,用于将AI消息字符串添加到存储中。
请注意,这是一个便利方法。 代码应该更倾向于使用bulk add_messages接口,以节省对底层持久性层的往返次数。
这种方法可能在将来的版本中被弃用。
- 参数:
message: 要添加的AI消息。
- Parameters
message (Union[AIMessage, str]) –
- Return type
None
- add_message(message: BaseMessage) None [source]¶
向商店添加一个自定义消息
- Parameters
message (BaseMessage) –
- Return type
None
- add_messages(messages: Sequence[BaseMessage]) None ¶
添加消息列表。
实现应该重写此方法,以有效地处理消息的批量添加,以避免不必要地往基础存储中进行往返。
- 参数:
messages: 要存储的 BaseMessage 对象列表。
- Parameters
messages (Sequence[BaseMessage]) –
- Return type
None
- add_user_message(message: Union[HumanMessage, str]) None ¶
方便的方法,用于向存储添加人类消息字符串。
请注意,这是一个方便的方法。代码应该更倾向于使用批量add_messages接口,以节省对底层持久性层的往返次数。
这种方法可能在将来的版本中被弃用。
- 参数:
message: 要添加的人类消息
- Parameters
message (Union[HumanMessage, str]) –
- Return type
None
- async aget_messages() List[BaseMessage] ¶
异步版本的获取消息。
可以重写此方法以提供高效的异步实现。
通常,获取消息可能涉及到与底层持久化层的IO操作。
- Return type
List[BaseMessage]