Skip to main content

Blaflow 中的记忆体组件

记忆组件通过session_id存储和检索聊天消息。

它们与向量存储组件不同,因为它们是专门为从外部数据库存储和检索聊天消息而构建的。

记忆组件提供对其各自外部数据库的访问作为记忆。这使得大型语言模型(LLMs)或智能体能够访问外部记忆以实现持久性和上下文保留。

在流程中使用记忆组件

这个示例流程使用Astra DB 聊天记忆组件与存储消息聊天记忆组件一起存储和检索聊天历史记录。

存储消息辅助组件将聊天记忆存储为数据对象,而消息历史辅助组件将聊天消息检索为数据对象或字符串。

在AstraDB中存储聊天记忆的示例流程

AstraDB 聊天记忆组件

该组件创建一个AstraDBChatMessageHistory实例,使用 Astra DB(一种云原生数据库服务)存储和检索聊天消息。

输入

名称类型描述
collection_name字符串用于存储消息的 Astra DB 集合名称。必需。
token秘密字符串Astra DB 访问的身份验证令牌。必需。
api_endpoint秘密字符串Astra DB 服务的 API 端点 URL。必需。
namespace字符串Astra DB 中集合的可选命名空间。
session_id消息文本聊天会话 ID。如果未提供,则使用当前会话 ID。

输出

名称类型描述
message_history基础聊天消息历史会话的 AstraDBChatMessageHistory 实例。

Cassandra 聊天记忆组件

该组件创建一个CassandraChatMessageHistory实例,支持使用 Apache Cassandra 或 DataStax Astra DB 存储和检索聊天消息。

输入

名称类型描述
database_ref消息文本Cassandra 的联系点或 Astra DB 数据库 ID。必需。
username消息文本Cassandra 的用户名(对于 Astra DB 留空)。
token秘密字符串Cassandra 的密码或 Astra DB 的令牌。必需。
keyspace消息文本Cassandra 中的键空间或 Astra DB 中的命名空间。必需。
table_name消息文本用于存储消息的表或集合名称。必需。
session_id消息文本聊天会话的唯一标识符。可选。
cluster_kwargs字典Cassandra 集群配置的额外关键字参数。可选。

输出

名称类型描述
message_history基础聊天消息历史会话的 CassandraChatMessageHistory 实例。

Mem0 聊天记忆

Mem0 聊天记忆组件使用 Mem0 记忆存储检索和存储聊天消息。

输入

名称显示名称信息
mem0_configMem0 配置初始化 Mem0 记忆实例的配置字典。
ingest_message要摄入的消息要摄入到 Mem0 记忆中的消息内容。
existing_memory现有记忆实例可选的现有 Mem0 记忆实例。
user_id用户 ID与消息关联的用户标识符。
search_query搜索查询用于在 Mem0 中搜索相关记忆的输入文本。
mem0_api_keyMem0 API 密钥Mem0 平台的 API 密钥(留空则使用本地版本)。
metadata元数据与摄入消息关联的额外元数据。
openai_api_keyOpenAI API 密钥OpenAI 的 API 密钥。如果使用 OpenAI 嵌入而没有提供配置,则需要此项。

输出

名称显示名称信息
memoryMem0 记忆摄入数据后得到的 Mem0 记忆对象。
search_results搜索结果从 Mem0 记忆查询得到的搜索结果。

Redis 聊天记忆

该组件从 Redis 检索和存储聊天消息。

输入

名称显示名称信息
host主机名IP 地址或主机名。
port端口Redis 端口号。
database数据库Redis 数据库。
username用户名Redis 用户名。
password密码用户名的密码。
key_prefix键前缀键前缀。
session_id会话 ID消息的会话 ID。

输出

名称显示名称信息
memory记忆Redis 聊天消息历史对象

ZepChatMemory 组件

该组件创建一个ZepChatMessageHistory实例,支持使用 Zep(大型语言模型(LLMs)的记忆服务器)存储和检索聊天消息。

输入

名称类型描述
url消息文本Zep 实例的 URL。必需。
api_key秘密字符串用于与 Zep 实例进行身份验证的 API 密钥。
api_base_path下拉菜单要使用的 API 版本。选项:"api/v1"或"api/v2"。
session_id消息文本聊天会话的唯一标识符。可选。

输出

名称类型描述
message_history基础聊天消息历史会话的 ZepChatMessageHistory 实例。