版本: 6.3
作者: 南风 (二改 Bryce)
兼容 Open-WebUI 版本: >= 0.5.0
超级记忆助手 是一个为 Open-WebUI 设计的高级后台插件。它旨在赋予您的 AI 助手一个动态、智能且持久的长期记忆系统。
与简单的记忆存储不同,本插件能够自动分析对话、提取关键信息、整合冲突或重叠的记忆、并在后台将零散的记忆片段聚合成连贯的摘要。它通过一个复杂的二级缓存系统和智能去重机制,确保了高效的性能和高质量的记忆管理。
插件在每次对话后以后台任务的形式执行以下流程:
super_memory.py 文件复制到您的 Open-WebUI 安装目录下的 backend/data/filters 文件夹中。api_url: 用于自然语言处理的 LLM API 地址 (例如, https://api.openai.com/v1/chat/completions)。api_key: 对应的 API 密钥。model: 指定使用的模型。以下是所有可用的配置项及其说明。您可以在 Open-WebUI 的插件设置界面中进行修改。
| 配置项 | 默认值 | 描述 |
|---|---|---|
| 【总开关】 | ||
enabled | True | 控制整个超级记忆插件的启用或禁用。关闭后,所有功能将不运行。 |
| 【核心 API 配置】 | ||
api_url | https://api.openai.com/v1/chat/completions | 用于记忆提取、整合和摘要的 LLM API 端点。 |
api_key | "" | 访问上述 LLM API 所必需的密钥。 |
model | gpt-4o | 指定用于处理记忆的语言模型。 |
| 【界面与范围】 | ||
show_stats | True | 在对话后于 UI 底部显示详细的性能和记忆统计数据。 |
messages_to_consider | 6 | 提取新记忆时分析的最新对话轮次数量(3 轮用户-AI 对话)。 |
timezone | Asia/Shanghai | 为新记忆添加时间戳时使用的时区。 |
| 【实时整合与去重】 | ||
consolidation_threshold | 0.6 | 实时整合触发阈值。当提取到新信息时,根据此相似度阈值查找相关旧记忆。 |
semantic_dedup_threshold | 0.9 | 语义去重判断阈值。用于判断两条信息是否在语义上重复。建议设为较高值。 |
intelligent_dedup_k | 5 | 智能去重分析数量。为每条新信息查找最相关的 K 条已有记忆,交由 LLM 判断。 |
| 【按量摘要任务】 | ||
enable_on_demand_summarization | True | 启用或禁用按量记忆摘要功能。 |
summarize_after_n_memories | 10 | 为某个用户累积了多少条新记忆后,触发一次摘要任务。 |
summarization_cluster_threshold | 0.65 | 摘要任务中,用于将相似旧记忆聚类的相似度阈值。 |
summarization_min_cluster_size | 3 | 一个记忆簇至少需要包含多少条记忆才能被摘要。 |
summarization_min_memory_age_days | 3 | 记忆需要「陈旧」到多少天以上才会被纳入摘要范围。 |
| 【嵌入与缓存配置】 | ||
embedding_api_url | https://api.openai.com/v1/embeddings | 用于生成嵌入向量的 API 端点地址。 |
embedding_api_key | "" | 访问嵌入 API 的密钥。如果留空,将默认使用核心 API 密钥。 |
embedding_model | text-embedding-3-small | 指定使用的嵌入模型名称。 |
enable_embedding_cache | True | 【L1 缓存】启用或禁用嵌入向量的内存缓存。 |
embedding_cache_size_limit | 1000 | 【L1 缓存】内存中最多可以缓存的嵌入向量条数。 |
persist_embeddings_to_disk | True | 【L2 缓存】将嵌入向量持久化到磁盘,以在重启后恢复。 |
delete_memory_by_id 函数。这确保了当您在界面上手动删除一条记忆时,与之关联的 L1 和 L2 缓存文件也能被同步清理,防止了“孤儿缓存”的产生。backend/data/super_memory_cache 目录下,并根据嵌入模型、用户 ID 和记忆 ID 进行结构化组织。
Open WebUI Enterprise — White-labeling, SSO, and dedicated support for your team.