DataInfra-RedactionEverything

本地大模型自动识别并遮盖文档图片里的敏感信息

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 办公效率 🍴 复刻 169 🐛 待处理 2 👀 关注 105
GitHub ↗
GitHub 星标 ★ 1133
维护状态 较活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费,需自行部署

项目预览

DataInfra-RedactionEverything 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类办公效率
开发团队ttttccxxui
定价模式🏷️完全免费
价格说明开源免费,需自行部署
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议NOASSERTION
主要语言Python
GitHub 星标★ 1133
上线时间2026-01-28 00:00:00
代码更新2026-10-28
仓库体积11.7 MB
本站数据更新2026-11-07
维护状态较活跃
收录时间2026-11-07
浏览次数0

项目介绍

RedactionEverything 是 DataInfra 系列中的本地化敏感信息脱敏工具,基于 Python 开发,核心思路是调用本地部署的大语言模型(LLM)与视觉语言模型(VLM),对文本、图片、扫描件等各类内容进行自动识别与打码处理。项目解决的是传统脱敏方案依赖固定正则或云端 API 的痛点:正则难以覆盖格式多变的人名、地址、证件号,云端处理又存在数据外泄风险。它把识别与遮盖全部放在本机完成,支持对文档中的文字区域和图像中的视觉元素进行定位与遮蔽,适合需要处理合同、病历、简历、票据等含隐私材料的工作流。项目提供可扩展的模型接入方式,用户可替换不同本地模型以平衡速度与精度,输出结果保留原文件结构,便于批量处理。整体定位是给个人和小团队一个开箱即用、数据不出本机的智能脱敏流水线。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-11-07 · 当前星标 ★ 1133

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:进阶 约 30 分钟 部署方式:Docker 7 步

环境要求

  • Windows 下的 WSL 环境(用于创建两个 Python 虚拟环境)
  • Python 3(python3 -m venv 可用)
  • Docker 与 Docker Compose
  • Node.js/npm(用 npm run dev 启动 WSL 内模型服务时需要)
  • NVIDIA GPU(运行 --profile gpu 完整模型栈时需要)

安装与启动步骤

  1. 1获取项目代码

    克隆仓库到本地,后续命令中的路径需替换成你自己的实际目录。

    git clone https://github.com/ttttccxxui/DataInfra-RedactionEverything.git
  2. 2复制并填写 .env

    参照 .env.example 生成 .env,至少填好三个虚拟环境与模型路径相关变量。

    cp .env.example .env
  3. 3创建应用与 OCR 环境

    第一个虚拟环境运行 PP-StructureV3 / PaddleOCR 封装服务,路径要与 VENV_DIR 一致。

    python3 -m venv ~/.cache/datainfra-redaction/.venv
    ~/.cache/datainfra-redaction/.venv/bin/pip install -r /mnt/d/DataInfra-RedactionEverything/backend/requirements.txt
  4. 4创建 vLLM 环境

    vLLM 的 Torch/CUDA 栈与 Paddle/PaddleX 冲突,必须单独建第二个虚拟环境。

    python3 -m venv ~/.cache/datainfra-redaction/.venv-vllm
    ~/.cache/datainfra-redaction/.venv-vllm/bin/pip install vllm
  5. 5启动 CPU 服务栈

    只跑 CPU 版 API 和前端,适合先验证界面与流程能否跑通。

    docker compose up -d
  6. 6启动 GPU 模型栈

    带 gpu profile 会一并启动 ocr、ner、visual-features 三个模型服务。

    docker compose --profile gpu up -d
  7. 7配置本地服务地址

    不用 Docker 本地开发时,在 .env 里把各模型服务地址指向本机对应端口。

关键配置

配置项必填说明示例
VENV_DIR是应用与 OCR 虚拟环境目录,需与创建命令中的路径一致。~/.cache/datainfra-redaction/.venv
VLLM_VENV_DIR是vLLM 独立虚拟环境目录,与上者分开避免依赖冲突。~/.cache/datainfra-redaction/.venv-vllm
HAS_TEXT_HF_MODEL_PATH是指向文本模型权重的本地路径,npm run dev 时使用。/your/path/models/has-text-0209
JWT_SECRET_KEY否登录令牌签名密钥,多租户部署时每个实例必须不同。a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6
AUTH_ENABLED否是否开启登录鉴权,处理敏感客户资料时应保持开启。true
TRUSTED_PROXIES否反向代理所在网段,不在默认回环与 172.16.0.0/12 内时需显式设置。10.0.0.0/8,192.168.0.0/16

如何确认成功

执行 docker compose ps 确认各容器为 running,再用首个账号登录,该用户自动成为 super_admin。

常见问题

Q:为什么必须建两个虚拟环境?

A:vLLM 依赖的 Torch/CUDA 栈与 Paddle/PaddleX 不兼容,混装会互相破坏,README 要求将二者分开。

Q:CPU 模式与 GPU 模式怎么选?

A:docker compose up -d 只启动 API 和前端;加 --profile gpu 才会启动 ocr、ner、visual-features 模型服务。

Q:反向代理部署后登录限流不准?

A:登录限流只信任 TRUSTED_PROXIES 中的对端地址,代理在 10.x 或 192.168.x 网段时需在 .env 里显式配置。

Q:多实例共用一块 GPU 如何限流?

A:用 JOB_CONCURRENCY 控制并发,各实例之和不超过 3;起步可设 BATCH_RECOGNITION_PAGE_CONCURRENCY=1、HAS_NER_MAX_PARALLEL_REQUESTS=1。

Q:可以用于商业项目吗?

A:项目为 Personal Use License,个人非商业免费,公司、团队、托管或生产部署需单独取得商业授权。

注意事项

  • 不要把 .env、模型权重、真实样本、上传文件、运行时数据库、日志和导出结果提交进仓库。
  • 默认定位是本地或内网使用;对公网暴露前需补齐认证、访问控制、反向代理、TLS、日志与密钥轮换。
  • 商用还需自行解决第三方许可:LocateAnything-3B 权重为 NVIDIA 非商业许可,PyMuPDF 为 AGPL-3.0。
  • 多租户应按实例隔离:每租户独立 .env、域名、JWT_SECRET_KEY、网络与 Docker 卷,不共用数据目录。

核心亮点

  • 全流程本地推理,敏感材料无需上传云端,隐私风险低
  • 用 LLM/VLM 替代固定正则,能识别格式多变的人名、地址、证件号等非结构化信息
  • 同时覆盖文本与图像内容,可处理扫描件、截图等视觉材料

不足之处

  • 依赖本地大模型,对显卡或内存有一定要求,低配设备推理慢
  • 识别准确率受所选模型能力影响,仍需人工复核关键结果
  • 项目处于成长期,文档与社区生态待观察

适用场景

  • 法务或行政人员批量脱敏合同、协议中的当事人信息
  • 医疗或人事场景处理病历、简历等含隐私的扫描件
  • 个人在分享截图、票据前自动遮盖证件号与联系方式

替代项目

Presidio、PaddleOCR

上一篇:recap

下一篇:Chatbook

同类项目推荐

Screenshot 开源

一个软件搞定截图、长截图、录屏、OCR 和翻译

SnapCut(简截)——轻巧但不将就的 Windows 和 macOS 截图工作台:框选截图、长截图、区域···

★ 320 2026-09-29
kition 开源

笔记表格白板加AI,一个桌面全搞定

Kition brings Markdown, DataTable, WhiteBoard, a tool-using AI agent, browser resear···

★ 595 2026-10-19
feishu-md2wechat 开源

飞书文档一键排版,直接粘贴发公众号

飞书 → WeChat | 飞书文档一键排版转换发布到微信公众号,支持多主题

★ 63 2026-08-09
Stirling PDF 开源

本地部署 PDF 工具箱

#1 PDF Application on GitHub that lets you edit PDFs on any device anywhere

★ 95866 2026-08-19
mkdocs-llmstxt 开源

给 MkDocs 文档站自动生成面向大模型的 llms.txt 索引

MkDocs plugin to generate an /llms.txt file (https://llmstxt.org/).

★ 132 2026-10-24
meetily 开源

本地实时转录+摘要,4倍速会议记录,隐私零泄露

Privacy-first AI meeting note taker for Windows and macOS. Free, open source (MIT). ···

★ 32490 2026-08-09
meetcap 开源

会议录音本地转写,AI 自动出纪要还能对话驱动

Powerful, free, context-aware AI native meeting assistant that transcribes in real-t···

★ 303 2026-10-21
zotero-gpt 开源

在 Zotero 里直接和 AI 聊文献,边读边问边记

GPT Meet Zotero.

★ 7512 2026-10-31
Shiyin 开源

Mac 本地录音转写,自动区分发言人并生成带时间戳笔记

Free, open-source meeting notes app for Mac: records Zoom, Meet and Teams without a ···

★ 138 2026-11-02