mirror of
https://github.com/deunix-educ/voice-assistant.git
synced 2026-10-13 00:11:57 +02:00
d20976fea2
État du projet au premier commit : - firmware ESP32 : micro I2S, lecture anti-gigue, MQTT (état retenu, testament), mains libres, domotique de démonstration, chien de garde, présence du serveur ; - serveur Python : sessions, VAD, faster-whisper, pyannote, identification, droits par profil, domotique, mot de réveil, Piper ; - broker Mosquitto : configuration, comptes et ACL (non activés en développement) ; - étape 15b écrite, en attente d'essai : agent MQTT pour machines Linux. Étapes 1 à 15 validées. 203 tests, pyright sans erreur. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
63 lines
2.1 KiB
TOML
63 lines
2.1 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=69"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "voice-server"
|
|
version = "0.1.0"
|
|
description = "Serveur d'assistant vocal local (MQTT, faster-whisper, Piper)"
|
|
requires-python = ">=3.11"
|
|
license = { text = "MIT" }
|
|
|
|
# Dépendances épinglées : indispensables dès l'étape 1 (outils série) et l'étape 3 (MQTT).
|
|
dependencies = [
|
|
"pyserial==3.5",
|
|
"paho-mqtt==2.1.0",
|
|
"numpy==2.5.3", # >= 2.2.2 exigé par pyannote 4 (étape 8) ; testé avec toute la chaîne
|
|
"PyYAML==6.0.2",
|
|
"python-dotenv==1.0.1",
|
|
"soxr==0.5.0.post1",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# Installées à l'étape 6 (transcription et synthèse vocale).
|
|
# Versions minimales pour Python 3.13 : faster-whisper 1.0 exige av<13 (compilé
|
|
# depuis les sources, sans roue 3.13) et piper-tts 1.2 dépend de piper-phonemize,
|
|
# sans roue au-delà de Python 3.11. piper-tts 1.3+ embarque espeak-ng.
|
|
speech = [
|
|
"faster-whisper==1.2.1",
|
|
"piper-tts==1.8.0",
|
|
]
|
|
# Installées à l'étape 8 (diarisation). La VAD de l'étape 7 n'en a pas besoin :
|
|
# Silero est livré avec faster-whisper. torch en version CPU : « make install-diarization »
|
|
# passe par l'index de pytorch.org, sinon pip installe plusieurs Go de bibliothèques CUDA.
|
|
# pyannote 3.3 est antérieur à ce torch ; pyannote 4 exige numpy >= 2.2.2.
|
|
diarization = [
|
|
"torch==2.14.0",
|
|
"torchaudio==2.11.0",
|
|
"pyannote.audio==4.0.7",
|
|
]
|
|
# Étape 13 (mot de réveil) : dépendances d'openwakeword en mode ONNX. openwakeword 0.6.0
|
|
# lui-même s'installe SANS ses dépendances (« make install-wakeword ») : il exige
|
|
# tflite-runtime, qui n'existe pas pour Python 3.13 et ne sert pas en ONNX.
|
|
wakeword = [
|
|
"onnxruntime==1.30.0",
|
|
"scipy==1.18.1",
|
|
"scikit-learn==1.9.1",
|
|
"tqdm==4.70.1",
|
|
"requests==2.34.2",
|
|
]
|
|
dev = [
|
|
"pyright==1.1.389",
|
|
"pytest==8.3.4",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = ["voice_server*"]
|
|
|
|
[tool.pytest.ini_options]
|
|
# Les tests importent voice_server depuis server/, sans installation préalable.
|
|
pythonpath = ["."]
|
|
testpaths = ["tests"]
|