Multi-model document
intelligence, grounded in fact.
Dossier is a closed-loop pipeline that extracts atomic facts from a PDF, generates three independent summaries across different model architectures, then verifies every summary against a locked fact list before producing a traceable analytical report.
What is Dossier?
Dossier by Chorus AI Systems is not a chatbot, an agent, or a general-purpose LLM wrapper. It is a deterministic document intelligence pipeline with strict contracts between stages — designed to produce analytical reports that are grounded, verifiable, and fully auditable.
LLMs hallucinate. Single-model outputs are unverified.
A single frontier model summarizing a complex document will confidently assert things that are not in the source text. There is no internal check, no cross-validation, no audit trail.
Three summaries. One locked fact list. A closed verification loop.
Dossier extracts atomic facts first, then generates summaries independently across multiple model families. Each summary is verified against the locked fact list — any contradiction fails the summary and triggers a targeted regeneration.
A structured report with a full audit trail.
The final dossier includes an executive overview, key claims with fact IDs, a compiled synthesis, external context, risks and limitations, and a complete audit trail. Every claim traces back to a source span.
CIA intelligence brief meets New Yorker book review.
Grounded facts. Traceable claims. Explicitly labeled uncertainty. No speculation dressed up as analysis. When confidence cannot be achieved, Dossier halts visibly — never silently.
Hard guarantee: The FactList is locked after the extraction stage. No downstream stage can modify it. Summaries and analysis must conform to the facts — not the other way around.
Seven non-negotiable design rules.
These rules govern every implementation decision in Dossier. They are hard constraints, not guidelines — a stage that violates them is wrong by definition.
Same input plus same config equals the same output, every time. Temperature is zero across all models. No random seeds, no non-deterministic branches.
No summary, analysis, or narrative exists without being grounded in extracted facts. External context is permitted in exactly one designated, labeled section.
Any broken stage gate halts the entire run. There is no silent degradation. A partial dossier is not a dossier.
Every output traces back to source spans in the original document. Every key claim cites a Fact ID from the locked FactList.
Facts, summaries, external context, and opinion are never mixed. Each lives in an explicitly typed artifact that cannot be mutated after creation.
Every decision is inspectable after the fact. The audit trail records model participation, contradiction scores, coverage scores, and which summaries contributed to each compiled section.
No background retries beyond configured limits, no self-directing behavior, no tool-calling loops. Dossier V1 is a pipeline, not an agent.
The seven-stage pipeline.
Each stage consumes explicit input artifacts, produces explicit output artifacts, and either succeeds or fails — nothing in between. State regression is not permitted.
Extracts raw text from the PDF, normalizes formatting, segments into pages and paragraphs, indexes all positions, and hashes the source file for immutability.
A lightweight extractive model pulls atomic, document-grounded facts from the text. No paraphrasing, no interpretation, no synthesis. Every fact references a source page and paragraph.
Three independent models from different vendors and architectures each summarize the document without seeing each other's output. Architectural diversity reduces correlated failure modes.
Each summary is scored against every fact in the FactList. The primary metric is the contradiction score. Failed summaries are regenerated in isolation; the FactList never changes.
Two contextualizer models enrich the verified summaries with historical, disciplinary, methodological, and comparative context. All external claims must be explicitly cited.
Verified summaries are synthesized into a single compiled output. Overlapping claims are emphasized; unsupported or outlier assertions are discarded. Section lineage is recorded for the audit trail.
Assembles the complete dossier: executive overview, key claims with fact IDs, compiled summary, contextual analysis, risks and limitations, and a full audit trail. Exported as structured JSON and a typeset PDF.
The closed-loop verification core.
Stage 4 is the hallucination gate — and the reason Dossier generates three summaries instead of one. A summary that contradicts any extracted fact fails, regardless of how plausible it sounds.
At least 2 summaries have a contradiction score at or below the threshold (default: 0.0). Run proceeds to Stage 5.
Fewer than 2 summaries pass. Failed summaries are regenerated and re-verified. The FactList is unchanged.
Max retries reached without 2 summaries passing. The run halts, a diagnostic artifact is written, and all upstream outputs are preserved.
Primary metric: contradiction_score = contradicted_facts / total_facts. Coverage — how many facts a summary actually mentions — is recorded as a secondary metric for the audit trail. A concise summary that omits facts but contradicts none is acceptable. Only contradictions are disqualifying.
Architecture and artifact contracts.
Every stage passes typed JSON artifacts. No free-form text passes between stages. Artifacts are written to disk immediately on creation and are never mutated afterward.
Model Assignment Map
| Role | Slot | Default model | Purpose |
|---|---|---|---|
| Summarizer A | Model 1 | claude-haiku-4-5-20251001 | Fast, cost-efficient summarization |
| Summarizer B | Model 2 | Qwen/Qwen2.5-72B-Instruct | Different vendor and architecture |
| Summarizer C | Model 3 | meta-llama/Llama-3.3-70B-Instruct-Turbo | Third independent summary |
| Fact Finder | Model 4 | claude-haiku-4-5-20251001 | Extractive only — no synthesis |
| Compiler/Verifier | Model 5 | deepseek-ai/DeepSeek-V3 | Higher quality — verification and compilation |
| Contextualizer A | Model 6 | Qwen/Qwen2.5-72B-Instruct | External context with citations |
Artifact Contracts
Run Folder Layout
Built with.
Practical choices made for correctness and clarity — not to chase novelty. Every dependency earns its place.