🤖 智能文档审查系统

📖 项目简介

智能文档审查系统是一个基于 LangGraph 多 Agent 协同架构的文档审查平台。用户可以通过可视化工作流编辑器自定义审查流程,上传文档后系统自动调用多个 AI Agent 协同完成审查,并生成详细的审查报告。

核心特性

特性说明
🎨 可视化工作流编辑器基于 React Flow 的拖拽式 Agent 编排,支持自定义审查流程
🤖 多 Agent 协同声明提取、事实核查、合规审查、终审裁决四个专业化 Agent
📊 实时进度追踪SSE 推送审查进度,可视化展示 Agent 执行状态
📄 多格式支持支持 PDF、DOCX、Markdown、TXT 文档上传
🌓 暗色主题支持明暗主题切换,护眼暗色模式
📥 PDF 导出一键导出审查报告为 PDF 文件
🔌 灵活 LLM 接入支持所有 OpenAI 兼容 API(本地/云端)

🖼️ 界面预览

首页

上传文档,选择审查场景,一键开始审查。

在这里插入图片描述

工作流管理

查看和管理自定义审查工作流。
在这里插入图片描述

工作流编辑器

可视化拖拽式 Agent 编排,支持连线和配置。

在这里插入图片描述

审查记录

查看所有历史审查记录和状态。

在这里插入图片描述

审查报告

详细的审查结果,包含风险评分、事实核查、合规审查。

在这里插入图片描述

报告详情

事实核查和合规审查的详细结果。

在这里插入图片描述

系统设置

LLM 模型配置和界面主题切换。

在这里插入图片描述


🏗️ 技术架构

┌─────────────────────────────────────────────────────────────┐
│                      前端 (React 19)                         │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐       │
│  │ 首页    │  │ 工作流  │  │ 审查    │  │ 报告    │       │
│  └─────────┘  └─────────┘  └─────────┘  └─────────┘       │
│         React Flow + TailwindCSS 4 + Zustand                │
└─────────────────────────────────────────────────────────────┘
                            │ REST API + SSE
┌─────────────────────────────────────────────────────────────┐
│                     后端 (FastAPI)                            │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐       │
│  │ 文档    │  │ 工作流  │  │ 审查    │  │ PDF     │       │
│  │ API     │  │ API     │  │ API     │  │ 导出    │       │
│  └─────────┘  └─────────┘  └─────────┘  └─────────┘       │
│         LangGraph + SQLAlchemy + OpenAI SDK                  │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                    AI 引擎 (LangGraph)                        │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐       │
│  │ 声明    │  │ 事实    │  │ 合规    │  │ 终审    │       │
│  │ 提取    │→│ 核查    │→│ 审查    │→│ 裁决    │       │
│  └─────────┘  └─────────┘  └─────────┘  └─────────┘       │
└─────────────────────────────────────────────────────────────┘
                            │
┌─────────────────────────────────────────────────────────────┐
│                      LLM 服务                                │
│  Ollama / vLLM / LM Studio / OpenAI / 自定义 API            │
└─────────────────────────────────────────────────────────────┘

🛠️ 技术栈

前端

技术版本用途
React19UI 框架
TypeScript5.7类型安全
TailwindCSS4样式框架
Vite6构建工具
React Flow-可视化工作流编辑器
Zustand-状态管理
TanStack Query5数据请求
Lucide React-图标库

后端

技术版本用途
Python3.12+运行时
FastAPI0.139+Web 框架
LangGraph0.4+Agent 工作流编排
SQLAlchemy2.0ORM
SQLite-数据库
OpenAI SDK-LLM 调用
fpdf22.8+PDF 生成
uvicorn0.34+ASGI 服务器

依赖管理

  • Python: UV (快速 Python 包管理器)
  • Node.js: npm

🚀 快速开始

环境要求

  • Python 3.12+
  • Node.js 18+
  • UV 包管理器

安装与启动

# 克隆项目
git clone https://github.com/liuchangng/document-review-system.git
cd document-review-system

# Linux/Mac
./start.sh

# Windows
start.bat

脚本会自动:

  1. 检查 Python、Node.js、UV 环境
  2. 安装后端依赖(UV)
  3. 安装前端依赖(npm)
  4. 启动后端服务(http://localhost:8000)
  5. 启动前端服务(http://localhost:5173)

手动启动

# 后端
cd server
uv sync
uv run uvicorn main:app --host 0.0.0.0 --port 8000

# 前端(新终端)
cd web
npm install
npm run dev

⚙️ 配置

环境变量

复制 .env.exampleserver/.env

# LLM 配置
LLM_BASE_URL=https://api.openai.com/v1
LLM_API_KEY=sk-your-api-key
LLM_MODEL=gpt-4o

# 本地模型示例 (Ollama)
# LLM_BASE_URL=http://localhost:11434/v1
# LLM_API_KEY=not-needed
# LLM_MODEL=qwen2.5:7b

# 本地模型示例 (LM Studio)
# LLM_BASE_URL=http://localhost:1234/v1
# LLM_API_KEY=not-needed
# LLM_MODEL=qwen2.5-7b-instruct

支持的 LLM 服务

服务Base URL说明
OpenAIhttps://api.openai.com/v1GPT-4o 等
Ollamahttp://localhost:11434/v1本地部署
LM Studiohttp://localhost:1234/v1本地部署
vLLMhttp://localhost:8000/v1高性能推理
SiliconFlowhttps://api.siliconflow.cn/v1国内云服务
Agnes AIhttps://api.agnes-ai.cn/v1国内云服务

📁 项目结构

news-review/
├── start.sh              # Linux/Mac 启动脚本
├── start.bat             # Windows 启动脚本
├── .env.example          # 环境变量示例
├── README.md             # 项目文档
│
├── server/               # Python 后端
│   ├── pyproject.toml    # UV 依赖配置
│   ├── main.py           # FastAPI 入口
│   ├── config/           # 配置模块
│   ├── models/           # 数据模型
│   ├── agents/           # Agent 模块
│   ├── graph/            # LangGraph 工作流
│   ├── prompts/          # 提示词模板
│   ├── services/         # 业务服务
│   └── api/              # API 路由
│
├── web/                  # React 前端
│   ├── package.json      # npm 依赖
│   ├── vite.config.ts    # Vite 配置
│   └── src/
│       ├── pages/        # 页面组件
│       ├── components/   # UI 组件
│       ├── hooks/        # React Hooks
│       ├── services/     # API 服务
│       └── stores/       # 状态管理
│
└── docs/                 # 项目文档
    └── images/           # 截图

🔧 自定义工作流

使用预设模板

系统内置"默认审查流程"模板,包含四个标准 Agent:

  1. 声明提取 - 从文档中提取可验证的事实性声明
  2. 事实核查 - 对每条声明进行验证和评估
  3. 合规审查 - 检查文档是否存在合规问题
  4. 终审裁决 - 综合评估并给出风险评分

创建自定义工作流

  1. 访问 /workflows 页面
  2. 点击"创建工作流"
  3. 在画布上添加 Agent 节点
  4. 配置每个 Agent 的名称和提示词
  5. 拖拽连线定义执行顺序
  6. 验证并保存

📄 API 文档

启动后端服务后访问:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

主要端点

方法路径说明
POST/api/documents上传文档
GET/api/documents文档列表
DELETE/api/documents/{id}删除文档
POST/api/reviews创建审查
GET/api/reviews审查列表
GET/api/reviews/{id}审查详情
GET/api/reviews/{id}/progressSSE 进度推送
GET/api/reviews/{id}/export/pdf导出 PDF
GET/api/workflows工作流列表
POST/api/workflows创建工作流
POST/api/workflows/validate验证工作流

📜 许可证

本项目采用 Apache License 2.0 许可证。

Copyright 2026

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

允许学习研究使用 - 本项目可用于个人学习、教学和研究目的。


🔗 相关链接

  • 📂 GitHub: https://github.com/liuchangng/document-review-system
  • 🐛 Issues: https://github.com/liuchangng/document-review-system/issues
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐