Пользователь Reddit самостоятельно выяснил, почему ChatGPT намертво зависает в длинных сессиях, тогда как Claude и Gemini продолжают работать стабильно. Причина — принципиально разный подход к отрисовке сообщений в браузере. Найденное решение позволило запустить чат из 1865 сообщений без единого сбоя.

Суть проблемы

Главная причина замедления — в том, как интерфейс ChatGPT работает с длинными диалогами: каждое сообщение остаётся активным на странице, и браузер вынужден держать в памяти весь тред, даже если на экране видны лишь последние строки.

Технически это выглядит так: фронтенд хранит всё дерево диалога в DOM (Document Object Model — внутренняя структура веб-страницы) — и видимые, и скрытые узлы. Постоянные перестройки DOM, обработчики событий и накопленная память заставляют браузер замедляться.

Claude и Gemini используют другой подход — virtual scrolling (виртуальный скролл): отрисовывается только то, что видно на экране. Всё, что выходит за пределы видимой области, выгружается из DOM. Результат — интерфейс остаётся быстрым вне зависимости от длины чата.

⚠ Когда это становится проблемой
Чем длиннее сессия, тем хуже: при 1000+ сообщениях браузер держит в памяти тысячи активных DOM-узлов одновременно. Рано или поздно вкладка падает с ошибкой «Aw Snap» или «Page Unresponsive».

Как это работает у разных платформ

ПлатформаПодход к рендерингуСтабильность при 1000+ сообщениях
ChatGPTПолный DOM — все сообщения загружены сразу❌ Зависания, краши браузера
ClaudeVirtual scrolling — только видимая область✅ Стабильно
GeminiVirtual scrolling — только видимая область✅ Стабильно

Как это выглядит на практике

ChatGPT работает нормально в начале даже долгих сессий. По мере роста диалога Chrome постепенно начинает тормозить: появляются заметные лаги при скролле и вводе текста. В итоге вкладка зависает, иногда браузер полностью падает или аварийно завершается.

Похожие случаи фиксировались на Reddit и в сообществе OpenAI Developer Community — проблема воспроизводится на длинных тредах независимо от используемой модели: GPT-4, GPT-4o или GPT-5.

Чат из 1865 сообщений постоянно падал. После перехвата данных до рендеринга React и обрезки до последних сообщений — всё заработало гладко.

ℹ Что такое DOM
DOM (Document Object Model) — это внутренняя древовидная структура HTML-страницы в памяти браузера. Каждый элемент интерфейса — отдельный узел. Чем больше узлов — тем выше нагрузка на CPU и RAM.

Самодельное решение

Автор оригинального поста разработал собственный патч: скрипт перехватывает данные до того, как React (JavaScript-библиотека, на которой построен интерфейс ChatGPT) успевает их отрисовать, и обрезает диалог до последних сообщений. Это имитирует виртуальный скролл вручную.

Аналогичное расширение для Chrome публиковалось и на форуме OpenAI: как только чат становится длинным, браузер замедляется до предела — печатаешь, а текст появляется спустя секунды, скролл становится рваным, ответы ChatGPT загружаются вечно.


graph TD
    A[Пользователь открывает длинный чат] --> B{Платформа}
    B -->|ChatGPT| C[Все сообщения загружены в DOM]
    B -->|Claude / Gemini| D[Загружены только видимые сообщения]
    C --> E[Тысячи активных DOM-узлов]
    D --> F[Минимум узлов в памяти]
    E --> G[CPU и RAM перегружены]
    F --> H[Интерфейс работает плавно]
    G --> I[Зависание / краш браузера]

Временные обходные пути (пока OpenAI не исправил)

💡 Что делать прямо сейчас
  • Начинайте новый чат при смене темы или при первых признаках торможения
  • Используйте режим инкогнито — меньше расширений, меньше нагрузки
  • Попробуйте десктопное приложение ChatGPT — оно не зависит от браузерных ограничений
  • Следите за сообществом: пользователи публикуют Chrome-расширения, которые добавляют virtual scrolling вручную

Почему это важно для отрасли

История показывает, что UX-решения в AI-интерфейсах имеют не меньшее значение, чем возможности самих моделей. Крупные AI-чат-приложения отправляют тяжёлые библиотеки рендеринга на каждое устройство, и архитектурные компромиссы в этих библиотеках напрямую влияют на стабильность работы.

Эти библиотеки не просто лежат мёртвым грузом после загрузки: каждое входящее сообщение запускает парсинг markdown, подсветку синтаксиса, рендеринг формул — всё это на главном потоке браузера. Пока идёт обработка большого блока кода, скролл, ввод текста или нажатие кнопок могут тормозить, а интерфейс — подвисать.

OpenAI пока не прокомментировала проблему публично. Между тем конкуренты — Anthropic и Google — решили её на уровне архитектуры, не оставив пользователям повода жаловаться на браузерные краши даже в самых длинных сессиях.