Files
insightflow/STATUS.md
2026-02-21 06:03:20 +08:00

270 lines
9.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# InsightFlow 开发状态
**最后更新**: 2026-02-21 06:05
## 当前阶段
Phase 5: 高级功能 - **已完成 ✅**
Phase 6: 企业级功能 - **规划中 📋**
## 部署状态
- **服务器**: 122.51.127.111:18000 ✅ 运行中
- **Neo4j**: 122.51.127.111:7474 (HTTP), 122.51.127.111:7687 (Bolt) ⏸️ 待部署
- **Git 版本**: f38e060 - Phase 5: Enhance Neo4j graph visualization
## 已完成
### Phase 1-3 (已完成 ✅)
- FastAPI 项目框架搭建
- SQLite 数据库设计
- 阿里云听悟 ASR 集成
- OSS 上传模块
- 实体提取与对齐逻辑
- 关系提取
- 项目 CRUD API
- 音频上传与分析 API
- D3.js 知识图谱可视化
- 实体列表展示
- 转录文本中实体高亮显示
- 图谱与文本联动
### Phase 4 - Agent 助手 (已完成 ✅)
- ✅ 创建 llm_client.py - Kimi API 客户端
- 支持流式/非流式聊天
- 带置信度的实体提取
- RAG 问答功能
- Agent 指令解析
- 实体演变分析
- ✅ 更新 db_manager.py - 新增方法
- `get_relation_with_details()` - 获取关系详情
- `get_entity_with_mentions()` - 获取实体及提及
- `search_entities()` - 搜索实体
- `update_entity()` - 更新实体
- `get_project_summary()` - 项目摘要
- `get_transcript_context()` - 转录上下文
- ✅ 更新 main.py - Agent API 端点
- `POST /api/v1/projects/{id}/agent/query` - RAG 问答
- `POST /api/v1/projects/{id}/agent/command` - 指令执行
- `GET /api/v1/projects/{id}/agent/suggest` - 智能建议
- `GET /api/v1/relations/{id}/provenance` - 关系溯源
- `GET /api/v1/entities/{id}/details` - 实体详情
- `GET /api/v1/entities/{id}/evolution` - 实体演变分析
- `GET /api/v1/projects/{id}/entities/search` - 实体搜索
- `PATCH /api/v1/entities/{id}` - 更新实体
- ✅ 更新 workbench.html - Agent 面板 UI
- 可折叠的 Agent 助手面板
- 聊天界面
- 实体悬停卡片
- 关系溯源弹窗
- ✅ 更新 app.js - 前端功能
- Agent 聊天功能
- 指令执行(合并实体、编辑定义)
- RAG 问答
- 实体卡片悬停显示
- 关系点击溯源
- 低置信度实体标黄
### Phase 4 - 知识溯源 (已完成 ✅)
- ✅ 点击关系连线显示来源文档
- ✅ 实体详情显示所有提及位置
- ✅ 证据文本展示
### Phase 4 - 术语卡片悬停 (已完成 ✅)
- ✅ 鼠标悬停实体显示卡片
- ✅ 卡片包含:名称、定义、提及次数、关系数
### Phase 4 - 置信度提示 (已完成 ✅)
- ✅ LLM 提取返回置信度分数
- ✅ 低置信度实体在文本中标黄
### Phase 5 - 知识推理与问答增强 (已完成 ✅)
- ✅ 创建 knowledge_reasoner.py - 知识推理引擎
- 因果推理:分析原因和影响
- 对比推理:比较实体间的异同
- 时序推理:分析时间线和演变
- 关联推理:发现隐含关联
- ✅ 新增 API 端点
- `POST /api/v1/projects/{id}/reasoning/query` - 增强问答
- `POST /api/v1/projects/{id}/reasoning/summary` - 智能总结
- `GET /api/v1/projects/{id}/reasoning/inference-path` - 关联路径
- ✅ 前端推理面板
- 推理类型选择
- 深度控制
- 结果展示(置信度、证据、知识缺口)
- 项目总结卡片(全面/高管/技术/风险)
### Phase 5 - 实体属性扩展 (已完成 ✅)
- ✅ 数据库层
- 新增 `entity_attributes` 表存储自定义属性
- 新增 `attribute_templates` 表管理属性模板
- 新增 `attribute_history` 表记录属性变更历史
- ✅ 后端 API
- `GET/POST /api/v1/projects/{id}/attribute-templates` - 属性模板管理
- `GET/POST/PUT/DELETE /api/v1/entities/{id}/attributes` - 实体属性 CRUD
- `GET /api/v1/entities/{id}/attributes/history` - 属性变更历史
- `GET /api/v1/projects/{id}/entities/search-by-attributes` - 属性筛选搜索
- ✅ 属性类型支持
- text: 文本
- number: 数字
- date: 日期
- select: 单选
- multiselect: 多选
- boolean: 布尔值
### Phase 5 - 时间线视图 (已完成 ✅)
- ✅ 后端 API: `/api/v1/projects/{id}/timeline`
- ✅ 前端时间线面板
- ✅ 实体提及和关系事件可视化
- ✅ 实体筛选功能
## 待完成
### Phase 5 - Neo4j 图数据库集成 (已完成 ✅)
- [x] 创建 neo4j_manager.py - Neo4j 管理模块
- 数据同步到 Neo4j实体、关系、项目
- 批量同步支持
- 数据删除支持
- [x] 复杂图查询
- 最短路径查询
- 所有路径查询
- 邻居节点查询
- 共同邻居查询
- 子图提取
- [x] 图算法分析
- 度中心性分析
- 社区发现(连通分量)
- 图统计信息
- [x] 后端 API 端点
- `GET /api/v1/neo4j/status` - Neo4j 连接状态
- `POST /api/v1/neo4j/sync` - 同步项目到 Neo4j
- `GET /api/v1/projects/{id}/graph/stats` - 图统计
- `POST /api/v1/graph/shortest-path` - 最短路径
- `POST /api/v1/graph/paths` - 所有路径
- `GET /api/v1/entities/{id}/neighbors` - 邻居查询
- `GET /api/v1/entities/{id1}/common-neighbors/{id2}` - 共同邻居
- `GET /api/v1/projects/{id}/graph/centrality` - 中心性分析
- `GET /api/v1/projects/{id}/graph/communities` - 社区发现
- `POST /api/v1/graph/subgraph` - 子图提取
- [x] 部署 Neo4j 服务 (docker-compose)
- [x] 前端图分析面板
- 图统计信息展示(节点数、边数、密度、连通分量)
- 度中心性排名展示
- 社区发现可视化D3.js 力导向图)
- 最短路径查询和可视化
- 邻居节点查询和可视化
- Neo4j 连接状态指示
- 数据同步按钮
- [x] 路径可视化优化
- 添加路径动画效果(流动虚线)
- 路径节点和边的特殊样式(起点终点高亮)
- 发光效果增强视觉层次
- 路径信息面板(显示路径长度、节点数统计)
- [x] 社区可视化增强
- 社区发现结果的更好可视化(不同颜色区分社区)
- 社区统计信息(每个社区的节点数、密度)
- 点击社区可以聚焦显示该社区的子图
- 社区内节点连线显示内部关联
### Phase 4 - Neo4j 集成 (可选)
- [ ] 将图谱数据同步到 Neo4j
- [ ] 支持复杂图查询
### Phase 5 - 高级功能 (进行中 🚧)
- [x] 知识推理与问答增强 ✅ (2026-02-19 完成)
- [x] 实体属性扩展 ✅ (2026-02-20 完成)
- [x] 时间线视图 ✅ (2026-02-19 完成)
- [x] 导出功能 ✅ (2026-02-20 完成)
- 知识图谱导出 PNG/SVG
- 项目报告导出 PDF
- 实体数据导出 Excel/CSV
- 关系数据导出 CSV
- 转录文本导出 Markdown
- 项目完整数据导出 JSON
- [ ] 协作功能
- 多用户支持
- 项目权限管理
- 评论和批注
- 变更历史追踪
## 技术债务
- 听悟 SDK fallback 到 mock 需要更好的错误处理
- 实体相似度匹配目前只是简单字符串包含,需要 embedding 方案
- 前端需要状态管理(目前使用全局变量)
- 需要添加 API 文档 (OpenAPI/Swagger)
## 部署信息
- 服务器: 122.51.127.111
- 项目路径: /opt/projects/insightflow
- 端口: 18000
## 最近更新
### 2026-02-21 (早间) - Cron 自动部署
- 代码更新到最新版本 (f38e060)
- InsightFlow 服务已启动 (122.51.127.111:18000) ✅
- Neo4j 依赖已安装 (neo4j==5.15.0)
- Neo4j 服务待部署 (需要 Docker 或外部 Neo4j 实例)
### 2026-02-20 (晚间)
- 完成 Phase 5 前端图分析面板
- 新增侧边栏 "图分析" 按钮
- 图统计信息展示(节点数、边数、密度、连通分量)
- 度中心性分析排名展示
- 社区发现可视化D3.js 力导向图)
- 最短路径查询和可视化
- 邻居节点查询和可视化
- Neo4j 连接状态指示
- 数据同步到 Neo4j 功能
- 提交代码到 git 仓库
- 部署到服务器: 122.51.127.111:18000
### 2026-02-20 (晚间)
- 完成 Phase 5 导出功能
- 新增 export_manager.py 导出管理模块
- 知识图谱导出 SVG/PNG (支持矢量图和图片格式)
- 实体数据导出 Excel/CSV (包含所有自定义属性)
- 关系数据导出 CSV
- 项目报告导出 PDF (包含统计、实体列表、关系列表)
- 转录文本导出 Markdown (带实体标注)
- 项目完整数据导出 JSON (备份/迁移用)
- 前端知识库面板添加导出入口
- 新增依赖: pandas, openpyxl, reportlab, cairosvg
### 2026-02-20
- 完成 Phase 5 实体属性扩展功能
- 数据库层:
- 新增 `entity_attributes` 表存储自定义属性
- 新增 `attribute_templates` 表管理属性模板
- 新增 `attribute_history` 表记录属性变更历史
- 后端 API:
- `GET/POST /api/v1/projects/{id}/attribute-templates` - 属性模板管理
- `GET/POST/PUT/DELETE /api/v1/entities/{id}/attributes` - 实体属性 CRUD
- `GET /api/v1/entities/{id}/attributes/history` - 属性变更历史
- `GET /api/v1/projects/{id}/entities/search-by-attributes` - 属性筛选搜索
- 支持的属性类型: text, number, date, select, multiselect, boolean
### 2026-02-19 (晚间)
- 完成 Phase 5 知识推理与问答增强功能
- 新增 knowledge_reasoner.py 推理引擎
- 支持四种推理类型:因果、对比、时序、关联
- 智能项目总结 API全面/高管/技术/风险)
- 实体关联路径发现功能
- 前端推理面板 UI 完整实现
- 提交代码到 git 仓库
- 部署到服务器: 122.51.127.111:18000
### 2026-02-19
- 完成 Phase 5 时间线视图功能
- 后端 API: `/api/v1/projects/{id}/timeline`
- 前端时间线面板,支持按日期分组显示
- 实体提及和关系建立事件可视化
- 实体筛选功能
- 统计卡片展示
- 修复静态文件路由覆盖 API 路由的问题
- 修复模块导入路径问题
- 部署到服务器: 122.51.127.111:18000
- 更新 README 开发清单