Spaces:
Sleeping
Sleeping
File size: 5,497 Bytes
37f0545 048be85 37f0545 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | ---
title: TalentTalkPro
emoji: π€
colorFrom: blue
colorTo: purple
sdk: docker
app_port: 7860
pinned: false
---
# TalentTalkPro π€
AI-powered interview assistant using LangGraph, LangChain, and Google Generative AI for comprehensive interview practice and feedback.
## π― Overview
TalentTalkPro is an advanced AI interview platform that provides realistic interview experiences with intelligent follow-up questions, real-time feedback, and comprehensive performance reports. The system uses multi-agent architecture powered by LangGraph to simulate professional interview scenarios.
## ποΈ Architecture
The application consists of two main components:
### Backend (FastAPI)
- **Port**: 8000 (internal)
- **Technology**: FastAPI, LangGraph, LangChain
- **Features**:
- Multi-agent interview system
- Real-time speech processing
- Resume analysis
- Video behavior analysis
- Performance evaluation
### Frontend (Streamlit)
- **Port**: 7860 (Hugging Face default)
- **Technology**: Streamlit
- **Features**:
- Interactive chat interface
- Audio/video input support
- Real-time feedback display
- Performance report visualization
## β¨ Features
- **π€ AI-Powered Interviews**: Intelligent multi-turn conversations with contextual follow-ups
- **π Resume Analysis**: Upload your resume for personalized interview questions
- **ποΈ Voice Interaction**: Record audio responses for a realistic interview experience
- **πΉ Video Analysis**: Optional video behavior analysis for non-verbal communication feedback
- **π Performance Reports**: Comprehensive evaluation with actionable feedback
- **π― Customizable Settings**: Configure difficulty, style, company, and role
- **π Adaptive Follow-ups**: Dynamic follow-up questions based on your responses
## π Environment Variables
The following environment variables are required:
| Variable | Description | Required |
|----------|-------------|----------|
| `GOOGLE_API_KEY` | Google Generative AI API key for LLM capabilities | β
Yes |
| `OPENROUTER_API_KEY` | OpenRouter API key for additional model access | β
Yes |
| `ASSEMBLYAI_API_KEY` | AssemblyAI API key for speech-to-text | β
Yes |
| `ELEVENLABS_API_KEY` | ElevenLabs API key for text-to-speech | β
Yes |
| `DATABASE_URL` | Database connection string | β οΈ Default: `sqlite+aiosqlite:///./talenttalk.db` |
| `BACKEND_CORS_ORIGINS` | CORS allowed origins | β οΈ Default: `*` |
| `API_URL` | Frontend API URL for backend connection | β οΈ Default: `http://localhost:8000/api/v1` |
## π Deployment on Hugging Face Spaces
This application is configured for deployment on Hugging Face Spaces using Docker SDK. For detailed deployment instructions, see [DEPLOYMENT.md](./DEPLOYMENT.md).
### Quick Start
1. Fork or clone this repository
2. Create a new Space on [huggingface.co/spaces](https://huggingface.co/spaces)
3. Select Docker SDK
4. Connect your GitHub repository
5. Configure environment variables in Space Settings β Repository Secrets
6. Your Space will automatically build and deploy!
## π» Local Development
### Prerequisites
- Python 3.11+
- pip or conda
### Setup
1. **Clone the repository**
```bash
git clone https://github.com/ParamJaiswal/TalentTalkPro.git
cd TalentTalkPro
```
2. **Create environment file**
```bash
cp .env.example .env
# Edit .env and add your API keys
```
3. **Install backend dependencies**
```bash
cd backend
pip install -r requirements.txt
```
4. **Install frontend dependencies**
```bash
cd ../frontend
pip install -r requirements.txt
```
5. **Run backend server**
```bash
cd ../backend
python -m uvicorn app.main:app --reload
```
6. **Run frontend (in a new terminal)**
```bash
cd frontend
streamlit run app.py
```
7. **Access the application**
- Frontend: http://localhost:8501
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
### Local Docker Testing
```bash
# Build the Docker image
docker build -t talenttalkpro .
# Run the container
docker run -p 7860:7860 \
-e GOOGLE_API_KEY=your_key \
-e OPENROUTER_API_KEY=your_key \
-e ASSEMBLYAI_API_KEY=your_key \
-e ELEVENLABS_API_KEY=your_key \
talenttalkpro
```
Access at: http://localhost:7860
## π API Documentation
Once the backend is running, visit:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
## π§ͺ Testing
```bash
cd backend
pytest tests/
```
## π οΈ Technology Stack
- **Framework**: FastAPI, Streamlit
- **AI/ML**: LangGraph, LangChain, Google Generative AI
- **Speech Processing**: AssemblyAI, ElevenLabs
- **Database**: SQLAlchemy with SQLite/PostgreSQL support
- **Async**: asyncio, aiosqlite
## π Documentation
- [Deployment Guide](./DEPLOYMENT.md) - Comprehensive deployment instructions
- [API Documentation](http://localhost:8000/docs) - Interactive API docs (when running)
## π€ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
## π License
This project is licensed under the MIT License - see the LICENSE file for details.
## π Acknowledgments
- Google Generative AI for powerful language models
- LangChain and LangGraph for agent orchestration
- AssemblyAI for speech recognition
- ElevenLabs for text-to-speech
- Hugging Face for hosting platform
## π§ Contact
For questions or support, please open an issue on GitHub.
---
Built with β€οΈ using AI technologies
|