Skip to content

Bishal1234-ui/AI_Recruitment_Agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🤖 AI Recruitment Agent

An intelligent recruitment assistant that automates resume screening using a local LLM via Ollama and offers both CLI and web-based interaction.


✨ Features

  • AI-Powered Analysis: Leverages Gemma 3:4b via Ollama for deep resume-job fit evaluation.
  • 📊 Vector-Based Context Matching: Uses FAISS to store and retrieve job description vectors.
  • 📦 Structured Output: LLM output is parsed into JSON for decision, compatibility score, and justification.
  • 💾 Persistent Storage: Stores all results in an SQLite database for audit and analysis.
  • 🧰 Dual Interface: Available as a CLI tool or through a React + FastAPI web UI.

💻 Screenshot

image


🧠 How It Works

  1. 📥 Job Description Embedding

    • Converts job text into vectors using nomic-embed-text via OllamaEmbeddings
    • Stored in FAISS for fast retrieval
  2. 📄 Resume Parsing

    • Extracts text from uploaded PDF resumes using PyPDF.
  3. 🔍 AI Analysis via LangChain

    • Uses:
      • 🔁 Retriever (FAISS)
      • 🧠 LLM: gemma3:4b via Ollama
      • ✏️ Prompt Template with strict rules
      • 📦 PydanticOutputParser for structured JSON
  4. 💾 Store Results

    • Data is persisted in recruitment_results.db via a custom database function.

🧰 Tech Stack

Category Tools
💡 AI/LLM LangChain, Gemma, Ollama, nomic-embed-text
⚙️ Backend FastAPI, pydantic, faiss-cpu, PyPDF
🖥️ Frontend React, Vite, TailwindCSS (optional)
🛢️ Database SQLite
🧠 Vector DB FAISS
📦 Package Managers pip, npm

🚀 Getting Started

✅ Prerequisites

  • Python 3.9+
  • Node.js & npm
  • Ollama installed and running

⚙️ Setup Guide

🔹 Pull LLM and Embed Models

ollama pull gemma3:4b
ollama pull nomic-embed-text

🔹 Backend Setup

cd MainAPI
# Create this requirements.txt file:
📄 MainAPI/requirements.txt
fastapi
uvicorn[standard]
langchain
langchain-community
langchain-ollama
pydantic
pypdf
faiss-cpu
python-dotenv
python-multipart
pip install -r requirements.txt

🔹 Frontend Setup (Optional)

cd frontend-react
npm install

🧪 Usage

💻 Command-Line Mode

python recruitmentagent.py

Follow the prompts to upload a resume and see results in the console.


🌐 Web Interface Mode

1. Start the Backend API

cd MainAPI
uvicorn main:app --reload

API accessible at http://127.0.0.1:8000

2. Start the React Frontend

cd frontend-react
npm run dev

Open http://localhost:5173 in your browser.


🧑‍💼 Use Case

Perfect for HR teams, recruitment firms, or tech hiring platforms looking to automate and scale their screening process with AI-driven insights.


🛠️ Future Improvements

  • ✅ Resume ranking
  • ✅ Multi-role analysis
  • ⏳ Email integration
  • ⏳ Feedback loop learning

📬 Contact

For collaboration or questions, feel free to reach out!

About

An intelligent recruitment assistant that automates resume screening using a local LLM via Ollama and offers both CLI and web-based interaction.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors