T
together-batch-inference
About together-batch-inference
A skill for developers running large offline inference workloads through Together AI's Batch API. It suits independent requests where latency is not critical and cost matters, covering JSONL input, batch submission, polling, and result reconciliation.
Key features
- 01Prepare JSONL batch requests
- 02Submit and poll batch jobs
- 03Download result and error files
- 04Reconcile outputs by custom_id
Use cases
- 01Classify independent text requests in bulk
- 02Generate synthetic data or transform datasets
- 03Run large summarization and enrichment jobs asynchronously
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ togethercomputer/ skills --skill together-batch-inferenceAfter installing, type/together-batch-inferencein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlreferences/api-reference.mdscripts/batch_workflow.pybatch_workflow.tsDetails
From the project READMETogether Batch Inference
Overview
Use Together AI's Batch API for large offline workloads where latency is not the primary concern.
Typical fits:
- bulk classification
- synthetic data generation
- dataset transformations
- large summarization or enrichment jobs
- low-cost asynchronous inference
When This Skill Wins
- The user has many independent requests to run
- A JSONL request file is acceptable
- Turnaround time can be minutes or hours instead of seconds
- Lower cost matters more than immediate interactivity
Hand Off To Another Skill
- Use
together-chat-completionsfor real-time requests or tool-calling apps - Use
together-evaluationsfor managed LLM-as-a-judge workflows - Use
together-embeddingsfor retrieval-specific vector generation
Quick Routing
- End-to-end batch workflow
- Start with scripts/batch_workflow.py or scripts/batch_workflow.ts
- Request format, status model, and result downloads
- Operational guidance and batch sizing
Workflow
- Build a JSONL file where each line contains
custom_idandbody. - Upload the file with
purpose="batch-api". - Create the batch with
input_file_id=...and the target endpoint. - Poll until the job is terminal.
- Download output and error files, then reconcile by
custom_id.
High-Signal Rules
- Python scripts require the Together v2 SDK (
together>=2.0.0). If the user is on an older version, they must upgrade first:uv pip install --upgrade "together>=2.0.0". - Use
input_file_id, not legacy file parameters. - Keep
custom_idstable and meaningful so result reconciliation is easy. - Batch is for independent requests. If the workload depends on shared conversation state, it is probably the wrong tool.
- Always inspect the error file in addition to the success output.
client.batches.create()returns a wrapper; access the batch object viaresponse.job(e.g.,response.job.id).client.batches.retrieve()returns the batch object directly.- For classification or labeling workloads, set
max_tokenslow (e.g., 4), usetemperature: 0, and constrain the system prompt to return only the label. This minimizes output tokens and cost. - Small batches (under 1K requests) typically complete in minutes. The 24-hour completion window is a maximum, not typical.
Resource Map
- API reference and operational guidance: references/api-reference.md
- Python workflow: scripts/batch_workflow.py
- TypeScript workflow: scripts/batch_workflow.ts
Official Docs
Comments
Markdown supported