AI & MCP

AI summaries of long articles: what to keep and what to check

An AI summary holds up when every number matches the original and the cuts are declared. Prompt, cache and review in three steps.

Key points

  • The prompt must ask for numbers with their sentence and for the list of what was left out.
  • A cache read costs a tenth of the input price: it pays off only when the prefix stays the same.
  • Without a set of approved summaries there is no accuracy score worth publishing.

An AI summary of a long article is useful only if every number stays the one in the original: the model compresses the text, not the facts. The rest of the work is review.

The prompt that keeps the numbers

Ask for three things: the numbers with the sentence that explains them, the list of what the summary drops, and a ban on adding facts. Without the second item the summary looks complete and is not.

  • Numbers with their sentence: every figure carries its subject and unit of measure.
  • Declared cuts: the model lists the sections and details it left out, so the reader knows what is missing.
  • No inference: when a fact is absent the answer is "not in the text", not an estimate.
import { generateText } from 'ai';

const summary = await generateText({
  model: 'anthropic/claude-haiku-5.5',
  system:
    'Summarise the article. Keep every number with the sentence that explains it. ' +
    'List what you left out. Never add facts that are not in the text.',
  prompt: article,
  maxOutputTokens: 700,
});

console.log(summary.text);
console.log(summary.usage);

Caching changes the bill

An article read by a hundred people is a hundred requests with the same prefix: a cache read costs a tenth of the input price and pays for itself after a single reuse, while the write costs 1.25 times. The saving exists only when the prefix does not change between requests.

ModelInput $/MTokOutput $/MTokCache read $/MTok
Claude Haiku 5.5, prompt under 100,000 tokens0.100.500.01
Claude Sonnet 5.52100.10
gpt-6-luna0.100.500.01

Prices read on 1 November 2026 from both providers' pages; they change without notice, so the date is part of the figure.

Where a summary goes wrong

  • Negations: "the plan does not cover refunds" becomes "covers refunds" when the model compresses.
  • Orphan numbers: a figure without its subject stays plausible and false.
  • Quotes: quotation marks survive the rewrite and attribute sentences nobody said.

The limitation

A summary cannot be scored without a reference: this site has no set of hand-approved summaries, so we publish no accuracy figure. The tokenizer matters too: the same text costs more tokens in Italian than in English, and the 30% Anthropic states applies to models from 4.7 onwards.

Where to continue

The cost of long context is in long context: real costs, streaming the answer in streaming with the AI SDK, comparing models in evaluating a model for code. Records worth opening: 111,985 components, 1,556 blocks and the 21st.dev sidebar.

Frequently asked questions

Does an AI summary reduce the tokens I pay for?

No, it adds them: the full text is still the input and the summary is a second pass. The saving arrives when the summary replaces the text for later reads, not for the first one.

How long can the article be?

It depends on the model window. Claude models from 4.6 onwards include a 1M token window at standard pricing, according to Anthropic's pricing page read on 1 November 2026. Above 100,000 prompt tokens, Haiku 5.5 moves to $0.50 and $2.50 per million.

Can I trust the numbers in the summary?

Only if the prompt forces the model to copy the sentence that explains each one and to list its cuts. A number without context stays plausible even when it is wrong, so compare it with the original.

Which model should I use for summaries?

A small, fast one for the first draft, because the task is compression rather than reasoning. Haiku 5.5 and gpt-6-luna cost the same, $0.10 input and $0.50 output per million tokens.

Do I regenerate the summary when the article changes?

Yes, and the cache is invalidated with the text: a changed prefix produces a cache write, not a read. Keep the summary date next to the article date.