Skip to content

Support textless diarization in transcription details - #584

Merged
0xShug0 merged 1 commit into
mainfrom
fix/581-diarization-details
Sep 16, 2026
Merged

0xShug0 merged 1 commit into
mainfrom
fix/581-diarization-details

Conversation

@0xShug0

@0xShug0 0xShug0 commented Sep 16, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes #581.

The details endpoint inherits the transcription-only check and rejects pure diarization results before serializing their speaker turns. Relax that check only for diarization tasks on /v1/audio/transcriptions/details.

  • Return an empty text value when diarization has no transcript, without dereferencing the absent optional.
  • Accept valid silence results with no speaker turns; acceptance depends on the task rather than nonempty output arrays.
  • Preserve the plain transcription endpoint, existing ASR responses, and the details endpoint streaming restriction.

The change is limited to app/server/runtime.cpp; no model or framework changes.

Validation

Rebuilt the Debug server and sent sequential real HTTP requests using CUDA and Sortformer v1 Q8 / Parakeet TDT Q8:

  • Reproduced the Sortformer details failure before the change: HTTP 500, missing transcript text.
  • After the change: speech returns HTTP 200 with speaker turns; silence returns HTTP 200 with empty text.
  • JSON and multipart speech requests return identical speaker turns.
  • Plain transcription still rejects textless diarization as before.
  • stream=true on the details endpoint still returns HTTP 400.
  • Parakeet plain and details responses match the baseline exactly after excluding timing fields.

Sortformer v2 was reviewed for the same result contract but was not runtime-tested.

@0xShug0
0xShug0 merged commit b824367 into main Sep 16, 2026
9 checks passed
@0xShug0
0xShug0 deleted the fix/581-diarization-details branch September 16, 2026 23:09
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.

[Bug] Endpoint transcription/details throws “model result did not contain transcript text” for diarization models

1 participant