Bỏ qua nội dung
Trang chính Tin tức Bảng điều khiển

Xử lý dữ liệu phản hồi

Trang này giải thích cách phân tích đúng dữ liệu phản hồi mà 4ALL API trả về, áp dụng cho tất cả các mô hình được gọi qua Chat Completions.

Cấu trúc phản hồi không streaming

{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"model": "gpt-5.5",
"choices": [
{
"index": 0,
"message": { "role": "assistant", "content": "……" },
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 12,
"completion_tokens": 46,
"total_tokens": 58
}
}

Xử lý finish_reason

Giá trịÝ nghĩaCách xử lý khuyến nghị
stopKết thúc bình thườngDùng trực tiếp
lengthBị cắt do đạt giới hạn max_tokensTăng max_tokens hoặc chia đoạn để tiếp tục viết
tool_callsMô hình yêu cầu gọi hàmThực thi hàm rồi trả kết quả về, xem FC 函数调用
content_filterNội dung bị chặn bởi chính sách an toàn của tầng trênĐiều chỉnh prompt

Trường usage

  • usage là căn cứ để đối soát: tính phí theo prompt_tokens / completion_tokens riêng biệt;
  • Khối dữ liệu cuối cùng của cuộc gọi streaming cũng mang usage (xem chi tiết tại 流式输出);
  • Khi khớp với bộ nhớ đệm prompt, prompt_tokens_details.cached_tokens đánh dấu phần được lưu trong cache, tính phí theo hệ số cache, xem 缓存计费

Đề xuất khi phân tích

  • Luôn đọc choices[0].message.content, đừng giả định choices có độ dài lớn hơn 1;
  • Các mô hình dạng suy luận (-thinking) có thể kèm trường reasoning_content, khi hiển thị cần phân biệt với phần nội dung chính, xem 推理模型输出;
  • Khi có lỗi, phản hồi sẽ có cấu trúc {"error": {...}}, cách xử lý xem 错误码与重试】【。