// the take
LinearRAG is the reference implementation for an ICLR 2026 paper that builds GraphRAG-style retrieval graphs without using an LLM to extract entities and relations — it swaps that step for spaCy NER plus embedding-based semantic linking. It's aimed at researchers or ML engineers evaluating cheaper graph construction for RAG over large corpora, not at teams wanting a drop-in retrieval library.
Cutting LLM calls out of graph construction is a genuine architectural win, not a gimmick — most GraphRAG pipelines (Microsoft's included) spend huge token budgets extracting entities/relations per chunk, and replacing that with NER + embedding similarity is backed by actual efficiency and accuracy numbers against baselines in the README figures. The optional vectorized matrix-based retrieval path for GPU acceleration (versus BFS iteration on CPU) shows they cared about query-time performance, not just paper benchmarks. The same group has a published GraphRAG benchmark and several follow-up papers building on this graph construction idea, so the core approach has had more than one shot at scrutiny.
This is paper code, not a library: one run.py entry point, hardcoded relative paths like model/all-mpnet-base-v2, no packaging, no API, and no incremental indexing — adding documents to an existing corpus means rerunning the pipeline from scratch. The 'zero LLM token' claim only covers graph construction; answer generation still calls OpenAI (gpt-4o-mini by default) and NER still needs the heavyweight en_core_web_trf spaCy model, so total pipeline cost isn't actually zero. Retrieval quality is fully downstream of NER quality, and the README's own workaround — swapping to a biomedical spaCy model for the medical dataset — signals that moving to a new domain means hunting for and retuning a different NER model, not just pointing it at new text. There's no evidence of behavior on corpora that grow or change over time, or at scale beyond the fixed benchmark datasets; the 'linear time/space complexity' claim is asymptotic, not something demonstrated operationally.
We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →