tomefile.
Labs · early access

Graph retrieval. One hop further.

Some answers sit in two places: a policy and the exception that overrides it. Vector search finds the first. A graph edge brings the second.

01 · Today

What already works.

The graph lives in the same database, in graph_nodes and graph_edges. Each node points at a chunk. You load a graph from JSON and turn the hop on when serving:

$ tomefile graph handbook.tome --input graph.json --output handbook.tome
$ tomefile serve handbook.tome --engine ollama --ollama-model llama3.1 --graph
{
  "nodes": [
    { "id": 1, "label": "vacation", "kind": "policy", "chunk_id": 2 },
    { "id": 2, "label": "first day", "kind": "event", "chunk_id": 3 }
  ],
  "edges": [
    { "id": 1, "src_id": 1, "dst_id": 2, "relation": "see_also" }
  ]
}

With --graph, the server still takes the top k chunks by vector, then adds at most k more that are one edge away. The response says "graph": true when the hop added a chunk. Files without a graph behave exactly as before.

02 · Next

What early access is for.

Writing graph.json by hand does not work on a large corpus. Next is building the graph from the documents during build, and checking when the extra hop helps and when it only adds extra text. That needs real documents. If you have a set where answers sit in more than one file, request access and we will try it on yours first.

03 · Request

Request access.

One email when there is something to try. No newsletter, and your details are not shared.

Stored on our server only to contact you about graph retrieval. To delete it, write to [email protected].