AImy is fully offline, vision-enabled AI voice assistant. It runs on an a Raspberry Pi 5 with the LLM 8850 accelerator from Axera and M5Stack.
Currently running on Trixie with Python 3.13 but should work on 3.12 or 3.11, I will test with pyenv soon and work to make it more compatible where needed.
Watch a short demo video here!
- LLM 8850 Software Installation - Official M5Stack Documentation
- Raspberry Pi 5 (8gb)
- M5Stack LLM 8850
- Raspberry Pi M.2 Hat+
- Raspberry Pi Camera Module (or comparable module)
- USB Speaker, USB Microphone (I used Waveshare USB to Audio card)
The LLM 8850 M.2 Card is also available in a kit from M5Stack that includes their own version of an M.2 hat - see production information here. This version would not require the Raspberry Pi M.2 Hat+ listed above.
The code that does the heavy lifting in this project was authored by Axera Tech. I started with examples in the HF repo and expanded and adapted them to use additional hardware like the camera and microphone. Models used and their specific page within the Axera HF repo are below.
Vision - Yolo11x - Axera Yolo11 HF Repo
ASR - Sensevoice - Axera SenseVoice HF Repo
LLM - Qwen2.5-1.5B-IT-int8 - Axera Qwen2.5-1.5B-IT-int8-python repo
TTS - MeloTTS - Axera MeloTTS HF Repo
Wakeword detection - Vosk - Vosk model page
Wakeword detection - Porcupine / Picovoice - Picovoice
- I have included a copy of my "hey amy" porcupine model in the repo
Installation takes about 5-10 mins total, including model downloads.
I have a short video showing the full installation process, up through running your first voice prompt. Took about 8 minutes total!
- Clone repo
git clone https://github.com/malonestar/AImy.git
- Make installation script executable and run
chmod +x install.sh
./install.sh
The installation script will:
- Check system dependencies and install if missing - PiCamera2, OpenCV
- Create virtual environment 'aimy_venv'
- Install dependencies from requirements.txt
- Create bashrc alias to activate venv from anywhere by typing 'aimyenv'
- Download models via scripts/download_models.py - Qwen and Yolo from Axera HF repos, Sensevoice+MeloTTS+Vosk from Google Drive to maintain compatibility with an older version of the Sensevoice script from Axera
- Activate virtual environment
source aimy_venv/bin/activate
OR
source ~/.bashrc
aimyenv
Please note, you will only need to run the 'source ~/.bashrc' one time in the current terminal window, OR you can just close out and open a new terminal.
- Run
python main.py


