I have searched for any existing and/or related issues.
I have searched for any existing and/or related discussions.
I am using the latest version of Open WebUI.
Installation Method
Docker
Open WebUI Version
v0.6.33
Ollama Version (if applicable)
0.12.3
Operating System
Debian 12 amd64
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
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded without errors and the model will use and analyse it.
Actual Behavior
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded with an error and the model will not be able to use and analyse it.
The error is: list index out of range
The model is unable to do anything with the file and responds, saying things like "give me the file I should analyse". It probably doesn't know there should be a file.
[tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues. index.js:791:13
File upload warning: list index out of range MessageInput.svelte:575:15
open-webui docker log:
openwebui-1 |
openwebui-1 |
openwebui-1 | During handling of the above exception, another exception occurred:
openwebui-1 |
openwebui-1 |
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1409, in save_docs_to_vector_db
openwebui-1 | embeddings = embedding_function(
openwebui-1 | └ <function get_embedding_function.<locals>.<lambda> at 0x7f28bc1dc9a0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 492, in <lambda>
openwebui-1 | return lambda query, prefix=None, user=None: generate_multiple(
openwebui-1 | │ └ <function get_embedding_function.<locals>.generate_multiple at 0x7f289c5ccea0>
openwebui-1 | └ ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:']
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 480, in generate_multiple
openwebui-1 | batch_embeddings = func(
openwebui-1 | └ <function get_embedding_function.<locals>.<lambda> at 0x7f289c5cd580>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 465, in <lambda>
openwebui-1 | func = lambda query, prefix=None, user=None: generate_embeddings(
openwebui-1 | │ └ <function generate_embeddings at 0x7f28e4201c60>
openwebui-1 | └ ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:']
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 989, in generate_embeddings
openwebui-1 | embeddings = generate_ollama_batch_embeddings(
openwebui-1 | └ <function generate_ollama_batch_embeddings at 0x7f28e4201bc0>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/retrieval/utils.py", line 941, in generate_ollama_batch_embeddings
openwebui-1 | r = requests.post(
openwebui-1 | │ └ <function post at 0x7f2940aef920>
openwebui-1 | └ <module 'requests' from '/usr/local/lib/python3.11/site-packages/requests/__init__.py'>
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 115, in post
openwebui-1 | return request("post", url, data=data, json=json, **kwargs)
openwebui-1 | │ │ │ │ └ {'headers': {'Content-Type': 'application/json', 'Authorization': 'Bearer '}}
openwebui-1 | │ │ │ └ {'input': ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:'], 'model': 'embeddinggemma:...
openwebui-1 | │ │ └ None
openwebui-1 | │ └ 'http://host.docker.internal:11434/api/embed'
openwebui-1 | └ <function request at 0x7f2940aad080>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 59, in request
openwebui-1 | return session.request(method=method, url=url, **kwargs)
openwebui-1 | │ │ │ │ └ {'data': None, 'json': {'input': ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:'], 'm...
openwebui-1 | │ │ │ └ 'http://host.docker.internal:11434/api/embed'
openwebui-1 | │ │ └ 'post'
openwebui-1 | │ └ <function Session.request at 0x7f2940aeede0>
openwebui-1 | └ <requests.sessions.Session object at 0x7f289c5dda10>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
openwebui-1 | resp = self.send(prep, **send_kwargs)
openwebui-1 | │ │ │ └ {'timeout': None, 'allow_redirects': True, 'proxies': OrderedDict(), 'stream': False, 'verify': True, 'cert': None}
openwebui-1 | │ │ └ <PreparedRequest [POST]>
openwebui-1 | │ └ <function Session.send at 0x7f2940aef2e0>
openwebui-1 | └ <requests.sessions.Session object at 0x7f289c5dda10>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
openwebui-1 | r = adapter.send(request, **kwargs)
openwebui-1 | │ │ │ └ {'timeout': None, 'proxies': OrderedDict(), 'stream': False, 'verify': True, 'cert': None}
openwebui-1 | │ │ └ <PreparedRequest [POST]>
openwebui-1 | │ └ <function HTTPAdapter.send at 0x7f2940aee660>
openwebui-1 | └ <requests.adapters.HTTPAdapter object at 0x7f289c36e410>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 677, in send
openwebui-1 | raise ConnectionError(e, request=request)
openwebui-1 | │ └ <PreparedRequest [POST]>
openwebui-1 | └ <class 'requests.exceptions.ConnectionError'>
openwebui-1 |
openwebui-1 | requests.exceptions.ConnectionError: HTTPConnectionPool(host='host.docker.internal', port=11434): Max retries exceeded with url: /api/embed (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x7f289c36eb10>: Failed to resolve 'host.docker.internal' ([Errno -2] Name or service not known)"))
openwebui-1 | 2025-10-08 08:17:05.841 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:1414 - embeddings generated 0 for 1 items
openwebui-1 | 2025-10-08 08:17:05.841 | ERROR | open_webui.routers.retrieval:save_docs_to_vector_db:1435 - list index out of range
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/routers/retrieval.py", line 1416, in save_docs_to_vector_db
openwebui-1 | items = [
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1420, in <listcomp>
openwebui-1 | "vector": embeddings[idx],
openwebui-1 | │ └ 0
openwebui-1 | └ []
openwebui-1 |
openwebui-1 | IndexError: list index out of range
openwebui-1 | 2025-10-08 08:17:05.845 | ERROR | open_webui.routers.retrieval:process_file:1653 - list index out of range
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/routers/retrieval.py", line 1650, in process_file
openwebui-1 | raise e
openwebui-1 | └ IndexError('list index out of range')
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1436, in save_docs_to_vector_db
openwebui-1 | raise e
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1416, in save_docs_to_vector_db
openwebui-1 | items = [
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1420, in <listcomp>
openwebui-1 | "vector": embeddings[idx],
openwebui-1 | │ └ 0
openwebui-1 | └ []
openwebui-1 |
openwebui-1 | IndexError: list index out of range
openwebui-1 | 2025-10-08 08:17:05.852 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55810 - "GET /api/v1/files/65c09cb4-cc40-4b08-8cab-30502c80e8a8/process/status?stream=true HTTP/1.1" 200
openwebui-1 | 2025-10-08 08:17:05.864 | ERROR | open_webui.routers.files:process_uploaded_file:124 - Error processing file: 65c09cb4-cc40-4b08-8cab-30502c80e8a8
openwebui-1 | 2025-10-08 08:17:06.436 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55816 - "GET /_app/immutable/chunks/CIk2h8Ha.js.map HTTP/1.1" 304
openwebui-1 | 2025-10-08 08:17:10.933 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55810 - "GET /api/v1/chats/3dfe1d79-6750-40d5-8614-fd2006f93bfa HTTP/1.1" 200
Ollama log:
Okt 08 10:14:03 KI systemd[1]: Started ollama.service - Ollama Service.
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.663+02:00 level=INFO source=routes.go:1475 msg="server config" env="map[CUDA_VISIBLE_DEVICES: GPU_DEVICE_ORDINAL: HIP_VISIBLE_DEVICES: HSA_OVERRIDE_GFX_VERSION: HTTPS_PROXY: HTTP>
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=images.go:518 msg="total blobs: 22"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=images.go:525 msg="total unused blobs removed: 0"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=routes.go:1528 msg="Listening on 127.0.0.1:11434 (version 0.12.3)"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.669+02:00 level=INFO source=gpu.go:217 msg="looking for compatible GPUs"
Okt 08 10:14:05 KI ollama[725]: time=2025-10-08T10:14:05.142+02:00 level=INFO source=types.go:131 msg="inference compute" id=GPU-9444391d-ff5d-3362-9cab-e93df91db736 library=cuda variant=v13 compute=12.0 driver=13.0 name="NVIDIA GeForc>
Okt 08 10:14:05 KI ollama[725]: time=2025-10-08T10:14:05.142+02:00 level=INFO source=routes.go:1569 msg="entering low vram mode" "total vram"="15.5 GiB" threshold="20.0 GiB"
Okt 08 10:16:18 KI ollama[725]: [GIN] 2025/10/08 - 10:16:18 | 200 | 695.69µs | 127.0.0.1 | GET "/api/version"
Additional Information
Ollama runs as a system service on host and port 0.0.0.0:11434.
Happens with firefox and chromium based browsers.
Originally created by @Elwag on GitHub (Oct 8, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/18142
### Check Existing Issues
- [x] I have searched for any existing and/or related issues.
- [x] I have searched for any existing and/or related discussions.
- [x] I am using the latest version of Open WebUI.
### Installation Method
Docker
### Open WebUI Version
v0.6.33
### Ollama Version (if applicable)
0.12.3
### Operating System
Debian 12 amd64
### 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
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded without errors and the model will use and analyse it.
### Actual Behavior
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded with an error and the model will not be able to use and analyse it.
The error is: `list index out of range`
The model is unable to do anything with the file and responds, saying things like "give me the file I should analyse". It probably doesn't know there should be a file.
### Steps to Reproduce
1. Install Debian 12 without gui
2. Install all updates with apt
3. Install ollama via curl-loaded script
4. Install docker and docker compose
5. Make a .yml for docker like this:
```
services:
openwebui:
image: ghcr.io/open-webui/open-webui:main
ports:
- "8080:8080"
volumes:
- open-webui:/app/backend/data
volumes:
open-webui:
```
6. Pull and run open-webui, create an account
7. Pull gpt-oss:20b
8. Open a chat
9. Upload a file, see Error
10. Push promt, wait for response
### Logs & Screenshots
Browser log:
```
[tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues. index.js:791:13
File upload warning: list index out of range MessageInput.svelte:575:15
```
open-webui docker log:
```
openwebui-1 |
openwebui-1 |
openwebui-1 | During handling of the above exception, another exception occurred:
openwebui-1 |
openwebui-1 |
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1409, in save_docs_to_vector_db
openwebui-1 | embeddings = embedding_function(
openwebui-1 | └ <function get_embedding_function.<locals>.<lambda> at 0x7f28bc1dc9a0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 492, in <lambda>
openwebui-1 | return lambda query, prefix=None, user=None: generate_multiple(
openwebui-1 | │ └ <function get_embedding_function.<locals>.generate_multiple at 0x7f289c5ccea0>
openwebui-1 | └ ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:']
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 480, in generate_multiple
openwebui-1 | batch_embeddings = func(
openwebui-1 | └ <function get_embedding_function.<locals>.<lambda> at 0x7f289c5cd580>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 465, in <lambda>
openwebui-1 | func = lambda query, prefix=None, user=None: generate_embeddings(
openwebui-1 | │ └ <function generate_embeddings at 0x7f28e4201c60>
openwebui-1 | └ ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:']
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/retrieval/utils.py", line 989, in generate_embeddings
openwebui-1 | embeddings = generate_ollama_batch_embeddings(
openwebui-1 | └ <function generate_ollama_batch_embeddings at 0x7f28e4201bc0>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/retrieval/utils.py", line 941, in generate_ollama_batch_embeddings
openwebui-1 | r = requests.post(
openwebui-1 | │ └ <function post at 0x7f2940aef920>
openwebui-1 | └ <module 'requests' from '/usr/local/lib/python3.11/site-packages/requests/__init__.py'>
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 115, in post
openwebui-1 | return request("post", url, data=data, json=json, **kwargs)
openwebui-1 | │ │ │ │ └ {'headers': {'Content-Type': 'application/json', 'Authorization': 'Bearer '}}
openwebui-1 | │ │ │ └ {'input': ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:'], 'model': 'embeddinggemma:...
openwebui-1 | │ │ └ None
openwebui-1 | │ └ 'http://host.docker.internal:11434/api/embed'
openwebui-1 | └ <function request at 0x7f2940aad080>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 59, in request
openwebui-1 | return session.request(method=method, url=url, **kwargs)
openwebui-1 | │ │ │ │ └ {'data': None, 'json': {'input': ['LF1: Betrieb und Unternehmen als System Vertiefungsaufgaben AP1 Name: Datum: Klasse:'], 'm...
openwebui-1 | │ │ │ └ 'http://host.docker.internal:11434/api/embed'
openwebui-1 | │ │ └ 'post'
openwebui-1 | │ └ <function Session.request at 0x7f2940aeede0>
openwebui-1 | └ <requests.sessions.Session object at 0x7f289c5dda10>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
openwebui-1 | resp = self.send(prep, **send_kwargs)
openwebui-1 | │ │ │ └ {'timeout': None, 'allow_redirects': True, 'proxies': OrderedDict(), 'stream': False, 'verify': True, 'cert': None}
openwebui-1 | │ │ └ <PreparedRequest [POST]>
openwebui-1 | │ └ <function Session.send at 0x7f2940aef2e0>
openwebui-1 | └ <requests.sessions.Session object at 0x7f289c5dda10>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
openwebui-1 | r = adapter.send(request, **kwargs)
openwebui-1 | │ │ │ └ {'timeout': None, 'proxies': OrderedDict(), 'stream': False, 'verify': True, 'cert': None}
openwebui-1 | │ │ └ <PreparedRequest [POST]>
openwebui-1 | │ └ <function HTTPAdapter.send at 0x7f2940aee660>
openwebui-1 | └ <requests.adapters.HTTPAdapter object at 0x7f289c36e410>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 677, in send
openwebui-1 | raise ConnectionError(e, request=request)
openwebui-1 | │ └ <PreparedRequest [POST]>
openwebui-1 | └ <class 'requests.exceptions.ConnectionError'>
openwebui-1 |
openwebui-1 | requests.exceptions.ConnectionError: HTTPConnectionPool(host='host.docker.internal', port=11434): Max retries exceeded with url: /api/embed (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x7f289c36eb10>: Failed to resolve 'host.docker.internal' ([Errno -2] Name or service not known)"))
openwebui-1 | 2025-10-08 08:17:05.841 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:1414 - embeddings generated 0 for 1 items
openwebui-1 | 2025-10-08 08:17:05.841 | ERROR | open_webui.routers.retrieval:save_docs_to_vector_db:1435 - list index out of range
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/routers/retrieval.py", line 1416, in save_docs_to_vector_db
openwebui-1 | items = [
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1420, in <listcomp>
openwebui-1 | "vector": embeddings[idx],
openwebui-1 | │ └ 0
openwebui-1 | └ []
openwebui-1 |
openwebui-1 | IndexError: list index out of range
openwebui-1 | 2025-10-08 08:17:05.845 | ERROR | open_webui.routers.retrieval:process_file:1653 - list index out of range
openwebui-1 | Traceback (most recent call last):
openwebui-1 |
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
openwebui-1 | self._bootstrap_inner()
openwebui-1 | │ └ <function Thread._bootstrap_inner at 0x7f2943eb49a0>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
openwebui-1 | self.run()
openwebui-1 | │ └ <function WorkerThread.run at 0x7f28bd476700>
openwebui-1 | └ <WorkerThread(AnyIO worker thread, started 139812409415360)>
openwebui-1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
openwebui-1 | result = context.run(func, *args)
openwebui-1 | │ │ │ └ ()
openwebui-1 | │ │ └ functools.partial(<function process_uploaded_file at 0x7f28f88b9440>, <starlette.requests.Request object at 0x7f289c347650>, ...
openwebui-1 | │ └ <method 'run' of '_contextvars.Context' objects>
openwebui-1 | └ <_contextvars.Context object at 0x7f28bc329d40>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/files.py", line 117, in process_uploaded_file
openwebui-1 | process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
openwebui-1 | │ │ │ │ │ └ UserModel(id='d74d74e6-34a6-4c15-9dc2-593561e103be', name='someone', email='someone', username=None, role...
openwebui-1 | │ │ │ │ └ '65c09cb4-cc40-4b08-8cab-30502c80e8a8'
openwebui-1 | │ │ │ └ FileModel(id='65c09cb4-cc40-4b08-8cab-30502c80e8a8', user_id='d74d74e6-34a6-4c15-9dc2-593561e103be', hash=None, filename='Pro...
openwebui-1 | │ │ └ <class 'open_webui.routers.retrieval.ProcessFileForm'>
openwebui-1 | │ └ <starlette.requests.Request object at 0x7f289c347650>
openwebui-1 | └ <function process_file at 0x7f28e4202de0>
openwebui-1 |
openwebui-1 | > File "/app/backend/open_webui/routers/retrieval.py", line 1650, in process_file
openwebui-1 | raise e
openwebui-1 | └ IndexError('list index out of range')
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1614, in process_file
openwebui-1 | result = save_docs_to_vector_db(
openwebui-1 | └ <function save_docs_to_vector_db at 0x7f28e4201d00>
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1436, in save_docs_to_vector_db
openwebui-1 | raise e
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1416, in save_docs_to_vector_db
openwebui-1 | items = [
openwebui-1 |
openwebui-1 | File "/app/backend/open_webui/routers/retrieval.py", line 1420, in <listcomp>
openwebui-1 | "vector": embeddings[idx],
openwebui-1 | │ └ 0
openwebui-1 | └ []
openwebui-1 |
openwebui-1 | IndexError: list index out of range
openwebui-1 | 2025-10-08 08:17:05.852 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55810 - "GET /api/v1/files/65c09cb4-cc40-4b08-8cab-30502c80e8a8/process/status?stream=true HTTP/1.1" 200
openwebui-1 | 2025-10-08 08:17:05.864 | ERROR | open_webui.routers.files:process_uploaded_file:124 - Error processing file: 65c09cb4-cc40-4b08-8cab-30502c80e8a8
openwebui-1 | 2025-10-08 08:17:06.436 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55816 - "GET /_app/immutable/chunks/CIk2h8Ha.js.map HTTP/1.1" 304
openwebui-1 | 2025-10-08 08:17:10.933 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.48.189:55810 - "GET /api/v1/chats/3dfe1d79-6750-40d5-8614-fd2006f93bfa HTTP/1.1" 200
```
Ollama log:
```
Okt 08 10:14:03 KI systemd[1]: Started ollama.service - Ollama Service.
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.663+02:00 level=INFO source=routes.go:1475 msg="server config" env="map[CUDA_VISIBLE_DEVICES: GPU_DEVICE_ORDINAL: HIP_VISIBLE_DEVICES: HSA_OVERRIDE_GFX_VERSION: HTTPS_PROXY: HTTP>
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=images.go:518 msg="total blobs: 22"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=images.go:525 msg="total unused blobs removed: 0"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.668+02:00 level=INFO source=routes.go:1528 msg="Listening on 127.0.0.1:11434 (version 0.12.3)"
Okt 08 10:14:03 KI ollama[725]: time=2025-10-08T10:14:03.669+02:00 level=INFO source=gpu.go:217 msg="looking for compatible GPUs"
Okt 08 10:14:05 KI ollama[725]: time=2025-10-08T10:14:05.142+02:00 level=INFO source=types.go:131 msg="inference compute" id=GPU-9444391d-ff5d-3362-9cab-e93df91db736 library=cuda variant=v13 compute=12.0 driver=13.0 name="NVIDIA GeForc>
Okt 08 10:14:05 KI ollama[725]: time=2025-10-08T10:14:05.142+02:00 level=INFO source=routes.go:1569 msg="entering low vram mode" "total vram"="15.5 GiB" threshold="20.0 GiB"
Okt 08 10:16:18 KI ollama[725]: [GIN] 2025/10/08 - 10:16:18 | 200 | 695.69µs | 127.0.0.1 | GET "/api/version"
```
### Additional Information
Ollama runs as a system service on host and port 0.0.0.0:11434.
Happens with firefox and chromium based browsers.
GiteaMirror
added the bug label 2026-05-15 14:08:38 -05:00
The same happens for me on 0.6.33 when I'm trying to upload a file or add text content to knowledge
<!-- gh-comment-id:3380795705 -->
@budnikme commented on GitHub (Oct 8, 2025):
The same happens for me on 0.6.33 when I'm trying to upload a file or add text content to knowledge
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 @Elwag on GitHub (Oct 8, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/18142
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.6.33
Ollama Version (if applicable)
0.12.3
Operating System
Debian 12 amd64
Browser (if applicable)
No response
Confirmation
README.md.Expected Behavior
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded without errors and the model will use and analyse it.
Actual Behavior
You drag-and drop or manually select upload and upload a file into the chat.
The file is uploaded with an error and the model will not be able to use and analyse it.
The error is:
list index out of rangeThe model is unable to do anything with the file and responds, saying things like "give me the file I should analyse". It probably doesn't know there should be a file.
Steps to Reproduce
Logs & Screenshots
Browser log:
open-webui docker log:
Ollama log:
Additional Information
Ollama runs as a system service on host and port 0.0.0.0:11434.
Happens with firefox and chromium based browsers.
@budnikme commented on GitHub (Oct 8, 2025):
The same happens for me on 0.6.33 when I'm trying to upload a file or add text content to knowledge
@tjbck commented on GitHub (Oct 8, 2025):
Unable to reproduce. Did you change your embedding model?