GenAI_Career_Agent / README.md
Raheel Abdul Rehman
Remove Goodle Model calls
5b9c46c
---
title: GenAI Career Agent
emoji: πŸ’¬
colorFrom: yellow
colorTo: purple
sdk: gradio
sdk_version: 5.42.0
app_file: app.py
pinned: false
hf_oauth: true
hf_oauth_scopes:
- inference-api
short_description: A generative AI model that acts as a career coach
---
A Resume–Job Fit Analysis chatbot built using **Gradio**, **FAISS Vector Search**, and the **Hugging Face Inference API**.
This Space hosts the **GenAI Career Agent**, a generative AI that analyzes user resumes, retrieves structured resume data through a vectorstore (FAISS), and evaluates how well a candidate fits any provided job description.
### πŸš€ Features
- **AI Career Coach** – Helps users understand job fit, strengths, and areas for improvement.
- **RAG Pipeline** – Uses FAISS to retrieve relevant resume chunks.
- **LLM-Powered Analysis** – Uses a remote Hugging Face model via `InferenceClient`.
- **Structured JSON Output** including:
- `job_fit_score`
- `fit_summary`
- `strengths`
- `missing_skills`
- `recommendations`
- **Secure Token Handling** with Hugging Face Space Secrets.
### πŸ“Œ Current Capability
βœ” **Resume Parsing & Analysis**
The system currently parses the user's resume (pre-embedded with MiniLM) and produces job-fit analytics using RAG + LLM inference.
### πŸ› οΈ Upcoming Features
πŸ”œ **GitHub Repo Intelligence**
- Automatic retrieval of repositories
- Summarization of project impact
- Extraction of tech stack & coding patterns
- Integration into the job-fit score
πŸ”œ **LinkedIn Profile Integration**
- Work history extraction
- Skill inference
- Keyword alignment
- Soft-skill assessment
These features will be integrated into the same RAG pipeline so the model can reason across **Resume + GitHub + LinkedIn** for a unified career profile.
### 🧠 How It Works
1. Resume data is pre-embedded using
`sentence-transformers/all-MiniLM-L6-v2`.
2. Embeddings are stored inside
`data/vectorstores/`.
3. The FAISS retriever fetches the most relevant resume sections based on the job description.
4. A custom prompt formats the retrieved text and sends it to the LLM.
5. The LLM generates structured JSON insights.
### πŸ—‚οΈ Tech Stack
- **Gradio 5** (ChatInterface front-end)
- **LangChain Runnables**
- **FAISS** Vector Search
- **HuggingFace Embeddings**
- **Hugging Face Inference API**
### πŸ”’ Token Handling
Set secrets in your Space
### πŸ“œ Model Licensing & Notices
🧍 Personal / Educational Use
This is a personal project, intended solely for educational and career-analysis purposes.
Users are solely responsible for how they use the outputs.