issue: ClientPayloadError: Response payload is not completed: TransferEncodingError #4546

Closed
opened 2025-11-11 15:56:35 -06:00 by GiteaMirror · 0 comments
Owner

Originally created by @poonesh on GitHub (Mar 24, 2025).

Check Existing Issues

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

Installation Method

Pip Install

Open WebUI Version

v0.5.20

Ollama Version (if applicable)

No response

Operating System

ubuntu 22.04

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 listed steps to reproduce the bug in detail.

Expected Behavior

I have set up openwebui on EKS alongside bedrock-access-gateway following the instructions here: https://docs.openwebui.com/tutorials/integrations/amazon-bedrock

I expect to receive responses from the bedrock models, but occasionally do not.

Actual Behavior

I am occasionally getting a hang when I try to talk to the model, where I don't get a response and instead just the grey loading boxes, with errors from the docker container.

Steps to Reproduce

No specific pattern, happens intermittently, but frequently. Usually after a period of time of inactivity, but not always.

Logs & Screenshots

2025-03-24 21:17:36.826 | ERROR    | asyncio.runners:run:120 - Task exception was never retrieved
future: <Task finished name='Task-6229' coro=<process_chat_response.<locals>.post_response_handler() done, defined at /venv/lib/python3.11/site-packages/open_webui/utils/middleware.py:1114> exception=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data for satisfy transfer length header.'>")> - {}
Traceback (most recent call last):

  File "/venv/lib/python3.11/site-packages/aiohttp/client_proto.py", line 92, in connection_lost
    uncompleted = self._parser.feed_eof()
                  │    └ None
                  └ <aiohttp.client_proto.ResponseHandler object at 0x7f74f58dfb60>
  File "aiohttp/_http_parser.pyx", line 508, in aiohttp._http_parser.HttpParser.feed_eof
    raise TransferEncodingError(
          └ <class 'aiohttp.http_exceptions.TransferEncodingError'>

aiohttp.http_exceptions.TransferEncodingError: 400, message:
  Not enough data for satisfy transfer length header.


The above exception was the direct cause of the following exception:


Traceback (most recent call last):

> File "/venv/lib/python3.11/site-packages/open_webui/utils/middleware.py", line 1719, in post_response_handler
    await stream_body_handler(response)
          │                   └ <starlette.responses.StreamingResponse object at 0x7f74f5963250>
          └ <function process_chat_response.<locals>.post_response_handler.<locals>.stream_body_handler at 0x7f74f530b880>
  File "/venv/lib/python3.11/site-packages/open_webui/utils/middleware.py", line 1471, in stream_body_handler
    async for line in response.body_iterator:
                      │        └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ...
                      └ <starlette.responses.StreamingResponse object at 0x7f74f5963250>
  File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 52, in __anext__
    rv = await self.read_func()
               │    └ <member 'read_func' of 'AsyncStreamIterator' objects>
               └ <aiohttp.streams.AsyncStreamIterator object at 0x7f74f652ff10>
  File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 352, in readline
    return await self.readuntil()
                 │    └ <function StreamReader.readuntil at 0x7f76140cf600>
                 └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ...
  File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 386, in readuntil
    await self._wait("readuntil")
          │    └ <function StreamReader._wait at 0x7f76140cf4c0>
          └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ...
  File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 347, in _wait
    await waiter
          └ <Future finished exception=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not e...

aiohttp.client_exceptions.ClientPayloadError: Response payload is not completed: <TransferEncodingError: 400, message='Not enough data for satisfy transfer length header.'>
...
2025-03-24 21:21:05.626 | ERROR    | aiohttp.client:__del__:443 - Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f74f5975a50> - {}

Image

Additional Information

No response

Originally created by @poonesh on GitHub (Mar 24, 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 Pip Install ### Open WebUI Version v0.5.20 ### Ollama Version (if applicable) _No response_ ### Operating System ubuntu 22.04 ### 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 listed steps to reproduce the bug in detail. ### Expected Behavior I have set up openwebui on EKS alongside bedrock-access-gateway following the instructions here: https://docs.openwebui.com/tutorials/integrations/amazon-bedrock I expect to receive responses from the bedrock models, but occasionally do not. ### Actual Behavior I am occasionally getting a hang when I try to talk to the model, where I don't get a response and instead just the grey loading boxes, with errors from the docker container. ### Steps to Reproduce No specific pattern, happens intermittently, but frequently. Usually after a period of time of inactivity, but not always. ### Logs & Screenshots ``` 2025-03-24 21:17:36.826 | ERROR | asyncio.runners:run:120 - Task exception was never retrieved future: <Task finished name='Task-6229' coro=<process_chat_response.<locals>.post_response_handler() done, defined at /venv/lib/python3.11/site-packages/open_webui/utils/middleware.py:1114> exception=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data for satisfy transfer length header.'>")> - {} Traceback (most recent call last): File "/venv/lib/python3.11/site-packages/aiohttp/client_proto.py", line 92, in connection_lost uncompleted = self._parser.feed_eof() │ └ None └ <aiohttp.client_proto.ResponseHandler object at 0x7f74f58dfb60> File "aiohttp/_http_parser.pyx", line 508, in aiohttp._http_parser.HttpParser.feed_eof raise TransferEncodingError( └ <class 'aiohttp.http_exceptions.TransferEncodingError'> aiohttp.http_exceptions.TransferEncodingError: 400, message: Not enough data for satisfy transfer length header. The above exception was the direct cause of the following exception: Traceback (most recent call last): > File "/venv/lib/python3.11/site-packages/open_webui/utils/middleware.py", line 1719, in post_response_handler await stream_body_handler(response) │ └ <starlette.responses.StreamingResponse object at 0x7f74f5963250> └ <function process_chat_response.<locals>.post_response_handler.<locals>.stream_body_handler at 0x7f74f530b880> File "/venv/lib/python3.11/site-packages/open_webui/utils/middleware.py", line 1471, in stream_body_handler async for line in response.body_iterator: │ └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ... └ <starlette.responses.StreamingResponse object at 0x7f74f5963250> File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 52, in __anext__ rv = await self.read_func() │ └ <member 'read_func' of 'AsyncStreamIterator' objects> └ <aiohttp.streams.AsyncStreamIterator object at 0x7f74f652ff10> File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 352, in readline return await self.readuntil() │ └ <function StreamReader.readuntil at 0x7f76140cf600> └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ... File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 386, in readuntil await self._wait("readuntil") │ └ <function StreamReader._wait at 0x7f76140cf4c0> └ <StreamReader e=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not enough data ... File "/venv/lib/python3.11/site-packages/aiohttp/streams.py", line 347, in _wait await waiter └ <Future finished exception=ClientPayloadError("Response payload is not completed: <TransferEncodingError: 400, message='Not e... aiohttp.client_exceptions.ClientPayloadError: Response payload is not completed: <TransferEncodingError: 400, message='Not enough data for satisfy transfer length header.'> ... 2025-03-24 21:21:05.626 | ERROR | aiohttp.client:__del__:443 - Unclosed client session client_session: <aiohttp.client.ClientSession object at 0x7f74f5975a50> - {} ``` ![Image](https://github.com/user-attachments/assets/6f4bd651-5926-4196-b1b2-5445d75b355d) ### Additional Information _No response_
GiteaMirror added the bug label 2025-11-11 15:56:35 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#4546