[GH-ISSUE #17202] issue: Document Upload to chat allows empty prompts, which causes Error #18205

Closed
opened 2026-04-20 00:25:06 -05:00 by GiteaMirror · 4 comments
Owner

Originally created by @davidlarrimore on GitHub (Sep 4, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/17202

Check Existing Issues

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

Installation Method

Git Clone

Open WebUI Version

V.0.6.26

Ollama Version (if applicable)

N/A

Operating System

Docker/Windows 10/Mac Sequoia (Reproducable on all)

Browser (if applicable)

Chrome/Edge

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

If the system requires a not null/empty prompt, uploading a file should not allow users to submit the prompt. Alternatively, some placeholder text should be submitted along with the file to allow for a successful LLM call.

Actual Behavior

After uploading a document to the chat, you are able to submit the prompt, even if it is empty. If you submit that empty prompty, it causes a validation error.

Uh-oh! There was an issue with the response.
400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again.

Steps to Reproduce

  1. Create new chat (Or existing chat!......)
  2. Upload a file to the context window (Either via "+" or drag-and-drop)
  3. Hit submit
  4. viola! error achieved

Logs & Screenshots

Uh-oh! There was an issue with the response.
400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again.
Image
index.js:791  [tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues.
zf @ index.js:791
index.js:791  [tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues.
zf @ index.js:791
Chat.svelte:1838  Objectmessage: "400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again."[[Prototype]]: Objectconstructor: ƒ Object()hasOwnProperty: ƒ hasOwnProperty()isPrototypeOf: ƒ isPrototypeOf()propertyIsEnumerable: ƒ propertyIsEnumerable()toLocaleString: ƒ toLocaleString()toString: ƒ toString()valueOf: ƒ valueOf()__defineGetter__: ƒ __defineGetter__()__defineSetter__: ƒ __defineSetter__()__lookupGetter__: ƒ __lookupGetter__()__lookupSetter__: ƒ __lookupSetter__()__proto__: (...)get __proto__: ƒ __proto__()set __proto__: ƒ __proto__()
Ms @ Chat.svelte:1838
[NEW] Explain Console errors by using Copilot in Edge: click
         
         to explain an error. 
        Learn more
        Don't show again

Additional Information

No response

Originally created by @davidlarrimore on GitHub (Sep 4, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/17202 ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of Open WebUI. ### Installation Method Git Clone ### Open WebUI Version V.0.6.26 ### Ollama Version (if applicable) N/A ### Operating System Docker/Windows 10/Mac Sequoia (Reproducable on all) ### Browser (if applicable) Chrome/Edge ### 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 If the system requires a not null/empty prompt, uploading a file should not allow users to submit the prompt. Alternatively, some placeholder text should be submitted along with the file to allow for a successful LLM call. ### Actual Behavior After uploading a document to the chat, you are able to submit the prompt, even if it is empty. If you submit that empty prompty, it causes a validation error. ```error Uh-oh! There was an issue with the response. 400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again. ``` ### Steps to Reproduce 1. Create new chat (Or existing chat!......) 2. Upload a file to the context window (Either via "+" or drag-and-drop) 3. Hit submit 4. viola! error achieved ### Logs & Screenshots ```error Uh-oh! There was an issue with the response. 400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again. ``` <img width="1240" height="529" alt="Image" src="https://github.com/user-attachments/assets/5e30d8b4-fbbc-4a58-b6c0-edae9e800f0a" /> ```log index.js:791 [tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues. zf @ index.js:791 index.js:791 [tiptap warn]: Duplicate extension names found: ['codeBlock', 'bulletList', 'listItem', 'listKeymap', 'orderedList']. This can lead to issues. zf @ index.js:791 Chat.svelte:1838 Objectmessage: "400: An error occurred (ValidationException) when calling the ConverseStream operation: The text field in the ContentBlock object at messages.0.content.0 is blank. Add text to the text field, and try again."[[Prototype]]: Objectconstructor: ƒ Object()hasOwnProperty: ƒ hasOwnProperty()isPrototypeOf: ƒ isPrototypeOf()propertyIsEnumerable: ƒ propertyIsEnumerable()toLocaleString: ƒ toLocaleString()toString: ƒ toString()valueOf: ƒ valueOf()__defineGetter__: ƒ __defineGetter__()__defineSetter__: ƒ __defineSetter__()__lookupGetter__: ƒ __lookupGetter__()__lookupSetter__: ƒ __lookupSetter__()__proto__: (...)get __proto__: ƒ __proto__()set __proto__: ƒ __proto__() Ms @ Chat.svelte:1838 [NEW] Explain Console errors by using Copilot in Edge: click to explain an error. Learn more Don't show again ``` ### Additional Information _No response_
GiteaMirror added the bug label 2026-04-20 00:25:06 -05:00
Author
Owner

@rgaricano commented on GitHub (Sep 4, 2025):

This seem an AWS Bedrock API validation issue, that not happen with all providers.

Image

<!-- gh-comment-id:3253897420 --> @rgaricano commented on GitHub (Sep 4, 2025): This seem an AWS Bedrock API validation issue, that not happen with all providers. ![Image](https://github.com/user-attachments/assets/5bc64e99-303c-4491-88a1-0b4e480004ef)
Author
Owner

@davidlarrimore commented on GitHub (Sep 4, 2025):

I switched to a local ollama model and confirmed it only happens with Bedrock models! I was able to confirm this bug with the Bedrock Access Gateway. Thank you so much for the quick response!

<!-- gh-comment-id:3254025829 --> @davidlarrimore commented on GitHub (Sep 4, 2025): I switched to a local ollama model and confirmed it only happens with Bedrock models! I was able to confirm this bug with the [Bedrock Access Gateway](https://github.com/aws-samples/bedrock-access-gateway). Thank you so much for the quick response!
Author
Owner

@Clausinho commented on GitHub (Jan 23, 2026):

Is there a fix for this? forcing a prompt, even if its empty by the user? From ChatGPT I am used that the model understands that I put these images as context for the conversation. It also "destroys" any further chat in this conversation, as there is one empty response which then gets always blocked by bedrock. @davidlarrimore @rgaricano

<!-- gh-comment-id:3789362273 --> @Clausinho commented on GitHub (Jan 23, 2026): Is there a fix for this? forcing a prompt, even if its empty by the user? From ChatGPT I am used that the model understands that I put these images as context for the conversation. It also "destroys" any further chat in this conversation, as there is one empty response which then gets always blocked by bedrock. @davidlarrimore @rgaricano
Author
Owner

@Classic298 commented on GitHub (Jan 23, 2026):

Build a Filter that puts a user message if user forgot to write a message

<!-- gh-comment-id:3789404928 --> @Classic298 commented on GitHub (Jan 23, 2026): Build a Filter that puts a user message if user forgot to write a message
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#18205