[GH-ISSUE #15096] issue: Voice transcriptions error while STT Supported MIME Types is empty #104462

Closed
opened 2026-05-18 02:08:30 -05:00 by GiteaMirror · 3 comments
Owner

Originally created by @danielaskdd on GitHub (Jun 18, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/15096

Originally assigned to: @tjbck on GitHub.

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of Open WebUI.

Installation Method

Docker

Open WebUI Version

0.6.15

Ollama Version (if applicable)

No response

Operating System

docker on Ubuntu 24

Browser (if applicable)

No response

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

After upgrading to the latest v0.6.15, the speech recognition function is unusable.

Actual Behavior

When clicking the microphone to record, an error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again".

Steps to Reproduce

  1. upgrade to the latest v0.6.15
  2. Click the microphone beside the chat imput box of WebUI to record
  3. Click stop
  4. An error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again".

Logs & Screenshots

  • Chrome log
index.ts:75 
            
            
           POST https://ai.znipower.com:5013/api/v1/audio/transcriptions 400 (Bad Request)
window.fetch @ fetcher.js:76
u @ index.ts:75
B @ VoiceRecording.svelte:153
await in B
L.I.onstop @ VoiceRecording.svelte:239
index.ts:89 {detail: "Oops! It seems like the file format you're trying …oad a file with a supported format and try again."}
overrideMethod @ hook.js:608
(anonymous) @ index.ts:89
Promise.catch
u @ index.ts:87
B @ VoiceRecording.svelte:153
await in B
L.I.onstop @ VoiceRecording.svelte:239
RichTextInput.svelte:194 [tiptap warn]: Duplicate extension names found: ['codeBlock']. This can lead to issues.
overrideMethod @ hook.js:608
resolve @ index.js:1183
pn @ index.js:1169
createExtensionManager @ index.js:4580
Wf @ index.js:4412
(anonymous) @ RichTextInput.svelte:194
await in (anonymous)
J @ utils.js:41
(anonymous) @ Component.js:47
_t @ scheduler.js:99
Promise.then
ut @ scheduler.js:20
ht @ Component.js:81
(anonymous) @ Component.js:139
L.I.onstop @ VoiceRecording.svelte:241
  • No backend log entries were generated when the error occurred

Additional Information

After upgrading to the latest v0.6.15, the speech recognition function is unusable. When clicking the microphone to record, an error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again".

Upon analyzing the code, it was found that version 0.6.15 does not correctly handle supported_content_types when STT Supported MIME Types is empty. The problematic code is as follows:

@router.post("/transcriptions")
def transcription(
    request: Request,
    file: UploadFile = File(...),
    language: Optional[str] = Form(None),
    user=Depends(get_verified_user),
):
    log.info(f"file.content_type: {file.content_type}")
    supported_content_types = request.app.state.config.STT_SUPPORTED_CONTENT_TYPES or [
        "audio/*",
        "video/webm",
    ]

When STT Supported MIME Types is empty, supported_content_types becomes a list containing a single empty string [''], thereby rejecting audio files uploaded by the client.

Originally created by @danielaskdd on GitHub (Jun 18, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/15096 Originally assigned to: @tjbck on GitHub. ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of Open WebUI. ### Installation Method Docker ### Open WebUI Version 0.6.15 ### Ollama Version (if applicable) _No response_ ### Operating System docker on Ubuntu 24 ### Browser (if applicable) _No response_ ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior After upgrading to the latest v0.6.15, the speech recognition function is unusable. ### Actual Behavior When clicking the microphone to record, an error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again". ### Steps to Reproduce 1. upgrade to the latest v0.6.15 2. Click the microphone beside the chat imput box of WebUI to record 3. Click stop 4. An error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again". ### Logs & Screenshots * Chrome log ``` index.ts:75 POST https://ai.znipower.com:5013/api/v1/audio/transcriptions 400 (Bad Request) window.fetch @ fetcher.js:76 u @ index.ts:75 B @ VoiceRecording.svelte:153 await in B L.I.onstop @ VoiceRecording.svelte:239 index.ts:89 {detail: "Oops! It seems like the file format you're trying …oad a file with a supported format and try again."} overrideMethod @ hook.js:608 (anonymous) @ index.ts:89 Promise.catch u @ index.ts:87 B @ VoiceRecording.svelte:153 await in B L.I.onstop @ VoiceRecording.svelte:239 RichTextInput.svelte:194 [tiptap warn]: Duplicate extension names found: ['codeBlock']. This can lead to issues. overrideMethod @ hook.js:608 resolve @ index.js:1183 pn @ index.js:1169 createExtensionManager @ index.js:4580 Wf @ index.js:4412 (anonymous) @ RichTextInput.svelte:194 await in (anonymous) J @ utils.js:41 (anonymous) @ Component.js:47 _t @ scheduler.js:99 Promise.then ut @ scheduler.js:20 ht @ Component.js:81 (anonymous) @ Component.js:139 L.I.onstop @ VoiceRecording.svelte:241 ``` * No backend log entries were generated when the error occurred ### Additional Information After upgrading to the latest v0.6.15, the speech recognition function is unusable. When clicking the microphone to record, an error pops up after recording: "Oops! It seems like the file format you're trying to ...oad a file with a supported format and try again". Upon analyzing the code, it was found that version 0.6.15 does not correctly handle `supported_content_types` when `STT Supported MIME Types` is empty. The problematic code is as follows: ```python @router.post("/transcriptions") def transcription( request: Request, file: UploadFile = File(...), language: Optional[str] = Form(None), user=Depends(get_verified_user), ): log.info(f"file.content_type: {file.content_type}") supported_content_types = request.app.state.config.STT_SUPPORTED_CONTENT_TYPES or [ "audio/*", "video/webm", ] ``` When `STT Supported MIME Types` is empty, `supported_content_types` becomes a list containing a single empty string `['']`, thereby rejecting audio files uploaded by the client.
GiteaMirror added the bug label 2026-05-18 02:08:30 -05:00
Author
Owner

@tjbck commented on GitHub (Jun 18, 2025):

Good catch, taking a look.

<!-- gh-comment-id:2982929691 --> @tjbck commented on GitHub (Jun 18, 2025): Good catch, taking a look.
Author
Owner

@luckyzhang95 commented on GitHub (Jun 18, 2025):

Just fill in the parameters in Supported MIME Types here

<!-- gh-comment-id:2983243328 --> @luckyzhang95 commented on GitHub (Jun 18, 2025): Just fill in the parameters in Supported MIME Types here
Author
Owner

@tjbck commented on GitHub (Jun 18, 2025):

Should be addressed with 6186bbf337, Thanks!

<!-- gh-comment-id:2983552028 --> @tjbck commented on GitHub (Jun 18, 2025): Should be addressed with 6186bbf337b4358f7a0f0baa6b18806b845a3b38, Thanks!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#104462