Sample article — starter content for NeuralSys.
Introduction
"Should I use a vector DB or a knowledge graph?" is the wrong question. They answer different questions: what is similar? versus what is true and connected?
The Core Tradeoff
| Vector DB | Knowledge Graph | |
|---|---|---|
| Query | Similarity | Structure, paths, constraints |
| Strength | Fuzzy, semantic recall | Multi-hop reasoning, provenance |
| Weakness | No guarantees, drifts | Schema effort, extraction cost |
| Best for | "Find docs like this" | "Who owns what, connected how?" |
When Vectors Alone Fail
- Multi-hop questions ("services owned by teams that depend on X")
- Freshness and permissions ("only docs I may see, updated this quarter")
- Contradictory sources with no provenance
Embeddings will happily return a confident, similar, wrong answer.
The Pragmatic Hybrid
You don't need a full ontology on day one. Start here:
Documents → chunks → embeddings (vector DB)
Documents → entities + relations (graph, even a small one)
Query → retrieve from both → fuse → generate with citationsdef hybrid_answer(query):
vec_hits = vector_db.search(query, k=8)
graph_hits = knowledge_graph.neighbors(query_entities(query), depth=2)
evidence = fuse(vec_hits, graph_hits)
return llm.generate(query, evidence, require_citations=True)Key Takeaways
- Use vectors for similarity, graphs for structure — fuse at retrieval time.
- Start with a small, high-value graph (ownership, dependencies, lineage), not the universe.
- Provenance metadata is what makes either store production-worthy.