Seelenmaschine v0.9.1 升级报告
概览
项目地址:https://github.com/fluviusmagnus/Seelenmaschine
升级时间范围: 从 commit 8a6d65b 到 fe4db49
本次升级是破坏兼容性的全面升级。请关注以下事项,并按提示进行数据迁移。
主要架构变更
1. 界面框架重构
- 移除: Flask Web UI (完整的 Web 界面和 CLI 模式)
新增: 纯 Telegram Bot 模式
- 不再支持 Web 界面
- 专注于 Telegram 交互体验
2. 向量数据库迁移
- 移除: LanceDB 向量数据库
新增: SQLite + sqlite-vec(内置向量扩展)
- 无需外部向量数据库
- 简化部署和维护
核心功能增强
1. 记忆系统重构
新增完整三层记忆架构:
- 短期记忆: Context Window 管理 + 自动总结
- 中期记忆: Embedding + Rerank 智能检索
- 长期记忆: JSON 结构化人格与用户档案
检索系统增强:
- 二阶检索(摘要 → 对话)
- Rerank 模型重排序
- 时间感知的上下文注入
- 新增 FTS5 全文搜索(支持布尔运算符)
- 新增自我查询工具(LLM 主动搜索记忆)
2. MCP 支持增强
- 支持多种传输方式(stdio、HTTP、SSE)
- 工具缓存机制
- 更好的错误处理
3. 新增定时任务系统
- 支持一次性任务和间隔任务
- LLM 接口管理任务
- 数据库存储持久化
4. 新增 Profile 配置系统
- 多环境配置支持
- 独立数据目录(
data/<profile>/) - 启动命令:
python src/main_telegram.py <profile>
代码结构重构
新增核心模块
src/
├── core/ # 核心模块
│ ├── database.py # SQLite + sqlite-vec
│ ├── memory.py # 记忆系统
│ ├── context.py # Context Window 管理
│ ├── retriever.py # 记忆检索
│ └── scheduler.py # 定时任务
├── llm/
│ ├── client.py # LLM 客户端
│ ├── embedding.py # Embedding 客户端
│ └── reranker.py # Rerank 客户端
├── tools/
│ ├── mcp_client.py
│ ├── memory_search.py
│ └── scheduled_task_tool.py
└── prompts/
├── system.py
├── summary.py
└── memory_update.py移除/合并模块
main.py→main_telegram.pychatbot.py(重构整合到各模块)llm.py(拆分为 llm/ 目录)prompts.py(拆分到 prompts/ 目录)flask_webui.py和 templates/ 目录 (移除)database_maintenance.py(移除)
配置变更
新增配置项
# Context Window
CONTEXT_WINDOW_KEEP_MIN=12
CONTEXT_WINDOW_TRIGGER_SUMMARY=24
RECENT_SUMMARIES_MAX=3
# 记忆检索
RECALL_SUMMARY_PER_QUERY=3
RECALL_CONV_PER_SUMMARY=4
RERANK_TOP_SUMMARIES=3
RERANK_TOP_CONVS=6
# MCP
ENABLE_MCP=false
MCP_CONFIG_PATH=mcp_servers.json
# 时区
TIMEZONE=Asia/Shanghai移除的配置项
# 旧记忆系统
MAX_CONV_NUM=20
REFRESH_EVERY_CONV_NUM=10
RECALL_SESSION_NUM=2
RECALL_CONV_NUM=4数据库结构变更
新数据库表结构 (SQLite)
-- 会话表
sessions (id, start_time, end_time, status)
-- 对话表
conversations (id, session_id, role, content, timestamp)
-- 摘要表
summaries (id, session_id, summary_text, timestamp)
-- 向量表 (sqlite-vec)
texts (text_id, text_type, text_content, vec_embedding)
-- 定时任务表
scheduled_tasks (id, task_type, trigger_time, interval_seconds, ...)移除的存储
- LanceDB 向量数据库
- persona_memory.txt / user_profile.txt (合并为 seele.json)
启动方式变更
新的启动方式
# Telegram Bot
python src/main_telegram.py <profile>
./start-telegram.sh <profile> # Linux/macOS
start-telegram.bat <profile> # Windows移除的启动方式
# CLI 模式
python src/main.py <profile>
# Flask Web UI
python src/main.py <profile> --flask
start-flask-webui.sh <profile>文档更新
新增文档
docs/SCHEDULED_TASKS.md- 定时任务指南docs/SEARCH_EXAMPLES.md- 搜索功能示例migration/README.md- 数据迁移指南AGENTS.md- AI 辅助开发指南
移除文档
MCP_USAGE.md(内容整合到 README)DATABASE_MAINTENANCE_README.md
测试框架
新增测试
pytest tests/
pytest tests/test_database.py
pytest tests/test_memory.py
pytest tests/test_retriever.py
pytest tests/test_llm.py总结
这次升级是一次重大架构重构,主要变化包括:
- 简化架构: 从 Flask Web UI 切换到纯 Telegram Bot
- 一体化存储: 从 LanceDB + SQLite 统一到 SQLite + sqlite-vec
- 增强的记忆系统: 完整的三层记忆架构、FTS5 全文搜索、自我查询
- 新增功能: 定时任务、Profile 配置系统、改进的 MCP 支持
- 代码质量: 模块化设计、完善的测试、详细的文档
这些变化使 Seelenmaschine 更加专注于核心功能——作为具有持久记忆和人格的 AI 助手,同时简化了部署和维护。