mudler/LocalAI · error
error: transcription failed
Error message
error: transcription failed
What it means
Whisper transcription failed on the input audio. Guard: validate audio input (non-empty, supported sample rate/format) before inference; propagate the failure reason in the response.
Source
Thrown at backend/go/whisper/cpp/gowhisper.cpp:184
// Only install the new-segment callback when streaming is requested
// (Go side calls set_new_segment_callback before transcribe()). Leaving
// it always-on is harmless but adds a function-pointer dispatch per
// segment for the offline path.
if (g_go_new_segment_cb.load(std::memory_order_relaxed) != 0) {
wparams.new_segment_callback = new_segment_cb;
wparams.new_segment_callback_user_data = nullptr;
}
wparams.abort_callback = abort_cb;
wparams.abort_callback_user_data = nullptr;
fprintf(stderr, "info: Enable tdrz: %d\n", tdrz);
fprintf(stderr, "info: Initial prompt: \"%s\"\n", prompt);
if (whisper_full(ctx, wparams, pcmf32, pcmf32_len)) {
if (g_abort.load(std::memory_order_relaxed)) {
return 2; // aborted by client
}
fprintf(stderr, "error: transcription failed\n");
return 1;
}
*segs_out_len = whisper_full_n_segments(ctx);
return 0;
}
const char *get_segment_text(int i) {
return whisper_full_get_segment_text(ctx, i);
}
int64_t get_segment_t0(int i) { return whisper_full_get_segment_t0(ctx, i); }
int64_t get_segment_t1(int i) { return whisper_full_get_segment_t1(ctx, i); }
int n_tokens(int i) { return whisper_full_n_tokens(ctx, i); }
View on GitHub (pinned to 44413a9d06)
Solutions
- Verify the input audio is valid and in a supported format.
- Check whisper.cpp logs for the underlying decode error.
- Retry with a shorter clip or different model to isolate the failure.
When it happens
Trigger: Thrown at backend/go/whisper/cpp/gowhisper.cpp:184 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of mudler/LocalAI@44413a9d06 (2026-08-15).
Data as JSON: /api/errors/9a7db47ad51c8f62.
Report an issue: GitHub.