How ssp001/rag-6 works
This repository implements a PDF-backed RAG chatbot: users ingest documents, query session-scoped knowledge, receive streamed AI answers, and can delete session vectors. The API owns the documented endpoint workflows; services delegate to source-layer implementations, with Qdrant and the model provider as external dependencies. README content is empty, so capabilities and wiring here are based on the sampled API, UI, and service code; unsampled internals are represented only where the tree supports them.
Main entry points: api.py FastAPI endpoints · qudrent_vector.py Qdrant operations · app.py Streamlit chat UI · qudrent_vector_delete_service.py Vector deletion
Components 18
User interface
- Streamlit chat UI
ui/app.py
API workflows
- FastAPI endpoints
app/api/api.py - Vector deletion
app/service/qudrent_vector_delete_service.py
Document ingestion
- PDF loading
app/service/pdf_loder_service.py - PDF reader
app/src/pdf_loder.py - Text chunking
app/service/text_splitter_service.py - Text splitter
app/src/text_splitter.py - Embedding service
app/service/vector_embedding_service.py - Vector embedder
app/src/vector_embedder.py - Vector upload
app/service/qudrent_vector_upload_service.py - Qdrant operations
app/src/qudrent_vector.py
Retrieval and generation
- Vector search service
app/service/vector_search_service.py - Vector search
app/src/vector_search.py - AI response service
app/service/ai_respoes_service.py - Chat model client
app/src/ai_respones.py
Other components
- User
- Qdrant store
- Chat model provider
Connections 19
- User → Streamlit chat UI: uses
- Streamlit chat UI → FastAPI endpoints: requests
- FastAPI endpoints → PDF loading: loads PDF
- PDF loading → PDF reader: reads PDF
- FastAPI endpoints → Text chunking: splits text
- Text chunking → Text splitter: chunks text
- FastAPI endpoints → Embedding service: creates embeddings
- Embedding service → Vector embedder: embeds chunks
- FastAPI endpoints → Vector upload: uploads vectors
- Vector upload → Qdrant operations: writes vectors
- Qdrant operations → Qdrant store: stores vectors
- FastAPI endpoints → Vector search service: searches context
- Vector search service → Vector search: runs search
- Vector search → Qdrant store: retrieves matches
- FastAPI endpoints → AI response service: streams answer
- AI response service → Chat model client: runs query
- Chat model client → Chat model provider: generates response
- FastAPI endpoints → Vector deletion: deletes session
- Vector deletion → Qdrant operations: removes vectors