[GH-ISSUE #19308] feat: Display chat messages on demand or paginated to improve page performance on low-end computers #18835

Closed
opened 2026-04-20 01:03:58 -05:00 by GiteaMirror · 1 comment
Owner

Originally created by @ShirasawaSama on GitHub (Nov 20, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/19308

Check Existing Issues

  • I have searched for all existing open AND closed issues and discussions for similar requests. I have found none that is comparable to my request.

Verify Feature Scope

  • I have read through and understood the scope definition for feature requests in the Issues section. I believe my feature request meets the definition and belongs in the Issues section instead of the Discussions.

Problem Description

Image

When the context of a chat log becomes extremely large—especially when involving functions like thinking processes, tool invocations, image generation, or online searches—the entire page loads all chat records at once. This causes the entire page to freeze for over ten seconds.

The computer in the screenshot uses an Intel i3 low-power laptop CPU. At this point, the entire page is completely unresponsive.

Desired Solution you'd like

When clicking into a chat history, only load the last two or three messages. Only display additional entries (still two or three at a time) when there's more space on the page or the user scrolls up.

Example: https://svelte.dev/playground/2239cc4c861c41d18abbc858248f5a0d?version=5.43.12

Alternatives Considered

The entire chat page uses virtual scrolling, but since the chart is rendered asynchronously, its height may change. It's uncertain whether Svelte's virtual scrolling module will work reliably.

Additional Context

No response

Originally created by @ShirasawaSama on GitHub (Nov 20, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/19308 ### Check Existing Issues - [x] I have searched for all existing **open AND closed** issues and discussions for similar requests. I have found none that is comparable to my request. ### Verify Feature Scope - [x] I have read through and understood the scope definition for feature requests in the Issues section. I believe my feature request meets the definition and belongs in the Issues section instead of the Discussions. ### Problem Description <img width="1748" height="1020" alt="Image" src="https://github.com/user-attachments/assets/cec4bdf5-6034-42c0-8a13-faac197f2219" /> When the context of a chat log becomes extremely large—especially when involving functions like thinking processes, tool invocations, image generation, or online searches—the entire page loads all chat records at once. This causes the entire page to freeze for over ten seconds. The computer in the screenshot uses an Intel i3 low-power laptop CPU. At this point, the entire page is completely unresponsive. ### Desired Solution you'd like When clicking into a chat history, only load the last two or three messages. Only display additional entries (still two or three at a time) when there's more space on the page or the user scrolls up. Example: https://svelte.dev/playground/2239cc4c861c41d18abbc858248f5a0d?version=5.43.12 ### Alternatives Considered The entire chat page uses virtual scrolling, but since the chart is rendered asynchronously, its height may change. It's uncertain whether Svelte's virtual scrolling module will work reliably. ### Additional Context _No response_
Author
Owner

@tjbck commented on GitHub (Nov 20, 2025):

This is already the case no? All messages are retrieved but only the last few messages are rendered. Please check the implemenation.

<!-- gh-comment-id:3556640319 --> @tjbck commented on GitHub (Nov 20, 2025): This is already the case no? All messages are retrieved but only the last few messages are rendered. Please check the implemenation.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#18835