A safe batch pipeline
- Parse the CSV locally and keep the original row index.
- Validate the selected column and skip empty cells explicitly.
- Build one stable question configuration for the entire job.
- Process a small number of rows concurrently.
- Write each answer to durable local progress as it succeeds.
- Retry 429, timeout, and 5xx responses with bounded backoff.
- Export original rows plus normalized decision columns.
Why not send the whole CSV in one prompt?
A single prompt makes row-to-result mapping fragile, raises context usage, and forces the entire job to fail or retry together. Per-row calls preserve structured output, isolate failures, and make pause/resume straightforward.
Minimal orchestration shape
for each chunk of five rows:
send one decision request per row
wait for the chunk to settle
save successful answers by stable row id
classify retryable and permanent failures
update visible progress
retry transient failures at most twice
export the original rows plus decision fieldsErrors that should not be retried blindly
| Error | Action |
|---|---|
| Authentication or endpoint access denied | Stop the batch and verify the server-side project configuration. |
| Invalid question configuration | Fix the shared configuration before resuming. |
| Rate limit or timeout | Back off, then retry the affected row with the same idempotency record. |
| Server error | Retry a limited number of times and keep all completed rows. |
Use a script or a browser tool?
Write a script when the job is repeatable, belongs in a production pipeline, or needs custom storage. Use a browser runner when the file is small, the rule is one-off, and the value is avoiding setup, retry, and export code.
Sources and verification
Product facts on this page were checked against the following primary sources on October 11, 2026.