Skip to content

RombotLabs/VoiceChatApp_EDAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VoiceChatApp EDAI - Setup Guide

An AI Agent for Elite Dangerous that provides tips and runs fully local with voice chat capabilities.

📋 Prerequisites

  • Python 3.11 or lower (3.8+ minimum)
  • Ollama (for local LLM inference)
  • Git

🚀 Quick Start

Step 1: Clone the Repository

git clone https://github.com/RombotLabs/VoiceChatApp_EDAI.git
cd VoiceChatApp_EDAI

Step 2: Install Ollama

Ollama enables you to run large language models locally on your machine.

Windows:

  1. Download the installer from ollama.com
  2. Run the installer and follow the on-screen instructions

macOS:

brew install ollama

Linux:

curl -sSfL https://ollama.com/install.sh | sh

Step 3: Pull and Configure the Model

After installing Ollama, pull the required model:

ollama pull ministral-3:3b

This project uses the Ministral 3B model by default. You can verify the installation by running:

ollama list

You should see ministral-3:3b in the list.

Note: Make sure Ollama is running in the background. You can start it with:

ollama serve

Step 4: Install Python Dependencies

Ensure you have Python 3.11 or lower installed:

python --version

Install the required Python packages:

pip install -r requirements.txt

Dependencies:

  • TTS~=0.22.0 - Text-to-speech synthesis
  • faster-whisper~=1.2.1 - Speech-to-text transcription
  • ollama~=0.6.1 - Ollama API client
  • requests~=2.33.1 - HTTP library
  • sounddevice~=0.5.5 - Audio recording
  • soundfile~=0.13.1 - Audio file handling
  • numpy~=1.26.4 - Numerical computing

Step 5: Run the Scraper (First Time Setup)

Before running the main application, you need to scrape the Elite Dangerous wiki data:

python scraper.py

This script will:

  1. Fetch all pages from the Elite Dangerous Wiki
  2. Extract text and metadata
  3. Save the data as JSON files in the data/ directory
  4. Generate data/elite_keyword.json for keyword extraction

Expected output:

Fetching ALL page titles...
[50/5000] processed
[100/5000] processed
...
Saved 4892 pages into 'data'

This may take 15-30 minutes depending on your internet connection and system performance.

Step 6: Run the Application

After the scraper completes and Ollama is running, launch the voice chat application:

python main.py

The GUI will open. Simply:

  • Hold the microphone button to record your question
  • Release to process and get an AI response about Elite Dangerous
  • The AI will generate a voice response based on the wiki data

📁 Project Structure

VoiceChatApp_EDAI/
├── main.py                 # Main GUI application
├── scraper.py             # Wiki scraper
├── requirements.txt       # Python dependencies
├── data/                  # Wiki data (generated by scraper)
│   └── *.json            # Individual wiki pages
└── src/
    └── aiutils/          # AI utility modules
        ├── OllamaUtils.py
        ├── VoiceUtils.py
        └── dir_fetcher.py

⚙️ Configuration

The default configuration uses:

  • Model: ministral-3:3b (3 billion parameters)
  • Voice TTS: Tacotron2-DDC English model
  • Sample Rate: 44100 Hz

To change these, edit main.py and look for:

voice = VoiceUtils("tts_models/en/ljspeech/tacotron2-DDC")
ollama = OllamaUtils("ministral-3:3b")

🐛 Troubleshooting

"ModuleNotFoundError" when running main.py

Make sure all dependencies are installed:

pip install -r requirements.txt

"Ollama connection refused"

Ensure Ollama is running:

ollama serve

"No module named 'src'"

Run the application from the project root directory:

cd VoiceChatApp_EDAI
python main.py

Scraper takes too long

The first scrape can take 15-30 minutes. You can reduce MAX_WORKERS in scraper.py if you experience connection issues.

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Feel free to open issues or submit pull requests.

📚 Resources

About

This is an AI Agent for Elite Dangerous which gives you tipps and runs fully local.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages