meeting_memory/README.md

115 lines
2.5 KiB
Markdown
Raw Normal View History

2026-06-09 02:38:24 +00:00
# 会议纪要长期记忆系统
基于 `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)。