PixelRAG is a Python library and hosted API that retrieves documents by their visual layout rather than parsed text alone. It renders web pages, images, and PDFs into screenshot tiles and searches them via a FAISS vector index.
Project overview
It preserves visual structures like tables and charts that text-based RAG pipelines discard during HTML parsing.
Project type
RAG · AI Search · Document Processing
Use cases
Knowledge Q&A · Search & Research
Deployment
Refer to project documentation
License
Apache-2.0
Best for
Developers or researchers querying information locked in visual layouts like tables and charts without needing a GPU.
Key capabilities
Renders web pages, PDFs, and images into screenshot tiles using Playwright/CDP while preserving layout, tables, and charts.
Provides a FastAPI-based search API (pixelrag serve) that embeds queries and retrieves matching document image tiles via a FAISS index.
Offers a live, hosted API endpoint with a pre-built index of 8.28M Wikipedia pages that requires no setup or API key.
Includes a separate uv project for LoRA-fine-tuning embedding models on webpage screenshots for visual retrieval.
Limitations and risks
PDF rendering requires poppler via a separate extra installation (pixelrag[pdf]).
Local hosting of the pre-built Wikipedia index requires a download of approximately 217 GB.
Getting started
Install the pixelrag package via pip without cloning. For instant access without installation, query the hosted endpoint. Render a first page locally using the pixelshot CLI.
Alternatives and comparisons
Extracts text from web pages and documents for question answering instead of preserving visual layout.
Aggregates information from web and local sources to generate text-based research reports with citations.
Self-hosted RAG search engine focusing on hybrid keyword and semantic retrieval over parsed document text.
README: Visual structure that HTML parsing throws away — tables, charts, layout, infographics — stays intact, so the reader model can actually answer questions about it.
README: PixelRAG renders the page to **screenshot tiles**, retrieves the right tile, and the reader reads the number straight off the image.
README: Official codebase for <b><a href="https://arxiv.org/abs/2606.28344">PIXELRAG: Web Screenshots Beat Text for Retrieval-Augmented Generation</a></b>