{
  "video": {
    "id": "g_NgCLTibiM",
    "title": "Make Your AI Agents Predictable With Graph Engineering - Zachary Blumenfeld, Neo4j",
    "duration": 1236,
    "upload_date": null,
    "channel": "AI Engineer",
    "source": "AI Engineer",
    "event_format": ""
  },
  "analysis": {
    "video_id": "g_NgCLTibiM",
    "title": "Make Your AI Agents Predictable With Graph Engineering - Zachary Blumenfeld, Neo4j",
    "one_liner": "Compile an agent's procedural knowledge, whether a SKILL.md or successful past decision traces, into a graph-shaped skill stored beside your data, so scripts handle the routing and a cheaper model can do the work with an audit trail.",
    "summary": "Zachary Blumenfeld defines graph engineering as designing agent work as an explicit graph, where nodes do work and edges route state, and argues the name is new but the mechanisms are not. He splits it into execution, context and procedural graphs, focusing on the last two because storing them in a knowledge layer next to your data makes them portable across runtimes, rather than tied to orchestration in one runtime. Neo4j research on compiling skills into graphs showed higher task reward, and a loan-approval demo compiled memory-graph traces into a graph YAML skill run through a small CLI. In the demo, runtime and cost fell sharply and every run could be persisted in the graph for governance.",
    "key_points": [
      "Three graph types: execution graphs (workflow graphs with routers and agents as nodes inside a harness), context graphs (decision traces connected to domain data), and procedural graphs (a skill or procedure expressed as steps such as calls, decision models, escalation and validation).",
      "The stated benefits are predictability (constraining the agent's path), governance and auditability (controlling, guiding and inspecting what it does), and portability (a stored graph can move between runtimes, giving interoperability and a simple stack).",
      "Neo4j is defining a knowledge layer between systems of record (Databricks, BigQuery, Snowflake, documentation, Obsidian/markdown files) and agents, with standard protocols and artifacts available to any runtime or agent.",
      "Neo4j's context graph holds short-term memory (conversation history), long-term memory (extracted entities) and reasoning or decision traces.",
      "A workshop paper from Neo4j compiled skills (SKILL.md files, scripts, references and assets) into graph structures, turning prose into deterministic scripts. Forcing the agent to run the graph increased task reward across diverse fields including physics, computer science and security, using a smaller model (Sonnet, with work moving on to Haiku).",
      "Skills can also be distilled from a context graph and stay connected to past decision traces and data, giving versioned, tracked provenance for each step, drift assessment and human editing. NAMS (Neo4j Agent Memory Service) is the reference architecture.",
      "Customer examples: consultancies working with asset managers on governed compliance and audit reports, including entity resolution across ticker symbols and names from different databases; and Uber using configuration graphs for regulations that vary by geography and car component, with data spread across a sprawl of microservices.",
      "In the Rosa's Bakery loan-approval demo, an agent crawling the graph (business plan PDF, Databricks transactions, lending policy and past decisions) produced an audit trail and a solution, but repeated runs took decision chains of different lengths and nothing enforced an exact path. Decision confidence scores were also uncalibrated.",
      "The compiled graph YAML skill checks hard policy rules with scripts, routes cases that are not auto-approved or denied to a type-safe decision model (risk tier, exposure, outcome), then routes to human escalation or to a report written by the agent with a check-and-lint loop. Fable alone on the graph was correct pretty much every time but took 2.7 minutes; AIP with the procedure almost halved that, Haiku cut model time further and cost went way down, and wall clock averaged about half a minute to 2 minutes versus about 7.5. He cautions that this is a demo, not formal research."
    ],
    "takeaways": [
      "Treat graphs as portable artifacts stored in a knowledge layer beside your data, not only as orchestration inside a runtime, so any harness that can take a skill can run them.",
      "Compile procedures or successful decision traces into a graph-shaped skill, moving routing and hard policy rules into execution scripts and programmatic steps instead of leaving them to the agent.",
      "Once the routing is deterministic, try a simpler model such as Haiku to reduce runtime and cost.",
      "Send decision steps that need structured output to a type-safe decision model rather than relying on uncalibrated agent confidence scores.",
      "Persist runs in the graph so you can inspect status, approvals and denials, which branches were or were not taken, failures and drift."
    ],
    "topics": [
      "graph engineering",
      "agents",
      "context graphs",
      "agent memory",
      "skills",
      "governance",
      "knowledge graphs",
      "cost optimization"
    ],
    "tools": [
      "Neo4j",
      "NAMS (Neo4j Agent Memory Service)",
      "Neo4j Aura",
      "AIP",
      "LangGraph",
      "ADK",
      "Anthropic",
      "Sonnet",
      "Haiku",
      "Fable",
      "Databricks",
      "BigQuery",
      "Snowflake",
      "Obsidian",
      "Uber",
      "Javelin"
    ],
    "quotes": [
      {
        "text": "the name for this is new, but the mechanisms are not really new.",
        "at": "01:00",
        "url": "https://www.youtube.com/watch?v=g_NgCLTibiM&t=60s"
      },
      {
        "text": "practice of designing agent work as an explicit graph.",
        "at": "01:32",
        "url": "https://www.youtube.com/watch?v=g_NgCLTibiM&t=92s"
      },
      {
        "text": "there's nothing actually like enforcing that the agent follows an exact path.",
        "at": "13:54",
        "url": "https://www.youtube.com/watch?v=g_NgCLTibiM&t=834s"
      },
      {
        "text": "And instead of the agent deciding all the routing steps, it's just done programmatically.",
        "at": "15:54",
        "url": "https://www.youtube.com/watch?v=g_NgCLTibiM&t=954s"
      }
    ],
    "words": 4359
  },
  "summary_url": "/#g_NgCLTibiM",
  "transcript": {
    "html": "/transcripts/g_NgCLTibiM.html",
    "txt": "/transcripts/g_NgCLTibiM.txt",
    "vtt": "/transcripts/g_NgCLTibiM.vtt"
  }
}