A self-hosted, provider-agnostic voice assistant that delivers structured executive briefings via voice or text from 10 LLM providers.
Project description
Àkàndé
Àkàndé is a self-hosted, provider-agnostic voice assistant that delivers structured executive briefings from any of 10 supported LLM providers. Ask a question by voice or text; receive a concise Overview / Solution / Conclusion / Recommendations briefing with automatic PDF and CSV artefact generation. Run it against OpenAI, or keep your data entirely private with Ollama or LM Studio on your own hardware.
The name "Àkàndé" (Yoruba: "firstborn") signifies a pioneering approach to voice-driven intelligence briefings.
Why Àkàndé?
Ask a question. Get a structured briefing. Keep your data.
That is the entire workflow. Voice, text, or web -- Àkàndé listens, queries the LLM of your choice, and delivers a four-section executive briefing: Overview, Solution, Conclusion, Recommendations. PDF and CSV artefacts are generated automatically.
No framework to learn. No output parsing to build. No provider lock-in to accept.
Ten LLM providers -- including fully private local inference through Ollama and LM Studio -- all behind one environment variable. Your hardware. Your models. Your data.
Every other tool gives you the engine and expects you to build the car. Àkàndé hands you the keys. This is how AI assistants should have always worked.
Who is Àkàndé for?
Python developers who deploy it: clone, configure a provider, and run. Àkàndé is a standard Python package with a CLI entry point, a CherryPy web server mode, and 161 tests.
End users and executives who interact with it: speak or type a question and receive a structured briefing read aloud and saved as PDF/CSV. No technical knowledge required once deployed.
Quick Start
Prerequisites
- Python 3.9+
- PortAudio (for microphone input):
Ubuntu/Debian
sudo apt install portaudio19-dev, macOSbrew install portaudio - ffmpeg (for audio conversion):
Ubuntu/Debian
sudo apt install ffmpeg, macOSbrew install ffmpeg
Installation
git clone https://github.com/sebastienrousseau/akande
cd akande
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# Edit .env: set OPENAI_API_KEY=sk-your-key-here
python -m akande
Select option 2 ("Ask a question"), type your query, and receive a structured briefing.
Provider Configuration
Set LLM_PROVIDER in your .env file. Install extras for non-OpenAI
providers.
| Provider | LLM_PROVIDER |
Required env vars | Install extras | Default model |
|---|---|---|---|---|
| OpenAI | openai |
OPENAI_API_KEY |
(included) | gpt-3.5-turbo |
| Anthropic | anthropic |
ANTHROPIC_API_KEY |
pip install akande[anthropic] |
claude-3-haiku-20240307 |
| Google Gemini | google |
GOOGLE_API_KEY |
pip install akande[google] |
gemini-pro |
| Ollama | ollama |
OLLAMA_HOST |
(included) | llama3 |
| Azure OpenAI | azure_openai |
AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT |
(included) | gpt-35-turbo |
| Mistral | mistral |
MISTRAL_API_KEY |
pip install akande[mistral] |
mistral-small-latest |
| Cohere | cohere |
COHERE_API_KEY |
pip install akande[cohere] |
command-r |
| Hugging Face | huggingface |
HUGGINGFACE_API_KEY |
pip install akande[huggingface] |
mistralai/Mistral-7B-Instruct-v0.2 |
| Groq | groq |
GROQ_API_KEY |
(included) | llama3-8b-8192 |
| LM Studio | lmstudio |
LMSTUDIO_HOST |
(included) | local-model |
To install all optional provider SDKs: pip install akande[all]
Interaction Modes
Àkàndé presents a CLI menu with four options:
- Use voice -- speak your question via microphone; response is read aloud
- Ask a question -- type your question; response is printed and read aloud
- Start server -- launches a web UI at
http://127.0.0.1:8080with voice and text input - Stop -- exits the assistant
Example Interaction
Question: "What is quantitative easing?"
Overview Quantitative easing (QE) is a monetary policy tool used by central banks to stimulate economic activity when conventional interest rate cuts are insufficient.
Solution
- Central banks purchase government bonds and other securities to inject money into the economy
- This lowers long-term interest rates, encouraging borrowing and investment
- QE increases the money supply without printing physical currency
Conclusion QE can stabilise financial markets during crises but carries risks of asset bubbles and currency devaluation.
Recommendations
- Monitor inflation indicators alongside QE announcements
- Consider the impact on bond yields for portfolio decisions
Each response is automatically saved as a timestamped PDF and CSV in the output directory.
Troubleshooting
| Problem | Cause | Fix |
|---|---|---|
Could not find PyAudio |
PortAudio missing | Ubuntu: sudo apt install portaudio19-dev. macOS: brew install portaudio. Then pip install pyaudio. |
ffmpeg not found |
ffmpeg not installed | Ubuntu: sudo apt install ffmpeg. macOS: brew install ffmpeg. |
| Microphone not detected | OS permissions | Grant microphone access in system settings. |
ModuleNotFoundError: No module named 'anthropic' |
Provider SDK not installed | pip install akande[anthropic]. See the provider table above. |
Invalid or missing OPENAI_API_KEY |
Key not set or malformed | Ensure .env contains a valid sk- prefixed key. |
Roadmap
- Streaming responses for reduced time-to-first-token
- Conversation memory with multi-turn context
- Markdown and HTML briefing output formats
- Plugin system for domain-specific briefing templates
- Docker image for single-command deployment
Trust
- 161 tests covering providers, caching, services, server, and utilities
- Apache 2.0 licence -- permissive, enterprise-friendly
- Euxis-audited architecture and security posture
Contributing
Pull requests are welcome. See CONTRIBUTING.md for guidelines.
License
This project is licensed under the Apache Software License -- see the LICENSE file for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file akande-0.0.5.tar.gz.
File metadata
- Download URL: akande-0.0.5.tar.gz
- Upload date:
- Size: 43.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af92245afaac6ad7b1dc51e61b39105b1f7892f3eabbe1f7afbccf1ea019bdc7
|
|
| MD5 |
62c33bbb0967acd11ed875f3cdac3743
|
|
| BLAKE2b-256 |
8db0695f66d17627821133879f9387f9f720417eda2a7e452caeb56385a1c024
|
File details
Details for the file akande-0.0.5-py3-none-any.whl.
File metadata
- Download URL: akande-0.0.5-py3-none-any.whl
- Upload date:
- Size: 47.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16dfcfb9cb23d6c2fbb128166a05900c70278f50416a10fe3b1925ceb9d8019f
|
|
| MD5 |
77998da66c93044807d4d26ed7dc68d5
|
|
| BLAKE2b-256 |
c607123ee26c37ac6bdef3dfa68a9391f608c2aab0d7a0e473cc8d86d1c6706e
|