<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Two Signals</title><description>Hybrid retrieval in practice: what keyword search finds that embeddings miss, how to fuse two ranked lists, when a reranker earns its latency, and how to tell which signal failed.</description><link>https://context-augmented-llm.com/</link><item><title>How many candidates to retrieve</title><link>https://context-augmented-llm.com/blogs/how-many-candidates-to-retrieve/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/how-many-candidates-to-retrieve/</guid><description>Retrieval depth, fusion depth, rerank depth, final depth. Where each cut-off silently loses the right document, and how to find yours.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate><category>tradeoffs</category><category>fusion</category></item><item><title>Filtering before or after you retrieve</title><link>https://context-augmented-llm.com/blogs/filtering-before-or-after-retrieval/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/filtering-before-or-after-retrieval/</guid><description>A metadata predicate applied after the search returns an empty list; applied before, it changes what the search means. Neither is free.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate><category>tradeoffs</category><category>dense</category></item><item><title>Which signal failed</title><link>https://context-augmented-llm.com/blogs/which-signal-failed/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/which-signal-failed/</guid><description>A query returned nothing useful. A procedure for finding whether lexical missed, dense missed, fusion buried it, or the document was never indexed.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate><category>diagnosis</category><category>fusion</category></item><item><title>When a reranker earns its latency</title><link>https://context-augmented-llm.com/blogs/when-a-reranker-earns-its-latency/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/when-a-reranker-earns-its-latency/</guid><description>A cross-encoder reads the query and passage together, which is why it ranks better and costs more. Where it belongs, what to feed it, and when to skip it.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate><category>reranking</category><category>tradeoffs</category></item><item><title>Fusing two ranked lists</title><link>https://context-augmented-llm.com/blogs/fusing-two-ranked-lists/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/fusing-two-ranked-lists/</guid><description>BM25 scores and cosine similarities aren&apos;t on the same scale. Reciprocal rank fusion, score normalisation, and what each method throws away.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate><category>fusion</category><category>tradeoffs</category></item><item><title>What keyword search misses</title><link>https://context-augmented-llm.com/blogs/what-keyword-search-misses/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/what-keyword-search-misses/</guid><description>Vocabulary mismatch: when the user&apos;s words and the document&apos;s words don&apos;t overlap, term scoring has nothing to score. Where stemming stops helping.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category><category>tradeoffs</category></item><item><title>What vector search misses</title><link>https://context-augmented-llm.com/blogs/what-vector-search-misses/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/what-vector-search-misses/</guid><description>Identifiers, rare terms, negation and exact phrases. Five query classes where embeddings return plausible neighbours instead of the document you asked for.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate><category>dense</category><category>tradeoffs</category></item><item><title>Rewriting the query before you search</title><link>https://context-augmented-llm.com/blogs/rewriting-the-query-before-you-search/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/rewriting-the-query-before-you-search/</guid><description>The string a user types is rarely the best search key. What to strip, what to resolve, what to pull out as a filter, and what to leave alone.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate><category>query-transform</category></item><item><title>Query expansion, and how it drifts</title><link>https://context-augmented-llm.com/blogs/query-expansion-and-how-it-drifts/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/query-expansion-and-how-it-drifts/</guid><description>Adding terms to a query fixes vocabulary mismatch and dilutes precision at the same time. Where synonyms belong, and how expansion goes wrong.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate><category>query-transform</category><category>lexical</category></item><item><title>Searching with a hypothetical answer</title><link>https://context-augmented-llm.com/blogs/searching-with-a-hypothetical-answer/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/searching-with-a-hypothetical-answer/</guid><description>Generate a fake answer, embed that instead of the question, and search with it. Why the trick works, and the three ways it misfires.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate><category>query-transform</category><category>dense</category></item><item><title>One question, three searches</title><link>https://context-augmented-llm.com/blogs/one-question-three-searches/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/one-question-three-searches/</guid><description>A compound question retrieves the average of its parts. How to split it, how to merge the result lists, and when splitting makes things worse.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><category>query-transform</category><category>fusion</category></item><item><title>Learned sparse retrieval, the third signal</title><link>https://context-augmented-llm.com/blogs/learned-sparse-retrieval/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/learned-sparse-retrieval/</guid><description>A model that predicts term weights and adds terms the document never contained. What it inherits from lexical search, and what it costs.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category><category>tradeoffs</category></item><item><title>Weighting one signal over the other</title><link>https://context-augmented-llm.com/blogs/weighting-one-signal-over-the-other/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/weighting-one-signal-over-the-other/</guid><description>A fusion weight is a claim about your query mix, not your corpus. How to derive one, why a global weight is wrong, and when to skip it.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate><category>fusion</category><category>tradeoffs</category></item><item><title>Why a similarity threshold doesn&apos;t travel</title><link>https://context-augmented-llm.com/blogs/why-a-similarity-threshold-doesnt-travel/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/why-a-similarity-threshold-doesnt-travel/</guid><description>The cut-off that worked on your test queries fails on the next batch. What a cosine score is comparable to, and what to threshold instead.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate><category>dense</category><category>diagnosis</category></item><item><title>Typos, and which retriever forgives them</title><link>https://context-augmented-llm.com/blogs/typos-and-which-retriever-forgives-them/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/typos-and-which-retriever-forgives-them/</guid><description>A misspelling deletes a lexical match and blurs a dense one. Fuzzy matching, correction, and why the fix depends on which word was misspelled.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category><category>dense</category></item><item><title>When five results say the same thing</title><link>https://context-augmented-llm.com/blogs/when-five-results-say-the-same-thing/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/when-five-results-say-the-same-thing/</guid><description>Retrieval returned five passages and one fact. Diversity at query time: per-document caps, marginal relevance, and what each one costs you.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate><category>tradeoffs</category><category>diagnosis</category></item><item><title>Which field the match landed in</title><link>https://context-augmented-llm.com/blogs/which-field-the-match-landed-in/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/which-field-the-match-landed-in/</guid><description>A title match and a body match are not worth the same. Field weighting, why concatenating fields loses information, and how boosts go wrong.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category></item><item><title>The analyser decides what you can match</title><link>https://context-augmented-llm.com/blogs/the-analyser-decides-what-you-can-match/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/the-analyser-decides-what-you-can-match/</guid><description>Tokenisation, stemming and stop words run before scoring. Get them wrong and lexical retrieval cannot find terms that are plainly in the text.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category></item><item><title>A reranker cannot find what retrieval missed</title><link>https://context-augmented-llm.com/blogs/a-reranker-cannot-find-what-retrieval-missed/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/a-reranker-cannot-find-what-retrieval-missed/</guid><description>Reranking reorders a candidate set and never adds to it. Why a good reranker on a shallow pipeline is money spent on the wrong stage.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>reranking</category><category>diagnosis</category></item><item><title>Using an LLM as a reranker</title><link>https://context-augmented-llm.com/blogs/using-an-llm-as-a-reranker/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/using-an-llm-as-a-reranker/</guid><description>Asking a general model to order candidates needs no training data and brings non-determinism, position bias and per-query cost. When that trade works.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>reranking</category><category>tradeoffs</category></item><item><title>When the query and the document aren&apos;t in the same language</title><link>https://context-augmented-llm.com/blogs/when-query-and-document-differ-in-language/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/when-query-and-document-differ-in-language/</guid><description>Term matching across languages scores zero. Multilingual embeddings, translating the query, and why a mixed-language corpus fails per language.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category><category>dense</category></item><item><title>Routing a query before you retrieve it</title><link>https://context-augmented-llm.com/blogs/routing-a-query-before-you-retrieve/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/routing-a-query-before-you-retrieve/</guid><description>Classify the query, send it to the retriever equipped for it. Cheaper than fusion, and it fails completely when the classifier is wrong.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>query-transform</category><category>tradeoffs</category></item><item><title>Making a term mandatory</title><link>https://context-augmented-llm.com/blogs/making-a-term-mandatory/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/making-a-term-mandatory/</guid><description>Term scoring is additive, so a document missing the decisive word can still win. How required terms work, and what they do to a hybrid pipeline.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>lexical</category><category>fusion</category></item><item><title>Boosting recency without breaking relevance</title><link>https://context-augmented-llm.com/blogs/boosting-recency-without-breaking-relevance/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/boosting-recency-without-breaking-relevance/</guid><description>Superseded documents outrank current ones because relevance ignores dates. Where a time signal belongs in a ranking, and how it goes too far.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>tradeoffs</category><category>fusion</category></item><item><title>When every document looks the same to the vector index</title><link>https://context-augmented-llm.com/blogs/when-every-document-looks-the-same/</link><guid isPermaLink="true">https://context-augmented-llm.com/blogs/when-every-document-looks-the-same/</guid><description>On a homogeneous corpus, dense scores compress and ranking becomes arbitrary. How to spot a low-contrast corpus and what still discriminates.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>dense</category><category>diagnosis</category></item></channel></rss>