Skip to main content
AI

A bigger model wasn’t the answer. One sentence was

· 4 min read

Storyboards written by an assistant through our MCP server read better than the ones our own pipeline wrote. The obvious explanation was the model, and the obvious fix was a newer, bigger one. Before changing anything we built a bench, and it pointed somewhere far more useful: a single sentence in our instructions. The same weekend, every claim in a script got a recorded origin.

One model for everything, chosen once

Every text stage of our pipeline, from reading the page to planning, reviewing and revising, ran on one model: Gemini 2.5 Flash. It had been chosen when it was the newest available and never revisited, while newer Flash generations and two Pro models were now within reach.

So the question was fair: was the gap between an assistant’s storyboard and ours simply the model? The tempting answer was to bump the version and ship. Instead we built a bench that runs the real planner, with the real prompt, on the same page across several models, and scores each result with the same checks a production film is judged by.

What the bench said

The first run was not close, and not in the direction we expected:

  • Gemini 2.5 Flash: 80, with one error, 14 per cent under the word budget
  • Gemini 2.5 Pro: 72, with two errors, 66 per cent under budget
  • a 3.1 Pro preview: 52, with three errors
  • a newer Flash preview: 44, with four errors

The Pro model wrote three scenes and twenty-five words for a forty-five-second brief, twice. Under a firm word budget, a bigger model is not automatically a better director. A version bump made on faith would have given every film a shorter, flatter script.

The bench measures the first draft, before our review pass repairs part of it, so these scores are a floor rather than the finished film. A floor is enough to compare models fairly.

Every model followed the same sentence

The more interesting finding was what the models had in common. Every one of them came in under the word budget, by 8, 14, 24 and 66 per cent. Four models erring the same way is not a model problem; it is four models following the instruction they were given.

That instruction said the script “must come to N words or fewer”, and every reason it gave pointed the same way: write more and the film runs long. Nothing named a floor. The retry only fired below 85 per cent of the budget, while our checks judged the result against plus or minus 10. A model that obeyed perfectly wrote comfortably under, and was then flagged by a rule it had never seen.

So we named the band: aim for N, not below 0.92 N, not above 1.05 N, and note that falling short is the common mistake. The retry now uses exactly that band. Same model, same page, three runs: scores of 88, 84 and 96, the length within 3 per cent.

The right model for each stage, chosen by measurement

The default stayed where it was. What shipped is the means to move it safely. The single model setting became four, one per kind of work:

  • mechanical tasks such as language and alignment
  • reading the page, the only stage that looks at a screenshot
  • writing the storyboard
  • reviewing and revising it

Each is read at the moment it is used, so the bench steers the real code path rather than a copy, and one stage can change without touching the others. Each falls back to the one above it. The rule written next to them is short: never swap a model because of its version number; bench each candidate at least three times and compare.

Every claim knows where it came from

The day before, we had strengthened something else in the same scripts. A storyboard is a set of statements about someone’s product, spoken over footage of their own site. The sentence that matters most is the one that sounds true and is not, such as a certification the company does not hold. A word count cannot see that, and neither can a check of the frames or of the language.

So every claim now carries its origin:

  1. the page, or what we read from it
  2. the brief the customer wrote, which is theirs to assert
  3. nowhere

A name that comes from nowhere stops the render for a supervisor pass, and the whole record is kept for every film, so “no problems found” means checked, not skipped. The detector is deliberately narrow, and most of its tests are cases that must not fire: German capitalises every noun, so treating a capital letter as a name would flag every German sentence. You can see how these checks shape our films on our difference page.

See it on your own site

Paste a page and get the narrated film this blog is about. The first one is free.

First film free · no credit card · ready in minutes

← All posts