[GH-ISSUE #14874] issue: Profile Image in base64 freezes frontend due to LocalStorage limits #71993

Closed
opened 2026-05-13 03:58:10 -05:00 by GiteaMirror · 2 comments
Owner

Originally created by @almajo on GitHub (Jun 11, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/14874

Originally assigned to: @tjbck on GitHub.

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.13

Ollama Version (if applicable)

No response

Operating System

MacOS

Browser (if applicable)

Chrome/Safari

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

When chatting, I want to add collections to my prompt with the "#" key and I can use this to send a query.

Actual Behavior

If a user has a very large profile image (which is stored/loaded here in base64), the frontend freezes when adding the collection. Only a reload of the page makes OWUI workable again.

It would be great if we could remove the profileImage information from this collection string when storing it.

Steps to Reproduce

  1. Run OWUI
  2. You need a high resolution profile image for this to work (through Entra possibly)
  3. create a collection
  4. Query collection with # in the Frontend
  5. See a "QuotaExceededError" and a frozen frontend

Logs & Screenshots

Image

Additional Information

I already ran some debugging and was able to trace it down to the profile image in base64.

When injecting some code to each call to localStorage.setItem, the result was this:

Image

localStorage only has a quota of 5 MB usually per key, after this it raises an issue

When taking the Json-String error from the debugging console and opening it in a JSON-Viewer, I see that the base64 image part makes 99.9% of the whole Json. Only 9 files are in this collection and their data is (luckily) not included but only metadata (as below).

Here the JSON (shortened) of the item that should be stored in chat-input:

{
  "prompt": "",
  "files": [
    {
      "id": "b7e986cb-3630-46a2-853d-e8eced002192",
      "user_id": "e76ec5c4-e3c9-41d9-aad1-83c2620223a6",
      "name": "Center",
      "description": "my description",
      "data": {
        "file_ids": [
          "b31eaa77-9e8f-494f-b207-6df51dfa79b9",
          "c8315c97-71a0-4291-9a80-917aa29db1ad",
          "a4614384-cdc7-4a59-88e8-fb006da54312",
          "13cadc6c-19ac-486a-afbe-ed07b031e5f2",
          "aa0c6438-45eb-4e04-9664-22f142269ab9",
          "4dc0e181-e203-4678-858f-fe6bacf7ccf9",
          "1d9bd071-f440-47d3-afd4-1e9bb0685388",
          "5ae85188-a8a8-45d3-81fb-48ea32b73483",
          "1a70e62e-83e5-4a21-add3-e3c8e6c3707e"
        ]
      },
      "meta": null,
      "access_control": {
        "read": {
          "group_ids": [
            
          ],
          "user_ids": [
            
          ]
        },
        "write": {
          "group_ids": [
            
          ],
          "user_ids": [
            
          ]
        }
      },
      "created_at": 1747636105,
      "updated_at": 1749622465,
      "user": {
        "id": "",
        "name": "Name",
        "email": "Email",
        "role": "user",
        "profile_image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ .......
"
      },
      "files": [
        {
          "id": "1a70e62e-83e5-4a21-add3-e3c8e6c3707e",
          "meta": {
            "name": "name",
            "content_type": "application/pdf",
            "size": 2563194,
            "data": {
         
            },
            "collection_name": "b7e986cb-3630-46a2-853d-e8eced002192"
          },
          "created_at": 1748354512,
          "updated_at": 1748354512
        }, ...
      ],
      "type": "collection",
      "status": "processed"
    }
  ],
  "selectedToolIds": [
    
  ],
  "selectedFilterIds": [
    
  ],
  "imageGenerationEnabled": false,
  "webSearchEnabled": false,
  "codeInterpreterEnabled": false
}

Originally created by @almajo on GitHub (Jun 11, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/14874 Originally assigned to: @tjbck on GitHub. ### 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.13 ### Ollama Version (if applicable) _No response_ ### Operating System MacOS ### Browser (if applicable) Chrome/Safari ### 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 When chatting, I want to add collections to my prompt with the "#" key and I can use this to send a query. ### Actual Behavior If a user has a very large profile image (which is stored/loaded here in base64), the frontend freezes when adding the collection. Only a reload of the page makes OWUI workable again. It would be great if we could remove the profileImage information from this collection string when storing it. ### Steps to Reproduce 1. Run OWUI 2. You need a high resolution profile image for this to work (through Entra possibly) 3. create a collection 4. Query collection with # in the Frontend 5. See a "QuotaExceededError" and a frozen frontend ### Logs & Screenshots <img width="768" alt="Image" src="https://github.com/user-attachments/assets/dd28925e-717a-4954-8b68-91402cb8700c" /> ### Additional Information I already ran some debugging and was able to trace it down to the profile image in base64. When injecting some code to each call to `localStorage.setItem`, the result was this: <img width="768" alt="Image" src="https://github.com/user-attachments/assets/9af459c2-0c1f-4b7f-8456-ff5bfc5fdd2c" /> localStorage only has a quota of 5 MB usually per key, after this it raises an issue When taking the Json-String error from the debugging console and opening it in a JSON-Viewer, I see that the base64 image part makes 99.9% of the whole Json. Only 9 files are in this collection and their data is (luckily) not included but only metadata (as below). Here the JSON (shortened) of the item that should be stored in `chat-input`: ```json { "prompt": "", "files": [ { "id": "b7e986cb-3630-46a2-853d-e8eced002192", "user_id": "e76ec5c4-e3c9-41d9-aad1-83c2620223a6", "name": "Center", "description": "my description", "data": { "file_ids": [ "b31eaa77-9e8f-494f-b207-6df51dfa79b9", "c8315c97-71a0-4291-9a80-917aa29db1ad", "a4614384-cdc7-4a59-88e8-fb006da54312", "13cadc6c-19ac-486a-afbe-ed07b031e5f2", "aa0c6438-45eb-4e04-9664-22f142269ab9", "4dc0e181-e203-4678-858f-fe6bacf7ccf9", "1d9bd071-f440-47d3-afd4-1e9bb0685388", "5ae85188-a8a8-45d3-81fb-48ea32b73483", "1a70e62e-83e5-4a21-add3-e3c8e6c3707e" ] }, "meta": null, "access_control": { "read": { "group_ids": [ ], "user_ids": [ ] }, "write": { "group_ids": [ ], "user_ids": [ ] } }, "created_at": 1747636105, "updated_at": 1749622465, "user": { "id": "", "name": "Name", "email": "Email", "role": "user", "profile_image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ ....... " }, "files": [ { "id": "1a70e62e-83e5-4a21-add3-e3c8e6c3707e", "meta": { "name": "name", "content_type": "application/pdf", "size": 2563194, "data": { }, "collection_name": "b7e986cb-3630-46a2-853d-e8eced002192" }, "created_at": 1748354512, "updated_at": 1748354512 }, ... ], "type": "collection", "status": "processed" } ], "selectedToolIds": [ ], "selectedFilterIds": [ ], "imageGenerationEnabled": false, "webSearchEnabled": false, "codeInterpreterEnabled": false } ```
GiteaMirror added the bug label 2026-05-13 03:58:10 -05:00
Author
Owner

@Ithanil commented on GitHub (Jun 11, 2025):

That's why I thought https://github.com/open-webui/open-webui/pull/12215 would be a good idea, regardless of the specific problem here.

<!-- gh-comment-id:2961941844 --> @Ithanil commented on GitHub (Jun 11, 2025): That's why I thought https://github.com/open-webui/open-webui/pull/12215 would be a good idea, regardless of the specific problem here.
Author
Owner

@tjbck commented on GitHub (Jun 16, 2025):

Addressed with f98ea78964 in dev!

<!-- gh-comment-id:2975582182 --> @tjbck commented on GitHub (Jun 16, 2025): Addressed with f98ea789648baf918d19e9647592ca8feef58d49 in dev!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#71993