dynavec / Docs / Knowledge graph

Knowledge graph

Attach meaning to embeddings and traverse it to guide search.

Alongside the vector index, dynavec keeps a lightweight entity-relationship graph in DynamoDB. Entities link to documents; you can traverse the graph first (cheap key lookups) to gather a candidate set, then rank only those against the query embedding. That is the DynamoDB → S3 Vectors reference join.

# build the graph
db.graph_add_edge("acme", "competes_with", "globex", namespace="kb")
db.graph_link("acme", ["doc-1", "doc-2"], namespace="kb")

# GraphRAG: traverse from seeds, then rank related docs by the query
hits = db.graph_search(
    "recent product launches",
    seed_entities=["acme"],
    hops=2,
    top_k=10,
    namespace="kb",
)

Traversal helpers: graph_add_node, graph_add_edge, graph_link, graph_neighbors.

The graph uses embedded adjacency lists (one item per node). Very high fan-out entities want a sort-key adjacency design — on the roadmap.