Six model families answer independently.
OpenAI, Claude, Gemini, Mistral, DeepSeek, and Grok receive the same prompt. Their original answers stay separate, so the synthesis never replaces the raw evidence.
Consensus & Differences Engine
A clear look at how consens.io combines model answers, checks disagreements, and keeps the judging layer independent.
One question · 6 models What is the longest river in the world?
The Nile is the conventional longest river, but the Amazon has a credible claim. By convention the Nile leads at about 6,650 km Whether the Amazon overtakes it depends on where its mouth is drawn, and a disputed 2007 survey draws it further out than most references do.
Marked passages are checked key claims. Unmarked text was not compared individually.
How it works
Technically, three roles are involved: the answer models produce independent raw responses, your selected Consensus Engine writes the synthesis, and a separate judge extracts agreement and conflict from the result.
The backend authenticates the user, checks tier and usage rules, caps client-sent text, and requires at least two included model answers.
stream_consensus()
stream_differences()
consensus_response + differences_data + usage/share metadata
The UI renders one readable consensus from this payload, marks the anchored passages inline, and keeps the agreement score, the contradiction entries and the judge note attached to it.
OpenAI, Claude, Gemini, Mistral, DeepSeek, and Grok receive the same prompt. Their original answers stay separate, so the synthesis never replaces the raw evidence.
The engine you choose in the dropdown reads only the included answers, ignores excluded ones, and writes one response that preserves common ground plus necessary caveats.
The Differences Judge extracts key claims, maps which models support or dissent, and preferably runs on a different model family than the synthesis engine.
The final payload contains the consensus text, agreement score, claim badges, contradiction entries with their anchors, and judge metadata, so each disputed passage can be marked exactly where it stands.
Model roles
The process is intentionally split. The model that writes the consensus is not treated as the only authority on whether the consensus is reliable.
Answer layer
These are the source answers. They are queried in parallel, shown to you directly, and then passed into the consensus step if they are not excluded.
Synthesis layer
This model reads the included source answers and writes the combined response. Pick a preset (Daily, Balanced, High Quality) or choose a specific model via Custom. Standard and Pro engines can both be used.
Analysis layer
This judge extracts claims and contradictions from the synthesis. For independence, consens.io prefers a different model family from the Consensus Engine.
Differences Engine
After the consensus text is written, consens.io runs a separate analysis pass. Its job is not to rewrite the answer, but to explain how the source models support, qualify, or contradict it.
Only non-empty, non-excluded model answers are used. Each answer is capped before analysis and then renamed to neutral labels like Model A, Model B, and Model C.
Why: anonymization and shuffled order reduce provider-name and position bias in the judge pass.
The prompt asks for central claims, agreeing models, dissenting quotes, difference cards, contradiction severity, verification hints, and the model closest to the consensus.
Types: contradiction for incompatible facts or conclusions, emphasis for different focus or missing context.
The judge tier follows the selected Consensus Engine. Standard consensus uses a standard judge; Pro consensus tries a Pro judge from another model family.
Fallback: primary judge, retry, then the next available family; Pro attempts can fail open to a standard judge.
JSON is repaired if safely possible, model labels are mapped back, quotes are checked against the original answers, and unverifiable quotes are removed.
Output: agreement score, level, major/minor contradiction counts, emphasis counts, and judge metadata.
Structured payload
consensus_anchor: the verbatim passage in the consensus answer that the disagreement is about.What you see
There is one answer to read. Where the judge found a verified disagreement, the passage that carries it is marked in place, and the full analysis stays one click below.
Most models agree on the main recommendation.
The answer combines the repeated points and removes duplicated wording How strong the underlying evidence is turns out to be the open question, because the sources rate the measurement quality differently.
Marked passages are checked key claims. Unmarked text was not compared individually.
Why this helps
Less blind trust
Seeing several model families makes weak spots easier to notice before you act on an answer.
More signal
Repeated claims are separated from one-off claims, so you can scan the strongest common ground first.
Clear caveats
Contradictions are not averaged away. They are shown as specific points to inspect or verify.
FAQ
No. The engine writes a synthesis from the included model responses. Agreement matters, but the output is written as a readable answer with caveats, not as a simple vote.
Yes. In the app you pick a preset (Daily, Balanced, or High Quality) or select a specific consensus model via Custom. If the resulting engine is a Pro engine, the differences analysis tries to use a Pro judge from another family.
If the same model family writes and judges the answer, it may be less likely to challenge its own framing. consens.io therefore prefers an independent family when available.
The backend extracts or repairs a complete JSON object when it can do so safely. If the output still cannot be parsed, raw JSON is not shown to the user.
Try the flow