# doc_understand **Repository Path**: baymax-microbot/doc_understand ## Basic Information - **Project Name**: doc_understand - **Description**: CLI 形式 进行文档视觉解析 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-27 - **Last Updated**: 2026-03-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Doc Understand 文档理解与解析服务,基于 VLM、PaddleOCR 和 FastAPI 的 PDF 文档智能解析系统。 ## 项目简介 Doc Understand 是一个用于文档理解的微服务项目,主要功能是对 PDF 文档进行智能解析,提取文本和表格内容,并返回解析结果。该服务支持 GPU 和 NPU 加速推理,可集成到 RAG 文档处理流程中。 ## 主要功能 - **PDF 文档解析**:基于 PaddleOCR 的深度学习模型进行 PDF 文档解析 - **大模型解析**:基于 VLM 视觉模型进行 PDF 文档解析 - **表格识别**:支持文档中表格结构的识别与提取 - **图片处理**:自动处理文档中的图片并生成 Markdown - **流水线处理**:完整的文档处理流水线,支持文件上传、解析 - **多硬件支持**:支持 GPU 和 NPU 加速部署 - **RESTful API**:提供 FastAPI 接口,便于集成到现有系统 ## 技术栈 - **框架**:FastAPI - **OCR 引擎**:PaddleOCR / PaddleStructure - **存储**:MinIO (兼容 S3) - **配置管理**:Pydantic Settings - **部署**:支持 GPU / NPU 硬件加速 ## 任务 - [ ] Paddleocr Struct V3 集成 - [ ] VLM集成 - [ ] ppt解析 - [ ] word解析 - [ ] 图片解析 - [ ] CLI 开发 ## 项目结构 ``` doc_understand/ ├── application.py # FastAPI 应用入口 ├── main.py # 主服务逻辑,包含解析器和存储类 ├── conf/ │ ├── config.py # 应用配置定义 │ └── config.toml # 配置文件 ├── router/ │ └── doc/ │ ├── api.py # 文档处理 API 路由 │ └── core.py # 流水线解析器 ├── utils/ │ ├── constant.py # 常量定义 │ ├── document_util.py # 文档处理工具 │ ├── logger_util.py # 日志工具 │ └── test_model.py # 模型测试工具 ├── build/ │ ├── gpu.sh # GPU 构建脚本 │ └── npu.sh # NPU 构建脚本 └── process.sh # 处理脚本 ``` ## 快速开始 ### 环境要求 - Python 3.10+ - PaddlePaddle (GPU 或 CPU 版本) - MinIO 服务(用于存储解析后的文档) ### 安装依赖 ```bash pip install -r requirements.txt ``` 或使用 uv: ```bash uv sync ``` ### 配置 在 `conf/config.toml` 中配置相关参数: ```toml [app] host = "0.0.0.0" port = 9380 [minio] endpoint = "localhost:9000" access_key = "minioadmin" secret_key = "minioadmin" bucket = "doc-parser" ``` ### 启动服务 ```bash # CPU 模式 python application.py # GPU 模式 bash build/gpu.sh # NPU 模式 bash build/npu.sh ``` ## 配置说明 | 配置项 | 说明 | 默认值 | |--------|------|--------| | host | 服务监听地址 | 0.0.0.0 | | port | 服务监听端口 | 9951 | ## 许可协议 本项目基于 LICENSE 中指定的许可协议开源。