金融投研与财报解析:基金年报、季报、IPO 招股书结构化提取与可视化洞察。 企业经营分析:收入、利润、现金流、费用结构的趋势与对比分析与BI呈现。 政务与审计:规章制度、预算执行、公共项目报告的证据抽取与要点总结。 科研与论文:图表重构、公式与结论抽取,辅助综述与数据复现与再分析。 合同与合规:条款聚合、风险条目识别、金额与日期要点检索与审阅。
输入:图表图片/ PDF多模态文件
↓
【结构检测】识别坐标轴、图例、标题位置
↓
【OCR提取】读取文字:轴标签、刻度值、数据标签
↓
【图形识别】检测柱子、折线、点的位置和大小
↓
【数据计算】根据像素位置和坐标刻度反推数值
↓
【重新绘制】用提取的数据重新生成图表解决 多模态混排难题:DeepSeek-OCR 精准识别图片/表格/文字/公式,并统一转为 Markdown; 解决 上下文超长难题:智能切分 + 并发抽取 + 统一 JSON Schema,形成紧凑、可检索的上下文; 解决 可视化解释难题:基于知识库重绘 ECharts 图表,并生成可交互的结论与说明。
一份50页PDF可能产生10万字符,直接喂给 LLM 会超窗且稀释关键信息; 表格、数字、结论混杂在文字中,难以快速抽取与对齐; 纯文本缺乏层次与分类,难以复用与检索。
智能切分:按章节/页码/锚点切片,保证片段自洽并携带索引; 并发分析:对每个切片并发抽取“摘要、表格/图表、关键指标”; 结构化存储:写入统一 JSON Schema,支持后续检索与拼接生成。
┌─────────────────────────────────────────────────┐
│ 输入:PDF文档 + 用户问题 │
│ "分析2024年财务报告,重点关注收入和利润" │
└──────────────────┬──────────────────────────────┘
↓
【第1步:文档识别】
DeepSeek-OCR API
↓
输出:Markdown文本(10万字符)
↓
【第2步:智能切片】
按标题分割为30个块
↓
【第3步:并发结构化提取】
提取:摘要 + 表格 + 关键点
耗时:(并发)
↓
【第4步:知识库构建】
压缩为紧凑的上下文(2万字符)
↓
【第5步:LLM生成报告】
输出:HTML + Title + Summary
↓
【第6步:保存展示】
浏览器打开查看交互式报告
↓
┌──────────────────┴──────────────────────────────┐
│ 输出:交互式HTML报告 + 文字分析摘要 │
│ - 7+ 个可视化图表(ECharts) │
│ - 3-5条核心洞察要点 │
│ - 支持交互、导出、分享 │
└─────────────────────────────────────────────────┘DataAnalysis/ # 项目根目录
├── 📁 backend/ # 后端服务层
│ ├── Data_analysis/
│ │ ├── DeepSeek-OCR-vllm/ # OCR服务
│ │ │ ├── backend_integration_api.py # 🔥 主服务入口
│ │ │ ├── simple_ocr_client.py # OCR推理服务
│ │ │ ├── config.py # OCR配置
│ │ │ └── deepseek_ocr.py # DeepSeek-VL模型封装
│ │ ├── backwark/ # 数据分析核心
│ │ │ ├── Information_structuring.py # 信息结构化
│ │ │ ├── visualizer.py # 可视化生成器
│ │ │ └── pdf_exporter.py # PDF导出
│ │ └── mock_visualizer.py # 测试用模拟器
│ └── 10华夏收入混合型证券投资基金2024年年度报告.pdf # 示例文档
│
└── /tmp/ocr_results/ # 临时结果目录
├── status_*.json # 任务状态
├── *_analyzed.json # 结构化结果
└── answer_*.html # 可视化报告# 创建新的虚拟环境
conda create -n deepseek_ocr python=3.11 -y
# 激活环境
conda activate deepseek_ocrcd backend/DeepSeek-OCR-vllm
pip install -r requirements.txt# DeepSeek-OCR 配置
DEEPSEEK_MODEL_PATH=/home/data/nongwa/workspace/model/OCR/DeepSeek-OCR
DEEPSEEK_OCR_URL=http://192.168.110.131:8707/ocr
DEEPSEEK_OCR_HOST=0.0.0.0
DEEPSEEK_OCR_PORT=8707
# 数据分析配置
DATA_ANALYSIS_BASE_SIZE=1024
DATA_ANALYSIS_IMAGE_SIZE=640
DATA_ANALYSIS_CROP_MODE=true
DATA_ANALYSIS_PROMPT="<image>\n<|grounding|>Convert the document to markdown."
# 信息结构化配置
QWEN_TOKENIZER_PATH=/home/data/nongwa/workspace/Data_analysis/Qwen-tokenizer
ANALYSIS_CHUNK_SIZE=1500
ANALYSIS_MAX_WORKERS=10
ANALYSIS_API_KEY=sk-xxx
ANALYSIS_API_BASE=https://dashscope.aliyuncs.com/compatible-mode/v1
ANALYSIS_MODEL_NAME=qwen3-max
# 可视化配置
VISUALIZER_API_KEY=sk-xxx
VISUALIZER_API_BASE=https://dashscope.aliyuncs.com/compatible-mode/v1
VISUALIZER_MODEL_NAME=qwen3-max
# API服务配置
API_HOST=0.0.0.0
API_PORT=8708
API_DEBUG=false
API_RELOAD=false
# 文件存储配置
UPLOAD_DIR=/home/MuyuWorkSpace/03_DataAnalysis/backend/Data_analysis/output/ocr_uploads
RESULTS_DIR=/home/MuyuWorkSpace/03_DataAnalysis/backend/Data_analysis/output/ocr_results
TEMP_DIR=/home/MuyuWorkSpace/03_DataAnalysis/backend/Data_analysis/output/ocr_temp
# 文件处理限制
MAX_FILE_SIZE_MB=100
SUPPORTED_EXTENSIONS=.jpg,.jpeg,.png,.pdf,.txt,.md
# 并发和性能配置
MAX_CONCURRENT_REQUESTS=5
REQUEST_TIMEOUT=300
CLEANUP_INTERVAL_HOURS=24
# 开发环境配置
ENVIRONMENT=development
LOG_LEVEL=info# 确保在 deepseek_ocr 虚拟环境中
conda activate deepseek_ocr
# 进入项目目录
cd /home/MuyuWorkSpace/03_DataAnalysis/backend/Data_analysis/DeepSeek-OCR-vllm
# 启动主服务
python backend_integration_api.py# 进入前端目录
cd ./frontend
# 安装依赖(首次运行需要,耗时约2-5分钟)
npm install
# 启动前端服务
npm run dev