Python 工具,可将 PDF、Office 文档、HTML、图片、音频等文件转换为 Markdown,便于 LLM 与文本分析流程使用。
CatchTheTornado/text-extract-api
自托管的 FastAPI 服务,结合 OCR 与 Ollama 模型,将 PDF、图片和 Office 文档转换为 Markdown 或结构化 JSON,并可脱敏。
- Star
- 3,184
- Fork
- 279
- 未关闭 Issue
- 49
- 最近提交
- 11个月前
这是什么?
text-extract-api 是一个文档提取服务,可将图片、PDF 和 Office 文件转换为 Markdown 文本或结构化 JSON。它基于 FastAPI 构建,使用 Celery 处理异步任务,并用 Redis 缓存 OCR 结果。项目提供多种 OCR 策略,包括 EasyOCR、通过 Ollama 运行的 MiniCPM-V 和 Llama 3.2 Vision,以及调用外部 marker-pdf 服务的远程策略。
OCR 输出可以交给 Ollama 托管的大模型,配合自定义提示词生成 JSON,或从发票、报告中去除个人敏感信息。处理结果可通过可替换的存储配置保存到本地文件系统、Google Drive 或 Amazon S3。项目提供 CPU 与 GPU 两套 Docker Compose 配置,并附带命令行工具和 TypeScript 客户端。
它适合需要在本地或自有服务器上处理文档、又不希望文件被发送到外部云服务的团队。使用远程 marker 策略或云存储后端时,数据会发送到你自行配置的地址。
核心功能
- 01将图片、PDF 和 Office 文档转换为 Markdown 或 JSON。
- 02提供 EasyOCR、MiniCPM-V、Llama 3.2 Vision 和远程 marker-pdf 等 OCR 策略。
- 03通过 Ollama 托管的模型修正 OCR 文本并提取结构化数据。
- 04可通过提示词去除文档中的个人敏感信息。
- 05使用 Celery 异步处理任务,并用 Redis 缓存 OCR 结果。
- 06通过存储配置将结果保存到本地磁盘、Google Drive 或 Amazon S3。
适用场景
- 将扫描的发票或报告转换为结构化 JSON,供下游系统使用。
- 在共享或归档文档前去除其中的个人信息。
- 在无法让文件离开内网的环境中进行本地文档 OCR。
- 构建文档摄入 API,为 RAG 或搜索流程提供文本。
快速上手
- 1
克隆仓库
git clone https://github.com/CatchTheTornado/text-extract-api.git - 2
进入项目目录
cd text-extract-api - 3
使用 Docker Compose 启动所有服务
docker-compose up --build
使用前须知
- 本地 OCR 模型和 Ollama 大模型需要较高硬件配置,其中 llama_vision 策略因参数量达 90B 而非常慢。
- marker-pdf 远程策略采用 GPL3 许可证且不随项目捆绑,其模型权重also有非商业使用限制。
标签
常见问题
- text-extract-api 是什么?
- 自托管的 FastAPI 服务,结合 OCR 与 Ollama 模型,将 PDF、图片和 Office 文档转换为 Markdown 或结构化 JSON,并可脱敏。 text-extract-api 是一个文档提取服务,可将图片、PDF 和 Office 文件转换为 Markdown 文本或结构化 JSON。它基于 FastAPI 构建,使用 Celery 处理异步任务,并用 Redis 缓存 OCR 结果。项目提供多种 OCR 策略,包括 EasyOCR、通过 Ollama 运行的 MiniCPM-V 和 Llama 3.2 Vision,以及调用外部 marker-pdf 服务的远程策略。
- text-extract-api 可以免费使用吗?用的什么许可证?
- text-extract-api 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- text-extract-api 还在维护吗?
- 超过半年未提交。text-extract-api 最近一次提交是在 2025年12月8日。
- text-extract-api 适合用来做什么?
- 将扫描的发票或报告转换为结构化 JSON,供下游系统使用。 在共享或归档文档前去除其中的个人信息。 在无法让文件离开内网的环境中进行本地文档 OCR。 构建文档摄入 API,为 RAG 或搜索流程提供文本。
- text-extract-api 怎么安装和运行?
- 克隆仓库: git clone https://github.com/CatchTheTornado/text-extract-api.git 进入项目目录: cd text-extract-api 使用 Docker Compose 启动所有服务: docker-compose up --build
- 在哪里获取 text-extract-api?
- 源代码和安装说明在 GitHub 上:https://github.com/CatchTheTornado/text-extract-api
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
开源文档解析工具,将 PDF、Office 文档和图片转换为 Markdown 或 JSON,供大模型和智能体使用。
开源文档解析工具,把 PDF、Office、HTML 等文件转换为结构化数据,供生成式 AI 使用。
一款 Zotero 插件,可与单篇或多篇 PDF 对话,也能对整个文献库进行提问与检索,支持云端大模型和本地模型。
基于 DeepSeek-OCR 的网页应用,可对图片和 PDF 做文字识别,并导出为多种格式。
基于 Docker 的 PDF 版面分析微服务,可识别标题、正文、表格、图片等元素,并支持 OCR 与 Markdown/HTML 转换。