Впроваджуємо AI з Laravel: створення Real-Time інтерфейсу для чату з потоковою передачею даних на Livewire

Перекладено ШІ 0 Laravel News 20 травня, 2026

Дізнайтеся, як замінити нудне очікування на миттєву генерацію відповідей ШІ у вашому Laravel-проєкті. Ми розберемо створення живого чату за допомогою Livewire та Alpine.js, де текст з’являється слово за словом у реальному часі.

▶️ Дивіться відеоурок (10 хвилин)

Досі ми тестували агента через JSON-маршрути, де повна відповідь приходить лише після завершення обробки запиту AI. Це зручно для розробки, але критично для UX: ніхто не хоче п’ять секунд дивитися на спінер і гадати, чи працює сервіс.

У цьому епізоді ми створимо чат-віджет, де відповідь з’являється поступово, як у ChatGPT. Користувач надсилає запитання, і текст від агента починає генеруватися миттєво, слово за словом.

Завдяки SDK це реалізується одним рядком коду. Замість методу prompt() ми викликаємо stream(), а SDK передає дельти токенів у браузер через Server-Sent Events (SSE). Я додав метод stream до ChatController для обробки SSE з відповідними заголовками та використав приватний метод resolveAgent, щоб створювати або продовжувати діалоги для авторизованих користувачів.

Фронтенд побудований на Livewire (керування станом), Blade (інтерфейс) та Alpine.js для логіки стрімінгу. Код на Alpine.js відкриває fetch-потік, парсить кожен фрагмент даних у реальному часі та додає текст у бабл повідомлення. Жодних зовнішніх залежностей — лише Livewire, Alpine та можливості SDK.

Також я розібрав нюанс із отриманням ID розмови під час першого повідомлення. Рішення — callback-функція завершення, що спрацьовує після фіналізації стріму та дозволяє зберегти ID для подальшого листування.

У підсумку чат виглядає як повноцінний продукт: той самий агент, інструменти та база знань, але з динамічним виводом.

У наступній серії ми надамо агенту доступ до мережі за допомогою WebSearch, щоб він міг відповідати на запитання про події в реальному часі, наприклад, про затримки поштових операторів.

⭐ GitHub: https://github.com/harris21/ship-ai-with-laravel

▶️ Дивитися 7-й епізод →

Популярні

Інше, що варто прочитати

53 Оновлено 20 травня, 2026

Усе, що нам відомо про Livewire 4

Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу

10 Оновлено 20 травня, 2026

Локальні моделі та їх скоупи в Laravel за допомогою атрибута Scope

В Laravel 12 ми отримали можливість використовувати новий підхід для визначення локальних скоупів у моделях Eloquent. Дізнайтеся, як новий атрибут #[Scope] спрощує цей процес і зберігає ваші назви методів незмінними

18 Оновлено 20 травня, 2026

Перетворення даних у типобезпечні DTO за допомогою пакету Data Model

Досліджуйте новий пакет Data Model для PHP, який спрощує процес гідратації об'єктів без зайвих складнощів! Дізнайтеся, як впровадження типобезпечних об'єктів може революціонізувати ваш підхід до розробки, читаючи нашу статтю