Dự án cá nhân2024Dự án cá nhân · Front-end

Giao diện chat streaming với Next.js

Tôi tự dựng một giao diện chat hiển thị câu trả lời theo kiểu gõ dần, để luyện phần Front-end cho các ứng dụng AI.

Next.jsReactStreamingTailwind CSS
Giao diện chat hiển thị câu trả lời theo thời gian thực
01

Vấn đề

Các ứng dụng AI thường hiển thị câu trả lời chảy dần ra thay vì hiện một lúc. Tôi tò mò cách làm phần này ở phía giao diện nên quyết định tự dựng lại.

Đây thuần là bài tập Front-end, tập trung vào trải nghiệm người dùng khi chờ mô hình trả lời.

02

Cách tiếp cận

Tôi dùng cơ chế streaming để nhận dữ liệu theo từng phần và cập nhật giao diện ngay khi có, kèm trạng thái đang gõ và xử lý khi kết nối bị ngắt giữa chừng.

Chú ý tới cảm giác chờ

Tôi dành thời gian cho những chi tiết nhỏ: con trỏ nhấp nháy, cuộn mượt, và nút dừng khi câu trả lời quá dài. Chúng làm trải nghiệm dễ chịu hơn hẳn.

03

Kết quả

Kết quả là một giao diện chat gọn, phản hồi mượt, mà tôi có thể tái sử dụng làm nền cho các dự án AI khác.

Tôi hiểu rõ hơn rằng phần lớn cảm giác "thông minh" của một sản phẩm AI đến từ những chi tiết trải nghiệm rất đời thường.

Đi cùng nhau

Cùng học AI một cách thành thật

Tôi ghi lại những gì mình học và thử mỗi tuần. Nếu thấy hữu ích, hãy đọc cùng. Tôi cũng đang ấp ủ một buổi workshop trong tương lai, nếu bạn quan tâm, cứ để lại vài dòng để tôi hiểu bạn muốn học gì.