# InsightFlow - Audio to Knowledge Graph Platform InsightFlow 是一个音频转知识图谱平台,支持将音频、文档转换为结构化的知识图谱,并提供强大的分析和推理能力。 ## 功能特性 ### Phase 1-3: 基础功能 ✅ - 音频上传与转录(阿里云听悟 ASR) - 实体提取与关系抽取 - 知识图谱可视化(D3.js) - 多文件图谱融合 - PDF/DOCX 文档导入 - 实体对齐与别名管理 - 项目知识库面板 ### Phase 4: Agent 助手与知识溯源 ✅ - AI 助手对话(RAG 问答) - 实体操作指令执行 - 知识溯源(关系来源追踪) - 实体悬停卡片 - 置信度提示 ### Phase 5: 高级功能 ✅ - **知识推理** - 因果/对比/时序/关联推理 - **时间线视图** - 实体演变追踪 - **实体属性扩展** - 自定义属性模板 - **Neo4j 图数据库** - 复杂图查询、最短路径、社区发现 - **导出功能** - SVG/PNG/Excel/CSV/PDF/JSON ### Phase 6: API 开放平台 ✅ - **API Key 管理** - 创建、撤销、权限控制 - **Swagger/OpenAPI 文档** - 在线 API 文档 - **限流控制** - 滑动窗口限流、调用统计 - **调用日志** - 详细调用记录和分析 ## 技术栈 - **后端**: FastAPI + SQLite - **前端**: 原生 HTML/JS + D3.js - **ASR**: 阿里云听悟 - **LLM**: Kimi API - **图数据库**: Neo4j - **文档处理**: PyPDF2, python-docx ## 快速开始 ### 本地开发 ```bash # 克隆仓库 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 \ -p 18000:8000 \ -v /opt/data:/app/data \ -e KIMI_API_KEY=your_key \ -e ALIYUN_ACCESS_KEY_ID=your_key \ -e ALIYUN_ACCESS_KEY_SECRET=your_secret \ -e INSIGHTFLOW_MASTER_KEY=your_master_key \ insightflow:latest ``` ### Docker Compose 部署(推荐) ```bash # 启动所有服务(含 Neo4j) docker-compose up -d ``` ## 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" ``` ## API 文档 - Swagger UI: http://122.51.127.111:18000/docs - ReDoc: http://122.51.127.111:18000/redoc ## 部署信息 - **服务器**: 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 ## 开发状态 详见 [STATUS.md](STATUS.md) ## 项目文档 - [PRD v2.0](docs/PRD-v2.0.md) - 产品需求规格说明书 - [STATUS.md](STATUS.md) - 详细开发状态跟踪 ## 许可证 MIT --- ## Phase 7: 智能化与生态扩展 - 规划中 🚧 基于现有功能和用户反馈,Phase 7 聚焦**智能化增强**和**生态扩展**: ### 1. 智能工作流自动化 🤖 **优先级: P0** - 定时任务自动分析新上传的音频/文档 - 自动实体对齐和关系发现 - 智能提醒(如发现新关联、实体冲突) - Webhook 集成(支持飞书、钉钉、Slack 通知) ### 2. 多模态支持 🎬 **优先级: P0** - 视频文件导入(提取音频 + 关键帧 OCR) - 图片内容识别(白板、PPT、手写笔记) - 多模态实体关联(同一实体在音频、图片、文档中的提及) ### 3. 协作与共享 👥 **优先级: P1** - 项目分享(只读/可编辑链接) - 评论和批注(在实体、关系、转录文本上添加评论) - 变更历史(谁修改了什么,何时修改) - 团队空间(多用户项目协作) ### 4. 智能报告生成 📊 **优先级: P1** - 一键生成项目总结报告(PDF/Word) - 实体关系网络分析报告 - 会议纪要和行动项提取 - 自定义报告模板 ### 5. 插件与集成 🔌 **优先级: P2** - Chrome 插件(网页内容一键导入) - 飞书/钉钉机器人(群内直接分析音频) - Zapier/Make 集成(连接 5000+ 应用) - WebDAV 同步(与坚果云等网盘联动) ### 6. 高级搜索与发现 🔍 **优先级: P2** - 全文搜索(跨所有转录文本) - 语义搜索(基于 embedding 的相似度搜索) - 实体关系路径发现(A 和 B 之间如何关联) - 知识缺口识别(项目中缺失的关键信息) ### 7. 数据安全与合规 🔒 **优先级: P1** - 端到端加密(敏感项目数据加密存储) - 数据脱敏(自动识别并脱敏敏感信息) - 审计日志(完整操作记录) - GDPR/数据合规支持 ### 8. 性能优化与扩展 ⚡ **优先级: P2** - Redis 缓存层(热点数据缓存) - 数据库分片(支持大规模项目) - CDN 加速(静态资源全球加速) - 异步任务队列(Celery + Redis) --- ## Phase 7 开发进度 | 任务 | 状态 | 完成时间 | |------|------|----------| | 1. 智能工作流自动化 | ✅ 已完成 | 2026-02-23 | | 2. 多模态支持 | ✅ 已完成 | 2026-02-23 | | 7. 插件与集成 | ✅ 已完成 | 2026-02-23 | | 3. 数据安全与合规 | ✅ 已完成 | 2026-02-23 | | 4. 协作与共享 | ✅ 已完成 | 2026-02-24 | | 5. 智能报告生成 | ✅ 已完成 | 2026-02-24 | | 6. 高级搜索与发现 | ✅ 已完成 | 2026-02-24 | | 8. 性能优化与扩展 | ✅ 已完成 | 2026-02-24 | **Phase 7 全部完成!** 🎉 **实际完成时间**: 2 周 --- ## Phase 8 开发进度 | 任务 | 状态 | 完成时间 | |------|------|----------| | 1. 多租户 SaaS 架构 | ✅ 已完成 | 2026-02-25 | | 2. 订阅与计费系统 | ✅ 已完成 | 2026-02-25 | | 3. 企业级功能 | ⏳ 待开始 | - | | 4. AI 能力增强 | ⏳ 待开始 | - | | 5. 运营与增长工具 | ⏳ 待开始 | - | | 6. 开发者生态 | ⏳ 待开始 | - | | 7. 全球化与本地化 | ⏳ 待开始 | - | | 8. 运维与监控 | ⏳ 待开始 | - | ### Phase 8 任务 1 完成内容 **多租户 SaaS 架构** ✅ - ✅ 创建 tenant_manager.py - 多租户管理模块 - TenantManager: 租户管理主类 - Tenant: 租户数据模型(支持 Free/Pro/Enterprise 层级) - TenantDomain: 自定义域名管理(DNS/文件验证) - TenantBranding: 品牌白标配置(Logo、主题色、CSS) - TenantMember: 租户成员管理(Owner/Admin/Member/Viewer 角色) - TenantContext: 租户上下文管理器 - 租户隔离(数据、配置、资源完全隔离) - 资源限制和用量统计 - ✅ 更新 schema.sql - 添加租户相关数据库表 - tenants: 租户主表 - tenant_domains: 租户域名绑定表 - tenant_branding: 租户品牌配置表 - tenant_members: 租户成员表 - tenant_permissions: 租户权限定义表 - tenant_usage: 租户资源使用统计表 - ✅ 更新 main.py - 添加租户相关 API 端点 - POST/GET /api/v1/tenants - 租户管理 - POST/GET /api/v1/tenants/{id}/domains - 域名管理 - POST /api/v1/tenants/{id}/domains/{id}/verify - 域名验证 - GET/PUT /api/v1/tenants/{id}/branding - 品牌配置 - GET /api/v1/tenants/{id}/branding.css - 品牌 CSS(公开) - POST/GET /api/v1/tenants/{id}/members - 成员管理 - GET /api/v1/tenants/{id}/usage - 使用统计 - GET /api/v1/tenants/{id}/limits/{type} - 资源限制检查 - GET /api/v1/resolve-tenant - 域名解析租户 ### Phase 8 任务 2 完成内容 **订阅与计费系统** ✅ - ✅ 创建 subscription_manager.py - 订阅与计费管理模块 - SubscriptionManager: 订阅管理主类 - SubscriptionPlan: 订阅计划数据模型(Free/Pro/Enterprise) - Subscription: 订阅数据模型(支持试用、周期计费) - UsageRecord: 用量记录(转录时长、存储空间、API 调用) - Payment: 支付记录(支持多支付提供商) - Invoice: 发票管理 - Refund: 退款处理 - BillingHistory: 账单历史 - 按量计费计算(转录 0.5元/分钟、存储 10元/GB/月等) - 支付提供商集成(Stripe、支付宝、微信支付占位实现) - ✅ 更新 schema.sql - 添加订阅相关数据库表 - subscription_plans: 订阅计划表 - subscriptions: 订阅表 - usage_records: 用量记录表 - payments: 支付记录表 - invoices: 发票表 - refunds: 退款表 - billing_history: 账单历史表 - ✅ 更新 main.py - 添加订阅相关 API 端点 - GET /api/v1/subscription-plans - 订阅计划列表 - GET /api/v1/subscription-plans/{id} - 订阅计划详情 - POST /api/v1/tenants/{id}/subscription - 创建订阅 - GET /api/v1/tenants/{id}/subscription - 获取当前订阅 - PUT /api/v1/tenants/{id}/subscription/change-plan - 更改计划 - POST /api/v1/tenants/{id}/subscription/cancel - 取消订阅 - POST /api/v1/tenants/{id}/usage - 记录用量 - GET /api/v1/tenants/{id}/usage - 用量汇总 - GET /api/v1/tenants/{id}/payments - 支付记录列表 - GET /api/v1/tenants/{id}/payments/{id} - 支付记录详情 - GET /api/v1/tenants/{id}/invoices - 发票列表 - GET /api/v1/tenants/{id}/invoices/{id} - 发票详情 - POST /api/v1/tenants/{id}/refunds - 申请退款 - GET /api/v1/tenants/{id}/refunds - 退款记录列表 - POST /api/v1/tenants/{id}/refunds/{id}/process - 处理退款 - GET /api/v1/tenants/{id}/billing-history - 账单历史 - POST /api/v1/tenants/{id}/checkout/stripe - Stripe 支付 - POST /api/v1/tenants/{id}/checkout/alipay - 支付宝支付 - POST /api/v1/tenants/{id}/checkout/wechat - 微信支付 - POST /webhooks/stripe - Stripe Webhook - POST /webhooks/alipay - 支付宝 Webhook - POST /webhooks/wechat - 微信支付 Webhook **预计 Phase 8 完成时间**: 6-8 周 --- ## Phase 8: 商业化与规模化 - 进行中 🚧 基于 Phase 1-7 的完整功能,Phase 8 聚焦**商业化落地**和**规模化运营**: ### 1. 多租户 SaaS 架构 🏢 **优先级: P0** | **状态: ✅ 已完成** - ✅ 租户隔离(数据、配置、资源完全隔离) - ✅ 自定义域名绑定(CNAME 支持) - ✅ 品牌白标(Logo、主题色、自定义 CSS) - ✅ 租户级权限管理(超级管理员、管理员、成员) ### 2. 订阅与计费系统 💳 **优先级: P0** | **状态: ✅ 已完成** - ✅ 多层级订阅计划(Free/Pro/Enterprise) - ✅ 按量计费(转录时长、存储空间、API 调用次数) - ✅ 支付集成(Stripe、支付宝、微信支付) - ✅ 发票管理、退款处理、账单历史 ### 3. 企业级功能 🏭 **优先级: P1** | **状态: ✅ 已完成** - ✅ SSO/SAML 单点登录(企业微信、钉钉、飞书、Okta) - ✅ SCIM 用户目录同步 - ✅ 审计日志导出(SOC2/ISO27001 合规) - ✅ 数据保留策略(自动归档、数据删除) ### Phase 8 任务 3 完成内容 **企业级功能** ✅ - ✅ 创建 enterprise_manager.py - 企业级功能管理模块 - SSOConfig: SSO/SAML 配置数据模型(支持企业微信、钉钉、飞书、Okta、Azure AD、Google、自定义 SAML) - SCIMConfig/SCIMUser: SCIM 用户目录同步配置和用户数据模型 - AuditLogExport: 审计日志导出记录(支持 SOC2/ISO27001/GDPR/HIPAA/PCI DSS 合规) - DataRetentionPolicy/DataRetentionJob: 数据保留策略和任务管理 - SAMLAuthRequest/SAMLAuthResponse: SAML 认证请求和响应管理 - SSO 配置管理(创建、更新、删除、列表、元数据生成) - SCIM 用户同步(配置管理、手动同步、用户列表) - 审计日志导出(创建导出任务、处理、下载、合规标准支持) - 数据保留策略(创建、执行、归档/删除/匿名化、任务追踪) - ✅ 更新 schema.sql - 添加企业级功能相关数据库表 - sso_configs: SSO 配置表(SAML/OAuth 配置、属性映射、域名限制) - saml_auth_requests: SAML 认证请求表 - saml_auth_responses: SAML 认证响应表 - scim_configs: SCIM 配置表 - scim_users: SCIM 用户表 - audit_log_exports: 审计日志导出表 - data_retention_policies: 数据保留策略表 - data_retention_jobs: 数据保留任务表 - 相关索引优化 - ✅ 更新 main.py - 添加企业级功能相关 API 端点(25个端点) - POST/GET /api/v1/tenants/{id}/sso-configs - SSO 配置管理 - GET/PUT/DELETE /api/v1/tenants/{id}/sso-configs/{id} - SSO 配置详情/更新/删除 - GET /api/v1/tenants/{id}/sso-configs/{id}/metadata - 获取 SAML 元数据 - POST/GET /api/v1/tenants/{id}/scim-configs - SCIM 配置管理 - PUT /api/v1/tenants/{id}/scim-configs/{id} - 更新 SCIM 配置 - POST /api/v1/tenants/{id}/scim-configs/{id}/sync - 执行 SCIM 同步 - GET /api/v1/tenants/{id}/scim-users - 列出 SCIM 用户 - POST /api/v1/tenants/{id}/audit-exports - 创建审计日志导出 - GET /api/v1/tenants/{id}/audit-exports - 列出审计日志导出 - GET /api/v1/tenants/{id}/audit-exports/{id} - 获取导出详情 - POST /api/v1/tenants/{id}/audit-exports/{id}/download - 下载导出文件 - POST /api/v1/tenants/{id}/retention-policies - 创建数据保留策略 - GET /api/v1/tenants/{id}/retention-policies - 列出保留策略 - GET /api/v1/tenants/{id}/retention-policies/{id} - 获取策略详情 - PUT /api/v1/tenants/{id}/retention-policies/{id} - 更新保留策略 - DELETE /api/v1/tenants/{id}/retention-policies/{id} - 删除保留策略 - POST /api/v1/tenants/{id}/retention-policies/{id}/execute - 执行保留策略 - GET /api/v1/tenants/{id}/retention-policies/{id}/jobs - 列出保留任务 ### 4. 运营与增长工具 📈 **优先级: P1** - 用户行为分析(Mixpanel/Amplitude 集成) - A/B 测试框架 - 邮件营销自动化(欢迎序列、流失挽回) - 推荐系统(邀请返利、团队升级激励) ### 5. 开发者生态 🛠️ **优先级: P2** - SDK 发布(Python/JavaScript/Go) - 模板市场(行业模板、预训练模型) - 插件市场(第三方插件审核与分发) - 开发者文档与示例代码 ### 6. 全球化与本地化 🌍 **优先级: P2** - 多语言支持(i18n,至少 10 种语言) - 区域数据中心(北美、欧洲、亚太) - 本地化支付(各国主流支付方式) - 时区与日历本地化 ### 7. AI 能力增强 🤖 **优先级: P1** - 自定义模型训练(领域特定实体识别) - 多模态大模型集成(GPT-4V、Claude 3) - 智能摘要与问答(基于知识图谱的 RAG) - 预测性分析(趋势预测、异常检测) ### 8. 运维与监控 🔧 **优先级: P2** - 实时告警系统(PagerDuty/Opsgenie 集成) - 容量规划与自动扩缩容 - 灾备与故障转移(多活架构) - 成本优化(资源利用率监控) --- ## Phase 8 开发进度 | 任务 | 状态 | 完成时间 | |------|------|----------| | 1. 多租户 SaaS 架构 | ✅ 已完成 | 2026-02-25 | | 2. 订阅与计费系统 | ✅ 已完成 | 2026-02-25 | | 3. 企业级功能 | ⏳ 待开始 | - | | 4. AI 能力增强 | ⏳ 待开始 | - | | 5. 运营与增长工具 | ⏳ 待开始 | - | | 6. 开发者生态 | ⏳ 待开始 | - | | 7. 全球化与本地化 | ⏳ 待开始 | - | | 8. 运维与监控 | ⏳ 待开始 | - | ### Phase 8 任务 1 完成内容 **多租户 SaaS 架构** ✅ - ✅ 创建 tenant_manager.py - 多租户管理模块 - TenantManager: 租户管理主类 - Tenant: 租户数据模型(支持 Free/Pro/Enterprise 层级) - TenantDomain: 自定义域名管理(DNS/文件验证) - TenantBranding: 品牌白标配置(Logo、主题色、CSS) - TenantMember: 租户成员管理(Owner/Admin/Member/Viewer 角色) - TenantContext: 租户上下文管理器 - 租户隔离(数据、配置、资源完全隔离) - 资源限制和用量统计 - ✅ 更新 schema.sql - 添加租户相关数据库表 - tenants: 租户主表 - tenant_domains: 租户域名绑定表 - tenant_branding: 租户品牌配置表 - tenant_members: 租户成员表 - tenant_permissions: 租户权限定义表 - tenant_usage: 租户资源使用统计表 - ✅ 更新 main.py - 添加租户相关 API 端点 - POST/GET /api/v1/tenants - 租户管理 - POST/GET /api/v1/tenants/{id}/domains - 域名管理 - POST /api/v1/tenants/{id}/domains/{id}/verify - 域名验证 - GET/PUT /api/v1/tenants/{id}/branding - 品牌配置 - GET /api/v1/tenants/{id}/branding.css - 品牌 CSS(公开) - POST/GET /api/v1/tenants/{id}/members - 成员管理 - GET /api/v1/tenants/{id}/usage - 使用统计 - GET /api/v1/tenants/{id}/limits/{type} - 资源限制检查 - GET /api/v1/resolve-tenant - 域名解析租户 ### Phase 8 任务 2 完成内容 **订阅与计费系统** ✅ - ✅ 创建 subscription_manager.py - 订阅与计费管理模块 - SubscriptionPlan: 订阅计划模型(Free/Pro/Enterprise) - Subscription: 订阅记录(支持试用、周期计费) - UsageRecord: 用量记录(转录时长、存储空间、API 调用) - Payment: 支付记录(支持 Stripe/支付宝/微信支付) - Invoice: 发票管理 - Refund: 退款处理 - BillingHistory: 账单历史 - ✅ 更新 schema.sql - 添加订阅相关数据库表 - subscription_plans: 订阅计划表 - subscriptions: 订阅表 - usage_records: 用量记录表 - payments: 支付记录表 - invoices: 发票表 - refunds: 退款表 - billing_history: 账单历史表 - ✅ 更新 main.py - 添加订阅相关 API 端点(26个端点) - GET /api/v1/subscription-plans - 获取订阅计划列表 - POST/GET /api/v1/tenants/{id}/subscriptions - 订阅管理 - POST /api/v1/tenants/{id}/subscriptions/{id}/cancel - 取消订阅 - POST /api/v1/tenants/{id}/subscriptions/{id}/change-plan - 变更计划 - GET /api/v1/tenants/{id}/usage - 用量统计 - POST /api/v1/tenants/{id}/usage/record - 记录用量 - POST /api/v1/tenants/{id}/payments - 创建支付 - GET /api/v1/tenants/{id}/payments - 支付历史 - POST/GET /api/v1/tenants/{id}/invoices - 发票管理 - POST/GET /api/v1/tenants/{id}/refunds - 退款管理 - POST /api/v1/tenants/{id}/refunds/{id}/process - 处理退款 - GET /api/v1/tenants/{id}/billing-history - 账单历史 - POST /api/v1/payments/stripe/create - Stripe 支付 - POST /api/v1/payments/alipay/create - 支付宝支付 - POST /api/v1/payments/wechat/create - 微信支付 - POST /webhooks/stripe - Stripe Webhook - POST /webhooks/alipay - 支付宝 Webhook - POST /webhooks/wechat - 微信支付 Webhook **预计 Phase 8 完成时间**: 6-8 周 --- **建议开发顺序**: 1 → 2 → 3 → 7 → 4 → 5 → 6 → 8 **预计 Phase 8 完成时间**: 6-8 周