Một số điểm cuối API trả về phản hồi dưới dạng luồng theo mặc định, ví dụ như /api/generate. Các phản hồi này được cung cấp ở định dạng JSON phân tách bằng dòng mới (tức là kiểu nội dung application/x-ndjson). Ví dụ:
json
{"model":"gemma4","created_at":"2025-10-26T17:15:24.097767Z","response":"That","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.109172Z","response":"'","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.121485Z","response":"s","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.132802Z","response":" a","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.143931Z","response":" fantastic","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.155176Z","response":" question","done":false}
{"model":"gemma4","created_at":"2025-10-26T17:15:24.166576Z","response":"!","done":true, "done_reason": "stop"}Tắt luồng dữ liệu
Bạn có thể tắt tính năng luồng dữ liệu bằng cách cung cấp {"stream": false} trong thân yêu cầu đối với bất kỳ điểm cuối nào hỗ trợ luồng dữ liệu. Khi đó, phản hồi sẽ được trả về ở định dạng application/json thay thế:
json
{"model":"gemma4","created_at":"2025-10-26T17:15:24.166576Z","response":"That's a fantastic question!","done":true}Khi nào dùng luồng dữ liệu và không dùng luồng dữ liệu
Luồng dữ liệu (mặc định):
- Tạo phản hồi theo thời gian thực
- Độ trễ cảm nhận thấp hơn
- Phù hợp hơn với các phản hồi dài
Không dùng luồng dữ liệu:
- Xử lý đơn giản hơn
- Phù hợp hơn với các phản hồi ngắn hoặc kết quả có cấu trúc
- Dễ xử lý hơn trong một số ứng dụng