paperless-gpt

GitHub
2.3k 147 中等 1 次阅读 今天MITAgent图像语言模型开发框架
AI 解读 由 AI 自动生成,仅供参考

paperless-gpt 是一款专为 paperless-ngx 文档管理系统设计的 AI 增强工具,旨在利用大语言模型(LLM)和视觉识别技术,彻底改变传统文档数字化的处理方式。它主要解决了用户在整理大量扫描文件时面临的痛点:传统 OCR 对模糊或复杂版面识别率低,以及手动命名、分类和提取信息耗时费力的问题。

无论是希望搭建私有知识库的个人用户,还是需要高效管理档案的小型企业团队,只要正在使用 paperless-ngx,都能从该工具中获益。其核心亮点在于"LLM 增强型 OCR",不仅能比传统技术更精准地提取低质量扫描件中的文字,还能智能理解文档语境。在此基础上,paperless-gpt 能自动生成准确的文档标题、标签、发文日期及联系人信息,甚至支持按配置自动填充自定义字段。

技术上,它展现了极高的灵活性,既支持调用 OpenAI 等云端服务,也完美兼容 Ollama 本地部署的大模型(包括具备推理能力的模型),在保障数据隐私的同时提供企业级的识别效果。此外,它还集成了 Google Document AI、Azure Document Intelligence 等多种专业 OCR 方案供用户选择。通过自动化处理繁琐的元数据生成工作,paperless-gpt 让用户能将精力集中在文档内容本身,真正实现轻松高效的无纸化办公。

使用场景

某小型会计师事务所的助理每天需处理大量客户寄来的手写发票、模糊传真件及多语言合同,并将其录入 paperless-ngx 系统进行归档。

没有 paperless-gpt 时

  • OCR 识别率低:传统 OCR 无法准确提取手写笔记或低质量扫描件中的文字,导致大量关键信息丢失或乱码。
  • 人工命名耗时:助理必须逐个打开文档,阅读内容后手动重命名为"2023 年 XX 公司服务费发票”等规范格式,效率极低。
  • 分类依赖经验:标签(如“税务”、“合同”)和往来单位完全靠人工判断,新员工容易标错,导致后期检索困难。
  • 日期提取繁琐:文档创建日期往往需要人工查看文件内容后手动修改,容易因疏忽导致时间线混乱。
  • 自定义字段空白:发票号、金额等关键结构化数据无法自动提取,后续统计仍需二次人工录入。

使用 paperless-gpt 后

  • 智能增强识别:paperless-gpt 调用 LLM 视觉模型,即使面对潦草手写或模糊传真,也能结合上下文精准还原文字内容。
  • 自动生成标题:系统自动分析文档语义,瞬间生成如"2023 年 10 月 - 某某科技 - 咨询服务费发票”的清晰标题,无需人工干预。
  • 精准自动打标:AI 自动识别文档类型并打上“增值税发票”、“租赁协议”等标签,同时准确提取往来单位名称,分类一致性大幅提升。
  • 智能提取日期:自动从文档正文中识别签署日期或开票日期并更新元数据,确保档案时间轴准确无误。
  • 结构化数据填充:配置后自动提取发票号码、税额等填入自定义字段,直接支持后续财务报表生成,彻底消除二次录入。

paperless-gpt 通过将大语言模型的推理能力融入文档数字化流程,将原本数小时的人工整理工作压缩至分钟级,让非结构化文档真正变为可即时检索的智能资产。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 非必需
  • 若使用本地大模型(Ollama),建议配备 NVIDIA GPU 或 NPU 以提升性能
  • 具体型号和显存取决于所选模型(如 qwen3:8b),README 未指定具体 CUDA 版本
内存

未说明(取决于所选 LLM 模型大小,本地运行大模型通常建议 16GB+)

依赖
notes该工具主要通过 Docker 部署,需配合正在运行的 paperless-ngx 实例。支持多种 LLM 提供商(OpenAI, Ollama, Mistral, Azure, Anthropic)。若选择本地部署 Ollama 进行 OCR 或推理,需自行安装并运行 Ollama 服务器,且硬件需求完全取决于所选用的具体模型(例如运行 8B 参数模型需要相应显存)。无需手动配置 Python 环境或安装特定 Python 库。
python未说明(通过 Docker 部署,环境已封装)
Docker
paperless-ngx (外部依赖)
paperless-gpt hero image

快速开始

paperless-gpt

许可证 Discord横幅 Docker拉取次数 GitHub容器注册表 贡献者公约 GitHub赞助者

icereed%2Fpaperless-gpt | Trendshift

截图

💡 由Icereed维护。自豪地得到BubbleTax.de的支持——为德国Interactive Brokers交易员提供自动化、符合BMF标准的税务报告。


paperless-gpt 可与 paperless-ngx 无缝配合,生成 AI驱动的文档标题标签,从而为您节省数小时的手动分类时间。虽然其他工具也可能提供AI聊天功能,但 paperless-gpt 的独特之处在于它通过 LLM增强OCR技术 来确保高精度,即使面对复杂的扫描件也能游刃有余。如果您渴望更高级的文本提取和轻松的文档管理,那么这就是您的解决方案。

https://github.com/user-attachments/assets/bd5d38b9-9309-40b9-93ca-918dfa4f3fd4

❤️ 支持这个项目
如果 paperless-gpt 正在帮助您整理文档并节省时间,请考虑 赞助其开发。您的支持将有助于持续改进和维护!


核心亮点

  1. LLM增强型OCR
    利用大型语言模型(OpenAI或Ollama)实现 优于传统OCR 的效果——将杂乱或低质量的扫描件转化为具有上下文理解能力的高质量文本。

  2. 使用专业的AI OCR服务

    • LLM OCR: 使用OpenAI或Ollama从图像中提取文本。
    • Google Document AI: 利用Google强大的Document AI进行OCR任务。
    • Azure Document Intelligence: 使用微软的企业级OCR解决方案。
    • Docling Server: 自托管的OCR和文档转换服务
  3. 自动标题、标签及创建日期生成
    不再需要猜测。让AI完成命名和分类工作。您可以轻松查看建议,并在必要时进行调整。

  4. 支持Ollama中的推理模型
    通过使用像qwen3:8b这样的推理模型,可以显著提高准确性。这是隐私与性能之间的完美平衡!当然,如果您有足够的GPU或NPU,更大的模型将进一步提升体验。

  5. 自动对应方生成
    自动识别并从您的文档中生成对应方信息,使跟踪和组织通信更加便捷。

  6. 自动自定义字段生成
    从您的文档中提取并填充自定义字段。您可以配置要提取哪些字段以及如何填写它们。此功能必须在设置中启用,并且至少选择一个自定义字段才能生效。提供三种写入模式:

    • 追加:这是最安全的选项:仅添加文档上尚不存在的新字段。绝不会覆盖现有字段,即使该字段为空。
    • 更新:添加新字段,并用新建议覆盖现有字段。文档上没有新建议的字段将保持不变。
    • 替换:删除文档上所有现有的自定义字段,并完全用建议的字段替换。
  7. 可搜索且可选中的PDF
    生成带有透明文本层的PDF,这些文本层精确地位于每个单词之上,使您的文档既可搜索又可选中,同时保留原始外观。

  8. 广泛的自定义功能

    • 通过Web界面自定义提示词:您可以在“设置”菜单下的Web界面中直接调整和管理用于标题、标签、对应方等的所有AI提示词。应用程序采用安全的default_promptsprompts目录结构,确保您的自定义持久化。
    • 标记方式:您可以决定文档是手动标记、自动标记,还是通过基于OCR的工作流来标记。
    • PDF处理:配置如何处理经过OCR增强的PDF文件,可以选择本地保存或上传到paperless-ngx。
  9. 简单的Docker部署
    只需几个环境变量,即可快速启动!与paperless-ngx一起使用Compose文件部署,操作简单快捷。

  10. 统一的Web界面

    • 手动审核:批准或调整AI的建议。
    • 自动处理:您只需关注边缘情况,其余工作将由系统自动完成。
  11. 临时文档分析 使用自定义提示词对选定的文档进行临时分析。快速获取洞察、摘要,或一次性从多份文档中提取特定信息。


目录


开始使用

先决条件

  • 已安装 Docker
  • 运行中的 paperless-ngx 实例。
  • 可访问 LLM 提供商:
    • OpenAI:具有 gpt-4ogpt-3.5-turbo 等模型的 API 密钥。
    • Ollama:运行中的 Ollama 服务器,配备如 qwen3:8b 等模型。

安装

Docker Compose

以下是一个 docker-compose.yml 示例,用于将 paperless-gpt 与 paperless-ngx 一起启动:

services:
  paperless-ngx:
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    # ... (您现有的 paperless-ngx 配置)

  paperless-gpt:
    # 使用以下任一镜像源:
    image: icereed/paperless-gpt:latest # Docker Hub
    # image: ghcr.io/icereed/paperless-gpt:latest  # GitHub Container Registry
    environment:
      PAPERLESS_BASE_URL: "http://paperless-ngx:8000"
      PAPERLESS_API_TOKEN: "your_paperless_api_token"
      PAPERLESS_PUBLIC_URL: "http://paperless.mydomain.com" # 可选
      MANUAL_TAG: "paperless-gpt" # 可选,默认值:paperless-gpt
      AUTO_TAG: "paperless-gpt-auto" # 可选,默认值:paperless-gpt-auto
      # LLM 配置 - 选择其中一种:

      # 选项 1:标准 OpenAI
      LLM_PROVIDER: "openai"
      LLM_MODEL: "gpt-4o"
      OPENAI_API_KEY: "your_openai_api_key"

      # 选项 2:Mistral
      # LLM_PROVIDER: "mistral"
      # LLM_MODEL: "mistral-large-latest"
      # MISTRAL_API_KEY: "your_mistral_api_key"

      # 选项 3:Azure OpenAI
      # LLM_PROVIDER: "openai"
      # LLM_MODEL: "your-deployment-name"
      # OPENAI_API_KEY: "your_azure_api_key"
      # OPENAI_API_TYPE: "azure"
      # OPENAI_BASE_URL: "https://your-resource.openai.azure.com"

      # 选项 4:Ollama(本地)
      # LLM_PROVIDER: "ollama"
      # LLM_MODEL: "qwen3:8b"
      # OLLAMA_HOST: "http://host.docker.internal:11434"
      # OLLAMA_CONTEXT_LENGTH: "8192" # 设置 Ollama 的 NumCtx(上下文窗口)
      # TOKEN_LIMIT: 1000 # 建议用于较小的模型

      # 选项 5:Anthropic/Claude
      # LLM_PROVIDER: "anthropic"
      # LLM_MODEL: "claude-sonnet-4-5"
      # ANTHROPIC_API_KEY: "your_anthropic_api_key"

      # 可选 LLM 设置
      # LLM_LANGUAGE: "English" # 可选,默认为英语

      # OCR 配置 - 选择其中一种:
      # 选项 1:基于 LLM 的 OCR
      OCR_PROVIDER: "llm" # 默认 OCR 提供者
      VISION_LLM_PROVIDER: "ollama" # openai、ollama、mistral 或 anthropic
      VISION_LLM_MODEL: "minicpm-v" # minicpm-v(ollama)或 gpt-4o(openai)或 claude-sonnet-4-5(anthropic/claude)
      OLLAMA_HOST: "http://host.docker.internal:11434" # 如果使用 Ollama

      # OCR 处理模式
      OCR_PROCESS_MODE: "image" # 可选,默认为 image,其他选项:pdf、whole_pdf
      PDF_SKIP_EXISTING_OCR: "false" # 可选,跳过已存在 OCR 的 PDF 文件

      # 选项 2:Google Document AI
      # OCR_PROVIDER: 'google_docai'       # 使用 Google Document AI
      # GOOGLE_PROJECT_ID: 'your-project'  # 您的 GCP 项目 ID
      # GOOGLE_LOCATION: 'us'              # Document AI 区域
      # GOOGLE_PROCESSOR_ID: 'processor-id' # 您的处理器 ID
      # GOOGLE_APPLICATION_CREDENTIALS: '/app/credentials.json' # 服务账号密钥路径

      # 选项 3:Azure Document Intelligence
      # OCR_PROVIDER: 'azure'              # 使用 Azure Document Intelligence
      # AZURE_DOCAI_ENDPOINT: 'your-endpoint' # 您的 Azure 端点 URL
      # AZURE_DOCAI_KEY: 'your-key'        # 您的 Azure API 密钥
      # AZURE_DOCAI_MODEL_ID: 'prebuilt-read' # 可选,默认为 prebuilt-read
      # AZURE_DOCAI_TIMEOUT_SECONDS: '120'  # 可选,默认为 120 秒
      # AZURE_DOCAI_OUTPUT_CONTENT_FORMAT: 'text' # 可选,默认为 'text',另一个有效选项是 'markdown'
      # 'markdown' 需要使用 'prebuilt-layout' 模型

      # 增强 OCR 功能
      CREATE_LOCAL_HOCR: "false" # 可选,保存 hOCR 文件到本地
      LOCAL_HOCR_PATH: "/app/hocr" # 可选,hOCR 文件的保存路径
      CREATE_LOCAL_PDF: "false" # 可选,保存增强后的 PDF 到本地
      LOCAL_PDF_PATH: "/app/pdf" # 可选,PDF 文件的保存路径
      PDF_UPLOAD: "false" # 可选,将增强后的 PDF 上传到 paperless-ngx
      PDF_REPLACE: "false" # 可选且危险,上传后会删除原始文件
      PDF_COPY_METADATA: "true" # 可选,复制原始文档的元数据
      PDF_OCR_TAGGING: "true" # 可选,为处理过的文档添加标签
      PDF_OCR_COMPLETE_TAG: "paperless-gpt-ocr-complete" # 可选,标签名称

      # 选项 4:Docling Server
      # OCR_PROVIDER: 'docling'              # 使用 Docling 服务器
      # DOCLING_URL: 'http://your-docling-server:port' # 您的 Docling 实例的 URL
      # DOCLING_IMAGE_EXPORT_MODE: "placeholder" # 可选,默认为 "embedded"
      # DOCLING_OCR_PIPELINE: "standard" # 可选,默认为 "vlm"
      # DOCLING_OCR_ENGINE: "easyocr" # 可选,默认为 "easyocr"(仅在 `DOCLING_OCR_PIPELINE` 设置为 'standard' 时使用)


      AUTO_OCR_TAG: "paperless-gpt-ocr-auto" # 可选,默认为 paperless-gpt-ocr-auto
      OCR_LIMIT_PAGES: "5" # 可选,默认为 5。设置为 0 表示无限制。
      LOG_LEVEL: "info" # 可选:debug、warn、error
    volumes:
      - ./prompts:/app/prompts # 挂载 prompts 目录
      # 对于 Google Document AI:
      - ${HOME}/.config/gcloud/application_default_credentials.json:/app/credentials.json
      # 对于本地 hOCR 和 PDF 保存:
      - ./hocr:/app/hocr # 仅当 CREATE_LOCAL_HOCR 为 true 时
      - ./pdf:/app/pdf # 仅当 CREATE_LOCAL_PDF 为 true 时
    ports:
      - "8080:8080"
    depends_on:
      - paperless-ngx

实用提示:请将占位符替换为实际值,如果出现异常情况,请查看日志。

手动安装

  1. 克隆仓库
    git clone https://github.com/icereed/paperless-gpt.git
    cd paperless-gpt
    
  2. 创建 prompts 目录
    mkdir prompts
    
  3. 构建 Docker 镜像
    docker build -t paperless-gpt .
    
  4. 运行容器
    docker run -d \
      -e PAPERLESS_BASE_URL='http://your_paperless_ngx_url' \
      -e PAPERLESS_API_TOKEN='your_paperless_api_token' \
      -e LLM_PROVIDER='openai' \
      -e LLM_MODEL='gpt-4o' \
      -e OPENAI_API_KEY='your_openai_api_key' \
      -e LLM_LANGUAGE='English' \
      -e VISION_LLM_PROVIDER='ollama' \
      -e VISION_LLM_MODEL='minicpm-v' \
      -e LOG_LEVEL='info' \
      -v $(pwd)/prompts:/app/prompts \
      -p 8080:8080 \
      paperless-gpt
    

OCR 提供商

有关各提供商的详细文档:

paperless-gpt 支持四种不同的 OCR 提供商,每种都有其独特的优势和功能:

1. 基于 LLM 的 OCR(默认)

  • 主要特点
    • 使用具备视觉能力的 LLM,如 gpt-4o 或 MiniCPM-V
    • 对复杂布局和困难扫描具有高精度
    • 上下文感知的文本识别
    • 具备自我纠正 OCR 错误的能力
  • 适用场景
    • 复杂或不寻常的文档布局
    • 质量较差的扫描件
    • 包含多种语言的文档
  • 配置
    OCR_PROVIDER: "llm"
    VISION_LLM_PROVIDER: "openai" # 或 "ollama"
    VISION_LLM_MODEL: "gpt-4o" # 或 "minicpm-v"
    

2. Azure Document Intelligence

  • 核心功能
    • 企业级 OCR 解决方案
    • 针对常见文档类型的预构建模型
    • 保留版面布局和表格检测
    • 处理速度快
  • 最适合场景
    • 商务文档和表单
    • 大量文档处理
    • 需要版面分析的文档
  • 配置示例
    OCR_PROVIDER: "azure"
    AZURE_DOCAI_ENDPOINT: "https://your-endpoint.cognitiveservices.azure.com/"
    AZURE_DOCAI_KEY: "your-key"
    AZURE_DOCAI_MODEL_ID: "prebuilt-read" # 可选
    AZURE_DOCAI_TIMEOUT_SECONDS: "120" # 可选
    AZURE_DOCAI_OUTPUT_CONTENT_FORMAT:
      "text" # 可选,默认为文本,另一个有效选项是 'markdown'
      # 'markdown' 需要使用 'prebuilt-layout' 模型
    

3. Google Document AI

  • 核心功能
    • 企业级 OCR/HTR 解决方案
    • 专用文档处理器
    • 强大的表单字段检测能力
    • 多语言支持
    • 对结构化文档具有高精度
    • 独家 hOCR 生成,用于创建带有文本层的可搜索 PDF
    • 唯一支持增强 PDF 生成功能的提供商
  • 最适合场景
    • 表单和结构化文档
    • 包含表格的文档
    • 多语言文档
    • 手写文本(HTR)
  • 配置示例
    OCR_PROVIDER: "google_docai"
    GOOGLE_PROJECT_ID: "your-project"
    GOOGLE_LOCATION: "us"
    GOOGLE_PROCESSOR_ID: "processor-id"
    CREATE_LOCAL_HOCR: "true" # 可选,用于生成 hOCR 文件
    LOCAL_HOCR_PATH: "/app/hocr" # 可选,默认路径
    CREATE_LOCAL_PDF: "true" # 可选,用于将 OCR 应用到 PDF
    LOCAL_PDF_PATH: "/app/pdf" # 可选,默认路径
    

4. Docling Server

  • 核心功能
    • 自托管的 OCR 和文档转换服务
    • 支持多种输入和输出格式(包括文本)
    • 利用多个 OCR 引擎(EasyOCR、Tesseract 等)
    • 可在本地或私有网络中运行
  • 最适合场景
    • 偏好自托管解决方案的用户
    • 数据隐私至关重要的环境
    • 处理各种类型的文档
  • 配置示例
    OCR_PROVIDER: "docling"
    DOCLING_URL: "http://your-docling-server:port"
    DOCLING_IMAGE_EXPORT_MODE: "placeholder" # 可选,默认为 "embedded"
    DOCLING_OCR_PIPELINE: "standard" # 可选,默认为 "vlm"
    DOCLING_OCR_ENGINE: "macocr" # 可选,默认为 "easyocr"(仅当 `DOCLING_OCR_PIPELINE 设置为 'standard' 时使用)
    

OCR 处理模式

paperless-gpt 提供了不同的文档处理方式,可根据您的需求和 OCR 提供商的能力灵活选择:

图像模式(默认)

  • 工作原理:在处理前将 PDF 页面转换为图像
  • 最适合场景:与所有 OCR 提供商兼容。
  • 配置示例OCR_PROCESS_MODE: "image"

PDF 模式

  • 工作原理:直接处理 PDF 页面,无需转换为图像
  • 最适合场景:保留 PDF 特性,某些提供商可能处理速度更快且准确性更高
  • 配置示例OCR_PROCESS_MODE: "pdf"

整个 PDF 模式

  • 工作原理:一次性处理整个 PDF 文档
  • 最适合场景:适合能够高效处理多页文档的提供商,减少 API 调用次数
  • 配置示例OCR_PROCESS_MODE: "whole_pdf"
  • 注意:处理大型 PDF 文件可能会达到 OCR 提供商的 API 使用上限。如果遇到大型文档问题,建议切换到“pdf”模式,该模式会逐页处理。

各提供商支持的处理模式

不同 OCR 提供商支持的处理模式有所不同:

提供商 图像模式 PDF 模式 整个 PDF 模式
基于 LLM 的 OCR(OpenAI/Ollama)
Azure Document Intelligence
Google Document AI
Mistral OCR
Docling Server

重要提示:paperless-gpt 会在启动时验证您的配置,并阻止不支持的模式与提供商组合。如果您为特定提供商指定了不支持的模式,应用程序将无法启动,并显示明确的错误信息。

现有 OCR 检测

在使用 PDF 或整个 PDF 模式时,您可以启用现有 OCR 的自动检测功能:

environment:
  OCR_PROCESS_MODE: "pdf" # 或 "whole_pdf"
  PDF_SKIP_EXISTING_OCR: "true" # 如果 PDF 中已存在 OCR,则跳过处理

注意:并非所有 OCR 提供商都支持所有处理模式。有些提供商在某些模式下表现更好。根据提供商的不同,以 PDF 模式处理可能比以图像模式处理消耗更多的或更少的 API 调用次数。处理结果会因文档复杂度和提供商能力而异。建议尝试不同的模式,以找到最适合您特定文档和 OCR 提供商的方式。

增强的 OCR 功能

paperless-gpt 包含强大的 OCR 增强功能,超越了基本的文本提取:

重要提示:PDF 文本层生成和 hOCR 功能目前仅支持 Google Document AI 作为 OCR 提供商。这些功能在使用基于 LLM 的 OCR 或 Azure Document Intelligence 时不可用。

PDF 文本层生成

  • 可搜索且可选中的 PDF:创建带有透明文本叠加层的 PDF,精确地覆盖文档中的每个单词
  • hOCR 集成:利用 hOCR 格式(基于 HTML 的 OCR 表示形式)来保持精确的文本位置
  • 提升文档质量:使文档既可搜索又可选择,同时保留原始外观
  • 需要 Google Document AI:这些功能依赖于 Google Document AI 生成包含准确单词位置的 hOCR 数据的能力。

本地文件保存

paperless-gpt 可以将 hOCR 文件和增强后的 PDF 本地保存:

environment:
  # 启用本地文件保存
  CREATE_LOCAL_HOCR: "true" # 将 hOCR 文件本地保存
  CREATE_LOCAL_PDF: "true" # 将生成的 PDF 文件本地保存
  LOCAL_HOCR_PATH: "/app/hocr" # 保存 hOCR 文件的路径
  LOCAL_PDF_PATH: "/app/pdf" # 保存 PDF 文件的路径
volumes:
  # 挂载卷以便从主机访问文件
  - ./hocr_files:/app/hocr
  - ./pdf_files:/app/pdf

注意:您必须在 Docker 配置中将这些目录挂载为卷,才能从主机系统访问生成的文件。

将 PDF 上传至 paperless-ngx

由于 paperless-ngx 的 API 存在限制,无法直接用 OCR 增强后的版本更新现有文档。作为 workaround,paperless-gpt 可以:

  1. 将增强后的 PDF 作为新文档上传
  2. 将元数据从原文档复制到新文档
  3. 可选地删除原文档
environment:
  # PDF 上传配置
  PDF_UPLOAD: "true" # 将处理后的 PDF 上传至 paperless-ngx
  PDF_COPY_METADATA: "true" # 从原文档复制元数据到新文档
  PDF_REPLACE: "false" # 是否删除原文档(请谨慎使用!)
  PDF_OCR_TAGGING: "true" # 添加标签以标记已进行 OCR 处理的文档
  PDF_OCR_COMPLETE_TAG: "paperless-gpt-ocr-complete" # 用于标记已 OCR 处理文档的标签

⚠️ 警告 ⚠️
PDF_REPLACE: "true" 设置后,在上传增强版本之后会删除原文档。此操作不可撤销,若上传或元数据复制过程中出现任何问题,可能导致数据丢失。请务必谨慎使用!

元数据复制的限制

在将元数据从原文档复制到新文档时,paperless-gpt 会尝试复制以下内容:

  • 文档标题
  • 标签(包括添加 OCR 完成标签)
  • 收件人信息
  • 创建日期

然而,由于 paperless-ngx 的 API 限制,部分元数据无法被复制:

  • 文档 ID(新文档始终会获得一个新的 ID)
  • 添加日期(将反映当前的上传日期)
  • 修改日期
  • 其他 paperless-ngx 插件可能添加的自定义字段
  • 备注和注释

安全特性

为防止意外生成不完整文档,paperless-gpt 提供了多项安全措施:

  1. 页数检查:如果使用 OCR_LIMIT_PAGES 参数仅处理部分页面(出于速度或资源考虑),而实际处理的页数少于原文档的总页数,则会完全跳过 PDF 生成步骤。
environment:
  OCR_LIMIT_PAGES: "5" # 限制 OCR 只处理前 5 页,设置为 0 表示无限制
  1. OCR 完成标记:已完成 OCR 处理的文档可自动打上特殊标签,从而避免重复处理。

  2. 跳过处理:若文档已带有 OCR 完成标签,则会自动跳过处理流程。

使用建议

为获得最佳的 OCR 增强效果:

  1. 初次测试:请先将 PDF_REPLACE: "false",待确认流程对您的文档运行良好后再启用替换功能。

  2. 定期备份:在启用文档替换功能之前,请确保已对 paperless-ngx 数据库及文档进行备份。

  3. 流程管理:对于大型文档,建议将 OCR_LIMIT_PAGES: "0",以确保所有页面都被处理,尽管这会花费更多时间。

  4. 本地副本:启用本地文件保存功能(CREATE_LOCAL_HOCRCREATE_LOCAL_PDF),以便额外保留增强文件的副本。

  5. 标签策略:使用 OCR 完成标签(PDF_OCR_COMPLETE_TAG)来跟踪哪些文档已经完成处理。

配置

环境变量

注意:使用 Ollama 时,请确保 Ollama 服务器正在运行,并且 paperless-gpt 容器可以访问该服务器。

变量 描述 必填 默认值
PAPERLESS_BASE_URL 您的 paperless-ngx 实例的 URL(例如 http://paperless-ngx:8000)。
PAPERLESS_API_TOKEN paperless-ngx 的 API 令牌。请在 paperless-ngx 管理员界面生成一个。
PAPERLESS_PUBLIC_URL Paperless 的公网 URL(如果与 PAPERLESS_BASE_URL 不同)。
MANUAL_TAG 手动处理的标签。 paperless-gpt
AUTO_TAG 自动处理的标签。 paperless-gpt-auto
LLM_PROVIDER AI 后端(openaiollamagoogleaimistralanthropic)。
LLM_MODEL AI 模型名称(例如 gpt-4omistral-large-latestqwen3:8bclaude-sonnet-4-5)。
OPENAI_API_KEY OpenAI API 密钥(如果使用 OpenAI,则必需)。 条件
MISTRAL_API_KEY Mistral API 密钥(如果使用 Mistral,则必需)。 条件
ANTHROPIC_API_KEY Anthropic API 密钥(如果使用 Anthropic/Claude,则必需)。 条件
OPENAI_API_TYPE 设置为 azure 以使用 Azure OpenAI 服务。
OPENAI_BASE_URL OpenAI API 的基础 URL。对于 Azure OpenAI,设置为您部署的 URL(例如 https://your-resource.openai.azure.com)。
LLM_LANGUAGE 文档可能的语言(例如 English)。会出现在提示中,以帮助 LLM。 English
GOOGLEAI_API_KEY Google Gemini API 密钥(如果使用 LLM_PROVIDER=googleai,则必需)。 条件
GOOGLEAI_THINKING_BUDGET (可选,仅适用于 googleai)整数。控制 Gemini 的“思考”预算。如果未设置,则使用模型默认值(如果支持则启用思考)。设置为 0 可禁用思考(如果模型支持)。
OLLAMA_HOST Ollama 服务器 URL(例如 http://host.docker.internal:11434)。
LLM_REQUESTS_PER_MINUTE 主 LLM 每分钟的最大请求数。有助于管理 API 成本或本地 LLM 的负载。 120
LLM_MAX_RETRIES 主 LLM 请求失败时的最大重试次数。 3
LLM_BACKOFF_MAX_WAIT 主 LLM 重试之间的最大等待时间(例如 30s)。 30s
OCR_PROVIDER 要使用的 OCR 提供商(llmazuregoogle_docai)。 llm
OCR_PROCESS_MODE 处理文档的方式:image(先转换为图像)、pdf(直接处理 PDF 页面)或 whole_pdf(一次性处理整个 PDF)。 image
VISION_LLM_PROVIDER 用于 LLM OCR 的 AI 后端(openaiollamamistralanthropic)。如果 OCR_PROVIDER 是 llm,则必需。 条件
VISION_LLM_MODEL LLM OCR 的模型名称(例如 minicpm-v)。如果 OCR_PROVIDER 是 llm,则必需。 条件
VISION_LLM_REQUESTS_PER_MINUTE 视觉 LLM 每分钟的最大请求数。有助于管理 API 成本或本地 LLM 的负载。 120
VISION_LLM_MAX_RETRIES 视觉 LLM 请求失败时的最大重试次数。 3
VISION_LLM_BACKOFF_MAX_WAIT 视觉 LLM 重试之间的最大等待时间(例如 30s)。 30s
VISION_LLM_MAX_TOKENS 视觉 LLM OCR 输出的最大 token 数。
VISION_LLM_TEMPERATURE 视觉 OCR 生成的采样温度。数值越低,结果越确定性。重要提示:对于 OpenAI GPT-5,必须显式设置为 1.0
OLLAMA_CONTEXT_LENGTH (仅适用于 Ollama)整数。设置 Ollama 运行器的 NumCtx(上下文窗口)。如果未设置或为 0,则使用模型默认值。
OLLAMA_OCR_TOP_K (仅适用于 Ollama)视觉 OCR 的 top-k 采样。数值越低,越倾向于更可能的 token;数值越高,则增加多样性。
AZURE_DOCAI_ENDPOINT Azure Document Intelligence 端点。如果 OCR_PROVIDER 是 azure,则必需。 条件
AZURE_DOCAI_KEY Azure Document Intelligence API 密钥。如果 OCR_PROVIDER 是 azure,则必需。 条件
AZURE_DOCAI_MODEL_ID Azure Document Intelligence 模型 ID。如果使用 azure 提供商,可以不设置。 prebuilt-read
AZURE_DOCAI_TIMEOUT_SECONDS Azure Document Intelligence 的超时时间,单位为秒。 120
AZURE_DOCAI_OUTPUT_CONTENT_FORMAT Azure Document Intelligence 输出内容格式。如果使用 azure 提供商,可以不设置。默认为 text。另一个选项是 markdown,但需要使用 prebuild-layout 模型 ID。 text
GOOGLE_PROJECT_ID Google Cloud 项目 ID。如果 OCR_PROVIDER 是 google_docai,则必需。 条件
GOOGLE_LOCATION Google Cloud 地区(例如 useu)。如果 OCR_PROVIDER 是 google_docai,则必需。 条件
GOOGLE_PROCESSOR_ID Document AI 处理器 ID。如果 OCR_PROVIDER 是 google_docai,则必需。 条件
GOOGLE_APPLICATION_CREDENTIALS 挂载的 Google 服务账号密钥路径。如果 OCR_PROVIDER 是 google_docai,则必需。 条件
DOCLING_URL Docling 服务器实例的 URL。如果 OCR_PROVIDER 是 docling,则必需。 条件
DOCLING_IMAGE_EXPORT_MODE 图像导出模式。可选;未设置时默认为 embedded embedded
DOCLING_OCR_PIPELINE 设置管道类型。可选;未设置时默认为 vlm vlm
DOCLING_OCR_ENGINE 设置 OCR 引擎,如果 DOCLING_OCR_PIPELINE 设置为 standard。可选;默认为 easyocr easyocr
CREATE_LOCAL_HOCR 是否将 hOCR 文件本地保存。 false
LOCAL_HOCR_PATH 当启用 hOCR 生成时,hOCR 文件将保存的路径。 /app/hocr
CREATE_LOCAL_PDF 是否将增强后的 PDF 文件本地保存。 false
LOCAL_PDF_PATH 当启用 PDF 生成时,PDF 文件将保存的路径。 /app/pdf
PDF_UPLOAD 是否将增强后的 PDF 上传到 paperless-ngx。 false
PDF_REPLACE 是否在上传增强版本后删除原始文档(危险操作)。 false
PDF_COPY_METADATA 是否将元数据从原始文档复制到上传的 PDF 中。仅在使用 PDF_UPLOAD 时适用。 true
PDF_OCR_TAGGING 是否添加标签以标记已进行 OCR 处理的文档。 true
PDF_OCR_COMPLETE_TAG 用于标记已进行 OCR 处理的文档的标签。 paperless-gpt-ocr-complete
PDF_SKIP_EXISTING_OCR 是否跳过已包含 OCR 的 PDF 的 OCR 处理。适用于 pdfwhole_pdf 处理模式(OCR_PROCESS_MODE)。 false
AUTO_OCR_TAG 自动使用 OCR 处理文档的标签。 paperless-gpt-ocr-auto
OCR_LIMIT_PAGES 限制 OCR 处理的页数。设置为 0 表示无限制。 5
LOG_LEVEL 应用程序日志级别(infodebugwarnerror)。 info
LISTEN_INTERFACE 监听的网络接口。 8080
AUTO_GENERATE_TITLE 如果使用 paperless-gpt-auto,是否自动生标题。 true
AUTO_GENERATE_TAGS 如果使用 paperless-gpt-auto,是否自动生标签。 true
CREATE_NEW_TAGS 允许 LLM 建议尚未存在于 paperless-ngx 中的新标签。启用后,新标签将自动在 paperless-ngx 中创建。 false
AUTO_GENERATE_CORRESPONDENTS 如果使用 paperless-gpt-auto,是否自动生通信对象。 true
AUTO_GENERATE_DOCUMENT_TYPE 如果使用 paperless-gpt-auto,是否自动生文档类型。仅会使用 paperless-ngx 中已有的文档类型。 true
AUTO_GENERATE_CREATED_DATE 如果使用 paperless-gpt-auto,是否自动生创建日期。 true
TOKEN_LIMIT 提示/内容允许的最大 token 数。设置为 0 可禁用限制。对小型 LLM 有用。
IMAGE_MAX_PIXEL_DIMENSION 渲染文档页面为图像时,任意一边的最大像素数。 10000
IMAGE_MAX_TOTAL_PIXELS 渲染文档页面为图像时,总像素数(宽度 × 高度)的最大值。 40000000
IMAGE_MAX_RENDER_DPI 渲染文档页面为图像时使用的最大 DPI。 600
IMAGE_MAX_FILE_BYTES 渲染后的页面图像的最大 JPEG 文件大小(以字节为单位)。超过此限制的图像会被压缩或调整尺寸。 10485760
CORRESPONDENT_BLACK_LIST 以逗号分隔的姓名列表,用于排除在通信对象建议之外。例如:John Doe, Jane Smith

自定义提示模板

paperless-gpt 的灵活 提示模板 允许您定义 AI 的响应方式。尽管您仍然可以手动管理文件,但推荐的自定义提示方法是通过 Web UI 中的 设置 页面进行。

该应用使用两个目录来管理模板:

  • default_prompts/:包含内置的默认模板。这些模板不应被修改。
  • prompts/:您的工作目录。首次运行时,默认模板会被复制到这里。所有在 UI 中进行的编辑都会保存到此目录下的文件中。

为确保您的自定义提示在容器重启后仍然保留,您必须在 docker-compose.yml 文件中将 prompts 目录挂载为卷:

volumes:
  # 这对于保存您的自定义提示至关重要!
  - ./prompts:/app/prompts

应用程序会在您通过 UI 保存模板后以及启动时立即重新加载模板,因此无需重启即可使更改生效。

模板变量

每个模板都可以访问特定的变量:

title_prompt.tmpl:

  • {{.Language}} - 目标语言(例如,“英语”)
  • {{.Content}} - 文档内容文本
  • {{.Title}} - 原始文档标题

tag_prompt.tmpl:

  • {{.Language}} - 目标语言
  • {{.AvailableTags}} - paperless-ngx 中现有的标签列表
  • {{.OriginalTags}} - 文档当前的标签
  • {{.Title}} - 文档标题
  • {{.Content}} - 文档内容文本

ocr_prompt.tmpl:

  • {{.Language}} - 目标语言

correspondent_prompt.tmpl:

  • {{.Language}} - 目标语言
  • {{.AvailableCorrespondents}} - 现有的通信方列表
  • {{.BlackList}} - 被列入黑名单的通信方名称列表
  • {{.Title}} - 文档标题
  • {{.Content}} - 文档内容文本

created_date_prompt.tmpl:

  • {{.Language}} - 目标语言
  • {{.Content}} - 文档内容文本

custom_field_prompt.tmpl:

  • {{.DocumentType}} - 文档在 paperless-ngx 中的类型名称。
  • {{.CustomFieldsXML}} - 一个 XML 字符串,列出了在设置中选择用于处理的自定义字段。
  • {{.Title}} - 文档标题
  • {{.CreatedDate}} - 文档的创建日期
  • {{.Content}} - 文档内容文本

模板使用 Go 的 text/template 语法。paperless-gpt 会在 UI 保存后以及启动时自动重新加载模板更改。


基于 LLM 的 OCR:亲自比较

点击展开原生 OCR 与 AI 驱动的 OCR 对比

示例 1

图片

图片

原生 Paperless-ngx OCR

La Grande Recre

Gentre Gommercial 1'Esplanade
1349 LOLNAIN LA NEWWE
TA BERBOGAAL Tel =. 010 45,96 12
Ticket 1440112 03/11/2006 a 13597:
4007176614518. DINOS. TYRAMNESA
TOTAET.T.LES
ReslE par Lask-Euron
Rencu en Cash Euro
V.14.6 -Hotgese = VALERTE
TICKET A-GONGERVER PORR TONT. EEHANGE
HERET ET A BIENTOT

LLM 驱动的 OCR(OpenAI gpt-4o)

La Grande Récré
Centre Commercial l'Esplanade
1348 LOUVAIN LA NEUVE
TVA 860826401 Tel : 010 45 95 12
Ticket 14421 le 03/11/2006 à 15:27:18
4007176614518 DINOS TYRANNOSA 14.90
TOTAL T.T.C. 14.90
Réglé par Cash Euro 50.00
Rendu en Cash Euro 35.10
V.14.6 Hôtesse : VALERIE
TICKET A CONSERVER POUR TOUT ECHANGE
MERCI ET A BIENTOT

Example 2

Image:

Image

Vanilla Paperless-ngx OCR:

Invoice Number: 1-996-84199

Fed: Invoica Date: Sep01, 2014
Accaunt Number: 1334-8037-4
Page: 1012

Fod£x Tax ID 71.0427007

IRISINC
SHARON ANDERSON
4731 W ATLANTIC AVE STE BI
DELRAY BEACH FL 33445-3897 ’ a
Invoice Questions?

Bing, ‚Account Shipping Address: Contact FedEx Reı

ISINC
4731 W ATLANTIC AVE Phone: (800) 622-1147 M-F 7-6 (CST)
DELRAY BEACH FL 33445-3897 US Fax: (800) 548-3020

Internet: www.fedex.com

Invoice Summary Sep 01, 2014

FodEx Ground Services
Other Charges 11.00
Total Charges 11.00 Da £
>
polo) Fz// /G
TOTAL THIS INVOICE .... usps 11.00 P 2/1 f

‘The only charges accrued for this period is the Weekly Service Charge.

The Fedix Ground aceounts teferencedin his involce have been transteired and assigned 10, are owned by,andare payable to FedEx Express:

To onsurs propor credit, plasa raturn this portion wirh your payment 10 FodEx
‚Please do not staple or fold. Ploase make your chack payablı to FedEx.

[TI For change ol address, hc har and camphat lrm or never ide

Remittance Advice
Your payment is due by Sep 16, 2004

Number Number Dus

1334803719968 41993200000110071

AT 01 0391292 468448196 A**aDGT

IRISINC Illallun elalalssollallansdHilalellund
SHARON ANDERSON

4731 W ATLANTIC AVE STEBI FedEx

DELRAY BEACH FL 334453897 PO. Box 94516

PALATINE IL 60094-4515

LLM-Powered OCR (OpenAI gpt-4o):

FedEx.                                                                                      Invoice Number: 1-996-84199
                                                                                           Invoice Date: Sep 01, 2014
                                                                                           Account Number: 1334-8037-4
                                                                                           Page: 1 of 2
                                                                                           FedEx Tax ID: 71-0427007

I R I S INC
SHARON ANDERSON
4731 W ATLANTIC AVE STE B1
DELRAY BEACH FL 33445-3897
                                                                                           Invoice Questions?
Billing Account Shipping Address:                                                          Contact FedEx Revenue Services
I R I S INC                                                                                Phone: (800) 622-1147 M-F 7-6 (CST)
4731 W ATLANTIC AVE                                                                        Fax: (800) 548-3020
DELRAY BEACH FL 33445-3897 US                                                              Internet: www.fedex.com

Invoice Summary Sep 01, 2014

FedEx Ground Services
Other Charges                                                                 11.00

Total Charges .......................................................... USD $          11.00

TOTAL THIS INVOICE .............................................. USD $                 11.00

The only charges accrued for this period is the Weekly Service Charge.

                                                                                           RECEIVED
                                                                                           SEP _ 8 REC'D
                                                                                           BY: _

                                                                                           posted 9/21/14

The FedEx Ground accounts referenced in this invoice have been transferred and assigned to, are owned by, and are payable to FedEx Express.

To ensure proper credit, please return this portion with your payment to FedEx.
Please do not staple or fold. Please make your check payable to FedEx.

❑ For change of address, check here and complete form on reverse side.

Remittance Advice
Your payment is due by Sep 16, 2004

Invoice
Number
1-996-84199

Account
Number
1334-8037-4

Amount
Due
USD $ 11.00

133480371996841993200000110071

AT 01 031292 468448196 A**3DGT

I R I S INC
SHARON ANDERSON
4731 W ATLANTIC AVE STE B1
DELRAY BEACH FL 33445-3897

FedEx
P.O. Box 94515

Why Does It Matter?

  • Traditional OCR often jumbles text from complex or low-quality scans.
  • Large Language Models interpret context and correct likely errors, producing results that are more precise and readable.
  • You can integrate these cleaned-up texts into your paperless-ngx pipeline for better tagging, searching, and archiving.

How It Works

  • Vanilla OCR typically uses classical methods or Tesseract-like engines to extract text, which can result in garbled outputs for complex fonts or poor-quality scans.
  • LLM-Powered OCR uses your chosen AI backend—OpenAI or Ollama—to interpret the image's text in a more context-aware manner. This leads to fewer errors and more coherent text.
  • Google Document AI and Azure Document Intelligence provide high-accuracy OCR with advanced layout analysis.
  • Enhanced PDF Generation combines OCR results with the original document to create searchable PDFs with properly positioned text layers.

Usage

  1. Tag Documents

    • Add paperless-gpt tag to documents for manual processing
    • Add paperless-gpt-auto for automatic processing
    • Add paperless-gpt-ocr-auto for automatic OCR processing
  2. Visit Web UI

    • Go to http://localhost:8080 (or your host) in your browser
    • Review documents tagged for processing
  3. Generate & Apply Suggestions

    • Click "Generate Suggestions" to see AI-proposed titles/tags/correspondents
    • Review and approve or edit suggestions
    • Click "Apply" to save changes to paperless-ngx
  4. OCR Processing

    • Tag documents with appropriate OCR tag to process them
    • If enhanced PDF features are enabled, documents will be processed accordingly:
      • For local file saving, check the configured directories for output files
      • For PDF uploads, new documents will appear in paperless-ngx with copied metadata
    • Monitor progress in the Web UI
    • Review results and apply changes

Troubleshooting

使用本地大模型

在使用本地大模型(例如通过 Ollama 提供的模型)时,可能需要调整某些设置以优化性能:

令牌管理

  • 使用 TOKEN_LIMIT 环境变量来控制发送到大模型的最大令牌数。
  • 对于 Ollama,设置 OLLAMA_CONTEXT_LENGTH 来控制模型的上下文窗口大小(NumCtx)。这与 TOKEN_LIMIT 是独立的,用于配置服务器端的 KV 缓存大小。如果未设置或设为 0,则使用模型默认值。请根据模型支持的窗口范围选择一个合适的值(例如 8192)。
  • 如果给小型模型输入过多文本,可能会导致内容被意外截断。
  • 建议从一个保守的限制值开始(如 1000 个令牌),然后根据模型的能力逐步调整。
  • 将其设置为 0 可以禁用限制(请谨慎使用)。

针对小型模型的示例配置:

environment:
  TOKEN_LIMIT: "2000" # 根据你的模型上下文窗口调整
  OLLAMA_CONTEXT_LENGTH: "4096" # 控制 Ollama 的 NumCtx(上下文窗口);未设置时将使用模型默认值
  LLM_PROVIDER: "ollama"
  LLM_MODEL: "qwen3:8b" # 或其他本地模型

常见问题及解决方法:

  • 如果看到响应被截断或不完整,请尝试降低 TOKEN_LIMIT
  • 在 Ollama 中,如果出现“上下文长度超出”或内存问题,可以减少 OLLAMA_CONTEXT_LENGTH,或者选择更小的模型和上下文窗口。
  • 如果处理能力受限,可以在监控性能的同时逐步提高限制。
  • 对于具有更大上下文窗口的模型,可以适当增加限制,甚至完全禁用限制。

PDF 处理问题

  • 如果 PDF 文件未能生成,请检查 OCR_LIMIT_PAGES 是否设置得太低,与文档的实际页数相比。
  • 如果使用 CREATE_LOCAL_PDFCREATE_LOCAL_HOCR 功能,请确保卷已正确挂载。
  • 当使用 PDF_REPLACE: "true" 时,务必确认你已备份了最新的 paperless-ngx 数据。

自定义字段生成问题

  • 功能未生效:如果自定义字段建议未生成,即使该功能已启用,也请确保在设置中至少选择了一个自定义字段。该功能需要至少选择一个字段才能知道要处理的内容。

贡献

欢迎提交 Pull 请求问题报告

  1. 克隆仓库并创建分支(feature/my-awesome-update
  2. 提交更改(git commit -m "改进 X"
  3. 打开 PR

更多详情请参阅我们的 贡献指南


支持本项目

如果 paperless-gpt 正在帮助您节省时间并简化文档管理工作,欢迎您支持其持续开发:

  • GitHub Sponsors:资助项目的持续开发与维护。
  • 分享您的成功案例和使用场景。
  • 在 GitHub 上为本项目点赞。
  • 参与代码、文档或错误报告的贡献。

您的支持将有助于确保 paperless-gpt 得到积极维护,并不断改进!


维护者注释

本项目完全开源,且将继续免费使用。
Icereed 维护,同时部分支持来自我的另一个项目:
👉 BubbleTax.de — 为德国 IBKR 交易员提供自动化的税务报表。
如果您是一名开发者兼交易者,不妨试试这个工具。如果不是也没关系 😊


许可证

paperless-gpt 采用 MIT 许可证 开源,您可以自由地修改和分享!


星标历史

星标历史图表


免责声明

本项目与 paperless-ngx 官方并无关联。请自行承担使用风险。


paperless-gpt:您文档管理一直期待的基于大语言模型的助手。轻松实现智能文档标题、标签以及更高层次的 OCR 处理。

版本历史

v0.16.02025/04/25
v0.15.02025/04/16
v0.14.42025/04/04
v0.14.32025/04/01
v0.14.22025/03/30
v0.14.12025/03/25
v0.14.02025/03/24
v0.13.02025/03/10
v0.12.22025/02/17
v0.12.12025/02/10
v0.25.12026/02/26
v0.25.02026/02/16
v0.24.02026/01/14
v0.23.02025/09/17
v0.22.02025/07/17
v0.21.02025/06/19
v0.20.02025/05/30
v0.19.02025/05/21
v0.18.02025/05/05
v0.17.02025/05/05

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|2周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

160.8k|★★☆☆☆|今天
开发框架Agent语言模型

opencode

OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信

144.3k|★☆☆☆☆|3天前
Agent插件

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

109.2k|★★☆☆☆|昨天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像