This is an implementation of a Retrieval Augmented Generation (RAG) pipeline for the Qwen-2.5 model to anlyze job descriptions in context of job descriptions. The RAG pipeline creates a vector database of the uploaded files and responds with relevant context it retrieves from the knowledge base.
- src/: contains the source code for the RAG.
- src/ingest.py: script to ingest documents, create a vector database and add/remove documents.
- src/retrieval.py: script to for the LLM to retrieve the relevant context from the knowledge base.
- src/augment.py: script to augment the user prompt for the LLM and the UI for user interaction.
- src/scrapper.py script for retrieval of HTML scripts from URLs to enable web-searches (work in progress).
- src/test.py: script for unit testing of the pipeline.
- src/test.pdf:* pdf files to test the ingestions of the database.
- requirements.txt: text file for the requirements of the project.
- GPU: to run the model locally
- requirements.txt: this lists all the dependencies such as Ollama, LangChain, Pytorch, TensorRT, etc.
- Python: version >= 3.12.7
- Create a python virtual environment
python -m venv venv
- Activate the virtual environment:
source venv/bin/activate
- Install the dependencies:
pip install -r requirements.txt
- Run the UI application:
streamlit run src/augment.py
- Interact and use the UI with features to upload and clear resumes and job description contexts