# 会议纪要长期记忆系统 基于 `LLM + LlamaIndex + 本地状态存储` 的会议纪要长期记忆原型,当前聚焦三件事: - 会议内容结构化抽取 - 跨会议行动项与指标状态追踪 - 语义检索与重复内容过滤 ## 当前处理链路 ```text meeting.md -> 内容哈希去重 -> 语义相似去重 -> LLM 结构化抽取 -> 状态合并 -> 原文归档到 data/raw -> 写入向量索引 ``` 当前版本已经移除了 `Obsidian` 作为主流程依赖,后续会继续引入图数据库来承载关系层。 ## 快速开始 ```bash cd meeting_memory python -m venv .venv .venv\Scripts\pip install -r requirements.txt copy .env.example .env # 然后补充 API 配置 .venv\Scripts\python main.py process meeting_example.md ``` ## 用法 ```bash python main.py python main.py process meeting_example.md python main.py process meeting_example.md -f python main.py query "弱光指标目标值是多少" python main.py stats python main.py text "今天会议讨论了..." python main.py batch "meetings/*.md" -f ``` ## 目录 ```text meeting_memory/ ├── config.py 配置 ├── extractor.py LLM 结构化抽取 ├── meeting_processor.py 主处理流程 ├── meeting_state.py 跨会议状态追踪 ├── raw_store.py 原文归档 ├── vector_store.py 向量索引与语义检索 ├── main.py CLI 入口 ├── data/ │ ├── raw/ 原始会议文本归档 │ └── meeting_state.json 状态持久化 └── vector_store_data/ 向量索引持久化目录 ``` ## 核心能力 ### 1. 结构化抽取 从会议文本中提取: - 标题、日期、参会人 - 实体 - 关系 - 行动项 - 指标 - 决策 - 摘要 ### 2. 长期状态追踪 - 行动项按 `task + assignee` 做稳定 ID - 指标按 `metric_name + owner` 做稳定 ID - 保留历史状态演化 - 支持跨会议合并 ### 3. 双重去重 - 内容哈希精确去重 - 语义相似度去重 ### 4. 语义检索 - 会议内容写入向量库 - 支持自然语言查询 - 索引持久化,重启自动加载 ## 配置 编辑 `.env`: ```ini LLM_API_KEY=sk-xxx LLM_BASE_URL=https://api.deepseek.com/v1 LLM_MODEL=deepseek-chat EMBEDDING_API_KEY=sk-xxx EMBEDDING_BASE_URL=https://api.openai.com/v1 EMBEDDING_MODEL=text-embedding-3-small ``` ## 迁移计划 当前迁移进度见 [MIGRATION_TASKS.md](/d:/github_project/my_code/meeting_memory/MIGRATION_TASKS.md:1)。