Voice Agent
Le Voice Agent de BeePass permet aux eleveurs de dicter leurs evaluations vocalement au rucher, au lieu de saisir manuellement chaque champ du formulaire. L'eleveur parle naturellement — "B326 douceur 4 tenue de cadre 3 essaimage 2 miel 28 kilos" — et le systeme pre-remplit automatiquement le formulaire.
Deux modes de fonctionnement
Mode Online — Assistant IA (🟢)
Quand l'eleveur a une connexion internet, le systeme utilise :
- Deepgram Nova-3 : transcription vocale de haute qualite, avec keyword boosting des termes apicoles (les mots comme "Buckfast", "douceur", "hygienique" sont reconnus en priorite)
- Claude Haiku : extraction intelligente des donnees structurees depuis le texte transcrit — identifie la reine, les scores, les valeurs
Le flux complet prend generalement 3-5 secondes :
🎤 Eleveur parle → Audio → Deepgram (transcription) → Claude Haiku (extraction JSON) → Formulaire pre-rempli
Mode Offline — Mode Terrain (🟠)
Quand l'eleveur n'a pas de connexion (au rucher, en montagne), le systeme bascule automatiquement en mode guide :
- L'agent pose les questions une par une via synthese vocale (TTS navigateur)
- L'eleveur repond vocalement a chaque question
- Les reponses sont extraites via le Web Speech API du navigateur
- L'evaluation est stockee en IndexedDB (stockage local)
- A la reconnexion, les evaluations sont automatiquement synchronisees avec le serveur
Le workflow guide suit 10 etapes :
ask_queen → ask_gentleness → ask_comb_sitting → ask_swarming → ask_vigor → ask_wintering → ask_honey → ask_hyg6 → ask_hyg24 → confirm
Le mode est detecte automatiquement toutes les 30 secondes. Si l'eleveur perd la connexion en cours de route, le systeme bascule sans intervention.
Traits extraits
Le Voice Agent extrait 8 traits d'evaluation + l'identifiant de la reine :
| Trait | Type | Echelle | Exemple vocal |
|---|---|---|---|
| Reine | Texte | Serial number | "B326", "la buckfast" |
| Douceur | Ordinal | 1-4 | "douceur 4" |
| Tenue de cadre | Ordinal | 1-4 | "tenue de cadre 3" |
| Essaimage | Ordinal | 1-4 | "essaimage 2" |
| Vigueur | Ordinal | 1-4 | "vigueur 3" |
| Hivernage | Ordinal | 1-4 | "hivernage 3" |
| Miel | Continu (kg) | 0-200 | "miel 28 kilos" |
| Hygienique 6h | Entier | 0-50 | "hygienique 6 heures 24 sur 50" |
| Hygienique 24h | Entier | 0-50 | "hygienique 24 heures 42 sur 50" |
Indicateurs visuels
Bouton micro
| Etat | Apparence | Description |
|---|---|---|
| Repos | 🎤 gris | Pret a enregistrer |
| Enregistrement | 🔴 pulsant + chronometre | Parlez maintenant |
| Traitement | ⏳ amber spinner | Transcription + extraction en cours |
| Succes | ✅ vert (2s) | Champs pre-remplis |
| Erreur | ❌ rouge (2s) | Echec — reessayez |
Champs pre-remplis
Apres une extraction reussie :
- Les champs remplis par la voix sont surlignés en ambre pour signaler qu'ils necessitent une verification
- Les champs marques comme incertains par l'IA sont surlignés en orange avec un tooltip d'avertissement
- L'eleveur peut toujours modifier manuellement chaque champ avant de valider
- Le formulaire n'est jamais soumis automatiquement — validation manuelle obligatoire
Synchronisation offline
Les evaluations saisies en mode offline sont stockees localement dans IndexedDB (le stockage du navigateur, sans limite de taille). Quand la connexion revient :
- Le systeme detecte automatiquement le retour en ligne
- Les evaluations en attente sont envoyees une par une au serveur
- Chaque evaluation est reessayee 3 fois en cas d'echec (avec delai croissant)
- Un badge orange sur le bouton micro indique le nombre d'evaluations en attente
- Les evaluations synchronisees avec succes sont supprimees du stockage local
Les evaluations offline sont stockees dans IndexedDB. Si vous videz le cache/stockage du navigateur avant la synchronisation, les evaluations seront perdues. Attendez le retour de connexion et la synchronisation avant de vider le cache.
Configuration admin
Vocabulaire
Le vocabulaire apicole qui alimente le Voice Agent est gere depuis la page Vocabulaire Apicole. Les termes avec le toggle 🎤 Saisie vocale active sont utilises pour le keyword boosting Deepgram et le prompt d'extraction Claude.
Agents IA
Le Voice Agent utilise deux agents IA :
- Deepgram Nova-3 : reconnaissance vocale (cle API
DEEPGRAM_API_KEY) - Claude Haiku : extraction des donnees structurees (meme cle
ANTHROPIC_API_KEYque les autres agents)
Les couts d'utilisation sont visibles dans le widget Couts Agents IA du dashboard admin (agent voice_agent).
Securite
- La cle API Deepgram n'est jamais exposee cote client — tout passe par l'API route serveur
/api/voice/transcribe - Les evaluations offline sont stockees dans IndexedDB (pas localStorage) pour eviter les limites de taille
- Les evaluations ne sont jamais supprimees du stockage local avant confirmation de synchronisation reussie
- Le formulaire n'est jamais soumis automatiquement — l'eleveur doit toujours valider manuellement