--- title: CareerAI emoji: 🚀 colorFrom: green colorTo: blue sdk: docker app_port: 7860 pinned: true ---

CareerAI Logo

CareerAI

🧠 AI-Powered Career Assistant | Asistente Inteligente de Carrera
Analyze your CV · Generate Cover Letters · Simulate Interviews · Search Jobs

Python FastAPI Groq ChromaDB License

🇺🇸 English · 🇦🇷 Español

--- # 🇺🇸 English ## 🎬 What is CareerAI? **CareerAI** is an AI-powered web application that helps you boost your professional career. Upload your documents (CV, cover letters, certificates) and the AI assistant analyzes them using advanced Retrieval-Augmented Generation (RAG) to give you personalized recommendations, generate professional documents, and prepare you for job interviews. ### ✨ 100% Free · No hallucinations · Based on your real documents --- ## 🚀 Key Features ### 🤖 Custom AI Models | Model | Engine | Description | |-------|--------|-------------| | 🧠 **CareerAI Pro** | Llama 3.3 70B | Maximum quality · Detailed responses | | ⚡ **CareerAI Flash** | Llama 3.1 8B | Ultra fast · Instant responses | ### 💬 5 Assistant Modes | Mode | What it does | |------|-------------| | 💬 **General Chat** | Ask anything about your professional career | | 🎯 **Job Match** | Analyze your compatibility with job offers (% match) | | ✉️ **Cover Letter** | Generate personalized cover letters using your real CV | | 📈 **Skills Gap** | Identify missing skills + roadmap to improve | | 🎤 **Interview** | Simulate interviews with technical and STAR method questions | ### 📋 Full Feature List | Feature | Description | |---------|-------------| | 📄 **Multi-format** | Supports PDF, DOCX, TXT, images (JPG, PNG, WebP) | | 🖼️ **Vision AI** | Smart reading of scanned PDFs and document photos | | ⚡ **Streaming** | Real-time token-by-token responses | | 📤 **Premium Export** | Export to PDF, DOCX, HTML, TXT with professional formatting | | 📊 **Dashboard** | Skills charts, professional timeline, AI insights | | 🔐 **Full Auth** | Register, login, Google OAuth, password reset | | 💼 **Job Search** | Integration with LinkedIn, Indeed, Glassdoor via JSearch | | 🎨 **Premium UI** | Claude/ChatGPT-style design with dark mode | | 📱 **Responsive** | Works on desktop, tablet, and mobile | | 💾 **Persistence** | Chat history synced to the cloud | --- ## 🧠 RAG Pipeline v2.0 CareerAI uses an advanced retrieval pipeline combining multiple techniques to find the most relevant information from your documents: ``` 📝 User Query │ ├── 1️⃣ Vector Search (Semantic) │ └── ChromaDB + BGE-M3 (100+ languages) │ ├── 2️⃣ Keyword Search (Lexical) │ └── BM25 lexical matching │ ├── 3️⃣ Reciprocal Rank Fusion (RRF) │ └── Merges semantic + lexical results │ ├── 4️⃣ Reranking (Cross-Encoder) │ └── BGE-Reranker-v2-m3 (relevance reordering) │ └── 5️⃣ LLM with optimized context └── Groq + Llama 3.3 70B (streaming) ``` ### Available Embedding Models | Model | Languages | Size | Performance | |-------|-----------|------|-------------| | 🌍 **BGE-M3** (Recommended) | 100+ | ~2.3 GB | ⭐⭐⭐⭐⭐ | | 🚀 **GTE Multilingual** | 70+ | ~580 MB | ⭐⭐⭐⭐ | | 📐 **Multilingual E5** | 100+ | ~1.1 GB | ⭐⭐⭐⭐ | | ⚡ **MiniLM v2** | English | ~90 MB | ⭐⭐⭐ | --- ## 🛠️ Tech Stack | Layer | Technology | |-------|------------| | **Backend** | FastAPI + Uvicorn | | **Frontend** | HTML5 + CSS3 + JavaScript (Claude-style) | | **LLM** | Groq API (Llama 3.3 70B / Llama 3.1 8B) | | **RAG** | ChromaDB + BM25 + BGE-M3 + Reranker + RRF | | **Database** | SQLite + SQLAlchemy | | **Auth** | JWT + BCrypt + Google OAuth | | **Email** | FastAPI-Mail + Gmail SMTP | | **Vision AI** | Groq + Llama 4 Scout | | **Embeddings** | HuggingFace (BGE-M3, GTE, E5, MiniLM) | | **Export** | FPDF2, python-docx | | **Job Search** | JSearch API (RapidAPI) | --- ## � Installation & Setup ### 1. Clone the repository ```bash git clone https://github.com/Nicola671/CareerAI.git cd CareerAI ``` ### 2. Create virtual environment ```bash python -m venv venv # Windows venv\Scripts\activate # Mac/Linux source venv/bin/activate ``` ### 3. Install dependencies ```bash pip install -r requirements.txt ``` ### 4. Configure environment variables Create a `.env` file in the project root: ```env # Groq API Key (free from console.groq.com) GROQ_API_KEY=your_api_key_here # JWT Secret (change to something random) SECRET_KEY=your_very_long_random_secret_key # Email for password recovery (optional) MAIL_USERNAME=your_email@gmail.com MAIL_PASSWORD=your_app_password MAIL_FROM=your_email@gmail.com # JSearch API Key for job search (optional) JSEARCH_API_KEY=your_jsearch_key ``` ### 5. Get Groq API Key (FREE) 1. Go to [console.groq.com](https://console.groq.com) 2. Create a free account 3. Go to "API Keys" → "Create API Key" 4. Copy your key (starts with `gsk_...`) 5. Paste it in your `.env` file ### 6. Run ```bash uvicorn api:app --reload --port 8000 ``` Open **http://localhost:8000** in your browser 🚀 --- ## � API Endpoints (22 routes) | Group | Endpoints | Description | |-------|-----------|-------------| | 🏠 Frontend | `GET /` | Serves the web app | | ⚙️ Config | `GET /api/status`, `POST /api/config` | Status & configuration | | 💬 Chat | `POST /api/chat`, `POST /api/chat/stream` | Chat with/without streaming | | 📄 Docs | `POST /api/documents`, `GET /api/documents`, `DELETE /api/documents/{file}` | Document CRUD | | 📤 Export | `POST /api/export`, `POST /api/export/conversation` | Export to PDF/DOCX/HTML/TXT | | 💼 Jobs | `GET /api/jobs` | Job search | | 📊 Dashboard | `GET /api/dashboard` | AI-powered profile analysis | | 🔐 Auth | `POST /api/auth/register`, `POST /api/auth/login`, `GET /api/auth/me` | Full authentication | Interactive API docs: **http://localhost:8000/docs** (Swagger UI) --- ## 📊 Project Metrics | Metric | Value | |--------|-------| | Lines of code | 8,400+ | | API Endpoints | 22 | | Frontend functions | 80+ | | Backend functions | 60+ | | Assistant modes | 5 | | Export formats | 4 (PDF, DOCX, HTML, TXT) | | Upload formats | 7 (PDF, DOCX, TXT, JPG, PNG, WEBP) | | Embedding models | 4 | --- --- # 🇦🇷 Español ## 🎬 ¿Qué es CareerAI? **CareerAI** es una aplicación web de inteligencia artificial que te ayuda a impulsar tu carrera profesional. Subís tus documentos (CV, cartas, certificados) y el asistente los analiza con IA avanzada (RAG) para darte recomendaciones personalizadas, generar documentos profesionales y prepararte para entrevistas. ### ✨ Todo esto 100% gratis · Sin alucinaciones · Basado en tus documentos reales --- ## 🚀 Funcionalidades Principales ### 🤖 Modelos de IA Personalizados | Modelo | Motor | Descripción | |--------|-------|-------------| | 🧠 **CareerAI Pro** | Llama 3.3 70B | Máxima calidad · Respuestas detalladas | | ⚡ **CareerAI Flash** | Llama 3.1 8B | Ultra rápido · Respuestas al instante | ### 💬 5 Modos del Asistente | Modo | Qué hace | |------|----------| | 💬 **Chat General** | Consultá lo que quieras sobre tu carrera profesional | | 🎯 **Job Match** | Analizá tu compatibilidad con ofertas de trabajo (% de match) | | ✉️ **Cover Letter** | Generá cartas de presentación personalizadas usando tu CV real | | 📈 **Skills Gap** | Identificá habilidades faltantes + roadmap para mejorar | | 🎤 **Entrevista** | Simulá entrevistas con preguntas técnicas y método STAR | ### 📋 Lista Completa de Características | Feature | Descripción | |---------|-------------| | 📄 **Multi-formato** | Soporta PDF, DOCX, TXT, imágenes (JPG, PNG, WebP) | | 🖼️ **Vision AI** | Lectura inteligente de PDFs escaneados y fotos de documentos | | ⚡ **Streaming** | Respuestas en tiempo real token por token | | 📤 **Export Premium** | Exportá a PDF, DOCX, HTML, TXT con formato profesional | | 📊 **Dashboard** | Gráficos de skills, timeline profesional, insights de IA | | 🔐 **Auth Completo** | Registro, login, Google OAuth, reset de contraseña | | 💼 **Búsqueda de Empleo** | Integración con LinkedIn, Indeed, Glassdoor via JSearch | | 🎨 **UI Premium** | Diseño tipo Claude/ChatGPT con dark mode | | 📱 **Responsive** | Funciona en desktop, tablet y celular | | 💾 **Persistencia** | Historial de chats sincronizado en la nube | --- ## 🧠 Pipeline RAG v2.0 CareerAI usa un pipeline de retrieval avanzado que combina múltiples técnicas para encontrar la información más relevante de tus documentos: ``` 📝 Query del usuario │ ├── 1️⃣ Vector Search (Semántico) │ └── ChromaDB + BGE-M3 (100+ idiomas) │ ├── 2️⃣ Keyword Search (Léxico) │ └── BM25 lexical matching │ ├── 3️⃣ Reciprocal Rank Fusion (RRF) │ └── Combina resultados semánticos + léxicos │ ├── 4️⃣ Reranking (Cross-Encoder) │ └── BGE-Reranker-v2-m3 (reordena por relevancia) │ └── 5️⃣ LLM con contexto optimizado └── Groq + Llama 3.3 70B (streaming) ``` --- ## 🛠️ Stack Tecnológico | Capa | Tecnología | |------|------------| | **Backend** | FastAPI + Uvicorn | | **Frontend** | HTML5 + CSS3 + JavaScript (estilo Claude) | | **LLM** | Groq API (Llama 3.3 70B / Llama 3.1 8B) | | **RAG** | ChromaDB + BM25 + BGE-M3 + Reranker + RRF | | **Base de datos** | SQLite + SQLAlchemy | | **Auth** | JWT + BCrypt + Google OAuth | | **Email** | FastAPI-Mail + Gmail SMTP | | **Vision AI** | Groq + Llama 4 Scout | | **Embeddings** | HuggingFace (BGE-M3, GTE, E5, MiniLM) | | **Exportación** | FPDF2, python-docx | | **Búsqueda** | JSearch API (RapidAPI) | --- ## 🚀 Instalación y Setup ### 1. Clonar el repositorio ```bash git clone https://github.com/Nicola671/CareerAI.git cd CareerAI ``` ### 2. Crear entorno virtual ```bash python -m venv venv # Windows venv\Scripts\activate # Mac/Linux source venv/bin/activate ``` ### 3. Instalar dependencias ```bash pip install -r requirements.txt ``` ### 4. Configurar variables de entorno Creá un archivo `.env` en la raíz del proyecto: ```env # Groq API Key (gratis desde console.groq.com) GROQ_API_KEY=tu_api_key_aqui # JWT Secret (cambiá por algo aleatorio) SECRET_KEY=tu_secret_key_muy_larga_y_aleatoria # Email para recuperación de contraseña (opcional) MAIL_USERNAME=tu_email@gmail.com MAIL_PASSWORD=tu_app_password MAIL_FROM=tu_email@gmail.com # JSearch API Key para búsqueda de empleos (opcional) JSEARCH_API_KEY=tu_jsearch_key ``` ### 5. Obtener API Key de Groq (GRATIS) 1. Andá a [console.groq.com](https://console.groq.com) 2. Creá una cuenta gratis 3. Andá a "API Keys" → "Create API Key" 4. Copiá tu key (empieza con `gsk_...`) 5. Pegala en el archivo `.env` ### 6. Ejecutar ```bash uvicorn api:app --reload --port 8000 ``` Abrí **http://localhost:8000** en tu navegador 🚀 --- ## � Estructura del Proyecto ``` CareerAI/ ├── api.py # 🚀 Backend FastAPI (22 endpoints) ├── requirements.txt # 📦 Dependencias Python ├── .env # 🔐 Variables de entorno (NO se sube a Git) ├── README.md # 📖 Este archivo │ ├── frontend/ # 🎨 UI tipo Claude │ ├── index.html # Estructura HTML │ ├── app.js # Lógica completa (1,842 líneas) │ ├── styles.css # Sistema de diseño (1,695 líneas) │ ├── icon-pro.png # 🧠 Icono CareerAI Pro │ ├── icon-flash.png # ⚡ Icono CareerAI Flash │ └── favicon.png # Favicon │ ├── src/ # 🧠 Core Engine │ ├── career_assistant.py # Motor IA con 5 modos especializados │ ├── rag_engine.py # RAG v2.0 (Hybrid + Reranking + RRF) │ ├── document_processor.py # Procesador multi-formato + Vision AI │ ├── profile_extractor.py # Extractor de perfil para dashboard │ ├── exporter.py # Exportación PDF/DOCX/HTML/TXT │ ├── auth.py # Autenticación (JWT + Google OAuth) │ └── models.py # Modelos SQLAlchemy (User, Conversation) │ └── data/ # 💾 Datos (no se suben a Git) ├── uploads/ # Documentos subidos └── vectordb/ # ChromaDB persistencia ``` --- ## 🆓 ¿Por qué es 100% Gratis? / Why is it 100% Free? | Component | Cost | |-----------|------| | Groq API (Llama 3.3 70B) | ✅ Free (generous rate limits) | | BGE-M3 Embeddings | ✅ Free (runs locally) | | BGE-Reranker-v2-m3 | ✅ Free (runs locally) | | BM25 Keyword Search | ✅ Free (runs locally) | | ChromaDB Vector Store | ✅ Free (runs locally) | | FastAPI + Frontend | ✅ Free (open source) | | SQLite Database | ✅ Free (runs locally) | --- ## 🤝 Contributing Contributions are welcome! If you want to improve CareerAI: 1. Fork the repository 2. Create a branch: `git checkout -b feature/new-feature` 3. Commit: `git commit -m "Add new feature"` 4. Push: `git push origin feature/new-feature` 5. Open a Pull Request --- ## 📄 License This project is licensed under the MIT License. Feel free to use, modify, and distribute it. --- ## 👨‍💻 Author / Autor

Nicolás Medina

GitHub   LinkedIn   Email


If this project helped you, consider giving it a ⭐ on GitHub!
Si este proyecto te ayudó, ¡considerá darle una ⭐ en GitHub!


CareerAI v1.0 — FastAPI + RAG v2.0 + Groq
Made with ❤️ in Argentina 🇦🇷