Montscan

2个月前发布 77 00

Montscan 是一款开源的自动化文档处理工具,旨在将传统的扫描仪工作流与现代人工智能相结合。它通过监听 FTP、SMB 共享或本地文件夹接收扫描文档,利用 Ollama 运行的视觉大模型(VLM)分析文档内容,自动生成描述性文件名,并将处理后的文件上传至 WebDAV(如 Nextcloud)或网络共享。

所在地:
美国
收录时间:
2026-08-27
其他站点:
MontscanMontscan

Montscan 是一款开源的自动化文档处理工具,将传统的扫描仪工作流与现代人工智能相结合。它通过监听 FTP、SMB 共享或本地文件夹接收扫描文档,利用 Ollama 运行的视觉大模型(VLM)分析文档内容,自动生成描述性文件名,并将处理后的文件上传至 WebDAV(如 Nextcloud)或网络共享。目前该项目处于积极开发阶段,在小型测试集上已达到 97.5% 的处理成功率。

核心功能

  • 多源输入支持:
    • FTP 服务器:内置 FTP 服务,直接接收来自网络扫描仪的文档。
    • Samba (SMB) 轮询:监控远程 SMB 共享文件夹中的新 PDF。
    • 本地文件夹监视:实时监控本地目录,支持原地重命名或移动文件。
  • Vision AI 智能处理:
    • 集成 Ollama,支持 llava、llama3.2-vision 等视觉模型。
    • 自动将 PDF 转换为图像并进行内容分析。
  • AI 驱动的智能命名:
    • 根据文档内容生成具有描述性且包含日期的文件名(例如:“2024-08-27_发票_星巴克咖啡.pdf”),告别“scan001.pdf”。
    • 若 AI 处理失败,自动回退到时间戳命名格式。
  • 灵活的分发与存储:
    • WebDAV 集成:支持上传至 Nextcloud、ownCloud 及任何兼容 WebDAV 的服务。
    • Samba 提供者:可将处理后的文件推送到指定的 SMB/CIFS 网络共享。
  • 容器化部署:
    • 提供完整的 Docker Compose 配置,支持 CPU 和 NVIDIA GPU 加速。

技术栈与前置要求

  • 语言:Go 1.24+
  • 依赖工具:
    • Poppler (pdftoppm) 或 ImageMagick:用于将 PDF 页面转换为图像以供 AI 分析。
    • Ollama:本地运行的 LLM/VLM 服务。
  • 可选后端:WebDAV 服务器或 SMB 共享。

快速开始

1. Docker 部署(推荐)

这是最简便的安装方式,尤其是对于希望启用 GPU 加速的用户。

步骤:

  1. 克隆仓库并进入目录:
    git clone https://github.com/sh4den/Montscan.git
    cd Montscan
    
  2. 配置环境变量:
    编辑 .env 文件,设置 Ollama 地址、输入/输出路径及是否启用 GPU。

    • 启用 NVIDIA GPU:
      COMPOSE_PROFILES=gpu
      OLLAMA_GPU_COUNT=1
      
    • 仅使用 CPU:
      COMPOSE_PROFILES=cpu
      
  3. 启动服务:
    docker-compose up -d
    
  4. 查看日志以确认运行状态:
    docker-compose logs -f
    

2. 本地安装

如果你希望在宿主机上直接运行:

  1. 构建应用:
    go build -o montscan .
    
  2. 安装转换工具:
    • Linux: sudo apt-get install poppler-utils
    • macOS: brew install poppler
    • Windows: 从 GitHub Releases 下载 Poppler 二进制文件并添加到 PATH。
  3. 设置 Ollama:
    ollama pull llava
    # 或者 llama3.2-vision
    
  4. 运行:
    配置相应的环境变量后执行 ./montscan。

应用场景

  • 家庭办公自动化:将家用多功能打印机扫描的账单、信件自动分类并重命名,存入 NAS 或云盘。
  • 企业文档归档:通过 FTP 接收部门扫描仪的文件,利用 AI 提取关键信息(如发票号、日期)进行标准化命名和归档。
  • 隐私优先的处理:所有数据处理均在本地或通过私有网络完成,无需将敏感文档上传至第三方云端 OCR 服务。

故障排除小贴士

  • AI 命名失败:检查 Ollama 是否正常运行 (ollama list) 且已拉取视觉模型。Montscan 会在 AI 失败时自动使用 scan_YYYYMMDD_HHMMSS.pdf 格式作为备份。
  • FTP 连接问题:确保防火墙允许端口 21 及被动模式端口范围(默认 21000-21010)。
  • PDF 转换错误:确保 pdftoppm 或 convert (ImageMagick) 已在系统 PATH 中可用。

相关导航