Originally created by @JobDoesburg on GitHub (May 19, 2025).
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
v0.6.10
Ollama Version (if applicable)
v0.7.0
Operating System
Ubuntu 24.04
Browser (if applicable)
Safari 18.5
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 listed steps to reproduce the bug in detail.
Expected Behavior
After uploading a long .m4a or .mp3 audio file to a note, it is properly attached to my note
Actual Behavior
When upload is complete and transcription is processing, but before transcription finishes, a timeout occurs and the file disappears from the note.
Steps to Reproduce
Create a new note
Upload a long audio file (in my case almost 1 hour, which takes some minutes to transcribe)
Wait
A timeout occurs
Even after transcription on the server finishes, the file disappears
Logs & Screenshots
Docker logs:
ollama-webui | 2025-05-19 08:51:15.575 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 131.174.142.202:0 - "POST /api/v1/notes/eb24f9f8-fea2-407f-b4a1-051e9a41f04f/update HTTP/1.1" 200 - {}
ollama-webui | 2025-05-19 08:51:22.020 | INFO | open_webui.routers.files:upload_file:91 - file.content_type: audio/x-m4a - {}
ollama-webui | 2025-05-19 08:51:22.044 | INFO | open_webui.routers.audio:transcribe:781 - transcribe: /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.m4a - {}
ollama-webui | 2025-05-19 08:51:38.342 | INFO | open_webui.routers.audio:convert_audio_to_mp3:115 - Converted /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.m4a to /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.mp3 - {}
ollama-webui | Chunk paths: ['/app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording_compressed.mp3']
ollama-webui | 2025-05-19 08:51:47.814 | INFO | faster_whisper.transcribe:transcribe:839 - Processing audio with duration 53:13.728 - {}
ollama-webui | 2025-05-19 08:51:51.196 | INFO | faster_whisper.transcribe:transcribe:906 - Detected language 'nl' with probability 0.93 - {}
ollama-webui | 2025-05-19 08:51:51.203 | INFO | open_webui.routers.audio:transcription_handler:548 - Detected language 'nl' with probability 0.925585 - {}
ollama-webui | 2025-05-19 08:54:55.271 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:955 - save_docs_to_vector_db: document recording.m4a file-2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1 - {}
ollama-webui | 2025-05-19 08:54:55.283 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:1038 - adding to collection file-2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1 - {}
Batches: 100%|██████████| 1/1 [00:00<00:00, 10.91it/s]
Notice that the last lines (save_docs_to_vector_db and even later the Batches: 100% ) only appear after a long time. In the meantime, the browser already received a 524: A timeout occurred and the file disappears.
Browser logs:
[Error] Failed to load resource: the server responded with a status of 524 () (files, line 0)
[Error] SyntaxError: The string did not match the expected pattern.
(anonieme functie) (D7AeioLQ.js:1:327)
Then after a while when the upload completes, it just disappears:
Additional Information
We're running open-webui behind a Cloudflare proxy. This proxy has a timeout of 100 seconds. Transcription often takes longer than this, in which case Cloudflare decides to send a 524 timeout occurred.
Somehow, this also results in the file being completely dropped even when later transcription on the server still succeeds. Preferably, transcription would happen in the background and open-webui would just respond with a processing status until transcription is completed.
Originally created by @JobDoesburg on GitHub (May 19, 2025).
### 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
v0.6.10
### Ollama Version (if applicable)
v0.7.0
### Operating System
Ubuntu 24.04
### Browser (if applicable)
Safari 18.5
### 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 listed steps to reproduce the bug in detail.
### Expected Behavior
After uploading a long `.m4a` or `.mp3` audio file to a note, it is properly attached to my note
### Actual Behavior
When upload is complete and transcription is processing, but before transcription finishes, a timeout occurs and the file disappears from the note.
### Steps to Reproduce
1. Create a new note
2. Upload a long audio file (in my case almost 1 hour, which takes some minutes to transcribe)
3. Wait
4. A timeout occurs
5. Even after transcription on the server finishes, the file disappears
### Logs & Screenshots
Docker logs:
```
ollama-webui | 2025-05-19 08:51:15.575 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 131.174.142.202:0 - "POST /api/v1/notes/eb24f9f8-fea2-407f-b4a1-051e9a41f04f/update HTTP/1.1" 200 - {}
ollama-webui | 2025-05-19 08:51:22.020 | INFO | open_webui.routers.files:upload_file:91 - file.content_type: audio/x-m4a - {}
ollama-webui | 2025-05-19 08:51:22.044 | INFO | open_webui.routers.audio:transcribe:781 - transcribe: /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.m4a - {}
ollama-webui | 2025-05-19 08:51:38.342 | INFO | open_webui.routers.audio:convert_audio_to_mp3:115 - Converted /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.m4a to /app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording.mp3 - {}
ollama-webui | Chunk paths: ['/app/backend/data/uploads/2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1_recording_compressed.mp3']
ollama-webui | 2025-05-19 08:51:47.814 | INFO | faster_whisper.transcribe:transcribe:839 - Processing audio with duration 53:13.728 - {}
ollama-webui | 2025-05-19 08:51:51.196 | INFO | faster_whisper.transcribe:transcribe:906 - Detected language 'nl' with probability 0.93 - {}
ollama-webui | 2025-05-19 08:51:51.203 | INFO | open_webui.routers.audio:transcription_handler:548 - Detected language 'nl' with probability 0.925585 - {}
ollama-webui | 2025-05-19 08:54:55.271 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:955 - save_docs_to_vector_db: document recording.m4a file-2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1 - {}
ollama-webui | 2025-05-19 08:54:55.283 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:1038 - adding to collection file-2b0f3eb9-f7b1-4e86-8676-bff208e6bfb1 - {}
Batches: 100%|██████████| 1/1 [00:00<00:00, 10.91it/s]
```
Notice that the last lines (`save_docs_to_vector_db` and even later the `Batches: 100%` ) only appear after a long time. In the meantime, the browser already received a `524: A timeout occurred` and the file disappears.
Browser logs:
```
[Error] Failed to load resource: the server responded with a status of 524 () (files, line 0)
[Error] SyntaxError: The string did not match the expected pattern.
(anonieme functie) (D7AeioLQ.js:1:327)
```
```
Overview
URL: https://<OUR-OPENWEBUI-URL>/api/v1/files/
Status: 524
Bron: Netwerk
Adres: ***.***.***.***:443
Initiator:
index.ts:8
Request
Accept: application/json
Accept-Encoding: gzip, deflate, br
Accept-Language: nl-NL,nl;q=0.9
Authorization: Bearer *********
Content-Length: 25550598
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryjgoN1k8XNngZvogJ
Cookie: oauth_id_token=**********
Origin: https://<OUR-OPENWEBUI-URL>
Priority: u=3, i
Referer: https://<OUR-OPENWEBUI-URL>/notes/eb24f9f8-fea2-407f-b4a1-051e9a41f04f
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Safari/605.1.15
Antwoord
Alt-Svc: h3=":443"; ma=86400
Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
cf-ray: 94226e9cd8be1add-AMS
Content-Length: 7124
Content-Type: text/html; charset=UTF-8
Date: Mon, 19 May 2025 09:07:02 GMT
Expires: Thu, 01 Jan 1970 00:00:01 GMT
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
Referrer-Policy: same-origin
Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=oM3BCMIZcSgeWV2FyywtYiMj1R%2BZqTAIZtvhDbi%2ForWdflCcYitlcouE1Z3YF5e4M3Dt1ZBVjpGmgBxzd36ByZh4Iuaf8Ytr90r%2FXqxmlIlMlrfRprea8w%2Bn617c2pq2Zw%3D%3D"}],"group":"cf-nel","max_age":604800}
Server: cloudflare
Server-Timing: cfL4;desc="?proto=QUIC&rtt=25119&min_rtt=3923&rtt_var=14475&sent=16523&recv=70868&lost=161&retrans=162&sent_bytes=3495528&recv_bytes=91060498&delivery_rate=635&cwnd=93780&unsent_bytes=0&cid=cb2936daf769db82&ts=671503&x=16"
X-Frame-Options: SAMEORIGIN
```
First when uploading:
<img width="824" alt="Image" src="https://github.com/user-attachments/assets/8e890688-304b-4f3a-93be-b3c3eab59c24" />
Then after a while when the upload completes, it just disappears:
<img width="824" alt="Image" src="https://github.com/user-attachments/assets/de8396a6-b450-48cf-99d0-ac4b406a09d4" />
### Additional Information
We're running open-webui behind a Cloudflare proxy. This proxy has a timeout of 100 seconds. Transcription often takes longer than this, in which case Cloudflare decides to send a 524 timeout occurred.
See https://community.cloudflare.com/t/community-tip-fixing-error-524-a-timeout-occurred/42342
Somehow, this also results in the file being completely dropped even when later transcription on the server still succeeds. Preferably, transcription would happen in the background and open-webui would just respond with a processing status until transcription is completed.
GiteaMirror
added the bug label 2025-11-11 16:15:05 -06:00
This is not an Open WebUI issue, and must be resolved from the proxy-end. With that being said, will investigate ways to support Cloudflare.
@tjbck commented on GitHub (May 19, 2025):
This is not an Open WebUI issue, and must be resolved from the proxy-end. With that being said, will investigate ways to support Cloudflare.
This is not an Open WebUI issue, and must be resolved from the proxy-end.
I don't fully agree with that. Yes, Cloudflare throws the timeout and would be able to mitigate this specific bug (though you can't in Cloudflare for good reasons). But the underlying problem is in the way Open Web UI processes the audio file.
Even when a timeout occurs, I wouldn't expect Open WebUI to completely drop the file / transcription results. I would expect that transcription goes on in the background (which currently does happen) and when finished, the results are properly stored. Right now, the result of transcription is returned to a broken connection and hence dropped.
Especially with audio files that may take multiple minutes to process, it is not good UX to require users to keep their connection alive all the time while transcription is happening in the background. As a user I should just be able to upload my audio file, close the browser window or move my laptop (break my internet connection) and come back minutes later without losing my audio file.
This is a problem regardless of whether Open WebUI is running behind a proxy or not. Should I reformulate the problem @tjbck ?
@JobDoesburg commented on GitHub (May 19, 2025):
> This is not an Open WebUI issue, and must be resolved from the proxy-end.
I don't fully agree with that. Yes, Cloudflare throws the timeout and would be able to mitigate this specific bug (though you can't in Cloudflare for good reasons). But the underlying problem is in the way Open Web UI processes the audio file.
Even when a timeout occurs, I wouldn't expect Open WebUI to completely drop the file / transcription results. I would expect that transcription goes on in the background (which currently does happen) and when finished, the results are properly stored. Right now, the result of transcription is returned to a broken connection and hence dropped.
Especially with audio files that may take multiple minutes to process, it is not good UX to require users to keep their connection alive all the time while transcription is happening in the background. As a user I should just be able to upload my audio file, close the browser window or move my laptop (break my internet connection) and come back minutes later without losing my audio file.
This is a problem regardless of whether Open WebUI is running behind a proxy or not. Should I reformulate the problem @tjbck ?
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @JobDoesburg on GitHub (May 19, 2025).
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.6.10
Ollama Version (if applicable)
v0.7.0
Operating System
Ubuntu 24.04
Browser (if applicable)
Safari 18.5
Confirmation
README.md.Expected Behavior
After uploading a long
.m4aor.mp3audio file to a note, it is properly attached to my noteActual Behavior
When upload is complete and transcription is processing, but before transcription finishes, a timeout occurs and the file disappears from the note.
Steps to Reproduce
Logs & Screenshots
Docker logs:
Notice that the last lines (
save_docs_to_vector_dband even later theBatches: 100%) only appear after a long time. In the meantime, the browser already received a524: A timeout occurredand the file disappears.Browser logs:
First when uploading:

Then after a while when the upload completes, it just disappears:
Additional Information
We're running open-webui behind a Cloudflare proxy. This proxy has a timeout of 100 seconds. Transcription often takes longer than this, in which case Cloudflare decides to send a 524 timeout occurred.
See https://community.cloudflare.com/t/community-tip-fixing-error-524-a-timeout-occurred/42342
Somehow, this also results in the file being completely dropped even when later transcription on the server still succeeds. Preferably, transcription would happen in the background and open-webui would just respond with a processing status until transcription is completed.
@tjbck commented on GitHub (May 19, 2025):
This is not an Open WebUI issue, and must be resolved from the proxy-end. With that being said, will investigate ways to support Cloudflare.
@JobDoesburg commented on GitHub (May 19, 2025):
I don't fully agree with that. Yes, Cloudflare throws the timeout and would be able to mitigate this specific bug (though you can't in Cloudflare for good reasons). But the underlying problem is in the way Open Web UI processes the audio file.
Even when a timeout occurs, I wouldn't expect Open WebUI to completely drop the file / transcription results. I would expect that transcription goes on in the background (which currently does happen) and when finished, the results are properly stored. Right now, the result of transcription is returned to a broken connection and hence dropped.
Especially with audio files that may take multiple minutes to process, it is not good UX to require users to keep their connection alive all the time while transcription is happening in the background. As a user I should just be able to upload my audio file, close the browser window or move my laptop (break my internet connection) and come back minutes later without losing my audio file.
This is a problem regardless of whether Open WebUI is running behind a proxy or not. Should I reformulate the problem @tjbck ?
@JobDoesburg commented on GitHub (May 21, 2025):
Is this similar to #13027 ?