--- title: Virtual Interviewer emoji: 🎯 colorFrom: indigo colorTo: purple sdk: streamlit sdk_version: 1.28.0 app_file: app.py pinned: false license: mit --- # Virtual Interviewer [![Open in Spaces](https://huggingface.co/datasets/huggingface/badges/resolve/main/open-in-hf-spaces-sm.svg)](https://huggingface.co/spaces/username/virtual-interviewer) [![GitHub](https://img.shields.io/badge/GitHub-Repository-blue?logo=github)](https://github.com/username/virtual-interviewer) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/) [![OpenAI](https://img.shields.io/badge/OpenAI-GPT--4o-green.svg)](https://openai.com/) A Streamlit application that simulates job interviews using OpenAI's GPT-4o model. This tool helps users practice for interviews by generating relevant questions based on job descriptions and providing feedback on their answers. ![Virtual Interviewer Demo](https://your-image-url-here.png) ## 🌟 Features - 💼 Generate interview questions based on job descriptions - 🎭 Support for both technical and non-technical interviews - 📊 Adjustable difficulty levels (Easy, Medium, Hard) - 🔍 Focus on specific key topics - 📝 Score interview responses with detailed feedback - 💡 Generate ideal answers for comparison - 🔊 Text-to-speech for questions with multiple voice options - 📈 Visual score summary with performance analytics - 🎨 Modern, responsive UI with intuitive controls ## 🚀 Quick Start 1. Enter your OpenAI API key 2. Paste a job description or use the default Solution Architect example 3. Configure your interview settings: - Select interview type (Technical or Non-technical) - Choose difficulty level (Easy, Medium, Hard) - Customize key topics - Enable/disable scoring and ideal answers - Set the number of questions - Enable text-to-speech and select a voice (optional) 4. Click "Start Interview" to begin 5. Answer each question and click "Next Question" to proceed 6. Review your performance with the visual score summary and detailed feedback ## 📋 Requirements - Python 3.8+ - OpenAI API key - Required packages (installed automatically): - streamlit - openai - pandas - edge-tts ## 💻 Installation for Local Development 1. Clone the repository: ```bash git clone https://github.com/username/virtual-interviewer.git cd virtual-interviewer ``` 2. Install the required dependencies: ```bash pip install -r requirements.txt ``` 3. Run the Streamlit application: ```bash streamlit run app.py ``` ## 🔒 Privacy and Security - Your OpenAI API key is used only for making API calls and is not stored permanently - Interview data is stored only in your browser's session - All processing happens on your local machine or within the HuggingFace Space - No data is sent to external servers beyond the necessary API calls to OpenAI ## 🤝 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. ## 🙏 Acknowledgements - Built with [Streamlit](https://streamlit.io/) - Powered by [OpenAI GPT-4o](https://openai.com/) - Text-to-speech provided by [Edge-TTS](https://github.com/rany2/edge-tts)