Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Azure STT: pronunciation assessment on the streaming recognizer

Aperta
#8,050 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
55/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
azure, python

Direzione di ricerca

Start by reading the Azure STT implementation in stt.py and its unit tests; the issue says the recognizer setup and _on_recognized are the relevant entry points. Check how SpeechData.metadata is populated for final transcripts, then compare the fork implementation linked in the issue. Done means an optional pronunciation assessment config adds Azure’s scores to each final transcript while leaving default behavior unchanged.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Feature Type

Would make my life easier

Feature Description

We're building a Japanese learning app on top of LiveKit Agents and we score the learner's pronunciation with Azure's pronunciation assessment.

Right now the Azure plugin doesn't let you touch the recognizer before it starts, and _on_recognized only keeps the text. So to get scores we have to send the same audio to Azure a second time, which means paying for the transcription twice.

Azure supports pronunciation assessment directly on continuous recognition: you just apply a PronunciationAssessmentConfig to the recognizer, and every final result comes back with the scores in its JSON.

What I'd like:

  • an optional pronunciation_assessment: speechsdk.PronunciationAssessmentConfig on azure.STT
  • the assessment attached to each final transcript, in SpeechData.metadata["pronunciation_assessment"] (the field is already there for plugin specific data)

Off by default, so nothing changes for anyone else.

Workarounds / Alternatives
  • Second request to Azure with the recorded audio after each turn: works, but double billing and extra latency.
  • Patching the plugin's private methods (_on_recognized, recognizer creation): works too, but it breaks on any plugin update, so we had to pin livekit-plugins-azure.
  • Forking the whole STT in our codebase: that's what we have now, I'd rather not maintain it.
Additional Context

I already have a small implementation on a fork (~40 lines in stt.py + unit tests), tested against the real Azure service with Japanese audio, scores come back on every final:
https://github.com/Bilnaa/agents/tree/azure-recognizer-hooks

Happy to open the PR if the approach looks ok to you, or change the shape of it (e.g. a generic recognizer setup callback instead).

Lingua principale
Python
Stelle
14.6k
Fork
3.9k
Merge medio
3g 21h
PR unite (30g)
197

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di livekit/agents

Tutte le issue di livekit/agents

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.