Today, I’m sharing my recent project: CareerGPT.
CareerGPT is built using LangGraph and LangChain. The core idea behind this project is to design a multi-agent system where different specialized agents handle different career-related tasks—coordinated by a central supervisor agent.
How It Works
The system consists of 5 specialized agents, all controlled by a supervisor agent.
The supervisor agent:
- Receives the user query
- Analyzes the intent
- Routes the query to the most relevant agent
Each agent is designed with its own prompts, tools, and responsibilities.
The 5 Specialized Agents
- Career Advisor
Provides structured career guidance and suggests clear career paths.
- Resume Analyzer
Users upload their resumes, and the agent analyzes them to provide detailed feedback and improvements.
- Resume Q&A
Allows users to ask questions directly about their resume (e.g., strengths, gaps, improvements).
- Learning Path Agent
Generates custom learning roadmaps based on the user’s target domain (e.g., Web Development, AI, etc.).
- Job Search Agent
Helps users find job opportunities based on specific roles, domains, or companies.
How Agents Differ Internally
Each agent is not just a prompt—it has its own logic and tools.
Job Search Agent
Connected to a web search tool. When a query is received, it searches online (e.g., job listings) and returns relevant results such as available roles in a specific region or domain.
Learning Path Agent
Uses RAG (Retrieval-Augmented Generation) to generate personalized learning roadmaps based on stored domain-specific knowledge.
This separation ensures that each agent is optimized for its specific task instead of trying to do everything in one place.
Tech Stack
- Language: Python
- AI Frameworks: LangGraph, LangChain, RAG
- LLM: Groq (fast and free for experimentation)
- Backend: FastAPI, PostgreSQL, Async Programming, Authentication
- Deployment: Render, Vercel, CI/CD
Feedback
I’d genuinely appreciate your feedback.
If you see gaps, design flaws, or areas for improvement, feel free to point them out—I’m actively looking to refine and improve this system.
Top comments (0)