Maven Central
ragleap-rag (Java port)
version 0.14.0 · Java 21
A pure-Java port of ragleap-rag for JVM teams: a live-verified RAG pipeline on Postgres/pgvector, streaming generation with provider fallback, and six vector backends (Milvus and Pinecone are code-complete, not live-verified).
<dependency> <groupId>io.github.antonyrag</groupId> <artifactId>ragleap-rag</artifactId> <version>0.14.0</version> </dependency>
Highlights
- Core pipeline: HikariCP connection pooling, 7 embedding providers, pgvector dense, sparse and hybrid (RRF) search
- Generation: streaming, structured output, provider fallback, vision captioning
- Postgres-backed conversation memory and query rewriting: contextual rewrite, HyDE, multi-query with Reciprocal Rank Fusion
- Five vector backends: pgvector, FaissBackend (pure Java, no JNI), QdrantBackend, WeaviateBackend, MilvusBackend
- Qdrant and Weaviate backends are live-verified against real instances; MilvusBackend is explicitly not live-verified, and its release notes say so
- 8 standalone utility modules, including chunking, sanitization, guardrails, cost tracking and evaluation scoring
- Document parser (0.11.0): 27 of the Python package's 28 formats, each checked against the real Python parser on 79 generated fixture files; Parquet is deliberately not ported
- Ingestion (0.12.0):
IngestionServicefor text, files, images, audio and video, with OCR through the Tesseract binary and audio extraction from video through ffmpeg, both compared with the Python output; archives over 1,000 members or 100 MB uncompressed are rejected - The
RagLeapentry point (0.13.0), the Java counterpart of the Python class:ask,askStream,retrieve,evaluate, conversation history, document methods and batch ingestion, compared with the real Python class on 33 scenarios
Tech stack
Requires Java 21. Dependencies: jtokkit, json-schema-validator, HikariCP, postgresql JDBC driver, sqlite-jdbc (metadata sidecar for the non-pgvector backends). The document parser adds PDFBox and jsoup; Apache POI is optional.
Limits
- The
RagLeapentry point was not run end to end against real paid LLM or embedding providers - The Milvus and Pinecone backends, and Whisper and Deepgram transcription, are stub-tested only
Testing
534 @Test and @ParameterizedTest methods across 62 test files, counted directly from the repo. Qdrant and Weaviate tests run against real instances and skip cleanly when none is reachable; Milvus tests use a local stub server because no real instance was available.