mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 06:24:42 +02:00
Phase 0 (abstraction) + Phase 1 (backend onnx), additif et rétrocompatible. - voice/asr/ : protocole ASRBackend (load + transcribe) + factory make_backend pilotée par cfg["asr_engine"]. Imports lourds lazy → stt --help/config OK sans aucun moteur installé. - whisper.py : faster-whisper extrait tel quel (défaut, comportement inchangé). - onnx_parakeet.py : onnx-asr (Parakeet/Canary/Nemotron ONNX, multilingue FR, ~600M, CPU rapide / GPU AMD via onnxruntime-rocm). Providers configurables ; message d'install actionnable si onnx-asr absent. - engine.py : délègue load()/_transcribe() au backend (le reste — VAD, wake word, TTS — inchangé). - config : [voice] asr_engine="whisper" (défaut), onnx_model, onnx_providers. - pyproject : extras optionnels onnx / onnx-rocm ; bump 0.6.1 → 0.7.0. Bascule à chaud par config, rollback = asr_engine="whisper". Streaming = phase 2 (spike séparé). admin/ia/stt.md mis à jour. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
38 lines
1.2 KiB
TOML
38 lines
1.2 KiB
TOML
[project]
|
|
name = "stt"
|
|
version = "0.7.0"
|
|
description = "STT — client vocal Jarvis du homelab Funk (voix + HUD, parle au STT-server)"
|
|
requires-python = ">=3.11"
|
|
readme = "README.md"
|
|
|
|
# Client : voix locale + HUD. L'inférence est déléguée au STT-server (pas d'anthropic/qdrant ici).
|
|
dependencies = [
|
|
"faster-whisper>=1.0.0", # STT local
|
|
"sounddevice>=0.4.6", # capture micro
|
|
"numpy>=1.24.0",
|
|
"requests>=2.31.0", # appels HTTP vers le STT-server
|
|
"webrtcvad-wheels>=2.0.10",# VAD / wake word
|
|
"websockets>=12.0", # backend ↔ HUD
|
|
"tomli-w>=1.0.0", # écriture config TOML
|
|
]
|
|
|
|
# Backend ASR alternatif (asr_engine="onnx") : NVIDIA Parakeet/Canary/Nemotron en ONNX.
|
|
# Hors du core pour garder l'install légère. CPU : onnx ; GPU AMD : onnx-rocm.
|
|
[project.optional-dependencies]
|
|
onnx = ["onnx-asr>=0.11", "onnxruntime>=1.18"]
|
|
onnx-rocm = ["onnx-asr>=0.11", "onnxruntime-rocm>=1.18"]
|
|
|
|
[project.scripts]
|
|
stt = "stt.cli:main"
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = ["stt*"]
|
|
|
|
# Le HUD (assets web) est livré comme données du package stt/
|
|
[tool.setuptools.package-data]
|
|
stt = ["hud/*", "hud/**/*"]
|