How DocketDrift differs from AI legal tools

The closest thing to "AI" in our stack is the voyage-law-2 embedding model, which we use to rank real opinions by similarity to a query — the output is an ordered list of real cases you can click through and verify against the source. Tag suggestions are candidates a human editor reviews; nothing low-confidence gets surfaced as a published tag. There is no chat box, no “summarize this for me,” no synthesized holdings, no AI-drafted text anywhere on the site.

The “AI legal tools” market — Lexis+ AI, Westlaw AI-Assisted Research, CoCounsel, Harvey, Spellbook, Robin AI, Lex Machina, Premonition — is overwhelmingly built on large language models that produce new legal text. They draft briefs, summarize cases, answer “what’s the holding in…?” prompts, and predict outcomes. That is the architecture that hallucinates. The hallucination is not a bug a vendor will eventually patch; it is the same generative behavior that produces the fluent prose in the first place.

What we don’t doWhat we do
Generate legal analysisIndex real, published opinions
Draft briefs, memos, contractsLink to the source URL of every record
Answer “what’s the holding in…?”Show you the actual opinion text
Summarize cases into prosePull verbatim surrounding text around statute citations
Predict outcomes or judge behaviorCount actual prior outcomes (counts only, no narrative)
Synthesize holdingsColor-code the disposition that’s literally printed in the opinion
Chat / answer questionsProvide a tag-suggestion queue a human editor must accept or reject

Where ML appears at all

Two places, both narrow:

  1. Voyage embeddings for semantic search. A 1024-dimension vector representation of each opinion. We compare a query vector to opinion vectors with cosine similarity and return an ordered list of opinion IDs. No text is generated; the only output is “these N opinions are most similar to your query.” You click through and read the actual published text.
  2. Tag-suggestion candidates. Embeddings rank candidate tags by similarity to each opinion. Above a high-confidence threshold the tag is auto-applied and marked AUTO_APPLIED for transparent audit. Below that threshold the suggestion appears in a human-review queue; the editor accepts or rejects. Nothing low-confidence becomes a published tag.

Everything else — case number, release date, disposition, panel composition, statute citations, court breakdown, judge dossiers — is deterministic regex extraction over the actual published text. Either the pattern matches or it doesn’t. There is no LLM in any of those paths, and no LLM is ever asked to synthesize, summarize, or describe what it sees.

Two practical consequences

  • Hallucination is architecturally impossible. The system cannot produce a fake case citation because the system cannot produce any text. Every record traces to an opinion the public can verify against the official source.
  • The human-in-the-loop signal is visible. Every opinion page shows the editorial review status. Every auto-applied tag is marked as such. You can tell at a glance whether a record has been read by a human and whether its tags came from human review.

The promise is plainer than “AI legal research”: we treat the public record as what it is. We organize it. We link to it. We don’t tell you what it means. That’s still your job.

Built with open source

DocketDrift is a solo project standing on civic-tech and open-source infrastructure. The honest accounting of what does the work:

  • Citation extraction (non-NH states) uses eyecite from the Free Law Project — the same reporter-citation tokenizer that powers their CourtListener federal court archive. DocketDrift also uses CourtListener data for backfill ingestion of state appellate opinions. New Hampshire's citation graph runs on a hand-written neutral-cite extractor instead, kept deliberately bespoke as a reference implementation.
  • Semantic search uses voyage-law-2 embeddings from Voyage AI, stored in MariaDB’s native VECTOR column type.
  • The web framework is Django, the Python web framework.
  • The database engine is MariaDB 11.7, with its native VECTOR support for vector similarity search.
  • Client-side interactivity is HTMX, used only where it earns its keep (currently the bulk tag-review admin).

Back to About