How sahilbhandare89/high-performance-rag-engine works
This is a Java RAG application whose visible product areas are document ingestion, chunking, and embedding. The apparent user workflow is to submit a document, split it into chunks, and embed chunks; the tree also shows a separate chunking API. The README is empty and no source excerpts are available, so component connections and runtime call order cannot be verified. The graph therefore maps the identifiable product components without asserting unsupported calls or data transfers.
Components 17
Document ingestion
- Document API
src/main/java/com/example/rag/ingestion/api/DocumentController.java - Ingestion service
src/main/java/com/example/rag/ingestion/application/DefaultDocumentIngestionService.java - Document model
src/main/java/com/example/rag/ingestion/domain/document/Document.java - Chunk API
src/main/java/com/example/rag/ingestion/infrastructure/api/DocumentChunkController.java - Chunk service
src/main/java/com/example/rag/ingestion/application/chunking/ChunkDocumentService.java - Document chunker
src/main/java/com/example/rag/ingestion/domain/chunking/FixedSizeDocumentChunker.java - Document chunk
src/main/java/com/example/rag/ingestion/domain/document/DocumentChunk.java - Document repository
src/main/java/com/example/rag/ingestion/domain/DocumentRepository.java - In-memory repository
src/main/java/com/example/rag/ingestion/infrastructure/persistence/InMemoryDocumentRepository.java - Chunk repository
src/main/java/com/example/rag/ingestion/domain/chunking/DocumentChunkRepository.java
Embedding
- Chunk embedding use case
src/main/java/com/example/rag/embedding/application/DefaultEmbedDocumentChunkUseCase.java - Embedding service
src/main/java/com/example/rag/embedding/application/DefaultEmbeddingService.java - Embedding provider
src/main/java/com/example/rag/embedding/application/port/EmbeddingProvider.java - Local provider
src/main/java/com/example/rag/embedding/infrastructure/provider/LocalEmbeddingProvider.java - Vector record
src/main/java/com/example/rag/embedding/domain/VectorRecord.java
Application runtime
- Spring application
src/main/java/com/example/rag/RagApplication.java
Other components
- API client