프로젝트 소개

PixelRAG는 UC 버클리 SkyLab, BAIR, NLP 그룹에서 개발된 오픈소스 시각적 검색 증강 생성(RAG) 시스템입니다. 웹 페이지나 PDF를 텍스트 청크로 파싱하는 대신—표, 차트, 다이어그램, 레이아웃 같은 시각적 구조를 버리는 방식—PixelRAG는 문서를 스크린샷 타일로 렌더링하고 이미지에서 직접 검색합니다. 그런 다음 리더 모델이 텍스트 기반 RAG가 놓칠 시각적 콘텐츠에 대한 질문에 답할 수 있습니다. 시스템은 두 가지 핵심 작업으로 구성됩니다: 렌더링(Playwright/CDP 또는 PDF용 poppler를 통해 페이지나 문서를 이미지 타일로 변환)과 검색(스크린샷 데이터에 LoRA 미세 조정된 Qwen3-VL-Embedding 모델로 해당 타일을 임베딩한 다음 FAISS 또는 Qdrant 벡터 인덱스에 쿼리). 파이프라인은 모듈식입니다: `pixelshot`은 렌더링을 처리하고, `pixelrag chunk`, `embed`, `build-index`, `index`, `serve`는 나머지 워크플로우를 담당합니다. 각 단계는 pip extras를 통해 독립적으로 설치할 수 있습니다. api.pixelrag.ai의 호스팅 API는 설정이나 API 키 없이 828만 위키피디아 페이지의 사전 구축 인덱스를 제공합니다. 텍스트와 이미지 쿼리를 모두 허용합니다. 브라우저 데모는 pixelrag.ai에서 제공되며, Colab 노트북으로 빠른 시작이 가능합니다. 로컬 사용의 경우, 시스템은 자동 장치 선택으로 Linux(CUDA)와 macOS(Apple Silicon/MPS)를 지원합니다. 사용자는 YAML 구성 파일로 자신의 문서에서 인덱스를 구축한 다음 FastAPI 기반 검색 엔드포인트로 서빙할 수 있습니다. Qdrant 백엔드 옵션은 구성 가능한 양자화, 디스크 백업 벡터, 페이로드 필터링, 다중 서버 컬렉션 공유를 추가합니다. PixelRAG는 또한 pixelbrowse라는 Claude Code 플러그인으로 제공되며, Claude가 페이지를 스크린샷하고 이미지를 직접 읽어 차트, 표, 레이아웃을 인간처럼 볼 수 있게 합니다. @startrail/pixelbrowse npm 패키지를 통한 opencode 통합은 opencode 사용자에게 동일한 스크린샷 도구를 제공합니다. 훈련 파이프라인은 train/ 아래 별도 uv 프로젝트에 있으며, 웹 페이지 검색을 위해 Qwen3-VL-Embedding-2B를 LoRA 미세 조정합니다. 사전 훈련된 어댑터와 전체 훈련 데이터셋은 Hugging Face에 게시되며, 데이터 큐레이션 파이프라인(LLM 증강 쿼리 생성, 필터링, 하드 네거티브 마이닝)은 다른 임베딩 백본을 적용하려는 사용자를 위해 문서화되어 있습니다. 이 프로젝트는 Apache-2.0 라이선스로 배포됩니다.