HTTP didn't evolve. It was forced to change by physics, latency, and misuse. Every version exists because the previous one hit a hard constraint. If you understand those constraints, you understand why the web works the way it does - and why so many "best…
Small and local LLMs are often framed as the cheap alternative to frontier models. That framing is wrong. They are not a degraded version of the same thing. They are a different architectural choice, selected for control, predictability, and survivable failure…
In Part 1, we explored why GraphRAG matters. Now let's build a minimum viable GraphRAG with three extraction modes: Mode LLM Calls Best For Heuristic (default) 0 per chunk Fast indexing, structured markdown Hybrid 1 per document Balance of speed and quality…
Your RAG system is great at "needle" questions: retrieve a few relevant chunks and synthesise an answer. It struggles with two common query types: Sensemaking: "What are the main themes across this corpus?" Connective: "How does X relate to Y across different…
I keep seeing the same failure mode in "AI-powered" systems: LLMs are being asked to do jobs we already solved decades ago - badly, probabilistically, and without guarantees. This isn't cutting edge. It's a regression. And this isn't a beginner mistake. The…
Most “chat with your data” systems make the same mistake: they treat an LLM as if it were a database. They shove rows into context, embed chunks, or pick “representative samples” and hope the model can infer structure, quality, and truth from anecdotes. It…
This is Part 3 of the DocSummarizer series: Part 1: Building a Document Summarizer with RAG - The architecture and why the pipeline approach beats naive LLM calls Part 2: Using the Tool - Quick-start guide for the CLI Part 3: Advanced Concepts (this article) -…
GitHub release .NET Version This is Part 2 of the DocSummarizer series. See Part 1 for the architecture and patterns, or Part 3 for the deep technical dive into embeddings and retrieval. Turn documents or URLs into evidence-grounded summaries - for humans or…
Here's the mistake everyone makes with document summarization: they extract the text and send as much as fits to an LLM. The LLM does its best with whatever landed in context, structure gets flattened, and the summary gets increasingly generic as documents get…
📌 Note: This article teaches the fundamentals of web content extraction with LLMs using the simplest possible approach. For production use cases (web summarization, document analysis, agent tools), see DocSummarizer GitHub release - it implements the…