JARVIS is a user-friendly Python application designed to empower you with seamless voice control. It leverages speech recognition, text-to-speech synthesis, and OpenAI's powerful GPT-3.5-turbo model to understand your requests and provide a natural, interactive experience.
• Intuitive Voice Control: Activate JARVIS with the wake word "Jarvis" and issue commands using your natural voice.
• Web Navigation: Open websites like Google, Facebook, YouTube, LinkedIn, and GitHub with simple voice instructions.
• Music Management: Access your music library (defined in musicLibrary.py) and play songs by voice command.
• News Updates: Stay informed by requesting news headlines. JARVIS retrieves and reads them out loud to you.
• OpenAI Integration: Harness the capabilities of OpenAI's GPT-3.5-turbo model for intelligent responses and handling complex requests beyond predefined commands.
- Prerequisites: Ensure you have Python 3.x installed on your system. You can verify this by running python3 --version in your terminal.
- Install Dependencies: Install the required Python libraries using pip install speech_recognition webbrowser pyttsx3 musicLibrary requests openai gtts pygame.
- Run the Script: Execute the application by running python main.py in your terminal.
- Wake Word: Say "Jarvis" to activate JARVIS.
- Voice Commands: Speak your requests clearly.
• "Open Google"
• "Play [Song Name]" (from your music library)
• "What's the news?"
• Ask general questions (handled by OpenAI)
• "Open GitHub"
• Music Library: Edit the musicLibrary.py file to define your music library with song names and links.
• OpenAI API Key: Replace in main.py with your OpenAI API key for optimal AI interaction.
• News API Key: Replace in main.py with your News API key to access news updates. You can obtain a free API key from https://newsapi.org/.
• main.py: The core script that runs the application.
• musicLibrary.py (optional): Defines your music library.
• utils.py (optional): Can be used for utility functions (e.g., error handling).
• Error Handling: Implement more robust error handling to provide informative messages to the user.
• Context Awareness: Explore techniques to understand the context of user commands for improved responsiveness.
• Customization: Allow users to personalize the wake word, voice style, and other preferences.
• Desktop Integration: Integrate JARVIS with your desktop environment for a more seamless experience.
This project is provided for educational and demonstration purposes only. Third-party API keys and libraries may have their own terms and conditions. Use them responsibly.
• Python 3.x
• Speech Recognition
• Text-to-Speech Synthesis
• OpenAI (GPT-3.5-turbo)
• Web Scraping (optional)
• Music Playback (optional)
• News API Integration (optional)
This project demonstrates my proficiency in:
• Python Programming: Building a functional Python application.
• Speech Recognition and Text-to-Speech: Implementing voice automation.
• API Integration: Utilizing OpenAI and potentially other APIs for expanded functionality.
• Project Structure and Documentation: Creating a well-organized and documented codebase.
• Continuous Improvement: Recognizing the potential for further enhancements.