← all repositories
wisupai/e2m

Your RAG ingestion pipeline, assembled from off-the-shelf parts

E2M wraps a dozen file parsers and LLM converters into a single config-driven pipeline so your RAG system can ingest docs, slides, audio, and web pages as clean Markdown.

1.3k stars Jupyter Notebook Data ToolingRAG · Search
e2m
Not currently ranked — collecting fresh signals.
star history

What it does

E2M is a Python library that ingests files — PDFs, Word docs, PowerPoints, web pages, even audio — and emits Markdown. It is essentially a structured glue layer around existing extraction tools: a parser stage uses engines like marker, unstructured, pandoc, or Whisper to pull out text and images, and a converter stage hands that raw material to an LLM (via litellm or ZhipuAI) to shape it into clean Markdown. A YAML config drives the whole pipeline, letting you swap parsers without rewriting ingestion code.

The interesting bit

The project treats Markdown less as a format translation and more as an AI-refined output. By forcing all extracted content through an LLM-powered converter, it attempts to normalize messy documents into structured text suitable for RAG or fine-tuning — using the language model as a post-processor for document understanding.

Key highlights

  • Supports an unusually wide input menu: PDF, DOC, DOCX, PPT, PPTX, EPUB, HTML, URLs, and audio (MP3/M4A).
  • Parser layer is engine-agnostic; swap between marker, unstructured, pandoc, jina, or firecrawl without changing your calling code.
  • Converter layer uses litellm to call any supported LLM for text and image-to-Markdown structuring.
  • Ships with unified E2MParser and E2MConverter classes plus a YAML config schema to orchestrate the full pipeline.
  • Exposes an API service (wisup_e2m.api.main:app) for headless document conversion.

Caveats

  • The ImageConverter backed by ZhipuAI is explicitly flagged as “Not Well in Image Recognition, Not Recommended” in the docs.
  • The README is rich with quickstart snippets but leaves architectural details like error handling, retries, or large-document chunking mostly unexplained.

Verdict

Worth a look if you are building a RAG pipeline and need one ingestion throat for a zoo of document formats. Skip it if you only need occasional PDF conversion or a fully offline, lightweight tool — this is an orchestration framework, not a single binary.

Frequently asked

What is wisupai/e2m?
E2M wraps a dozen file parsers and LLM converters into a single config-driven pipeline so your RAG system can ingest docs, slides, audio, and web pages as clean Markdown.
Is e2m open source?
Yes — wisupai/e2m is open source, released under the Apache-2.0 license.
What language is e2m written in?
wisupai/e2m is primarily written in Jupyter Notebook.
How popular is e2m?
wisupai/e2m has 1.3k stars on GitHub.
Where can I find e2m?
wisupai/e2m is on GitHub at https://github.com/wisupai/e2m.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.