https://github.com/arush04/interviewbot
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.9%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: Arush04
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 15.6 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
INTERVIEWBOT
Table of Contents
Overview
❯ Interview Bot is an AI-powered virtual interviewer designed to simulate real-world interview experiences. Built using the OpenAI API for natural language understanding and the Whisper model for speech-to-text transcription, the bot can conduct voice-based interviews, interpret responses, and provide dynamic follow-up questions — much like a human interviewer would.
❯ This project aims to assist job seekers in preparing for interviews by offering realistic, interactive mock sessions. Whether you're practicing for technical, behavioral, or situational questions, Interview Bot adapts in real time to simulate a wide range of interview styles and question flows.
Features
-
🎤 Audio Input Support
- Accepts spoken responses via audio file uploads at the
/talkendpoint. - Uses OpenAI’s Whisper model to transcribe audio into text.
- Accepts spoken responses via audio file uploads at the
-
🧠 AI-Powered Interviewer
- Simulates an AI interviewer using GPT-3.5 Turbo.
- Asks contextually relevant questions based on user responses.
- Maintains a consistent persona:
Jarvis, interviewing the userArush.
-
📂 Session Memory
- Stores full conversation history in
database.json. - Uses stored messages to keep the conversation contextual and coherent.
- Stores full conversation history in
-
📄 Customizable Interview Prompts
- Starts with a system prompt tailored for Machine Learning Engineer interviews.
- Can be easily adapted for other roles by modifying the system prompt.
-
⚡ Lightweight & Fast API
- Built using FastAPI for quick performance and easy integration.
-
🔒 Environment Variable Configuration
- Securely manages API keys and organization ID using
.envandpython-dotenv.
- Securely manages API keys and organization ID using
-
📊 Minimal Dependencies
- Uses only essential libraries:
openai,torch,fastapi,requests, anddotenv.
- Uses only essential libraries:
Project Structure
sh
└── InterviewBot/
├── LICENSE
├── README.md
├── main.py
└── requirements.txt
Getting Started
Installation
Install InterviewBot using one of the following methods:
🚀 Build from Source
Follow these steps to set up the development environment locally:
- Clone the InterviewBot repository:
git clone https://github.com/Arush04/InterviewBot.git - Navigate to the project directory:
cd InterviewBot - Install the project dependencies:
Usingpippip install -r requirements.txt - Configure your OpenAI credentials:
Open themain.pyfile and replace the following with your own keys:openai.api_key→ Your OpenAI API Keyopenai.organization→ Your OpenAI Organization ID
- Create an empty database file:
In the project root directory, run:touch database.json - Start the FastAPI server with Uvicorn:
uvicorn main:app --reload - Access the application:
Visithttp://localhost:8000in your browser. - Talk to the bot:
Send audio files tohttp://localhost:8000/talkvia a client like Postman or Curl.
Project Roadmap
- [X]
Task 1:Implement basic features (TTS using whisper, saving conversations in db). - [ ]
Task 2: Use open source models for TTS and also understand context from user's experience/resume (RAG). - [ ]
Task 3: Implement Frontend.
Contributing
- 🐛 Report Issues: Submit bugs found or log feature requests for the
InterviewBotproject. - 💡 Submit Pull Requests: Review open PRs, and submit your own PRs.
Owner
- Name: Arush Sharma
- Login: Arush04
- Kind: user
- Repositories: 1
- Profile: https://github.com/Arush04
GitHub Events
Total
- Push event: 1
Last Year
- Push event: 1
Dependencies
- fastapi *
- openai ==0.28
- python-dotenv *
- python-multipart *
- requests *
- torch *
- torchaudio *
- uvicorn *