Skip to content

ci: bench remote (officiels) — transcription API + WER#37

Merged
benoitvx merged 1 commit into
mainfrom
ci/bench-remote-officiels
Jun 18, 2026
Merged

ci: bench remote (officiels) — transcription API + WER#37
benoitvx merged 1 commit into
mainfrom
ci/bench-remote-officiels

Conversation

@benoitvx

Copy link
Copy Markdown
Contributor

Objectif

Câbler en CI la transcription des discours officiels (corpus public AgentPublic/eval-stt-officiels) par les modèles accessibles via API, puis le calcul du WER. Première brique du chantier CI/CD des évaluations Transcript.

Déclenchement manuel (workflow_dispatch) : chaque run consomme des appels API facturables.

Ce que fait le workflow

  1. Pull du corpus public depuis HF (lecture anonyme, pas de token requis pour lire).
  2. Transcription des modèles remote : Albert (Whisper large-v3), Voxtral (Scaleway), ElevenLabs en option.
  3. Calcul du WER (score all, normalisation standard_numbers), rapport horodaté + révision du corpus estampillée.
  4. Push des résultats (transcripts des officiels + rapport) vers AgentPublic/eval-stt-results, et artefacts GitHub.

Les modèles locaux (WhisperX, Kyutai, Cohere/MLX) ne sont pas ici : ils exigent un GPU ou du MLX et passeront par un runner self-hosted (phase 2).

Périmètre Voxtral (limitations temporaires)

Voxtral a une limite de 30 min/fichier et collapse sur certains silences longs :

  • skip automatique des fichiers > 28 min (via ffprobe) ; un long sample ramené sous la limite est couvert sans toucher la CI ;
  • skip explicite de crise_energetique_aides_mai (silence long connu).

Exclusions temporaires : le vrai fix est de porter le chunk VAD dans le provider scaleway (à faire dans la reprise de #36).

Prérequis avant que ça tourne

Secrets à poser dans Settings > Secrets and variables > Actions :

  • ALBERT_API_KEY
  • SCW_SECRET_KEY, SCW_DEFAULT_PROJECT_ID
  • ELEVENLABS_API_KEY (si on inclut ElevenLabs)
  • HF_TOKEN (write sur AgentPublic, pour pousser les résultats ; sans lui le push est sauté et seuls les artefacts sont produits)

Tant que les secrets ne sont pas posés, le job échoue : PR laissée en draft.

Notes de conception

  • Le repo de code reste propre : les transcripts générés (régénérables, non déterministes) vont sur HF, pas dans git.
  • En CI le corpus tiré = officiels uniquement, donc aucune donnée interne ne transite (garde-fou implicite).

🤖 Generated with Claude Code

Workflow workflow_dispatch : pull corpus public HF, transcription des modeles
remote (Albert, Voxtral/Scaleway, ElevenLabs en option), scoring WER, push des
resultats vers AgentPublic/eval-stt-results. Modeles locaux exclus (phase 2,
runner self-hosted). Skips Voxtral temporaires (> 28 min + silence connu).

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@benoitvx
benoitvx marked this pull request as ready for review June 18, 2026 15:42
@benoitvx
benoitvx merged commit 6ac71f6 into main Jun 18, 2026
@benoitvx
benoitvx deleted the ci/bench-remote-officiels branch June 18, 2026 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant