Skip to content

The partial answer

What the model does when it only half-knows.

8 min

The model often knows the shape of an answer without knowing every value in it. Most products collapse that shape down to a blanket refusal ("I don't have access to…") or fake confidence. The partial answer pattern carves a middle path: say what you know, mark what you don't, offer the fix.

"A useful gap is better than a confident fiction or a cowardly refusal."
The pattern

Deliver the certain, mark the uncertain.

The answer streams normally, but spans that come from stale or missing data are visually marked — a dashed underline, a dimmer tone, an "estimated" qualifier. At the end of the answer, the product offers a specific, bounded action to close the gap: "Pull live numbers from the dashboard — about 20 seconds."

This isn't hedging. It's handing the user a clean trade between speed and completeness, and letting them decide.

Partial answer with a tool-call offer
Dashed spans are the parts the model didn't verify live
Answer with a gap, not a refusal

Press run to watch a response hedge the part it's unsure of without stalling the rest.

The partial answer pattern: deliver the certain parts, mark the uncertain parts, offer the fix.

The why

Refusal is rarely the honest move.

Users ask broad questions. Broad questions usually have partial answers already in the model's context. Refusing to answer the known parts because the full answer isn't available is a kind of passive dishonesty. The user loses signal they could have used. The partial answer pattern says: here's what I can tell you, here's exactly where the gap is, here's the way to close it.

Three moves

Marks that carry the signal.

  • Span-level marks. Underline the specific numbers, names, or dates that are approximate. Don't blanket-flag the paragraph.
  • A named fix. Don't say "check the source." Say "pull from the Amplitude dashboard" with a button. Specificity is the difference between trust and vagueness.
  • Time estimate on the offer. "About 20 seconds" is more persuasive than a loading state. Users can decide in advance whether they want to wait.

The trap

Marking without offering.

Showing a user a dimmed span without a way to fix it is worse than silence. It surfaces the uncertainty without giving the user anywhere to go. The user is left to either distrust the whole answer or do the lookup themselves — which is the job they opened your product to avoid.

Failure modes

What this pattern gets wrong when it gets wrong.

Silent truncate
The response ran out of room or tokens and the product didn't tell the user where it stopped.
Implicit refusal
Declining a request without saying the word no — a vague answer, a pivot, a change of subject.
Confidence theater
Language or typography that performs certainty beyond what the model actually has.
Seen in the wild

Three shipping variants worth copying.

  • A visual rule between 'what I know' and 'what I don't'
  • A one-line offer to fetch the missing part if a source is available
  • A regenerate-only-the-gap affordance