Relay365Multi-model API relay desk
← All desk bulletins
Spend watchEN145 desk reads

Cheap Models for Bulk Jobs, Strong Models for Hard Ones

Using your strongest model for every request is an easy starting point, but it can be an expensive habit. Many workloads mix straightforward transformations with tasks that require careful reasoning. Separating those jobs lets you control spending without treating every answer as equally trustworthy. Here is a numbered walkthrough for building that separation.

Separate repetitive work from difficult decisions

1. Write down the jobs your application actually performs. Describe each one as an input, an expected output, and a consequence of failure. Extracting a product category is different from interpreting an ambiguous contract clause, even when both arrive as text.

  • Consider lower-cost models for repetitive tasks with clear rules, such as tagging documents, normalizing fields, or drafting short descriptions.
  • Consider stronger models for tasks involving conflicting instructions, unfamiliar code, multiple dependencies, or substantial ambiguity.
  • Keep human review available when a mistake could have serious consequences, regardless of which model produced the answer.

Choose two candidates instead of testing everything

2. Start with one economical candidate and one stronger candidate, selected using available pricing and your own test results. For a routine classification workload, Claude Haiku 4.5 could be a candidate to evaluate; its suitability still depends on your documents, instructions, and acceptance criteria. Do not infer quality or price from a model name alone.

Keep the first comparison small. Adding many models immediately makes it harder to understand whether a change came from the model, the prompt, or your evaluation process.

Build a small test set before running the batch

3. Collect representative examples and write down what counts as an acceptable result. Include ordinary inputs, incomplete records, confusing wording, and cases that should be rejected. Keep some examples separate from prompt development so you can check whether improvements generalize.

For structured extraction, check required fields and source accuracy. For classification, check the assigned category against reviewed labels. For writing, assess factual support and whether the output follows instructions. Run both candidates on the same examples, then compare quality, latency, and actual usage costs.

Route requests using rules you can explain

4. Begin with a simple routing policy rather than asking another model to make every routing decision. Send familiar, bounded tasks to the economical candidate. Send requests with known complexity signals to the stronger candidate.

  • Escalate inputs that exceed the scope your cheaper route was tested to handle.
  • Escalate requests that require reconciling conflicting evidence or coordinating changes across several components.
  • Reject unsupported tasks explicitly instead of passing them through increasingly expensive models indefinitely.

Document each rule. A routing policy is easier to debug when an engineer can explain why a particular request took a particular path.

Validate cheap outputs before escalating failures

5. Check outputs before accepting them. Validate the schema, allowed values, required fields, and any facts that can be checked against the input. Treat a model's self-reported confidence as a signal to investigate, not proof of correctness.

If validation fails, retry or escalate according to a bounded policy. Preserve the original input when escalating, and include useful validation feedback. Avoid passing only the failed answer to the stronger model, because that can carry the original mistake forward. Set retry and spending limits so one difficult record cannot trigger an uncontrolled loop.

Use a shared access layer when it simplifies testing

6. If your evaluation spans several model families, Relay365 is worth considering as a pay-as-you-go relay desk. It works with Claude Code, Codex, Gemini CLI, and OpenAI SDK clients. Its API base is https://api.api365relay.com; OpenAI clients add /v1. Confirm the model identifiers and supported features for your chosen route before integrating it.

A shared access layer can simplify connection management, but it does not replace model evaluation. Keep credentials outside source code, check data-handling terms, and record usage by task and route.

Expand the batch only after reviewing real outcomes

7. Run a limited batch first. Review accepted outputs as well as escalations: a validator can miss plausible-looking errors. Track the cost per accepted result, including retries and review, rather than comparing token prices alone.

If multi-model access fits your workflow, create a Relay365 account and test one bounded workload. Expand only when the results support it. The goal is not to make every request cheap; it is to spend more where better reasoning makes a meaningful difference.

Further desk bulletins

Curious how it runs on your own code? Sign up →