🌍 African AI assistant powered by Axum + Whisper + Ollama. Digital griot sharing African stories, history & culture. Rooted in Cameroon's Yesum traditions. Named after scholar Engelbert Mveng. Your bridge to African wisdom. 🇨🇲✨
# Mveng
🌍 African AI assistant powered by Axum + Whisper + Ollama. Digital griot sharing African stories, history & culture. Rooted in Cameroon's Yesum traditions. Named after scholar Engelbert Mveng. Your bridge to African wisdom. 🇨🇲✨
# VoiceAI Assistant 🎙️🤖
A conversational AI agent that processes voice input, transcribes it using OpenAI Whisper, generates responses with Ollama (open-source LLM), and provides both text and optional voice responses.
## 🚀 Features
- **Voice Input Processing**: Upload audio files for transcription
- **Real-time Transcription**: Uses OpenAI Whisper for accurate speech-to-text
- **Open Source LLM**: Powered by Ollama with Llama 2 or other open models
- **RESTful API**: Built with Axum (Rust) for high performance
- **Containerized**: Complete Docker Compose setup
- **WebSocket Support**: Real-time conversation updates
- **Multi-format Audio**: Supports WAV, MP3, M4A, and more
- **Response Streaming**: Stream LLM responses in real-time
## 🏗️ Architecture
```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Client App │───▶│ Axum Server │───▶│ Whisper Model │
│ (Web/Mobile) │ │ (Rust) │ │ (Transcription)│
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Ollama Server │
│ (Open Source LLM)│
└─────────────────┘
```
## 📋 Prerequisites
- Docker and Docker Compose
- At least 8GB RAM (for LLM models)
- NVIDIA GPU (optional, for faster inference)
## 🛠️ Installation
1. **Clone the repository**
```bash
git clone
github.com
cd voiceai-assistant
```
2. **Start the services**
```bash
docker-compose up -d
```
3. **Pull the LLM model** (first run only)
```bash
docker-compose exec ollama ollama pull llama2
```
4. **Verify installation**
```bash
curl
localhost
```
## 🐳 Docker Services
### Core Services
- **axum-server**: Main API server (Port 3000)
- **whisper-service**: Speech-to-text …