{"id":15329,"date":"2026-06-02T00:56:43","date_gmt":"2026-06-02T00:56:43","guid":{"rendered":"https:\/\/techtrendfeed.com\/?p=15329"},"modified":"2026-06-02T00:56:44","modified_gmt":"2026-06-02T00:56:44","slug":"rag-is-not-machine-studying-and-the-ml-toolkit-solves-the-unsuitable-downside","status":"publish","type":"post","link":"https:\/\/techtrendfeed.com\/?p=15329","title":{"rendered":"RAG Is Not Machine Studying, and the ML Toolkit Solves the Unsuitable Downside"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p class=\"wp-block-paragraph\"> six months to fine-tuning their RAG pipeline.<\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">They ran 5 Optuna sweeps.<\/li>\n<li class=\"wp-block-list-item\">They added a customized reranker.<\/li>\n<li class=\"wp-block-list-item\">They fine-tuned an embedding mannequin on their very own information.<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">Manufacturing accuracy by no means moved. Pilots stored complaining about the identical flawed solutions. Six months in, the bug was within the parser.<\/p>\n<p class=\"wp-block-paragraph\">The workforce was misplaced, not caught. <strong>RAG isn&#8217;t machine studying, and the ML toolkit solves the flawed downside.<\/strong> That is the one most costly false impression in enterprise RAG at present. It prices months of cautious work, the flawed individuals on the flawed duties, and a quiet erosion of belief within the system.<\/p>\n<p class=\"wp-block-paragraph\">RAG seems sufficient like machine studying that the ML toolkit feels just like the pure subsequent step. The instincts (hyperparameter optimization, analysis datasets, explainability frameworks) aren&#8217;t flawed in isolation. They&#8217;re imported from the flawed discipline. The strategies that work for coaching fashions don\u2019t work for assembling search methods.<\/p>\n<p class=\"wp-block-paragraph\">The purpose isn&#8217;t that ML is dangerous. The embedding mannequin that powers vector search is itself a deep studying mannequin, however you don\u2019t prepare it, you devour it. The purpose is that <strong>the system you\u2019re constructing round it&#8217;s not a mannequin<\/strong>, and treating it as one wastes time, picks the flawed metrics, hires the flawed individuals, and hides the actual failure modes.<\/p>\n<p class=\"wp-block-paragraph\">The \u201cRAG isn&#8217;t ML\u201d place is one piece of <em>Enterprise Doc Intelligence<\/em> <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/towardsdatascience.com\/document-intelligence-a-series-on-building-rag-brick-by-brick-from-minimal-to-corpus-scale\/\" target=\"_blank\" rel=\"noreferrer noopener\">Quantity 1<\/a>, which builds enterprise RAG brick by brick. The 4 bricks (parsing, query parsing, retrieval, technology) are the engineering toolkit this text factors to.<\/p>\n<h2 class=\"wp-block-heading\">1. Two totally different issues<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#two-different-problems\"\/><\/h2>\n<p class=\"wp-block-paragraph\">Machine studying solves issues the place the true reply is unknown and must be predicted. Will this buyer churn? What\u2019s the likelihood this transaction is fraud? Is that this picture a cat? You don\u2019t know the reply prematurely. That\u2019s why you prepare a mannequin. The mannequin learns from labeled examples, generalizes to new inputs, and produces a prediction. Efficiency is measured in combination, throughout 1000&#8217;s of check circumstances, as a result of particular person predictions could be flawed whereas the mannequin remains to be helpful general.<\/p>\n<p class=\"wp-block-paragraph\">RAG solves a distinct downside. The reply to \u201cwhat&#8217;s the efficient date of this contract?\u201d exists, written on web page one of many doc, or it doesn\u2019t exist wherever. There\u2019s nothing to foretell. The system both finds the reply within the doc and stories it faithfully, or it fails and may say so. Efficiency is binary on the query stage (bought it or didn\u2019t) even should you measure combination charges throughout many questions.<\/p>\n<p class=\"wp-block-paragraph\">These variations are concrete:<\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">In ML, \u201cthe mannequin was flawed on 8% of circumstances\u201d is a characteristic of the system. You construct redundancy, downstream checks, human overview for the borderline circumstances. In RAG, \u201cthe system gave a flawed reply 8% of the time\u201d is a bug. Every of these 8% has a particular trigger: the flawed passage was retrieved, the best passage was retrieved however the mannequin paraphrased it badly, the reply wasn\u2019t within the corpus and the system made one up. They aren\u2019t statistical noise to optimize on common. They\u2019re individually fixable failures.<\/li>\n<li class=\"wp-block-list-item\">In ML, you may\u2019t usually inform <em>why<\/em> the mannequin bought a selected case flawed. That\u2019s why explainability is a analysis discipline. In RAG, you may at all times inform. The retrieval logs which passages it returned. The generator noticed precisely these passages. If the reply is flawed, you stroll the chain backward and discover the damaged hyperlink. There\u2019s nothing hidden.<\/li>\n<li class=\"wp-block-list-item\">In ML, the mannequin improves by coaching on extra information. In RAG, the system improves by indexing higher, parsing extra rigorously, retrieving extra exactly, prompting extra clearly. None of that&#8217;s coaching. It\u2019s engineering.<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">That distinction modifications which instruments you attain for when one thing breaks.<\/p>\n<p class=\"wp-block-paragraph\">The circumstances catalogued in Article 2 fall precisely right here: negation, precise identifiers, inside acronyms, sign dilution in lengthy context, topical proximity outranking the precise reply. None of these transfer once you swap embedding fashions or sweep chunk sizes. They aren\u2019t bugs a mannequin can study its method out of, as a result of there isn&#8217;t a labeled sign saying <em>\u201cthat is the best line\u201d<\/em> for the mannequin to coach on. The repair is structural (query parsing, professional key phrases, retrieval that is aware of the doc\u2019s construction), and the following sections stroll by means of the three ML reflexes that decide the flawed software as a substitute.<\/p>\n<h2 class=\"wp-block-heading\">2. Three arguments that don\u2019t apply<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#three-arguments-that-dont-apply\"\/><\/h2>\n<p class=\"wp-block-paragraph\">Three ML strategies get imported into RAG initiatives by default: hyperparameter optimization, analysis datasets with prepare\/check splits, and feature-attribution explainability. Every is cheap inside ML. Every misfires right here.<\/p>\n<h3 class=\"wp-block-heading\">2.1 The hyperparameter argument<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#the-hyperparameter-argument\"\/><\/h3>\n<p class=\"wp-block-paragraph\">The most typical framing goes one thing like this: chunk measurement, overlap, top-k, similarity threshold. These are hyperparameters, and you need to optimize them the way in which you optimize ML fashions, utilizing instruments like Optuna or Ray Tune. Run a sweep, plot the curves, decide the perfect configuration.<\/p>\n<p class=\"wp-block-paragraph\">In these setups, <code>top_k<\/code> is the variety of passages the retriever retains, and <code>similarity_threshold<\/code> is the minimal cosine rating a passage should attain to qualify. The code beneath declares all 4 as numbers to optimize:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-python\"># What groups sometimes write (and why it is the flawed exercise)\nimport optuna\ndef goal(trial):\n    chunk_size    = trial.suggest_int(\"chunk_size\", 100, 2000)\n    chunk_overlap = trial.suggest_int(\"chunk_overlap\", 0, 200)\n    top_k         = trial.suggest_int(\"top_k\", 1, 20)\n    threshold     = trial.suggest_float(\"threshold\", 0.5, 0.95)\n    accuracy = run_rag_pipeline_and_score(\n        chunk_size, chunk_overlap, top_k, threshold\n    )\n    return accuracy\nexamine = optuna.create_study(path=\"maximize\")\nexamine.optimize(goal, n_trials=200)  # two weeks of compute later...<\/code><\/pre>\n<p class=\"wp-block-paragraph\">There\u2019s a grain of fact right here. These variables do have an effect on retrieval high quality, and they&#8217;re value tuning. The difficulty begins with the phrase \u201chyperparameter,\u201d which brings in a metaphor with hidden assumptions.<\/p>\n<p class=\"wp-block-paragraph\">In machine studying, a hyperparameter controls how a mannequin learns: studying charge, regularization energy, variety of layers. The mannequin itself is what modifications throughout coaching; the hyperparameter shapes that change. In RAG, there isn&#8217;t a studying. The chunk measurement doesn\u2019t management how one thing learns. It controls how a operate splits textual content, the identical method each time, no matter what you\u2019ve fed it earlier than.<\/p>\n<p class=\"wp-block-paragraph\">What seems like a hyperparameter is a configuration alternative, the type you\u2019d make when configuring a search engine. The experience wanted to tune it effectively isn\u2019t statistical optimization. It\u2019s understanding the construction of your paperwork and the form of your questions. Chunk measurement of 512 tokens may go superbly on dense tutorial papers and disastrously on insurance coverage contracts the place a single clause spans 800 tokens and breaking it in half loses the conditional that offers the clause its that means. No grid search will let you know that. You might want to learn your paperwork.<\/p>\n<p class=\"wp-block-paragraph\">This is the reason groups who grid-search chunk measurement usually discover a \u201cfinest\u201d worth that performs marginally higher on the check set and identically on manufacturing information. The optimum on the check set was an artifact of the check set, not a real enchancment within the underlying system. They\u2019ve optimized a quantity, not solved an issue.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Frequent pitfall:<\/strong> A workforce operating Optuna over chunk_size, top_k, and similarity_threshold for 2 weeks, ending up at chunk_size=487 with no thought why. The sincere reply to \u201cwhy 487?\u201d is \u201cas a result of Optuna stated so.\u201d That reply doesn\u2019t survive an actual manufacturing failure, and it doesn\u2019t generalize when the doc distribution shifts. A bit measurement of 500 chosen as a result of that\u2019s roughly the dimensions of a paragraph on this corpus is extra defensible than 487 chosen as a result of a sweep landed there.<\/p>\n<\/blockquote>\n<p class=\"wp-block-paragraph\">The precise exercise isn\u2019t tuning numbers. It\u2019s deciding <strong>structurally<\/strong> methods to chunk. By part? By paragraph? By the desk of contents entries? By query kind, with totally different chunkers for brief lookups vs lengthy clauses? Answered by  paperwork and questions, not by optimization curves.<\/p>\n<p class=\"wp-block-paragraph\">There\u2019s a deeper cause chunk measurement resists optimization: by development, no single chunk measurement can serve each query. Take two questions on the identical insurance coverage contract:<\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\"><em>\u201cWhat&#8217;s the efficient date?\u201d<\/em> The reply is one line, someplace on web page one. It desires a piece sufficiently small to pin down a single line exactly.<\/li>\n<li class=\"wp-block-list-item\"><em>\u201cWhat are the exclusions of the coverage?\u201d<\/em> The reply could be one web page, or three pages, relying on how the insurer wrote it. It desires a piece giant sufficient to seize a whole part.<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">There is no such thing as a quantity that satisfies each. A bit measurement of 200 tokens chops the exclusions part into incoherent fragments. A bit measurement of 2000 tokens buries the efficient date in surrounding noise.<\/p>\n<p class=\"wp-block-paragraph\">Looking for \u201cthe perfect chunk measurement\u201d is due to this fact not a tuning downside. The framing itself is damaged: no single quantity can serve a distribution of questions whose solutions have totally different lengths.<\/p>\n<p class=\"wp-block-paragraph\">You can, in precept, make chunk measurement reply to the query by coaching a small mannequin that predicts the best chunker from the query\u2019s options: classify the intent, regress over the anticipated reply size, output a method. That may be machine studying utilized legitimately, on an issue the place one thing is being realized.<\/p>\n<p class=\"wp-block-paragraph\">However you don\u2019t must. You possibly can write the rule down. Have a look at a query and you&#8217;ll inform whether or not it asks for a date, a piece, or a comparability. So can a website professional. So can ten traces of Python with hand-written situations over key phrases. The deeper cause RAG isn\u2019t machine studying is that, for many of the choices contained in the system, <strong>you already know the reply<\/strong>, or somebody in your workforce does. Machine studying is the software for issues the place no person is aware of the reply prematurely.<\/p>\n<p class=\"wp-block-paragraph\">The precise method is to cease searching for one chunk measurement and begin routing totally different query sorts to totally different retrieval methods:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-python\"># What to do as a substitute: route by query kind\ndef chunk_for_question(query: str, line_df, toc_df):\n    intent = classify_intent(query)\n    if intent == \"point_lookup\":          # \"what's the efficient date?\"\n        return chunk_by_line(line_df)\n    elif intent == \"section_retrieval\":   # \"what are the exclusions?\"\n        return chunk_by_toc_section(line_df, toc_df)\n    elif intent == \"comparability\":          # \"evaluate clauses A and B\"\n        return chunk_by_full_section(line_df, toc_df)<\/code><\/pre>\n<p class=\"wp-block-paragraph\">The 2 code blocks above are the complete argument of this part. The primary runs Optuna over 4 numbers for 2 weeks and produces a worth no person can defend. The second makes one structural resolution per query kind and produces a system whose habits anybody can clarify.<\/p>\n<p class=\"wp-block-paragraph\">Later articles develop methods to classify intent (Article 6, on query understanding) and the way the totally different retrieval strategies and granularities are applied (Article 7, on retrieval). The purpose right here is simply that the exercise isn\u2019t tuning, it\u2019s routing.<\/p>\n<h3 class=\"wp-block-heading\">2.2 The analysis dataset argument<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#the-evaluation-dataset-argument\"\/><\/h3>\n<p class=\"wp-block-paragraph\">The subsequent ML import is analysis methodology. The reasoning goes: RAG, like all ML system, wants a correct analysis dataset: questions paired with anticipated solutions, break up into prepare and check units, scored with precision and recall. Frameworks like RAGAS have made this much more tempting, providing metrics for faithfulness, reply relevancy, and context recall that look satisfyingly ML-ish.<\/p>\n<p class=\"wp-block-paragraph\">Analysis is beneficial. The difficulty isn\u2019t whether or not to judge. It\u2019s what the metrics imply. In machine studying, analysis tells you whether or not a mannequin has generalized from coaching information to unseen examples. The prepare\/check break up exists since you wish to detect overfitting: a mannequin that memorized the coaching set slightly than studying a transferable sample.<\/p>\n<p class=\"wp-block-paragraph\">In RAG, there may be nothing to generalize. Overfitting (when a mannequin memorizes coaching examples slightly than studying a sample that transfers to new information) can not occur right here: the system doesn&#8217;t change between queries. The retriever computes the identical cosine distances each time. The generator follows the identical immediate template. There is no such thing as a mannequin adjusting to information.<\/p>\n<p class=\"wp-block-paragraph\">What analysis measures in RAG is three issues, all of that are protection and high quality questions, not statistical generalization:<\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\"><strong>Does my corpus include the reply?<\/strong> If not, the system can\u2019t discover it. This can be a content material query, not a mannequin query.<\/li>\n<li class=\"wp-block-list-item\"><strong>Does my retriever discover the best passage?<\/strong> If the reply is within the corpus however the retriever missed it, the system fails. This can be a search query.<\/li>\n<li class=\"wp-block-list-item\"><strong>Does my generator keep devoted to what was retrieved?<\/strong> If the best passage was retrieved however the mannequin paraphrased it incorrectly or hallucinated extras, the system fails. This can be a technology self-discipline query.<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">Each factors to a particular repair. Mixing them up beneath an combination \u201caccuracy\u201d rating loses info. A 75% accuracy from \u201ccorpus is lacking 25% of the documented matters\u201d calls for totally different motion than a 75% accuracy from \u201cretriever misses the best passage 25% of the time.\u201d The primary requires ingesting extra paperwork. The second requires fixing the retriever. An combination metric that treats them the identical hides the diagnostic.<\/p>\n<p class=\"wp-block-paragraph\">This additionally explains why groups utilizing RAGAS-style frameworks generally report nice metrics on a held-out check set after which watch the system fail in manufacturing. The check set coated matters the place the corpus had solutions and the retriever occurred to seek out them. Manufacturing has questions whose solutions aren&#8217;t within the corpus in any respect, and the system both hallucinates or fails to say \u201cnot discovered.\u201d The metric was excessive on the check set as a result of the check set was pleasant. The system isn\u2019t damaged. The analysis was.<\/p>\n<p class=\"wp-block-paragraph\">What it&#8217;s worthwhile to consider, damaged down by query kind, takes about ten traces:<\/p>\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-python\"># Retrieval recall, per query, per intent\ndef evaluate_retrieval(reference_set, retrieve_fn):\n    rows = []\n    for ref in reference_set:\n        retrieved_lines = retrieve_fn(ref.query)\n        recall = len(set(retrieved_lines) &amp; set(ref.expected_lines)) \/ len(ref.expected_lines)\n        rows.append({\n            \"query\": ref.query,\n            \"intent\":   ref.intent,\n            \"recall\":   recall,\n            \"hit\":      recall &gt; 0,\n        })\n    return pd.DataFrame(rows)\n# At all times break down by query kind, by no means simply an combination\ndf.groupby(\"intent\")[\"hit\"].imply()\n# point_lookup        0.92\n# section_retrieval   0.41   &lt;-- that is the actual downside\n# comparability          0.55<\/code><\/pre>\n<p class=\"wp-block-paragraph\">A single combination accuracy of 63% would have hidden the disaster on section_retrieval. The per-intent breakdown reveals it immediately. Recall right here means: on questions the place the reply exists within the corpus, did the retriever discover the best passage? Grouping by intent (point_lookup, section_retrieval, \u2026) exhibits <em>which sort<\/em> of query fails, and due to this fact <em>which half<\/em> of the pipeline to repair.<\/p>\n<p class=\"wp-block-paragraph\">RAG has two analysis surfaces with very totally different shapes.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The retrieval floor<\/strong> is a search downside: did the best passage land in entrance of the mannequin? Measuring this implies checking, on a reference set of questions, whether or not the related traces or pages had been retrieved in any respect. The metric is recall on the stage you care about (recall at line, at web page, at part) and it\u2019s particular to your corpus. No one else can run this analysis for you. Your corpus is exclusive. That is the place the majority of analysis effort belongs.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The technology floor<\/strong> is totally different. As soon as the best passage has been retrieved, the query turns into: did the mannequin produce a devoted reply, in the best format, with correct citations, and a clear \u201cnot discovered\u201d when the passage didn\u2019t include the reply? A few of this you do consider your self, however a big half is already evaluated by the LLM distributors. OpenAI, Anthropic, and Mistral spend huge assets testing whether or not their fashions observe JSON schemas, refuse to invent, and respect immediate directions. These are the size on which they enhance their fashions. As a RAG builder, you\u2019re not coaching the generator. You\u2019re <strong>consuming<\/strong> it. If the mannequin fails badly at returning structured JSON or stays untrue to its inputs, you\u2019ll discover inside an hour of integration. That\u2019s not a metric to arrange; it\u2019s a sanity examine that\u2019s both apparent or high-quality.<\/p>\n<p class=\"wp-block-paragraph\">What this implies in observe: most of your analysis time ought to go into retrieval (which is corpus-specific and solely you are able to do it), not into technology (which is generally the seller\u2019s downside, and which exhibits apparent failures quick). Groups that spend weeks constructing elaborate technology analysis suites are often laying aside the tougher retrieval work that may enhance the outcome.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Going additional:<\/strong> <em>Evaluating Your System<\/em> (later within the collection) walks by means of methods to construct a reference set on your particular corpus, the 4 metrics that matter, and why per-question-type metrics are important whereas combination metrics are deceptive.<\/p>\n<\/blockquote>\n<h3 class=\"wp-block-heading\">2.3 The explainability argument<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#the-explainability-argument\"\/><\/h3>\n<p class=\"wp-block-paragraph\">Machine studying has its personal toolkit for explainability. SHAP values to attribute predictions to options. LIME for native approximations of complicated fashions. Consideration visualization for transformers. When individuals begin asking for RAG explainability (\u201cwhy did the system give this reply?\u201d) they naturally flip to those instruments. They wish to rating retrieval relevance, weight doc contributions, visualize which tokens influenced the output.<\/p>\n<p class=\"wp-block-paragraph\">The irony is that RAG is extra explainable by design than most ML fashions. There\u2019s no want for SHAP. There\u2019s no opacity to crack open. The system retrieved these particular passages from these particular sources, and the reply was constructed on prime of them. That <strong>is<\/strong> the reason. It\u2019s documentary, not statistical.<\/p>\n<p class=\"wp-block-paragraph\">This factors to a deeper asymmetry between machine studying and RAG. In machine studying, the human has instinct however can not quantify. Ask who survived the Titanic and other people say <em>wealth<\/em>, <em>age<\/em>, <em>class<\/em>: none flawed, none exact. The mannequin has no such doubt: match a call tree and the foundation break up is <em>intercourse<\/em>, the following lower is a precise age threshold no person would have guessed, then class. Each break up is a quantity instinct alone couldn&#8217;t have produced. The mannequin exists to place these numbers down.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/contributor.insightmediagroup.io\/wp-content\/uploads\/2026\/05\/image-399-1024x556.png\" alt=\"\" class=\"wp-image-663514\"\/><figcaption class=\"wp-element-caption\"><em>An actual sklearn resolution tree on Titanic information. Each threshold is a quantity instinct couldn\u2019t produce \u2013 Picture by writer<\/em><\/figcaption><\/figure>\n<p class=\"wp-block-paragraph\">For textual content information, the path reverses. The person can learn the supply. A lawyer scanning a contract sees the situations, the exceptions, the dates. A compliance officer reads a coverage and is aware of whether or not a habits breaches it. The textual content doesn\u2019t disguise its that means, and the professional is already a fluent reader.<\/p>\n<p class=\"wp-block-paragraph\">There are exceptions: sarcasm and irony are the basic ones, the place fashionable LLMs generally catch what a literal reader misses. However in enterprise contexts the person is the area professional.<\/p>\n<p class=\"wp-block-paragraph\">The mannequin isn\u2019t there to elucidate the textual content. It\u2019s there to do the studying at corpus scale, and a quotation is sufficient to let the professional confirm any reply in seconds.<\/p>\n<p class=\"wp-block-paragraph\">When a person asks \u201cwhy this reply?\u201d, the best response isn\u2019t a heatmap of consideration weights or a characteristic attribution rating. It\u2019s: \u201cI checked out pages 12, 47, and 89 of this contract. Right here\u2019s the precise textual content I used. The reply follows from that textual content.\u201d If the person disagrees with the reply, they will learn the supply themselves and choose. They don\u2019t want an explainability framework. They want a quotation.<\/p>\n<p class=\"wp-block-paragraph\">The fifty-line pipeline from Article 1 already confirmed this. The immediate requested the mannequin to return the beginning and finish line numbers (with their pages) alongside the reply, in a structured JSON; the annotator then highlighted these precise traces on the PDF. No SHAP, no LIME, no consideration visualization, no specialised observability platform. The \u201crationalization\u201d was a facet product of how the immediate was written. The quotation is a part of the reply, not an evaluation layer added on prime.<\/p>\n<p class=\"wp-block-paragraph\">The hint is the reason. Studying it requires no interpretation, simply studying.<\/p>\n<p class=\"wp-block-paragraph\">Importing ML explainability into RAG is fixing an issue that doesn\u2019t exist. SHAP on a retrieval rating is utilizing a scalpel to open a mailbox. The retrieval rating is already a quantity you computed on inputs you may learn. There\u2019s nothing to attribute that you just don\u2019t already see.<\/p>\n<p class=\"wp-block-paragraph\">The deeper failure of the ML-explainability framing is that it makes you give attention to the flawed factor. You begin making an attempt to elucidate <em>why<\/em> a selected passage scored greater than one other in vector house, a near-impossible query that doesn\u2019t matter. What issues is whether or not the best passage was retrieved in any respect, and whether or not the reply faithfully displays it. These are questions you may reply by studying the logs and the supply. No tooling wanted.<\/p>\n<h2 class=\"wp-block-heading\">3. What modifications once you see RAG appropriately<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#what-changes-when-you-see-rag-correctly\"\/><\/h2>\n<p class=\"wp-block-paragraph\">When you cease treating RAG as ML, two issues change. The day-to-day instruments, metrics and other people reorganize round search slightly than coaching. And a deeper query (<em>the place the intelligence sits<\/em>) strikes from the mannequin to the workforce. Each come from the identical framing.<\/p>\n<h3 class=\"wp-block-heading\">3.1 Instruments, metrics, individuals<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#tools-metrics-people\"\/><\/h3>\n<p class=\"wp-block-paragraph\">Three concrete issues change.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The instruments change:<\/strong> You don\u2019t want PyTorch, or a coaching cluster, or hyperparameter optimization frameworks for the system itself. You want a very good parser, a versatile retriever, cautious immediate engineering, and structured logging of all the things that occurs. The elements that <em>are<\/em> ML (the embedding mannequin, the LLM) you devour as companies. They\u2019re commodity inputs, not belongings you construct or prepare.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The metrics change:<\/strong> Combination accuracy offers option to per-failure-mode metrics: retrieval recall (did we discover the best passage?), reply faithfulness (did the mannequin keep on with it?), extraction accuracy (when extracting structured information, did the values match?), not-found charge (when the reply isn\u2019t within the corpus, did we are saying so cleanly?). Every measures one thing particular, every maps to a particular a part of the pipeline you may repair.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The individuals change:<\/strong> A pure ML workforce making an attempt to ship a RAG system usually misses what makes it work, and what makes it fail. The abilities that matter most are software program engineering (the system has many transferring elements that must compose cleanly), area experience (somebody has to know what a very good reply to a website query even seems like), and knowledge retrieval instinct (somebody has to suppose like a search engine designer, not a mannequin coach). ML experience is beneficial, nevertheless it\u2019s not the dominant ability. A workforce of ML researchers and no area professional will produce a superbly tuned system that misses the purpose. A workforce with one ML-aware engineer, two software program engineers, and one area professional will often outperform it.<\/p>\n<h3 class=\"wp-block-heading\">3.2 The place the intelligence sits<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#where-the-intelligence-sits\"\/><\/h3>\n<p class=\"wp-block-paragraph\">The shift in individuals factors to a deeper query: the place does the intelligence of the system dwell?<\/p>\n<p class=\"wp-block-paragraph\">In an ML system the intelligence lives within the mannequin. The mannequin holds the patterns. The workforce feeds it coaching information and tunes the loss operate. In a RAG system the intelligence lives within the workforce. The lawyer is aware of which clauses to have a look at first. The underwriter is aware of what \u201cdeductible\u201d means, and which web page often carries it. The compliance officer is aware of which regulation applies to which product. None of that lives contained in the embedding mannequin. None of it comes out of a hyperparameter sweep. It already lives within the heads of people that have learn these paperwork for years.<\/p>\n<p class=\"wp-block-paragraph\">Watch an underwriter open a brand new coverage. She doesn\u2019t learn it linearly. She jumps to the exclusions part first as a result of she\u2019s learn 5 hundred of those and is aware of that\u2019s the place the entice often lives. She checks the schedule of advantages for the deductibles and ceilings. She checks the territory clause. Three minutes in, she has a clearer view of the contract than any embedding mannequin would produce on a thousand of these contracts. That behavior is what the system has to amplify.<\/p>\n<h3 class=\"wp-block-heading\">3.3 Amplifying the professional, brick by brick<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#amplifying-the-expert-brick-by-brick\"\/><\/h3>\n<p class=\"wp-block-paragraph\">The job of an enterprise RAG system is to <strong>amplify<\/strong> that experience at scale, not exchange it. What that appears like is dependent upon the brick.<\/p>\n<p class=\"wp-block-paragraph\"><strong>Parsing<\/strong> comes first. If the parser turns a contract\u2019s PDF into scrambled textual content, no downstream cleverness recovers it. If the doc has a working desk of contents, the parser has to extract it cleanly, as a result of the TOC is what the professional depends on to navigate. When a doc has no TOC in any respect (scanned faxes, slide decks exported to PDF, outdated typewritten insurance policies), reconstructing one turns into a job in itself, usually extra helpful than any retrieval tweak.<\/p>\n<p class=\"wp-block-paragraph\"><strong>Query understanding<\/strong> carries the workforce\u2019s vocabulary throughout the hole between how a person phrases a query and the way the doc writes the reply. The pilot person sorts <em>kettle<\/em>, the contract says <em>small electrical equipment<\/em>. The compliance officer sorts <em>information breach<\/em>, the coverage says <em>unauthorized disclosure of non-public info<\/em>. The professional is aware of the mapping. The query parser turns that mapping right into a lookup desk: translations throughout languages, spelling variants, plural kinds, inside acronyms. None of it&#8217;s realized from information, it&#8217;s dictated by the professional and written down.<\/p>\n<p class=\"wp-block-paragraph\"><strong>Retrieval<\/strong> amplifies what the professional already does by hand. The professional searches key phrases; that half is already simple. What the professional can not do at scale is run regex patterns over 1000&#8217;s of pages, examine whether or not two phrases co-occur inside the identical paragraph, or mix boolean situations throughout the entire corpus. The retriever does that work quick, then palms candidates again so the professional can confirm.<\/p>\n<p class=\"wp-block-paragraph\"><strong>Technology<\/strong> does the 2 issues the professional would in any other case do by hand: cite the precise passage that helps the reply, and format the uncooked worth into one thing usable. The string <code>3455434<\/code> on the web page turns into <code>\u20ac3,455,434<\/code> within the reply. <code>20260516<\/code> turns into <code>Could 16, 2026<\/code>. <em>thirty days from the date of the loss<\/em> stays verbatim, with a quotation again to the clause so the professional can confirm in a single click on.<\/p>\n<p class=\"wp-block-paragraph\">Articles 5, 6, 7, and eight develop every brick in flip: the parser that extracts TOC construction, the professional dictionary that maps vocabulary, the TOC-aware retriever, the typed-answer generator. Similar precept each time: decide up a bit of human experience and transfer the repetitive half to the machine.<\/p>\n<p class=\"wp-block-paragraph\">That is additionally why the collection is cautious with autonomous brokers. It prefers key phrase retrieval to embedding similarity by default. It treats reranker tuning as a final resort. Every of these defaults assumes there isn&#8217;t a professional to seek the advice of. In enterprise contexts the professional is at all times there. The system ought to hearken to them.<\/p>\n<p class=\"wp-block-paragraph\">Should you work in a setting with no professional, with unbounded questions, with very totally different paperwork, this collection won&#8217;t be your finest information. Common-purpose retrieval and autonomous brokers are a greater match there.<\/p>\n<h2 class=\"wp-block-heading\">4. Two elements, two failure modes<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#two-parts-two-failure-modes\"\/><\/h2>\n<p class=\"wp-block-paragraph\">A helpful option to image RAG is <strong>as a search engine, plus an LLM that writes the reply<\/strong>. Two elements, every with a transparent job, every with its personal method of breaking.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The search engine<\/strong> retrieves passages from paperwork. Given a query, return the traces, paragraphs, or sections most probably to include the reply. This can be a pure search downside: selectivity, recall, rating. A long time of data retrieval idea apply. The truth that a part of it makes use of neural embeddings doesn\u2019t change its nature; embedding similarity is only one rating sign amongst a number of.<\/p>\n<p class=\"wp-block-paragraph\"><strong>The LLM<\/strong> takes a passage and a query and produces a natural-language reply with a quotation. The LLM doesn\u2019t <em>discover<\/em> the reply. The search engine already did that. The LLM <em>writes<\/em> the reply from a passage that\u2019s been positioned in entrance of it. It\u2019s nearer to a translator or a scribe than to an oracle.<\/p>\n<p class=\"wp-block-paragraph\">Mapping again to the 4 bricks from Article 1: parsing, query understanding, and retrieval collectively make up the search engine; technology is the LLM. The brick view is the operational one (one field of code per brick); the two-part view is the psychological mannequin you carry in your head when one thing goes flawed.<\/p>\n<p class=\"wp-block-paragraph\">The 2 elements fail in numerous methods, and the analysis begins on the seam between them. Pull the hint from a failing question: had been the retrieved passages in entrance of the mannequin, and did they include the reply?<\/p>\n<p class=\"wp-block-paragraph\"><strong>If the reply wasn\u2019t within the retrieved passages<\/strong>, the search engine is the offender, and the repair is upstream. Was the best web page corrupted by the parser (OCR errors, multi-word phrases break up throughout traces, two-column interleaving)? Did the query parser miss a synonym the professional vocabulary ought to have expanded? Did the retrieval mechanism rank the best web page out of <code>top_k<\/code>, or break on punctuation that wanted a regex? Or is the related doc simply not within the corpus? 4 very totally different fixes, all upstream. <em>\u201cTune the retriever\u201d<\/em> is meaningless till you\u2019ve localized which one. The identical 4 bricks that amplify the professional when working (part 3.3) break in their very own methods right here, every with its personal deep-dive article (Articles 5, 6, 7).<\/p>\n<p class=\"wp-block-paragraph\"><strong>If the reply was within the retrieved passages however the response is flawed<\/strong>, the LLM is the offender, and the repair is downstream. Frequent patterns: the mannequin paraphrased and misplaced a conditional, returned the uncooked <code>3455434<\/code> as a result of the schema left the reply free-form, cited the flawed line numbers, invented a worth not within the passage, or produced a solution when it ought to have stated <em>\u201cnot discovered\u201d<\/em>. 5 technology bugs, 5 totally different fixes, all within the immediate, schema, or post-validation layer (Article 8). None of them get higher by tuning the retriever.<\/p>\n<p class=\"wp-block-paragraph\">Right here\u2019s what that analysis seems like in observe. A person asks <em>\u201cwhat number of heads does the bottom Transformer use?\u201d<\/em> (reply: 8, web page 5 of the <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/1706.03762\"><em>Consideration Is All You Want<\/em><\/a> paper, Vaswani et al.\u00a02017; arXiv non-exclusive distribution license, declared on the <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/1706.03762\">arXiv summary web page<\/a>). The system stories <em>\u201c16\u201d<\/em>. Pull the hint.<\/p>\n<p class=\"wp-block-paragraph\">Retrieval returned pages 4, 7, 8. None of them include the base-model configuration: web page 8 describes the <em>large<\/em> mannequin (which does use 16 heads), pages 4 and seven describe encoder construction. The generator learn the flawed pages and returned the quantity it discovered there. The bug is retrieval, not technology.<\/p>\n<p class=\"wp-block-paragraph\">Why did retrieval miss web page 5? The key phrases had been <code>['heads', 'base', 'model']<\/code>. Web page 7 has <em>heads<\/em> six instances; web page 5 has it twice. The key phrase retriever ranked web page 7 greater as a result of it scored by uncooked time period frequency, with out checking whether or not <code>base<\/code>, <code>mannequin<\/code>, and <code>heads<\/code> co-occur on the identical line. 5 traces of Python within the key phrase retriever repair it.<\/p>\n<p class=\"wp-block-paragraph\">What didn\u2019t occur: no person fine-tuned something. No one ran a sweep. No one added a reranker. The diagnostic took 5 minutes; the repair took a day.<\/p>\n<p class=\"wp-block-paragraph\">This separation is what makes RAG workable in observe. Every failure has a particular half to repair. There\u2019s no coaching loop the place retrieval and technology get tangled collectively. They\u2019re impartial elements, composed cleanly, every replaceable by itself. Manufacturing methods achieve quite a bit from this property: you may swap embedding fashions, swap LLMs, swap parsers, all with out retraining something.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>The entire pipeline is configuration, not mannequin.<\/strong><\/p>\n<\/blockquote>\n<p class=\"wp-block-paragraph\">When one thing goes flawed, you alter a configuration: the retrieval methodology, the immediate, the schema, a validation rule. You don\u2019t retrain. You modify a Python file, you ship, you measure the per-question-type metric for the affected class, and also you affirm the repair. Iteration cycle: hours, not weeks.<\/p>\n<p class=\"wp-block-paragraph\">When you see RAG as configuration to assemble slightly than habits to study, the remainder of the collection\u2019 decisions observe naturally.<\/p>\n<h2 class=\"wp-block-heading\">5. Six months on the flawed downside<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#six-months-on-the-wrong-problem\"\/><\/h2>\n<p class=\"wp-block-paragraph\">A workforce at a mid-size enterprise is given six months to ship a RAG system over a number of thousand inside paperwork. They begin by constructing an analysis dataset of 500 questions, splitting it 70\/30 into prepare and check. They arrange Optuna to brush chunk measurement, overlap, top-k, and similarity threshold. The primary sweep takes every week of compute, comes again with a \u201cfinest\u201d configuration, and the workforce ships it for inside testing.<\/p>\n<p class=\"wp-block-paragraph\">The pilot customers complain instantly. The system solutions fluently however is flawed half the time on questions that the evaluators clearly know: questions on particular clauses, particular dates, particular numerical limits. The workforce\u2019s response is to broaden the analysis dataset, run one other sweep, fine-tune the embedding mannequin on artificial question-document pairs, and add a reranker. Three extra months go by. Manufacturing accuracy doesn\u2019t transfer.<\/p>\n<p class=\"wp-block-paragraph\">What was flawed: the parser was treating scanned pages with degraded OCR layers as in the event that they had been native textual content. About 30% of the corpus was successfully unreadable, however the workforce\u2019s analysis set occurred to be drawn from the readable 70%. No quantity of chunk measurement optimization, embedding fine-tuning, or reranker integration may repair it: a 3rd of the paperwork had been producing rubbish. A two-day funding in checking every web page (the work of Article 5, on parsing) would have caught this on day one.<\/p>\n<p class=\"wp-block-paragraph\">The workforce had spent six months in ML mode (sweeping hyperparameters, rising analysis units, fine-tuning fashions) when the repair was a parser change.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/contributor.insightmediagroup.io\/wp-content\/uploads\/2026\/05\/image-400-1024x778.png\" alt=\"\" class=\"wp-image-663515\"\/><figcaption class=\"wp-element-caption\"><em>ix months of ML exercise on the TEAM lane; the corpus bug sat untouched on the CORPUS lane \u2013 Picture by writer<\/em><\/figcaption><\/figure>\n<p class=\"wp-block-paragraph\">This story is composite, however each component of it has occurred in actual initiatives. The sample is constant: ML reflexes drive the workforce towards optimization actions that really feel productive, whereas the structural issues sit untouched within the parser, the corpus, or the not-found logic. The primary intuition on a struggling RAG system shouldn\u2019t be \u201clet\u2019s tune\u201d. It must be \u201clet\u2019s hint what occurs to a failing question, finish to finish, and discover the damaged hyperlink.\u201d<\/p>\n<h2 class=\"wp-block-heading\">6. Conclusion<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#conclusion\"\/><\/h2>\n<p class=\"wp-block-paragraph\">RAG seems like machine studying. The resemblance is shallow. The reply exists within the doc or it doesn&#8217;t. There is no such thing as a statistical generalisation, no studying curve, no prepare\/check break up that maps to actual failures. The precise framing is search engine meeting: a search engine plus an LLM, two elements you may repair independently, with per-failure-mode metrics changing combination accuracy.<\/p>\n<p class=\"wp-block-paragraph\">The price of holding on to the ML framing isn&#8217;t mental. It&#8217;s six months of cautious work on the flawed downside. Article 4 turns the best framing right into a working diagnostic: RAG issues sit on a grid of doc complexity by query management, and every cell requires a distinct stack.<\/p>\n<p class=\"wp-block-paragraph\">Article 4 is one entry level into <em>Enterprise Doc Intelligence<\/em> <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/towardsdatascience.com\/document-intelligence-a-series-on-building-rag-brick-by-brick-from-minimal-to-corpus-scale\/\" target=\"_blank\" rel=\"noreferrer noopener\">Quantity 1<\/a>, which builds enterprise RAG brick by brick throughout parsing, query parsing, retrieval, and technology: each brick dealt with with the engineering toolkit, not the ML one.<\/p>\n<figure class=\"wp-block-image size-large\"><a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/towardsdatascience.com\/document-intelligence-a-series-on-building-rag-brick-by-brick-from-minimal-to-corpus-scale\/\"><img decoding=\"async\" src=\"https:\/\/contributor.insightmediagroup.io\/wp-content\/uploads\/2026\/05\/enterprise_document_intelligence_rag_series_overview-1024x538.png\" alt=\"\" class=\"wp-image-664263\"\/><\/a><\/figure>\n<h2 class=\"wp-block-heading\">7. Sources and additional studying<a rel=\"nofollow\" target=\"_blank\" href=\"file:\/\/\/C:\/Users\/shike\/Documents\/Github\/rag\/book\/03_rag_is_not_ml.html#sources-and-further-reading\"\/><\/h2>\n<p class=\"wp-block-paragraph\">The article places RAG within the 50-year IR custom (Manning, Raghavan, Sch\u00fctze, <a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/nlp.stanford.edu\/IR-book\/information-retrieval-book.html\">Introduction to Info Retrieval<\/a>, 2008) slightly than the ML custom. The empirical declare that BM25 usually beats dense retrievers out-of-distribution comes from Thakur et al.\u00a0(<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2104.08663\">BEIR<\/a>, NeurIPS 2021). The per-failure-mode framing is similar path as Barnett et al.\u00a0(<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2401.05856\">Seven Failure Factors<\/a>, 2024). The sincere concession is that the reranker is a skinny realized layer the place ML methodology applies. The framing the article makes use of for explainability is <strong>quotation as the reason<\/strong>: a RAG reply carries its supply traces, so the explainability tooling ML initiatives price range for turns into pointless.<\/p>\n<p class=\"wp-block-paragraph\"><strong>Similar path because the article:<\/strong><\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Manning, Raghavan, Sch\u00fctze, <em><a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/nlp.stanford.edu\/IR-book\/information-retrieval-book.html\">Introduction to Info Retrieval<\/a><\/em> (Cambridge, 2008). The 50-year IR custom the article places RAG in.<\/li>\n<li class=\"wp-block-list-item\">Thakur et al., <em>BEIR<\/em> benchmark, NeurIPS 2021 (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2104.08663\">arXiv:2104.08663<\/a>). Dense retrievers tuned on MS MARCO usually lose to BM25 out-of-distribution. Empirical assist for the <em>IR, not ML<\/em> framing.<\/li>\n<li class=\"wp-block-list-item\">Barnett et al., <em>Seven Failure Factors When Engineering a RAG System<\/em>, 2024 (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2401.05856\">arXiv:2401.05856<\/a>). Practitioner taxonomy of the place RAG breaks. Similar path because the per-failure-mode framing.<\/li>\n<li class=\"wp-block-list-item\">Kamradt, <em><a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/github.com\/gkamradt\/LLMTest_NeedleInAHaystack\">Needle in a Haystack<\/a><\/em> (2023). The canonical long-context retrieval benchmark. Analysis-only: checks a single verbatim reality in an extended context, not the aggregating questions enterprise customers ask. Mentioned in Article 1 and developed in Article 7.<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\"><strong>Completely different angle, totally different context:<\/strong><\/p>\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Es et al., <em>RAGAS: Automated Analysis of Retrieval Augmented Technology<\/em>, EACL 2024 (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2309.15217\">arXiv:2309.15217<\/a>). Treats RAG with combination ML metrics (faithfulness, reply relevance, context precision \/ recall) on benchmark datasets. The context is analysis benchmarks; the article\u2019s framing is per-failure-mode charges on a hard and fast enterprise corpus.<\/li>\n<li class=\"wp-block-list-item\">Saad-Falcon et al., <em>ARES: An Automated Analysis Framework for Retrieval-Augmented Technology Methods<\/em>, NAACL 2024 (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2311.09476\">arXiv:2311.09476<\/a>). ML-style RAG analysis framework with artificial prepare \/ dev \/ check splits. Similar context as RAGAS; the article argues the prepare \/ check break up paradigm doesn&#8217;t match enterprise RAG the place the reply both exists within the doc or doesn&#8217;t.<\/li>\n<li class=\"wp-block-list-item\">Lewis et al., <em>Retrieval-Augmented Technology for Data-Intensive NLP Duties<\/em>, NeurIPS 2020 (<a rel=\"nofollow\" target=\"_blank\" href=\"https:\/\/arxiv.org\/abs\/2005.11401\">arXiv:2005.11401<\/a>). The paper that named RAG, and the one which educated retriever and generator collectively. A helpful borderline reference: the <em>unique<\/em> RAG paper was an ML paper, though the engineering sample that inherited the identify isn&#8217;t.<\/li>\n<\/ul>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>six months to fine-tuning their RAG pipeline. They ran 5 Optuna sweeps. They added a customized reranker. They fine-tuned an embedding mannequin on their very own information. Manufacturing accuracy by no means moved. Pilots stored complaining about the identical flawed solutions. Six months in, the bug was within the parser. The workforce was misplaced, not [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":15331,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55],"tags":[136,113,441,1729,9290,7853,547],"class_list":["post-15329","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-machine-learning","tag-learning","tag-machine","tag-problem","tag-rag","tag-solves","tag-toolkit","tag-wrong"],"_links":{"self":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/15329","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=15329"}],"version-history":[{"count":1,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/15329\/revisions"}],"predecessor-version":[{"id":15330,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/posts\/15329\/revisions\/15330"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=\/wp\/v2\/media\/15331"}],"wp:attachment":[{"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=15329"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=15329"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techtrendfeed.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=15329"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}<!-- This website is optimized by Airlift. Learn more: https://airlift.net. Template:. Learn more: https://airlift.net. Template: 69d9690a190636c2e0989534. Config Timestamp: 2026-04-10 21:18:02 UTC, Cached Timestamp: 2026-06-02 18:01:53 UTC -->