docs: Update README with Phase 6 API Platform features
This commit is contained in:
231
README.md
231
README.md
@@ -1,48 +1,69 @@
|
||||
# InsightFlow - Audio to Knowledge Graph Platform
|
||||
|
||||
## Phase 3: Memory & Growth - Completed ✅
|
||||
InsightFlow 是一个音频转知识图谱平台,支持将音频、文档转换为结构化的知识图谱,并提供强大的分析和推理能力。
|
||||
|
||||
### 新增功能
|
||||
## 功能特性
|
||||
|
||||
#### 1. 多文件图谱融合 ✅
|
||||
- 支持上传多个音频文件到同一项目
|
||||
- 系统自动对齐实体,合并图谱
|
||||
- 实体提及跨文件追踪
|
||||
- 文件选择器切换不同转录内容
|
||||
### Phase 1-3: 基础功能 ✅
|
||||
- 音频上传与转录(阿里云听悟 ASR)
|
||||
- 实体提取与关系抽取
|
||||
- 知识图谱可视化(D3.js)
|
||||
- 多文件图谱融合
|
||||
- PDF/DOCX 文档导入
|
||||
- 实体对齐与别名管理
|
||||
- 项目知识库面板
|
||||
|
||||
#### 2. 实体对齐算法优化 ✅
|
||||
- 新增 `entity_aligner.py` 模块
|
||||
- 支持使用 Kimi API embedding 进行语义相似度匹配
|
||||
- 余弦相似度计算
|
||||
- 自动别名建议
|
||||
- 批量实体对齐 API
|
||||
### Phase 4: Agent 助手与知识溯源 ✅
|
||||
- AI 助手对话(RAG 问答)
|
||||
- 实体操作指令执行
|
||||
- 知识溯源(关系来源追踪)
|
||||
- 实体悬停卡片
|
||||
- 置信度提示
|
||||
|
||||
#### 3. PDF/DOCX 文档导入 ✅
|
||||
- 新增 `document_processor.py` 模块
|
||||
- 支持 PDF、DOCX、TXT、MD 格式
|
||||
- 文档文本提取并参与实体提取
|
||||
- 文档类型标记(音频/文档)
|
||||
### Phase 5: 高级功能 ✅
|
||||
- **知识推理** - 因果/对比/时序/关联推理
|
||||
- **时间线视图** - 实体演变追踪
|
||||
- **实体属性扩展** - 自定义属性模板
|
||||
- **Neo4j 图数据库** - 复杂图查询、最短路径、社区发现
|
||||
- **导出功能** - SVG/PNG/Excel/CSV/PDF/JSON
|
||||
|
||||
#### 4. 项目知识库面板 ✅
|
||||
- 全新的知识库视图
|
||||
- 统计面板:实体数、关系数、文件数、术语数
|
||||
- 实体网格展示(带提及统计)
|
||||
- 关系列表展示
|
||||
- 术语表管理(添加/删除)
|
||||
- 文件列表展示
|
||||
### Phase 6: API 开放平台 ✅
|
||||
- **API Key 管理** - 创建、撤销、权限控制
|
||||
- **Swagger/OpenAPI 文档** - 在线 API 文档
|
||||
- **限流控制** - 滑动窗口限流、调用统计
|
||||
- **调用日志** - 详细调用记录和分析
|
||||
|
||||
### 技术栈
|
||||
- 后端: FastAPI + SQLite
|
||||
- 前端: 原生 HTML/JS + D3.js
|
||||
- ASR: 阿里云听悟
|
||||
- LLM: Kimi API
|
||||
- 文档处理: PyPDF2, python-docx
|
||||
## 技术栈
|
||||
|
||||
### 部署
|
||||
- **后端**: FastAPI + SQLite
|
||||
- **前端**: 原生 HTML/JS + D3.js
|
||||
- **ASR**: 阿里云听悟
|
||||
- **LLM**: Kimi API
|
||||
- **图数据库**: Neo4j
|
||||
- **文档处理**: PyPDF2, python-docx
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 本地开发
|
||||
|
||||
```bash
|
||||
# 构建 Docker 镜像
|
||||
docker build -t insightflow:phase3 .
|
||||
# 克隆仓库
|
||||
git clone https://git.sivdead.cn/claw/insightflow
|
||||
cd insightflow
|
||||
|
||||
# 安装依赖
|
||||
cd backend
|
||||
pip install -r requirements.txt
|
||||
|
||||
# 运行开发服务器
|
||||
python -m uvicorn main:app --reload --host 0.0.0.0 --port 8000
|
||||
```
|
||||
|
||||
### Docker 部署
|
||||
|
||||
```bash
|
||||
# 构建镜像
|
||||
docker build -t insightflow:latest .
|
||||
|
||||
# 运行容器
|
||||
docker run -d \
|
||||
@@ -51,133 +72,53 @@ docker run -d \
|
||||
-e KIMI_API_KEY=your_key \
|
||||
-e ALIYUN_ACCESS_KEY_ID=your_key \
|
||||
-e ALIYUN_ACCESS_KEY_SECRET=your_secret \
|
||||
insightflow:phase3
|
||||
-e INSIGHTFLOW_MASTER_KEY=your_master_key \
|
||||
insightflow:latest
|
||||
```
|
||||
|
||||
### API 文档
|
||||
### Docker Compose 部署(推荐)
|
||||
|
||||
#### 新增 API
|
||||
|
||||
**文档上传**
|
||||
```
|
||||
POST /api/v1/projects/{project_id}/upload-document
|
||||
Content-Type: multipart/form-data
|
||||
file: <文件>
|
||||
```bash
|
||||
# 启动所有服务(含 Neo4j)
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
**知识库查询**
|
||||
```
|
||||
GET /api/v1/projects/{project_id}/knowledge-base
|
||||
## API 认证
|
||||
|
||||
从 Phase 6 开始,API 需要认证才能访问:
|
||||
|
||||
```bash
|
||||
# 1. 创建 API Key(需要 Master Key)
|
||||
curl -X POST http://localhost:18000/api/v1/api-keys \
|
||||
-H "X-API-Key: your_master_key" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"name": "My App", "permissions": ["read", "write"]}'
|
||||
|
||||
# 2. 使用 API Key 访问受保护端点
|
||||
curl http://localhost:18000/api/v1/projects \
|
||||
-H "X-API-Key: ak_live_xxxxx"
|
||||
```
|
||||
|
||||
**术语表管理**
|
||||
```
|
||||
POST /api/v1/projects/{project_id}/glossary
|
||||
GET /api/v1/projects/{project_id}/glossary
|
||||
DELETE /api/v1/glossary/{term_id}
|
||||
```
|
||||
## API 文档
|
||||
|
||||
**实体对齐**
|
||||
```
|
||||
POST /api/v1/projects/{project_id}/align-entities?threshold=0.85
|
||||
```
|
||||
- Swagger UI: http://122.51.127.111:18000/docs
|
||||
- ReDoc: http://122.51.127.111:18000/redoc
|
||||
|
||||
### 数据库 Schema 更新
|
||||
- `transcripts` 表新增 `type` 字段(audio/document)
|
||||
- `entities` 表新增 `embedding` 字段
|
||||
- 新增索引优化查询性能
|
||||
## 部署信息
|
||||
|
||||
---
|
||||
- **服务器**: 122.51.127.111:18000
|
||||
- **Neo4j**: 122.51.127.111:7474 (HTTP), 122.51.127.111:7687 (Bolt)
|
||||
- **Git 仓库**: https://git.sivdead.cn/claw/insightflow
|
||||
|
||||
## Phase 4: Agent 助手与知识溯源 - 已完成 ✅
|
||||
## 开发状态
|
||||
|
||||
### 已完成功能
|
||||
|
||||
1. **Agent 助手后端 API** ✅
|
||||
- 对话指令解析接口 `/agent/command`
|
||||
- RAG 问答接口 `/agent/query`
|
||||
- 实体操作指令执行
|
||||
|
||||
2. **Agent 助手前端面板** ✅
|
||||
- 可折叠聊天面板
|
||||
- 消息历史展示
|
||||
- 指令快捷按钮
|
||||
|
||||
3. **知识溯源功能** ✅
|
||||
- 关系来源追踪 `/relations/{id}/provenance`
|
||||
- 提及位置高亮
|
||||
- 跨文档关联显示
|
||||
|
||||
4. **术语卡片** ✅
|
||||
- 悬停卡片 UI
|
||||
- 实体详情展示
|
||||
- 快捷编辑入口
|
||||
|
||||
5. **置信度系统** ✅
|
||||
- LLM 返回置信度
|
||||
- 低置信度标记
|
||||
- 人工确认流程
|
||||
|
||||
6. **Neo4j 集成** - 待开发 ⏳
|
||||
- 图谱数据同步
|
||||
- 复杂图查询支持
|
||||
|
||||
## Phase 5: 高级功能 - 已完成 ✅
|
||||
|
||||
### 已完成功能 ✅
|
||||
|
||||
1. **知识推理与问答增强** ✅
|
||||
- 后端推理引擎 `knowledge_reasoner.py`
|
||||
- 因果/对比/时序/关联推理
|
||||
- 智能项目总结 API
|
||||
- 实体关联路径发现
|
||||
- 前端推理面板 UI
|
||||
|
||||
2. **时间线视图** ✅
|
||||
- 项目时间线 API
|
||||
- 实体演变追踪
|
||||
- 时间线可视化面板
|
||||
|
||||
3. **实体属性扩展** ✅
|
||||
- 数据库层: `entity_attributes`, `attribute_templates`, `attribute_history` 表
|
||||
- 后端 API: 属性模板管理、实体属性 CRUD、属性历史查询
|
||||
- 支持属性类型: text, number, date, select, multiselect, boolean
|
||||
- 属性筛选搜索 API
|
||||
|
||||
### 待开发任务 📋
|
||||
|
||||
无 - Phase 5 已完成
|
||||
|
||||
## Phase 6: 企业级功能 - 规划中 📋
|
||||
|
||||
1. **API 开放平台**
|
||||
- RESTful API 文档
|
||||
- API Key 管理
|
||||
- 调用统计和限流
|
||||
|
||||
2. **数据安全增强**
|
||||
- 端到端加密
|
||||
- 数据脱敏
|
||||
- 审计日志
|
||||
|
||||
3. **性能优化**
|
||||
- 数据库分片
|
||||
- 缓存层(Redis)
|
||||
- CDN 加速
|
||||
|
||||
## 暂不开发功能 ⏸️
|
||||
|
||||
- **协作功能** - 多用户支持、项目权限管理、评论批注(当前版本暂不实现)
|
||||
|
||||
---
|
||||
详见 [STATUS.md](STATUS.md)
|
||||
|
||||
## 项目文档
|
||||
|
||||
- [PRD v2.0](docs/PRD-v2.0.md) - 产品需求规格说明书
|
||||
- [STATUS.md](STATUS.md) - 详细开发状态跟踪
|
||||
|
||||
## 部署信息
|
||||
## 许可证
|
||||
|
||||
- **服务器**: 122.51.127.111:18000
|
||||
- **项目路径**: /opt/projects/insightflow
|
||||
- **Git 仓库**: https://git.sivdead.cn/claw/insightflow
|
||||
MIT
|
||||
|
||||
Reference in New Issue
Block a user