Aniquen Server is the backend inference engine powering the Aniquen Voice Assistant.
Instead of running heavy AI models directly on the client device, this server performs all machine learning inference using ONNX Runtime, processes live microphone audio through WebSockets, detects the "Hey Aniquen" wake word in real time, and securely proxies speech recognition and LLM requests without exposing API keys.
The architecture is designed for low-latency voice interaction while keeping client devices lightweight.
- Features
- Architecture
- Screenshots
- Technologies
- Project Structure
- How It Works
- Installation
- API Endpoints
- Future Improvements
- Contributing
- License
- Author
β Real-Time Wake Word Detection
β ONNX Runtime AI Inference
β FastAPI Backend
β Low-Latency WebSocket Streaming
β Voice Activity Detection (VAD)
β Automatic Audio Gain Normalization
β Mel Spectrogram Generation
β Embedding Model Pipeline
β Keyword Spotting Model
β Rolling Probability Detection
β Secure Whisper API Proxy
β Secure Groq LLM Proxy
β Environment Variable API Keys
β Lightweight Client Architecture
β Optimized for Always-On Servers
Microphone
β
βΌ
Browser
β
WebSocket
β
βΌ
FastAPI Server
β
ββββββββββΊ Audio Buffer
β
ββββββββββΊ Gain Normalization
β
ββββββββββΊ Voice Activity Detection
β
ββββββββββΊ Mel Spectrogram Model
β
ββββββββββΊ Embedding Model
β
ββββββββββΊ Wake Word Model
β
βΌ
Wake Probability
β
βΌ
Detection Result
- Python 3.12
- FastAPI
- Uvicorn
- ONNX Runtime
- NumPy
- WebSockets
- HTTPX
- Python Multipart
AI Models
- Mel Spectrogram ONNX
- Embedding Model ONNX
- Hey Aniquen Wake Word Model
Cloud APIs
- Groq Whisper
- Groq LLM
aniquen-server/
β
βββ server.py
βββ requirements.txt
βββ .python-version
βββ embedding_model.onnx
βββ melspectrogram.onnx
βββ hey_Aniquen.onnx
β
βββ firmware/
β
βββ README.md
The browser records microphone audio.
β
Raw Float32 PCM audio is streamed to the FastAPI server using WebSockets.
β
Incoming audio is buffered and normalized.
β
Voice Activity Detection determines whether speech is present.
β
The Mel Spectrogram ONNX model converts audio into spectrogram features.
β
The Embedding Model generates feature embeddings.
β
The Wake Word Model predicts the probability of the "Hey Aniquen" keyword.
β
The server sends detection results back to the client in real time.
β
When activated, speech transcription and AI chat requests are securely proxied through the backend.
/ws
Streams microphone audio and returns wake-word probabilities.
POST /api/transcribe
Proxies audio to Groq Whisper while keeping API keys secure.
POST /api/chat
Proxies LLM requests to Groq without exposing credentials.
Clone the repository
git clone https://github.com/dhruvpandit46/aniquen-server.gitGo inside the project
cd aniquen-serverInstall dependencies
pip install -r requirements.txtRun
uvicorn server:app --host 0.0.0.0 --port 8000GROQ_WHISPER_KEY=your_key_here
GROQ_LLM_KEY=your_key_here
Never commit API keys to the repository.
- GPU acceleration
- Multi-language wake words
- Speaker identification
- Noise suppression
- Echo cancellation
- Multi-device synchronization
- Streaming speech recognition
- Docker deployment
- Kubernetes support
- Authentication
- Rate limiting
- Monitoring dashboard
Contributions are welcome.
-
Fork the repository
-
Create your feature branch
-
Commit your changes
-
Push your branch
-
Open a Pull Request
Licensed under the MIT License.
MIT Β© 2026 Dhruv Pandit.
See the LICENSE file for full license details.
Dhruv Pandit
GitHub
https://github.com/dhruvpandit46
https://linkedin.com/in/dhruv-pandit-755786326
https://instagram.com/dhruv_pandit2007
| Repository | Description |
|---|---|
| π€ Aniquen | AI Voice Assistant |
| π§ aniquen-server | AI Backend & Wake Word Server |
| π€ Anique AI Voice | Text-to-Speech API |
| π¬ Anique AI | Browser-Based AI Chatbot |
| π¬ Anique | Multimedia Platform |
If you found this project useful,
please consider giving it a β on GitHub.
It helps support future development.