An innovative, open-source voice assistant powered by OpenAI's GPT-3, designed to provide interactive, conversational experiences through both voice and text inputs. 🐍
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Getting started
The Àkàndé ecosystem
Library reference
docs/COMPARISON.mddocs/BENCHMARKS.mdOperational
[dependencies]
akande = "^0.0.11"
# Core install : provider SDKs and mic capture are optional extras
pip install akande
# Full kit : every provider + microphone + MCP
pip install "akande[all,mic,mcp]"
git clone https://github.com/sebastienrousseau/akande
cd akande
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
| Requirement | Supported Version | Details |
|---|---|---|
| Python | >= 3.11 (tested on 3.11, 3.12, 3.13, 3.14) | Core runtime environment |
| PortAudio | >= 19 (optional) | Required for microphone audio input (akande[mic]) |
| FFmpeg | Any modern release (optional) | Required for MP3 / non-WAV audio transcoding |
| Platforms | Linux (x86_64, aarch64), macOS (Intel, Apple Silicon), Windows | Platform-agnostic Python package |
import asyncio
import os
from akande.akande import Akande
from akande.providers.registry import get_provider
os.environ["LLM_PROVIDER"] = (
"ollama" # or openai, anthropic, google, claude_cli, etc.
)
async def main() -> None:
provider = get_provider()
assistant = Akande(openai_service=provider)
response = await assistant.generate_response(
"Provide a morning executive briefing on market trends."
)
print(response)
asyncio.run(main())
This runs the end-to-end Àkàndé pipeline: intent classification, safety wrapping, provider execution, and optional speech synthesis.
Àkàndé provides a complete voice-first executive briefing stack across command-line, graphical terminal, REST, and protocol interfaces:
| Component | Purpose | Use case |
|---|---|---|
akande.pipeline | Core orchestration pipeline | Intent classification, safety envelopes, tool dispatch |
akande.server | REST and SSE streaming server | Web-based clients and HTTP streaming integrations |
akande.tui | Bubble Tea interactive terminal UI | Full-screen interactive terminal workflow |
akande.mcp | Model Context Protocol client and server | Exposing Àkàndé tools to Claude Desktop, Cursor, Continue |
| Area | Capability | Status |
|---|---|---|
| Providers | 11 LLM providers (OpenAI, Anthropic, Google, Claude CLI, Mistral, Cohere, etc.) | Production |
| Speech-to-Text | SpeechRecognition and Faster-Whisper backends | Production |
| Text-to-Speech | gTTS and local Kokoro-82M ONNX offline synthesis | Production |
| Safety & Audit | Input sanitization, safety envelopes, cryptographically verifiable PDF audits | Production |
| Compliance | EU AI Act Article 50 transparency and AudioSeal audio watermarking | Production |
| Project | Self-Hosted | Multi-Provider | Voice STT/TTS | Article 50 Audit |
|---|---|---|---|---|
| Àkàndé | Yes | 11 providers | Yes (Native) | Yes (Cryptographic) |
| Open-WebUI | Yes | Yes | Partial | No |
| LocalAI | Yes | Local only | Yes | No |
See docs/COMPARISON.md for the evidence and complete matrix.
| Scenario | Result | Environment |
|---|---|---|
| Pipeline dispatch overhead | < 1.2 ms | Apple Silicon M3 / Python 3.13 |
| Watermark verification latency | < 18 ms | Apple Silicon M3 / 1s audio |
| Audio sanitization & safety wrapping | < 0.3 ms | Ubuntu 24.04 / Python 3.12 |
See docs/BENCHMARKS.md for methodology and full results.
<user_input> boundary envelopes.Set configuration through environment variables or .env files:
# Provider selection
export LLM_PROVIDER=openai # anthropic, google, ollama, claude_cli, etc.
# Operational profile
export AKANDE_PROFILE=eu # eu (strict compliance) or default
# Audio configuration
export AKANDE_TTS=kokoro # gtts or kokoro
export AKANDE_STT=sr # sr or faster_whisper
Runnable examples demonstrating features:
examples/basic_briefing.py : Simple 10-line text briefing.examples/voice_interaction.py : Interactive microphone capture and voice synthesis.examples/mcp_server.py : Connecting Àkàndé tools to an MCP host.uv venv
uv pip install -e ".[all,dev]" mcp
uv run --extra dev pytest
uv run --extra dev ruff check .
All contributions must pass the verification gates (pytest with >= 95% coverage, ruff, mypy, bandit, pip-audit).
Àkàndé enforces security best practices across input validation, network tools, and credential handling:
Report vulnerabilities according to SECURITY.md.
Àkàndé adheres to strict Semantic Versioning:
Dual-licensed under Apache-2.0 OR MIT at your option: