Improve RAG retrieval over a personal notes vault for multi-hop questions.
Validate a knowledge graph against SHACL shapes and run OWL reasoning over it.
Measure whether heavyweight semantic web tooling actually helps retrieval.
Query a personal knowledge vault with SPARQL alongside graph-based ranking.
| jott2121/graph-guard | 0-bingwu-0/live-interpreter | 0cm-labs/tokenizer-benchmark | |
|---|---|---|---|
| Stars | 2 | 2 | 2 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 4/5 | 2/5 | 2/5 |
| Audience | developer | general | researcher |
Figures from each repo's GitHub metadata at analysis time.
The Tier B ontology layer needs extra rdflib/pyshacl/owlrl dependencies via the [rdf] extra.
graph-guard is a Python tool that improves how an AI system retrieves information from a personal collection of notes, such as an Obsidian vault, before answering a question. Most retrieval systems work by matching text that sounds similar to the question, which works fine for simple lookups but fails when the real answer is scattered across several different notes that do not share obvious wording. graph-guard fixes this by building a knowledge graph out of the notes first, so it can follow connections between facts across multiple hops, not just match on similar phrasing. The project reports measured results on its own real 517 note vault rather than a made up benchmark: for multi hop questions, the graph based approach found the right answer more often and ranked it higher than plain text matching, while causing no drop in accuracy on simple lookup questions. It also built a more elaborate, standards based version of the same graph, using formal semantic web technologies, and found that this heavier layer barely improved retrieval further. Its real value instead is added correctness checking, data validation, and compatibility with industry standard graph databases. The project ships three layers. The first is a working core: a typed graph stored in SQLite that ranks connected facts using a technique similar to what search engines use to rank web pages, combined with traditional text matching. The second is an enterprise style layer that exports the same graph into formal ontology formats, adds structural validation rules, and supports a standard graph query language. The third is the measurement layer itself, the set of tests used to produce the numbers described above. To try it, install the package with pip and run the included sample script, which processes seven small notes with no API key or AI model required and shows the graph finding an answer that plain text search would completely miss. For real use, it plugs into a larger retrieval pipeline through a small set of functions, and it's released under the MIT license with a full test suite included.
Adds a knowledge graph to RAG retrieval so it can answer questions whose answer spans several notes.
Mainly Python. The stack also includes Python, SQLite, RDF.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.