将各种文件格式转换为Markdown的开源工具E2M

项目简介


E2M 是一个能够把多种文件类型解析并转换成 Markdown 格式的 Python 库,通过解析器+转换器的架构,实现对 doc, docx, epub, html, htm, url, pdf, ppt, pptx, mp3, m4a 等多种文件格式的转换。

✨E2M 项目的终极目标是为了 RAG 和模型训练、微调,提供高质量的数据。

项目的核心架构:

  • 解析器:负责将各种文件类型解析为文本或图片数据

  • 转换器:负责将文本或图片数据转换为 Markdown 格式

一般来说,对于任意类型的文件,需要先运行解析器,获取文件内部的 text、image 等数据,然后再运行转换器,将数据转换为 Markdown 格式。


📂 所有的 Parser 和 Converter

Parser
Parser Type Engine Supported File Type
PdfParser surya_layout, marker, unstructured pdf
DocParser pandoc, xml doc
DocxParser pandoc, xml docx
PptParser unstructured ppt
PptxParser unstructured pptx
UrlParser unstructured, jina, firecrawl url
EpubParser unstructured epub
HtmlParser unstructured html, htm
VoiceParser openai_whisper_api, openai_whisper_local, SpeechRecognition mp3, m4a

Converter
Converter Type Engine Strategy
ImageConverter litellm, zhipuai (图像识别表现不佳,不推荐) default
TextConverter litellm, zhipuai default

转换器支持的模型

  1. Litellm: https://docs.litellm.ai/docs/providers/

  2. Zhipuai: https://open.bigmodel.cn/dev/howuse/model

📦 安装

创建环境:

conda create -n e2m python=3.10conda activate e2m

更新 pip:

pip install --upgrade pip

使用 pip 安装 E2M:

# 选项 1: 通过git安装,最推荐pip install git+https://github.com/wisupai/e2m.git --index-url https://pypi.org/simple# 选项 2: 通过pip安装pip install --upgrade wisup_e2m# 选项 3: 手动安装git clone https://github.com/wisupai/e2m.gitcd e2mpip install poetrypoetry buildpip install dist/wisup_e2m-0.1.63-py3-none-any.whl

启动API服务

gunicorn wisup_e2m.api.main:app --workers 4 --worker-class uvicorn.workers.UvicornWorker --bind 0.0.0.0:8000

查看API文档:

  • http://127.0.0.1:8000/docs

CLI 命令行工具

使用marker转换pdf

转换单个pdf:

marker_single /path/to/file.pdf /path/to/output/folder --batch_multiplier 2 --max_pages 10 

批量转换pdf:

marker /path/to/input/folder /path/to/output/folder --workers 4 --max 10 --min_length 10000

项目链接

https://github.com/wisupai/e2m

扫码加入技术交流群,备注开发语言-城市-昵称

(文:GitHubStore)

发表评论

×

下载每时AI手机APP

 

和大家一起交流AI最新资讯!

立即前往