{
  "slug": "graphrag-vs-vector-rag",
  "title": "GraphRAG vs Vector RAG: When to Use a Knowledge Graph Instead",
  "description": "A decision framework for choosing graph-structured retrieval over standard vector RAG: which query types GraphRAG actually wins, what building a knowledge graph costs, named implementations, and hybrid vector-plus-graph patterns.",
  "kind": "sub",
  "order": 12,
  "target_query": "GraphRAG vs vector RAG",
  "secondary_queries": [
    "when to use a knowledge graph instead of RAG",
    "GraphRAG local vs global search",
    "Microsoft GraphRAG vs LightRAG vs HippoRAG",
    "hybrid vector and graph retrieval"
  ],
  "tags": [
    "rag",
    "graphrag",
    "knowledge-graphs",
    "retrieval",
    "agents",
    "production"
  ],
  "published": "2026-08-24",
  "updated": "2026-08-24",
  "words": 1380,
  "estimated_tokens": 1835,
  "premium": false,
  "rights": {
    "access": "free",
    "note": "Editorial guides are always free and never part of the licensed corpus.",
    "license": "https://changegamer.ai/license.xml",
    "pricing": "https://changegamer.ai/api/pricing.json",
    "payment": "https://changegamer.ai/api/payment.json"
  },
  "license": "https://changegamer.ai/license.xml",
  "citation": "ChangeGamer (2026-08-24). GraphRAG vs Vector RAG: When to Use a Knowledge Graph Instead. ChangeGamer. https://changegamer.ai/articles/graphrag-vs-vector-rag (updated 2026-08-24).",
  "bibtex": "@misc{changegamer_graphrag_vs_vector_rag, title = {GraphRAG vs Vector RAG: When to Use a Knowledge Graph Instead}, publisher = {ChangeGamer}, year = {2026}, url = {https://changegamer.ai/articles/graphrag-vs-vector-rag}, note = {Updated 2026-08-24}}",
  "canonical": "https://changegamer.ai/articles/graphrag-vs-vector-rag",
  "markdown": "https://changegamer.ai/articles/graphrag-vs-vector-rag.md",
  "takeaways": [
    "Vector RAG retrieves passages by embedding similarity while GraphRAG retrieves relationships between entities, so GraphRAG wins specifically on multi-hop questions and whole-corpus summarization that co-located prose cannot answer directly.",
    "Building a knowledge graph for GraphRAG costs one or more LLM calls per document chunk for entity and relationship extraction alone, a build expense that standard vector RAG's single embedding pass does not carry.",
    "Microsoft's GraphRAG reference implementation (arXiv:2404.16130) separates local search, which enters through specific entities, from global search, which broadcasts a query across pre-generated community summaries for corpus-wide sensemaking.",
    "HippoRAG reports up to 20% improvement on multi-hop question answering versus standard RAG while running with lower latency than iterative multi-hop retrieval, per its arXiv:2405.14831 paper.",
    "Hybrid vector-plus-graph retrieval, available through LlamaIndex's PropertyGraphIndex or Neo4j's neo4j-graphrag-python package, lets one system answer both \"which chunks are relevant\" and \"how are these entities connected\" without picking a single architecture exclusively."
  ],
  "outline": [
    {
      "depth": 2,
      "text": "When does GraphRAG actually beat vector RAG?",
      "anchor": "when-does-graphrag-actually-beat-vector-rag",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#when-does-graphrag-actually-beat-vector-rag"
    },
    {
      "depth": 2,
      "text": "How does GraphRAG build its index?",
      "anchor": "how-does-graphrag-build-its-index",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#how-does-graphrag-build-its-index"
    },
    {
      "depth": 2,
      "text": "Which GraphRAG implementation should you use?",
      "anchor": "which-graphrag-implementation-should-you-use",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#which-graphrag-implementation-should-you-use"
    },
    {
      "depth": 2,
      "text": "What does GraphRAG cost compared to vector RAG?",
      "anchor": "what-does-graphrag-cost-compared-to-vector-rag",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#what-does-graphrag-cost-compared-to-vector-rag"
    },
    {
      "depth": 2,
      "text": "Is hybrid vector-plus-graph retrieval worth building?",
      "anchor": "is-hybrid-vector-plus-graph-retrieval-worth-building",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#is-hybrid-vector-plus-graph-retrieval-worth-building"
    },
    {
      "depth": 2,
      "text": "A decision checklist: vector RAG, GraphRAG, or hybrid?",
      "anchor": "a-decision-checklist-vector-rag-graphrag-or-hybrid",
      "url": "https://changegamer.ai/articles/graphrag-vs-vector-rag#a-decision-checklist-vector-rag-graphrag-or-hybrid"
    }
  ],
  "faq": [
    {
      "question": "Is GraphRAG better than vector RAG?",
      "answer": "GraphRAG is not universally better than vector RAG — it wins on multi-hop, relational and whole-corpus summarization queries, while vector RAG stays cheaper, faster to build, and equally accurate for single-hop fact lookup and semantic search. The right choice depends on query shape, not on which technique is newer."
    },
    {
      "question": "How expensive is it to build a knowledge graph for GraphRAG?",
      "answer": "Graph construction costs one or more LLM calls per document chunk just to extract entities and relationships, making the build phase substantially more expensive than standard vector RAG's single embedding pass over the same chunks, as documented in the graphrag-for-agents reference."
    },
    {
      "question": "Can I combine vector RAG and GraphRAG in the same system?",
      "answer": "Yes — LlamaIndex's PropertyGraphIndex and Neo4j's neo4j-graphrag-python package both support hybrid retrieval natively, pairing a vector store for fast chunk lookup with a graph store for relational traversal in a single production pipeline."
    },
    {
      "question": "What is the difference between local and global search in GraphRAG?",
      "answer": "Local search enters through specific named entities and expands outward via graph traversal, best for targeted entity-specific questions, while global search broadcasts a query across pre-computed community summaries and aggregates the partial answers, best for whole-corpus thematic questions."
    }
  ],
  "body": "The [pillar guide's decision tree](/articles/rag-in-production) gives graph-structured retrieval one line: reach for it when a query's answer lives in how entities connect rather than in what any single passage states. This article turns that single line into an actual decision — what \"connected\" means in practice, what building a graph index costs beyond a vector index, which named implementations exist as of August 2026, and a checklist for picking one without guessing.\n\n## When does GraphRAG actually beat vector RAG?\n\nGraphRAG wins on three query classes that standard vector retrieval structurally cannot answer well, per [knowledge graphs and GraphRAG for agents](/resources/graphrag-for-agents). The first is multi-hop or relational questions — \"how is entity A connected to entity C through B?\" — which require traversing a path that cosine similarity between a query and a chunk cannot reconstruct, because the connecting fact may live in a document neither entity's chunk mentions. The second is global summarization — \"what are the main themes across this whole corpus?\" — which requires aggregating over an entire document set rather than retrieving a handful of top-k chunks, no matter how well those chunks are ranked. The third is cross-document entity linking, where the same person, organization or concept appears under different surface forms across sources; a graph merges those mentions into one node, while a vector index treats each surface form as a separate, unlinked embedding.\n\nStandard vector RAG remains the better tool for everything else. [RAG and retrieval for agents](/resources/rag-retrieval-for-agents) frames its whole pipeline — chunk, embed, index, retrieve, rerank — around single-hop, fact-lookup questions like \"what does X say about Y?\", and that pipeline is faster to build, cheaper to run, and just as accurate as a graph for that query shape. The decision is not \"which technique is better\" in the abstract; it is which query shape dominates your actual traffic.\n\n## How does GraphRAG build its index?\n\nGraphRAG's index is a property graph of entities and typed relationships, built by having an LLM read each chunk and extract both. A document like \"Acme hired Priya as CTO\" becomes a node for Acme, a node for Priya, and a typed edge such as `Priya –WORKS_AT→ Acme` — structure a vector embedding never represents explicitly. This construction step is the graph's defining expense: it costs one or more LLM calls per chunk, against vector RAG's one embedding call per chunk, and that multiplier compounds across a corpus of any real size.\n\nTwo further stages sit on top of the raw graph:\n\n- **Community detection.** Clustering algorithms such as Leiden group densely connected entities into communities. Microsoft's GraphRAG system (arXiv:2404.16130) then pre-generates a hierarchical LLM summary for each community — the backbone that makes global search possible without re-reading the whole corpus at query time.\n- **Local vs. global search.** Local search embeds the query to find nearest-neighbor entities, then traverses outward through relationships and community context — best for targeted, entity-specific questions. Global search instead broadcasts the query across every pre-computed community summary, collects partial answers in a MAP step, and aggregates them in a REDUCE step — best for whole-corpus sensemaking.\n\n## Which GraphRAG implementation should you use?\n\nAs of August 2026 three named, publicly documented implementations dominate, each with a different cost-versus-capability tradeoff:\n\n| Implementation | Distinguishing mechanic | Source |\n|---|---|---|\n| Microsoft GraphRAG (`microsoft/graphrag`) | Full Leiden-community hierarchy with pre-generated summaries; also ships DRIFT search (combines global and local), a Basic Search baseline, and Question Generation | arXiv:2404.16130 |\n| LightRAG (`HKUDS/LightRAG`) | Dual-layer graph (entities + higher-level concepts) alongside vector embeddings; five query modes including a pure-vector \"naive\" fallback; incremental updates avoid full re-indexing | arXiv:2410.05779, EMNLP 2025 |\n| HippoRAG (`OSU-NLP-Group/HippoRAG`) | Combines the graph with Personalized PageRank, modeled on hippocampal indexing theory; reports up to 20% multi-hop QA improvement over standard RAG with lower latency than iterative retrieval | arXiv:2405.14831, NeurIPS 2024 |\n\nMicrosoft GraphRAG is explicitly not an officially supported Microsoft product, and its own documentation notes graph construction is intentionally expensive — a caution worth taking literally before committing a production budget to it. HippoRAG 2 (arXiv:2502.14802, ICML 2025) extends the original toward continual learning, for corpora that keep growing after the initial build. LightRAG's incremental-update path is the most direct answer to the freshness problem graphs create, discussed next.\n\n## What does GraphRAG cost compared to vector RAG?\n\nGraphRAG costs more to build and more to keep fresh, in exchange for capability vector RAG cannot reach at all. The [tradeoffs the corpus reference documents](/resources/graphrag-for-agents) map cleanly onto operational reality:\n\n- **Build cost.** Vector RAG embeds each chunk once. GraphRAG runs an LLM extraction pass per chunk to produce entities and relationships — a multi-call, multi-dollar step before any query is ever served.\n- **Update path.** A changed source document means re-embedding the affected chunks in vector RAG. In GraphRAG it means re-extracting the affected subgraph and, if community boundaries shift, re-running detection and re-summarizing — a heavier and less incremental operation unless the implementation supports partial updates.\n- **Operational complexity.** A vector index is one moving part. A GraphRAG deployment adds a graph database, an extraction pipeline, and — for global search — a community-summary layer that itself needs to stay synchronized with the underlying graph.\n\nNone of this argues against GraphRAG where multi-hop or global-summarization queries genuinely dominate traffic. It argues against adopting it as a default the way [hybrid retrieval](/articles/hybrid-retrieval-fusion) has become a vector-RAG default — the fixed costs are real and should be measured against actual query logs, not assumed.\n\n## Is hybrid vector-plus-graph retrieval worth building?\n\nHybrid retrieval is worth building when a corpus genuinely needs both fast chunk lookup and relational traversal, and two named tools support it as a first-class pattern rather than a workaround. LlamaIndex's `PropertyGraphIndex` constructs a property graph from documents via LLM extraction, stores it in a pluggable backend such as Neo4j, and exposes multiple retriever types including keyword-entity lookup alongside vector-based graph node retrieval. Neo4j's own `neo4j-graphrag-python` package builds RAG pipelines directly over a Neo4j graph, including a Knowledge Graph Builder pipeline that extracts entities from unstructured text.\n\nThe production logic behind both tools is the same: a vector index answers \"what chunks are relevant?\" cheaply and at scale, while a graph answers \"how are these entities connected?\" for the smaller share of queries that actually need it. A graph can also be exposed to an agent as a callable tool — issuing Cypher or SPARQL queries as discrete, inspectable steps — which folds naturally into the [agentic retrieval patterns](/articles/agentic-retrieval-patterns) already used for tool-based vector search, rather than requiring a separate agent architecture.\n\n## A decision checklist: vector RAG, GraphRAG, or hybrid?\n\nWork through these in order; stop at the first one that resolves your case.\n\n1. **Does the query need one fact from one place?** Single-hop, fact-lookup traffic is vector RAG's home turf — build a graph and you have paid extraction cost for capability the query never uses.\n2. **Does the answer depend on a chain of connected facts?** \"Who founded the company that acquired X?\" needs traversal a vector index cannot reconstruct from similarity alone — this is GraphRAG's strongest case, via local search.\n3. **Does the question ask about the whole corpus, not one document?** \"What are the major themes across everything we have?\" needs the aggregated community summaries global search was built for — plain retrieval has no equivalent.\n4. **Does the same entity appear under many names across sources?** A graph's node-merging behavior resolves this; a vector index leaves each surface form as a separate, disconnected match.\n5. **Do you need both fact lookup and relational traversal in one system?** Reach for a hybrid pattern — `PropertyGraphIndex` or `neo4j-graphrag-python` — rather than running two disconnected retrieval stacks side by side.\n6. **Is the corpus small or changing fast, and is the extraction budget tight?** Stay on vector RAG. Re-extracting a subgraph on every update costs more than re-embedding a chunk, and a fast-moving corpus pays that cost repeatedly.\n\nMost production systems answer step 1 correctly for the majority of their traffic and only need steps 2 through 5 for a narrow slice of queries — which is exactly the case hybrid retrieval was built to serve, rather than a reason to run the whole corpus through graph extraction.",
  "cluster": {
    "id": "rag-in-production",
    "title": "RAG in production",
    "description": "How to run retrieval-augmented generation as a real system — ingestion and chunking, embedding choice and reindexing, hybrid search, reranking, evaluation, freshness, access control, cost, latency, and when RAG is the wrong answer.",
    "status": "complete",
    "pillar": {
      "slug": "rag-in-production",
      "title": "Agentic RAG in Production: The Complete Operator Guide",
      "description": "The operator playbook for agentic RAG in production: ingestion, chunking, hybrid retrieval, reranking, evaluation, freshness and cost.",
      "kind": "pillar",
      "order": 0,
      "html": "https://changegamer.ai/articles/rag-in-production",
      "markdown": "https://changegamer.ai/articles/rag-in-production.md",
      "json": "https://changegamer.ai/api/articles/rag-in-production.json"
    },
    "articles": [
      {
        "slug": "rag-ingestion-pipeline",
        "title": "How to Build a RAG Ingestion Pipeline That Survives Production",
        "description": "The six properties that separate a production RAG ingestion pipeline from a demo script: tested extraction, idempotent writes, incremental updates, deletion propagation, durable execution, and metadata captured at ingest time.",
        "kind": "sub",
        "order": 1,
        "html": "https://changegamer.ai/articles/rag-ingestion-pipeline",
        "markdown": "https://changegamer.ai/articles/rag-ingestion-pipeline.md",
        "json": "https://changegamer.ai/api/articles/rag-ingestion-pipeline.json"
      },
      {
        "slug": "chunking-documents-for-rag",
        "title": "How to Chunk Documents for RAG (Strategy Beats Size)",
        "description": "Chunking decisions that actually move retrieval quality: structural boundaries before fixed windows, parent-document expansion, special handling for tables and code, overlap trade-offs, and tuning against recall@k instead of blog defaults.",
        "kind": "sub",
        "order": 2,
        "html": "https://changegamer.ai/articles/chunking-documents-for-rag",
        "markdown": "https://changegamer.ai/articles/chunking-documents-for-rag.md",
        "json": "https://changegamer.ai/api/articles/chunking-documents-for-rag.json"
      },
      {
        "slug": "choosing-embedding-models",
        "title": "How to Choose an Embedding Model for RAG (and Version It Like a Schema)",
        "description": "Embedding selection as an operations problem: the criteria that dominate total cost of ownership, the never-mix-spaces invariant, reindex migrations with dual indexes, and where quantization fits once cost shows up.",
        "kind": "sub",
        "order": 3,
        "html": "https://changegamer.ai/articles/choosing-embedding-models",
        "markdown": "https://changegamer.ai/articles/choosing-embedding-models.md",
        "json": "https://changegamer.ai/api/articles/choosing-embedding-models.json"
      },
      {
        "slug": "hybrid-retrieval-fusion",
        "title": "How to Combine Keyword and Vector Search in RAG",
        "description": "Why hybrid retrieval is the production default rather than an upgrade: complementary failure modes of lexical and dense search, reciprocal rank fusion versus weighted scoring, parameter choices, and how filtering interacts with fusion.",
        "kind": "sub",
        "order": 4,
        "html": "https://changegamer.ai/articles/hybrid-retrieval-fusion",
        "markdown": "https://changegamer.ai/articles/hybrid-retrieval-fusion.md",
        "json": "https://changegamer.ai/api/articles/hybrid-retrieval-fusion.json"
      },
      {
        "slug": "reranking-retrieved-results",
        "title": "When and How to Rerank Retrieved Documents in RAG",
        "description": "Reranking as a budget decision: why first-stage ranking misorders good evidence, when cross-encoder reranking pays for itself, how to pick candidate depth at the knee, gating by query difficulty, and deduplicating after fusion.",
        "kind": "sub",
        "order": 5,
        "html": "https://changegamer.ai/articles/reranking-retrieved-results",
        "markdown": "https://changegamer.ai/articles/reranking-retrieved-results.md",
        "json": "https://changegamer.ai/api/articles/reranking-retrieved-results.json"
      },
      {
        "slug": "evaluating-rag-systems",
        "title": "How to Evaluate a RAG System (Retrieval Metrics, Generation Metrics, CI Gates)",
        "description": "The evaluation harness that keeps RAG changeable: golden-set construction, retrieval metrics separated from generation metrics, LLM-as-judge screening with human acceptance, CI regression gates, and the logged-query flywheel.",
        "kind": "sub",
        "order": 6,
        "html": "https://changegamer.ai/articles/evaluating-rag-systems",
        "markdown": "https://changegamer.ai/articles/evaluating-rag-systems.md",
        "json": "https://changegamer.ai/api/articles/evaluating-rag-systems.json"
      },
      {
        "slug": "rag-index-freshness",
        "title": "How to Keep a RAG Index Fresh (Staleness Bounds, Not Vibes)",
        "description": "Freshness as an engineered property: per-source staleness contracts, document versioning and tombstones, effective-date filtering, deletion propagation with reconciliation backstops, and the sync-lag metrics that predict stale answers before users report them.",
        "kind": "sub",
        "order": 7,
        "html": "https://changegamer.ai/articles/rag-index-freshness",
        "markdown": "https://changegamer.ai/articles/rag-index-freshness.md",
        "json": "https://changegamer.ai/api/articles/rag-index-freshness.json"
      },
      {
        "slug": "multi-tenant-rag-permissions",
        "title": "Permission-Aware Retrieval: Multi-Tenant RAG Without Leaks",
        "description": "How to enforce access control inside retrieval for multi-tenant RAG: authorization as mandatory pre-filters derived from the authenticated principal, tenant isolation mechanics, permission-negative testing, and the post-filter trap that produces empty answers.",
        "kind": "sub",
        "order": 8,
        "html": "https://changegamer.ai/articles/multi-tenant-rag-permissions",
        "markdown": "https://changegamer.ai/articles/multi-tenant-rag-permissions.md",
        "json": "https://changegamer.ai/api/articles/multi-tenant-rag-permissions.json"
      },
      {
        "slug": "agentic-retrieval-patterns",
        "title": "Retrieval as a Tool: Agentic RAG Patterns That Survive Production",
        "description": "When AI agents consume retrieval as a tool rather than a pipeline stage: narrow tool contracts, hard budgets on iterative retrieval, query decomposition, provenance-carrying results, and keeping trust boundaries inside the retrieval path.",
        "kind": "sub",
        "order": 9,
        "html": "https://changegamer.ai/articles/agentic-retrieval-patterns",
        "markdown": "https://changegamer.ai/articles/agentic-retrieval-patterns.md",
        "json": "https://changegamer.ai/api/articles/agentic-retrieval-patterns.json"
      },
      {
        "slug": "rag-cost-and-latency",
        "title": "How to Cut RAG Cost and Latency Without Cutting Quality",
        "description": "RAG cost and latency as engineered budgets: where the money actually goes, caching layers and their hit-rate economics, routing queries to right-sized models, bounding retrieval fan-out, the hidden lines (reindex migrations, eval compute), and p95 discipline.",
        "kind": "sub",
        "order": 10,
        "html": "https://changegamer.ai/articles/rag-cost-and-latency",
        "markdown": "https://changegamer.ai/articles/rag-cost-and-latency.md",
        "json": "https://changegamer.ai/api/articles/rag-cost-and-latency.json"
      },
      {
        "slug": "rag-failure-modes-runbook",
        "title": "Common RAG Failure Modes and How to Fix Them",
        "description": "An operator runbook for the four RAG failure classes with no dedicated deep-dive elsewhere: retrieval miss, context overload, injection via content at ingestion time, and silent quality degradation — symptom, first diagnostic, and fix for each.",
        "kind": "sub",
        "order": 11,
        "html": "https://changegamer.ai/articles/rag-failure-modes-runbook",
        "markdown": "https://changegamer.ai/articles/rag-failure-modes-runbook.md",
        "json": "https://changegamer.ai/api/articles/rag-failure-modes-runbook.json"
      },
      {
        "slug": "graphrag-vs-vector-rag",
        "title": "GraphRAG vs Vector RAG: When to Use a Knowledge Graph Instead",
        "description": "A decision framework for choosing graph-structured retrieval over standard vector RAG: which query types GraphRAG actually wins, what building a knowledge graph costs, named implementations, and hybrid vector-plus-graph patterns.",
        "kind": "sub",
        "order": 12,
        "html": "https://changegamer.ai/articles/graphrag-vs-vector-rag",
        "markdown": "https://changegamer.ai/articles/graphrag-vs-vector-rag.md",
        "json": "https://changegamer.ai/api/articles/graphrag-vs-vector-rag.json"
      },
      {
        "slug": "when-rag-is-the-wrong-answer",
        "title": "When Is RAG the Wrong Answer? A Decision Guide",
        "description": "A worked decision guide for the four real alternatives to retrieval-augmented generation: including knowledge directly, querying structured data with text-to-SQL, fine-tuning for behavior change, and graph-based retrieval for entity relationships.",
        "kind": "sub",
        "order": 13,
        "html": "https://changegamer.ai/articles/when-rag-is-the-wrong-answer",
        "markdown": "https://changegamer.ai/articles/when-rag-is-the-wrong-answer.md",
        "json": "https://changegamer.ai/api/articles/when-rag-is-the-wrong-answer.json"
      }
    ]
  },
  "navigation": {
    "pillar": {
      "slug": "rag-in-production",
      "title": "Agentic RAG in Production: The Complete Operator Guide",
      "description": "The operator playbook for agentic RAG in production: ingestion, chunking, hybrid retrieval, reranking, evaluation, freshness and cost.",
      "kind": "pillar",
      "order": 0,
      "html": "https://changegamer.ai/articles/rag-in-production",
      "markdown": "https://changegamer.ai/articles/rag-in-production.md",
      "json": "https://changegamer.ai/api/articles/rag-in-production.json"
    },
    "previous": {
      "slug": "rag-failure-modes-runbook",
      "title": "Common RAG Failure Modes and How to Fix Them",
      "description": "An operator runbook for the four RAG failure classes with no dedicated deep-dive elsewhere: retrieval miss, context overload, injection via content at ingestion time, and silent quality degradation — symptom, first diagnostic, and fix for each.",
      "kind": "sub",
      "order": 11,
      "html": "https://changegamer.ai/articles/rag-failure-modes-runbook",
      "markdown": "https://changegamer.ai/articles/rag-failure-modes-runbook.md",
      "json": "https://changegamer.ai/api/articles/rag-failure-modes-runbook.json"
    },
    "next": {
      "slug": "when-rag-is-the-wrong-answer",
      "title": "When Is RAG the Wrong Answer? A Decision Guide",
      "description": "A worked decision guide for the four real alternatives to retrieval-augmented generation: including knowledge directly, querying structured data with text-to-SQL, fine-tuning for behavior change, and graph-based retrieval for entity relationships.",
      "kind": "sub",
      "order": 13,
      "html": "https://changegamer.ai/articles/when-rag-is-the-wrong-answer",
      "markdown": "https://changegamer.ai/articles/when-rag-is-the-wrong-answer.md",
      "json": "https://changegamer.ai/api/articles/when-rag-is-the-wrong-answer.json"
    }
  },
  "resources": [
    {
      "slug": "graphrag-for-agents",
      "html": "https://changegamer.ai/resources/graphrag-for-agents",
      "markdown": "https://changegamer.ai/resources/graphrag-for-agents.md",
      "json": "https://changegamer.ai/api/resources/graphrag-for-agents.json"
    },
    {
      "slug": "rag-retrieval-for-agents",
      "html": "https://changegamer.ai/resources/rag-retrieval-for-agents",
      "markdown": "https://changegamer.ai/resources/rag-retrieval-for-agents.md",
      "json": "https://changegamer.ai/api/resources/rag-retrieval-for-agents.json"
    }
  ]
}