Three separate Obsidian plugins failed on my vault before I got a working local retrieval setup, and none of the failures had anything to do with my hardware. One hit a paywall on the feature I actually needed. One crashed initializing its own database. One turned out to be a writing assistant wearing a vault search plugin’s name. Before sinking more time into fixing my own build, I ran the same content through NotebookLM (now renamed Gemini Notebook) to see whether the tool I was trying to replace already does what I couldn’t get working myself.
This isn’t a NotebookLM vs local RAG feature comparison. You can find a dozen of those already, and most of them read like spec sheets, sources supported, price tiers, storage limits. What none of them do is take a documented local RAG failure and throw the identical content at the cloud version to see what actually happens. That’s what this is. I used my own published EngineeredAI posts as the source material, partly because it was the fastest way to run a real test, and partly because those posts are already public and indexed. There’s no privacy tradeoff in testing them here. That distinction matters because it’s not an argument for putting private notes in someone else’s cloud, it’s a controlled comparison using content that was never going anywhere sensitive to begin with.

Setting Up the Test
Gemini Notebook accepts PDFs, Google Docs and Slides, web URLs, YouTube links, audio, and pasted text. It does not accept a raw WordPress export file, and it does not accept a direct RSS feed URL. Both failed outright. The workaround was pulling the full URL list from my post sitemap and adding each post individually as a web source, which is slower than a bulk import but works cleanly.
The source cap was the first real surprise. My plan tier is advertised as supporting up to several hundred sources, but the notebook hit a hard wall at exactly 100, short of my full catalog. If you’re planning to load an entire site’s archive, budget for that gap between the marketing number and what actually loads.
Test One: Can It Retrieve What I Already Wrote
The first run loaded eight posts covering local LLM setup, quantization, and the RAG failure itself. I asked it to connect a claim from my hardware recommendation posts to the conclusion in my RAG piece, why VRAM tiering matters for model selection but doesn’t explain why retrieval quality failed. It answered correctly on every specific: the exact model I ran (qwen2.5:7b-instruct-q4_K_M), and all three plugin failure reasons, named precisely and without confusing which plugin did what.
Worth being honest about what this actually proved. My original RAG post already spells out the local versus cloud distinction in its own words. So this test confirmed accurate retrieval more than it proved genuine synthesis. The harder test came next.
Test Two: A Connection Neither Post Actually States
Both my quantization explainer and my RAG post describe a version of the same failure mode, silent, lossy compression, but neither one says so directly, and neither references the other on this point. I asked whether quantization loss and embedding loss compound when you run a heavily quantized model for RAG.
The answer traced every component fact to its correct source. The quantization mechanics came from the right post, the Q4 versus Q5 versus Q8 breakdown backed the precision claims, the embedding and chunking language pulled from the RAG piece. But the actual claim I was testing, that these two losses compound rather than operate independently, wasn’t stated in either source. It sat in the space between the citations, reasoning built on top of accurately cited facts rather than a claim falsely attributed to one of them. That’s a meaningfully different failure mode than fabricating a source, and it’s the kind of distinction that only shows up if you go looking for it.
Test Three: Does It Know When to Say No
The last test paired two posts with zero shared vocabulary on purpose, my quantization writing against a completely unrelated barangay procurement prompt guide built around Philippine government purchasing law. I asked directly whether there was any meaningful connection between them, and told it explicitly to say so if there wasn’t one.
It said there wasn’t, then offered a separate, clearly labeled risk-based observation instead of manufacturing a technical link to satisfy the question. I checked the regulatory specifics it cited against the actual post afterward. The threshold figure and the legal framework it referenced were accurate, and its paraphrase of my own guidance was fair even though it wasn’t a direct quote. One behavior worth flagging on its own: it closed the answer with an unprompted offer to help build a compliance checklist. That’s not a citation problem, it’s a separate habit worth knowing about before you start relying on it for anything.
Where This Leaves the NotebookLM vs Local RAG Question
The advantages are real. Citation accuracy held up across all three tests, it correctly refused to invent a connection when there wasn’t one, and it indexed more content than any of my failed local plugins ever managed to touch. The disadvantages are just as concrete. The source cap sits well below what’s advertised, there’s no clean way to bulk load a site without the sitemap workaround, everything you feed it needs to already be public, and the gap between cited fact and unlabeled inference means you still have to read the actual answer instead of trusting a citation count at a glance.
None of this settles the notebooklm vs local rag question in favor of abandoning a local build. What it actually proved is that my three plugin failures were integration problems, not evidence that local retrieval is a dead end. Hardware was never the bottleneck. A properly functioning citation and retrieval layer is achievable, this test is proof of that much. The design target for my own build is now specific instead of theoretical: whatever I build needs to separate cited fact from inferred connection the same way this did, not just attach a source count to whatever it returns and call that trustworthy.




