Evaluation types
Every evaluation uses one of three types. Choose the type that matches the question you are trying to answer.Classify
classify evaluations assign each input to one of the labels you define, such as Toxic and Non-toxic. You mark one or more labels as passing to get a pass percentage across the dataset.
Use classify when you need a categorical judgment, for example when moderating content, enforcing policy compliance, detecting intent, or filtering and curating a dataset.
Score
score evaluations rate each input on a numeric scale that you define, such as 1 to 10. You set a pass threshold to get the percentage of inputs that meet a quality bar, along with the mean and standard deviation of scores.
Use score when quality is a matter of degree rather than a category, for example when rating helpfulness, factuality, or writing quality.
Compare
compare evaluations judge two candidate responses for the same input and pick the better one, reporting how often each side wins and how often the judge finds a tie. By default, the judge runs twice with the candidate positions swapped to cancel out position bias.
Use compare when you’re running an A/B test between two models, two prompts, or two configurations of the same model.
Datasets and templates
Every evaluation runs over a dataset you upload as JSONL or CSV, where each row holds the same fields. Rows can carry a prompt to generate from, pre-generated responses to judge, or animage_data_urls column for vision inputs.
Jinja2 templates connect your dataset to the models. The input_template injects dataset columns into the prompt sent to the model being evaluated, and the system_template gives the judge or the generating model its instructions. Every dataset column must be used by the job (referenced in a template, holding pre-generated responses, or carrying images); jobs with unused columns fail validation. For the column rules, template syntax, and every parameter, see the evaluations reference.
Model sources
Both the judge and the models being evaluated can come from three sources:- Serverless: A Together AI serverless model from the evaluations allowlist.
- Dedicated: A dedicated model inference endpoint you have deployed, referenced by its endpoint ID (
ep_abc123). The endpoint needs a running deployment. - External: A model from an external provider, addressed with a shortcut or a custom OpenAI-compatible base URL.
Pricing
Evaluations bill only the serverless inference used by the job, at standard serverless rates. External models are billed by their provider through the API key you supply. Jobs run their requests concurrently; completion time depends on dataset size, model size, and current capacity. Small jobs (under 1,000 samples) typically complete in under an hour.Next steps
Run an evaluation
Prepare a dataset, launch a job, and download results with the API.
Parameters and results
Parameters, result formats, and template syntax.
Supported models
Serverless models and external provider shortcuts.