-
-
Notifications
You must be signed in to change notification settings - Fork 16.7k
Description
Check Existing Issues
- I have searched for any existing and/or related issues.
- I have searched for any existing and/or related discussions.
- I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!).
- I am using the latest version of Open WebUI.
Installation Method
Docker
Open WebUI Version
v0.6.40
Ollama Version (if applicable)
No response
Operating System
Raspberry Pi OS
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
The webpage content should be fetched and attached to the chat context.
Actual Behavior
Error message: [ERROR: argument of type 'bool' is not iterable]
Steps to Reproduce
- Open a chat in OpenWebUI v0.6.39 or v0.6.40
- Click the attachment button
- Select "Attach webpage"
- Enter any URL (e.g., https://www.wikipedia.org/)
- Click to attach
Logs & Screenshots
2025-11-25 20:54:43.536 | INFO | open_webui.routers.retrieval:save_docs_to_vector_db:1252 - save_docs_to_vector_db: document Wikipedia 9a9d50ec8631eafde241ce5b6991ebb9ba74c8543397179e1b589e700bedefd
2025-11-25 20:54:43.537 | ERROR | open_webui.routers.retrieval:process_web:1744 - argument of type 'bool' is not iterable
Traceback (most recent call last):
File "/app/backend/open_webui/routers/retrieval.py", line 1723, in process_web
await run_in_threadpool(
File "/usr/local/lib/python3.11/site-packages/starlette/concurrency.py", line 38, in run_in_threadpool
return await anyio.to_thread.run_sync(func)
File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 56, in run_sync
return await get_async_backend().run_sync_in_worker_thread(
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 2485, in run_sync_in_worker_thread
return await future
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 976, in run
result = context.run(func, *args)
File "/app/backend/open_webui/routers/retrieval.py", line 1257, in save_docs_to_vector_db
if metadata and "hash" in metadata:
│ └ True
└ True
TypeError: argument of type 'bool' is not iterable
Additional Information
Root Cause:
The metadata parameter in save_docs_to_vector_db() receives a boolean value (True) instead of a dictionary object. The code attempts to check if the string "hash" exists in metadata, which fails because Python cannot iterate over a boolean type.
Regression Source:
This appears to be related to the embedding operation refactoring mentioned in v0.6.39 changelog:
🔍 Knowledge base reindexing now works correctly after resolving async execution chain issues by implementing threadpool workers for embedding operations. #19434
Workaround:
Downgrade to v0.6.38:
image: ghcr.io/open-webui/open-webui:0.6.38