V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lpdswing
V2EX  ›  开源软件

PDF 解析工具,大模型开发神器

  •  
  •   lpdswing · 9 天前 · 1105 次点击

    项目地址

    https://github.com/lpdswing/mineru-web

    MinerU Web

    Python 3.10 Vue 3 License Docker Ready

    🌟 项目简介

    MinerU Web 是一个现代化的文档智能处理平台,基于先进的 AI 技术,提供文档解析、信息提取和智能分析功能。本项目采用前后端分离架构,结合容器化技术,为用户提供高效、可靠的文档处理解决方案。

    ✨ 核心特性

    • 🚀 高性能架构:基于 FastAPI 和 Vue 3 构建,提供卓越的性能和用户体验
    • 🤖 AI 驱动:集成先进的 AI 模型,实现智能文档解析和信息提取
    • 📊 多格式支持:支持 PDF 、Word 、Excel 等多种文档格式的处理
    • 🔄 异步处理:采用异步任务队列,支持大规模文档并发处理
    • 🛡️ 安全可靠:完善的权限控制和数据加密机制
    • 🐳 容器化部署:提供完整的 Docker 支持,一键部署
    • 🌐 跨平台:支持多种硬件架构,包括 x86_64 和 ARM64

    🛠️ 技术栈

    后端

    • FastAPI:高性能异步 Web 框架
    • Redis:分布式缓存和任务队列
    • MinIO:高性能对象存储
    • SQLite:轻量级数据库
    • Docker:容器化部署

    前端

    • Vue 3:渐进式 JavaScript 框架
    • Element Plus:企业级 UI 组件库
    • TypeScript:类型安全的 JavaScript 超集
    • Vite:下一代前端构建工具

    🚀 快速开始

    前置准备

    1. 下载模型文件:
    # 克隆项目
    git clone https://github.com/lpdswing/mineru-web.git
    cd mineru-web
    
    # 下载模型文件
    # 更新为 2.0 模型
    python download_models.py modelscope
    或
    python download_models.py huggingface
    
    1. 配置 MinIO 地址:
    # 复制环境变量模板
    cp .env.example .env
    
    # 编辑 .env 文件,修改 MinIO 地址
    MINIO_ENDPOINT=your-minio-address:9000
    
    1. 配置 mineru.json
    # 复制 mineru 配置文件模板
    cp mineru.example.json mineru.json
    
    # 修改 endpoint
        "bucket_info": {
            "mds": [
                "minioadmin",
                "minioadmin",
                "http://your-minio-address:9000"
            ]
        },
    
    

    使用 Docker Compose 部署

    # 启动服务
    docker-compose up -d
    
    # 参考以下网址安装 mc
    https://min.io/docs/minio/linux/reference/minio-mc.html
    
    # 添加 minio 的 alias
    mc alias set local http://localhost:9000 minioadmin minioadmin
    
    # 设置 mds 桶为 public
    mc anonymous set download local/mds
    
    

    界面展示

    首页

    首页 - 展示系统概览和快速操作

    文件管理

    文件管理 - 支持多种文档格式的上传和管理

    文档预览

    文档预览 - 智能解析和展示文档内容

    文件上传

    文件上次 - 批量上传

    本地开发环境

    # 启动本地开发环境
    docker-compose -f docker-compose.local.yml up -d
    

    📦 项目结构

    mineru-web/
    ├── backend/           # 后端服务
    │   ├── app/          # 应用代码
    │   ├── tests/        # 测试用例
    │   └── Dockerfile    # 后端 Docker 配置
    ├── frontend/         # 前端应用
    │   ├── src/         # 源代码
    │   ├── public/      # 静态资源
    │   └── Dockerfile   # 前端 Docker 配置
    ├── models/          # AI 模型文件
    ├── magic-pdf.json   # 模型配置文件
    ├── docker-compose.yml           # 生产环境配置
    ├── docker-compose.local.yml     # 开发环境配置
    └── README.md        # 项目文档
    

    🔧 配置说明

    环境变量

    • REDIS_HOST:Redis 服务器地址
    • MINIO_ENDPOINT:MinIO 服务器地址
    • DATABASE_URL:数据库连接 URL

    端口说明

    • 8088:Web 界面
    • 8000:后端 API
    • 9000:MinIO API
    • 9001:MinIO 控制台
    • 6379:Redis

    🤝 贡献指南

    我们欢迎各种形式的贡献,包括但不限于:

    • 提交问题和建议
    • 提交代码改进
    • 改进文档
    • 分享使用经验

    📄 开源协议

    本项目采用 AGPL-3.0 协议开源,详情请参见 LICENSE 文件。

    📝 更新日志

    [2.0.0] - 2025-07-07

    • 后端
      • 适配 Mineru 2.1.0 版本
      • 更新模型下载脚本
      • 更新设置支持 pipeline 和 vlm-*动态更新
      • 后端支持预加载 vlm 模型
    • 前端
      • 更换 markdown 显示插件为 mark-it-down,支持公式展示
      • 文件列表增加 backend 标签

    🌟 致谢


    📈 Star 趋势

    <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=lpdswing/mineru-web&type=Timeline&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=lpdswing/mineru-web&type=Timeline" /> Star History Chart </picture>
    6 条回复    2025-07-13 09:32:37 +08:00
    cnscud
        1
    cnscud  
       9 天前   ❤️ 1
    最后这张图是认真的吗
    benxin4
        2
    benxin4  
       9 天前
    文档预览如果左右可以互相跳转就好了,或者选中左边内容,右边也突出一下
    SSSLC77
        3
    SSSLC77  
       9 天前
    star 了,支持
    lpdswing
        4
    lpdswing  
    OP
       9 天前
    @benxin4 这个需要换 pdf 组件,使用频率不高,多数情况下还是解析给大模型用,直接下载 markdown ,预览只是锦上添花
    hscui
        5
    hscui  
       8 天前
    楼主你好。
    我不是程序员,一般只能依靠 README 中说明来安装和部署,昨天刚部署了 MinerU ,但只能使用命令行版,WEB 版无法使用,所以查到您这个项目。

    您这个部署步骤是只支持 Linux 吗?可以在 WIN10 上部署吗?是否需要先安装 MinerU ?是否一定需要 GPU ?
    lpdswing
        6
    lpdswing  
    OP
       8 天前   ❤️ 1
    @hscui windows 可以部署,需要 docker ,不需要安装 mineru ,可以只用 cpu 。按说明一步一步来就可以
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1200 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 17:51 · PVG 01:51 · LAX 10:51 · JFK 13:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.