🎯 限时免费推广期 | 🔒 极致隐私保护 | 📱 移动端优先
一个基于 Next.js 和 FastAPI 的体检报告智能解读 Web 应用,使用 AI(Claude 3.5 / GPT-4o)进行深度分析,包括智能归并、关联分析和优先级建议。
- 📄 PDF 解析:自动提取体检报告中的关键信息
- 🤖 AI 深度解读:
- 智能归并相关异常指标
- 发现指标间的关联关系
- 根据严重程度提供优先级建议
- 🔒 隐私保护:无数据库,内存处理,阅后即焚,不保留用户数据
- 📱 移动端优先:完美适配手机浏览器,使用医疗蓝配色方案
- ⚡ 快速响应:优化的前端体验,流畅的交互动画
- Next.js 14 (App Router)
- TypeScript
- Tailwind CSS
- React 18
- FastAPI
- pdfplumber (PDF 文本提取)
- LangChain (AI 集成)
- Claude 3.5 Sonnet / GPT-4o (AI 分析)
- Node.js 18+ 和 npm/yarn
- Python 3.9+
- Anthropic API Key(优先)或 OpenAI API Key(备选)
git clone <repository-url>
cd tijianreportcd backend
# 安装依赖
pip install -r requirements.txt
# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,配置 ANTHROPIC_API_KEY 或 OPENAI_API_KEY
# 启动服务
python main.py后端将在 http://localhost:8000 启动。
cd frontend
# 安装依赖
npm install
# 配置环境变量(可选)
cp .env.local.example .env.local
# 编辑 .env.local,确认 BACKEND_URL 指向后端地址
# 启动开发服务器
npm run dev前端将在 http://localhost:3000 启动。
tijianreport/
├── frontend/ # Next.js 前端
│ ├── app/
│ │ ├── page.tsx # 首页(上传界面)
│ │ ├── report/ # 结果页
│ │ └── api/ # API 路由(代理到后端)
│ ├── tailwind.config.ts # Tailwind 配置(医疗蓝配色)
│ └── package.json
│
├── backend/ # FastAPI 后端
│ ├── main.py # 主应用入口
│ ├── services/
│ │ └── ai_analyzer.py # AI 分析服务(System Prompt 逻辑)
│ ├── requirements.txt
│ └── .env.example
│
└── README.md
- 主色:
#2C58E8(医疗蓝) - 背景:白色
- 强调:渐变色和阴影提升视觉层次
- 触摸友好的按钮尺寸
- 流畅的滚动体验
- 响应式布局(移动端优先)
- 防止双击缩放
使用 pdfplumber 从上传的 PDF 文件中提取文本内容。
System Prompt 核心逻辑(详见 backend/services/ai_analyzer.py):
- 异常指标提取:识别超出参考范围的指标
- 智能归并:将相关异常归类(例如:肝功能相关、血脂相关)
- 关联分析:发现指标间的因果关系或共同指向的问题
- 优先级建议:根据严重程度、紧急性、可逆性提供可执行的行动建议
- ✅ 无数据库存储
- ✅ 内存处理(请求完成后数据即销毁)
- ✅ 阅后即焚(用户可手动清空数据)
- ✅ 不关联用户身份
后端实现了基于 IP 的请求限制:
/analyze: 每个 IP 每分钟 10 次请求/feedback: 每个 IP 每分钟 5 次请求
- 上传报告:在首页上传 PDF 格式的体检报告
- 等待分析:AI 自动提取并分析异常指标
- 查看解读:查看智能归并、关联分析和优先级建议
- 下载报告:保存分析结果为文本文件
- 清空数据:保护隐私,阅后即焚
# AI 模型配置(至少需要一个)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# 或
OPENAI_API_KEY=your_openai_api_key_hereNEXT_PUBLIC_BACKEND_URL=http://localhost:8000AI 分析器的 System Prompt 设计重点:
- 准确性:只标记确实超出参考范围的指标
- 关联性:归并和关联分析要有医学依据
- 实用性:建议要具体、可执行
- 谨慎性:对于严重异常,建议咨询专业医生
详细实现见 backend/services/ai_analyzer.py。
- 核心逻辑有详细的中文注释
- System Prompt 逻辑特别标注
- API 接口文档齐全
- 无数据库:不存储任何用户数据
- 内存处理:请求完成后数据自动销毁
- 阅后即焚:用户可随时清空数据
- 不关联身份:反馈和统计不关联用户身份
本项目仅供学习和参考使用。AI 分析结果仅供参考,不构成医疗建议。如有疑问,请咨询专业医生。
欢迎提交 Issue 和 Pull Request!
⭐ 限时免费推广期 | 🔒 极致隐私保护 | 📱 移动端优先