Skip to main content

A self-hosted, provider-agnostic voice assistant that delivers structured executive briefings via voice or text from 10 LLM providers.

Project description

Akande Voice Assistant Logo

Àkàndé

Banner for Àkàndé - Voice Assistant

À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.

divider

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.

divider

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.

divider

Quick Start

Prerequisites

  • Python 3.9+
  • PortAudio (for microphone input): Ubuntu/Debian sudo apt install portaudio19-dev, macOS brew install portaudio
  • ffmpeg (for audio conversion): Ubuntu/Debian sudo apt install ffmpeg, macOS brew 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.

divider

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]

divider

Interaction Modes

Àkàndé presents a CLI menu with four options:

  1. Use voice -- speak your question via microphone; response is read aloud
  2. Ask a question -- type your question; response is printed and read aloud
  3. Start server -- launches a web UI at http://127.0.0.1:8080 with voice and text input
  4. Stop -- exits the assistant

divider

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.

divider

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.

divider

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

divider

Trust

  • 161 tests covering providers, caching, services, server, and utilities
  • Apache 2.0 licence -- permissive, enterprise-friendly
  • Euxis-audited architecture and security posture

divider

Contributing

Pull requests are welcome. See CONTRIBUTING.md for guidelines.

divider

License

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

divider

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

akande-0.0.5.tar.gz (43.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

akande-0.0.5-py3-none-any.whl (47.9 kB view details)

Uploaded Python 3

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

Hashes for akande-0.0.5.tar.gz
Algorithm Hash digest
SHA256 af92245afaac6ad7b1dc51e61b39105b1f7892f3eabbe1f7afbccf1ea019bdc7
MD5 62c33bbb0967acd11ed875f3cdac3743
BLAKE2b-256 8db0695f66d17627821133879f9387f9f720417eda2a7e452caeb56385a1c024

See more details on using hashes here.

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

Hashes for akande-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 16dfcfb9cb23d6c2fbb128166a05900c70278f50416a10fe3b1925ceb9d8019f
MD5 77998da66c93044807d4d26ed7dc68d5
BLAKE2b-256 c607123ee26c37ac6bdef3dfa68a9391f608c2aab0d7a0e473cc8d86d1c6706e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page