Skip to content

jev-graphrag

Neo4j demos using Jev as a calibrated judge in GraphRAG pipelines, starting with entity resolution and a review queue.

Appprototype

Overview

TypeSafe (Jev) x Neo4j GraphRAG demos explores how Jev can improve the decision steps of knowledge-graph extraction and GraphRAG pipelines on Neo4j, such as classify, verify, dedupe and route, while open-ended generation stays with a full LLM. The rule of thumb is: deterministic rules for certain cases, Jev for judgement calls behind a confidence gate, and a full LLM only for what Jev is unsure about.

The first demo ports neo4j-field/dedup-demo, keeping the same three-phase pipeline, dirty dataset and APOC merges but replacing the judge layer. Every same-or-different decision carries a calibrated confidence, and anything below the auto-apply threshold goes to a review queue rather than being merged blindly. It includes a documented experiment on how question scoping and state design affect calibration, and a narrated notebook. The README also lists a backlog of unvalidated GraphRAG use cases.

What the decision model decides

TypeQuestionAnswers
Yes / noDo these two records refer to the same entity?—

How it works

  1. Seed the sample dataset into Neo4j
  2. Generate candidate duplicate pairs
  3. Ask Jev same-or-different with confidence
  4. Auto-merge above the threshold; queue the rest for review

Strengths

  • Avoids blind merges
  • Documents effect of question and state design on calibration
  • Drop-in replacement for an existing judge layer

Caveats

  • Only one demo implemented; backlog unvalidated
  • Requires Neo4j and a TypeSafe key

Getting started

`uv sync`, fill TYPESAFE_API_KEY and Neo4j credentials in .env, then `uv run python demos/dedup_jev/seed_data.py` and `uv run python demos/dedup_jev/run_demo.py`.

At a glance

Type
App
Status
prototype
Language
Python
Runtime
Scripts and notebooks with Neo4j
Has code
yes

Use cases and integrations

How curated lists describe it

  • Small demos + use-case backlog: TypeSafe AI's Jev as a calibrated decision layer for GraphRAG pipelines on Neo4j.

    logicrw/awesome-jev-projects

Frequently asked questions

What does Jev decide?

Whether two records are the same entity, with a confidence used for auto-merging.

What happens to uncertain pairs?

They go to a review queue instead of being merged.

Where should I start?

The narrated notebook in demos/dedup_jev.

Related projects

  • SQLite and Node library adding Jev judgments to SQL for matching, evidence picking, ranking, review queues and semantic CI checks.

    ProjectbetaJavaScript
  • Record linkage for researchers: write the match rule in plain English and Jev judges each candidate pair with a probability.

    ProjectbetaPython
  • Decision-first CSV cleaning: code proposes repairs, Jev scores action, applicability and risk, a fixed policy applies or abstains.

    ProjectprototypePython
  • Sutro's active-learning CLI that finds rows Jev is least sure about, asks you to label them, and uses GEPA to improve the definition.

    CLIbetaPython
  • Linter for Obsidian vaults and LLM wikis that flags contradictions, stale claims, unresolved markers and dangling links with Jev.

    ProjectbetaPython
  • dbt package whose macros run Jev Choice, Noul and Score over SQL values in DuckDB and ClickHouse models.

    ProjectbetaSQL (Jinja)