Evaluate and ship

Batch testing

Chạy nhiều Messages request có kiểm soát ở phía client

Nếu chưa có batch endpoint được xác nhận cho tài khoản, chạy queue phía ứng dụng với concurrency giới hạn.

# Pseudocode
for case in queue:
    acquire_rate_limit_budget()
    result = call_messages(case, session_id=f"eval-{run_id}-{case.id}")
    persist(case.id, result, usage, latency)
  • Dùng session ID riêng, không chứa PII, cho từng case.
  • Giới hạn worker; exponential backoff có jitter cho 429/5xx.
  • Không retry 4xx không tạm thời.
  • Lưu checkpoint để resume, idempotency key cho side effect.
  • Tách dev/prod key và ngân sách.
  • Chấm sau khi thu thập hoàn tất để tránh làm nghẽn API.

Chạy canary nhỏ trước toàn bộ tập và dừng tự động khi tỷ lệ lỗi/chi phí vượt ngưỡng.