« Lỗi trong luồng tin nhắn » xuất hiện khi kết nối mà ChatGPT dùng để gửi phản hồi cho bạn từng phần bị ngắt trước khi phản hồi hoàn tất. Nguyên nhân gần như không bao giờ là nội dung bạn đã viết: các nguyên nhân thường gặp là quá tải phía OpenAI, đường truyền không ổn định, tiện ích trình duyệt hoặc cuộc trò chuyện quá dài. Tạo lại phản hồi giải quyết phần lớn trường hợp; khi không đủ, một bước kiểm tra duy nhất sẽ cho biết vấn đề có đến từ phía bạn hay không.
Lỗi
Erreur dans le flux de messages
(Même panne, autres formulations : « Streaming interrompu.
En attente du message complet », « Hmm...quelque chose semble
avoir mal tourné. » Le symptôme est identique — la réponse
s'arrête en cours de route et ne se termine jamais.)Tổng quan nguyên nhân và cách khắc phục
| Nguyên nhân | Cách khắc phục |
|---|---|
| Quá tải hoặc sự cố phía OpenAI. Ảnh hưởng đồng thời đến tất cả gói, bao gồm Plus và Pro, và là nguyên nhân có khả năng nhất khi lỗi lặp lại sau mỗi vài phút. | Truy cập status.openai.com. Trong thời gian có sự cố, không thay đổi nào ở phía bạn có thể làm thay đổi kết quả — chờ là giải pháp. |
| Kết nối không ổn định: chuyển đổi Wi-Fi/4G, VPN hoặc proxy của công ty, tín hiệu di động yếu. Việc truyền theo luồng duy trì một kết nối mở duy nhất trong thời gian dài, nên nó bị hỏng ở nơi mà một lần tải trang thông thường vẫn có thể hoàn tất. | Tắt VPN hoặc proxy và thử lại trên một kết nối khác (Wi-Fi ⇄ di động). |
| Môi trường trình duyệt: tiện ích chèn vào trang, bộ nhớ đệm cũ hoặc phiên đã hết hạn. | Thử lại ở chế độ ẩn danh. Nếu hoạt động ở đó, nguyên nhân là tiện ích hoặc bộ nhớ đệm — tắt các tiện ích, xóa dữ liệu trang web và đăng nhập lại. |
| Cuộc trò chuyện quá dài hoặc tệp đính kèm quá nặng. Mỗi lượt gửi lại toàn bộ lịch sử, nên quá trình tạo mất nhiều thời gian hơn và dễ bị lỗi hơn. | Chuyển phần cốt lõi sang một cuộc trò chuyện mới. Chia nhỏ các tệp lớn thay vì đính kèm toàn bộ. |
Ba thao tác trong 90 giây đầu tiên
Tạo lại phản hồi → tải lại trang (trên di động, thoát hoàn toàn ứng dụng rồi mở lại) → đăng xuất rồi đăng nhập lại. Một lần gián đoạn đơn lẻ thường được giải quyết bằng một trong ba thao tác này, và gián đoạn đơn lẻ là trường hợp bình thường. Tuy nhiên, nếu nó dừng chính xác tại cùng một vị trí mỗi lần, đó là dấu hiệu một trong các nguyên nhân cụ thể dưới đây đang xảy ra, chứ không phải ngẫu nhiên.
Trước tiên xác định xem vấn đề có đến từ phía bạn hay không
Đây là bước mà các danh sách khắc phục sự cố khác thường bỏ qua, dù nó giúp tiết kiệm nhiều thời gian nhất. Mở status.openai.com. Nếu đang có sự cố, không thiết lập cục bộ nào có thể thay đổi điều đó và chờ là lựa chọn duy nhất. Nếu không có gì được thông báo, nguyên nhân là cục bộ và bước tiếp theo sẽ khoanh vùng nó. Thực hiện kiểm tra này trước khi thay đổi cài đặt giúp tránh mất 20 phút xóa bộ nhớ đệm trong khi hệ thống đang gặp sự cố.
Cô lập nguyên nhân cục bộ từ ngoài vào trong
Thực hiện theo thứ tự này, mỗi bước loại trừ mọi nguyên nhân ở các bước trước: (1) tắt VPN và proxy; (2) mở cửa sổ ẩn danh — thao tác này loại bỏ tiện ích và bộ nhớ đệm cùng lúc; (3) thử trình duyệt hoặc thiết bị khác; (4) đổi mạng. Bước từ đó trở đi mà mọi thứ hoạt động lại sẽ chỉ ra nguyên nhân. Nếu lỗi chỉ xuất hiện trong các cuộc trò chuyện dài, không nguyên nhân nào trong bốn nguyên nhân trên là vấn đề: hãy chuyển phần cốt lõi sang một cuộc trò chuyện mới.
Dành cho nhà phát triển: cùng một sự cố ngắt kết nối ở phía API
Khi gọi API với stream: true, cùng sự cố đó xuất hiện dưới dạng kết nối Server-Sent Events kết thúc mà không có finish_reason. Mã trạng thái HTTP là 200 — mọi thứ vẫn ổn tại thời điểm gửi các header — vì vậy việc chỉ kiểm tra mã trạng thái sẽ không phát hiện được; khi có tải, 429 và 529 overloaded_error cũng có thể xuất hiện. Có ba cách để xử lý: (1) coi một luồng kết thúc mà không có finish_reason là cần phát lại, không phải phản hồi hoàn chỉnh; (2) thử lại 429, 500 và 529 với backoff lũy thừa và jitter; (3) nếu đứng sau proxy, kiểm tra idle timeout của proxy và tắt việc đệm phản hồi — proxy đệm phản hồi sẽ biến một luồng đang hoạt động thành một lần chờ dài. Để khoanh vùng, trước tiên hãy stream mà không qua proxy:
# Streamer directement, sans proxy sur le chemin, et voir où ça s'arrête.
curl -N https://api.kunavo.com/v1/chat/completions \
-H "Authorization: Bearer $KUNAVO_API_KEY" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-5","stream":true,
"max_tokens":300,
"messages":[{"role":"user","content":"compte lentement de 1 à 20"}]}'Nếu bạn gọi qua Kunavo
Kunavo là một cổng API AI, và luồng bị gián đoạn là một trạng thái vận hành dự kiến, không phải ngoại lệ. Khi nhiều kênh upstream được cấu hình cho một model và lần thử đầu tiên thất bại, yêu cầu sẽ được phát lại trên một kênh khác trong cùng một lần gọi: một sự cố upstream tạm thời trở thành một thành công chậm hơn đôi chút thay vì một lỗi. Các yêu cầu thất bại không bao giờ bị tính phí. Vì GPT và Claude có thể được truy cập bằng một khóa duy nhất, việc tránh một model quá tải chỉ là đổi tên model, không phải thay đổi tích hợp. Sơ đồ phát lại và backoff cho trường hợp streaming được trình bày chi tiết trong Lỗi streaming API LLM.
Câu hỏi thường gặp
“Lỗi trong luồng tin nhắn”: có phải do tôi không?
Gần như không bao giờ. Thông báo cho biết kết nối đang truyền phản hồi đã bị ngắt trước khi hoàn tất. Những gì bạn viết không gây ra lỗi này. Nguyên nhân có thể là tải ở phía OpenAI, mạng không ổn định, tiện ích trình duyệt hoặc phiên đã hết hạn, hoặc cuộc trò chuyện đã đủ dài khiến phản hồi hết thời gian chờ.
Làm gì nếu tạo lại vẫn không đủ?
Trước tiên, kiểm tra status.openai.com — trong lúc có sự cố, không có biện pháp cục bộ nào giúp được. Nếu không có sự cố, hãy mở cửa sổ riêng tư trên một mạng khác: riêng bài kiểm tra này đã đồng thời loại bỏ tiện ích, bộ nhớ đệm và kết nối thông thường của bạn. Nếu cách đó hiệu quả, bật lại từng thành phần một cho đến khi lỗi xuất hiện lại. Nếu lỗi xảy ra ở mọi nơi và chỉ trong một cuộc trò chuyện dài, hãy chuyển phần cốt lõi sang một cuộc trò chuyện mới.
Điều này có xảy ra với các AI khác không?
Cách diễn đạt này là của ChatGPT, nhưng bất kỳ trợ lý nào truyền phản hồi theo streaming cũng có thể gặp lỗi tương tự. Claude hiển thị thông báo cho biết không thể tạo phản hồi hoàn chỉnh; khi gọi trực tiếp API, lỗi xuất hiện dưới dạng luồng SSE kết thúc mà không có finish_reason, hoặc dưới tải là 529 overloaded_error.
Tại sao lỗi xuất hiện thường xuyên hơn trong các cuộc trò chuyện dài?
Mỗi lượt đều gửi lại toàn bộ chuỗi, vì vậy một cuộc trò chuyện dài đồng nghĩa với quá trình tạo nội dung dài hơn được duy trì trên một kết nối mở duy nhất. Kết nối mở càng lâu thì timeout của proxy, chuyển đổi mạng hoặc một trục trặc upstream càng có nhiều cơ hội làm nó bị ngắt. Bắt đầu lại bằng một cuộc trò chuyện mới cùng bản tóm tắt phần cốt lõi thường tạo ra khác biệt lớn hơn bất kỳ cài đặt trình duyệt nào.
Hướng dẫn liên quan
- Lỗi streaming LLM — SSE bị ngắt, stream bị treo và thiếu usage
- Lỗi 529 overloaded_error của API Claude — đây là gì và cách xử lý
- Định giá Gemini API 2026 — mức phí theo mô hình, ví dụ và quyền truy cập rẻ hơn
Thông tin chi tiết hơn về ý nghĩa lỗi có trong tài liệu tham chiếu lỗi; bạn chỉ mất một phút để lấy khóa qua đăng ký và hướng dẫn xác thực.