Skip to content

Implementation of a RAG pipeline for LLM to assist with resumes in context of job descriptions

Notifications You must be signed in to change notification settings

ibitec7/resume-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Resume-Bot

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.

Directories

  • 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.

Requirements

  1. GPU: to run the model locally
  2. requirements.txt: this lists all the dependencies such as Ollama, LangChain, Pytorch, TensorRT, etc.
  3. Python: version >= 3.12.7

How to run

  1. Create a python virtual environment
    python -m venv venv
  1. Activate the virtual environment:
    source venv/bin/activate
  1. Install the dependencies:
    pip install -r requirements.txt
  1. Run the UI application:
    streamlit run src/augment.py
  1. Interact and use the UI with features to upload and clear resumes and job description contexts

About

Implementation of a RAG pipeline for LLM to assist with resumes in context of job descriptions

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages