<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Tushar Vashishth</title>
    <description>The latest articles on DEV Community by Tushar Vashishth (@tushar_vashishth_45ef7ac3).</description>
    <link>https://dev.to/tushar_vashishth_45ef7ac3</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4084832%2Fdf4421a8-5a40-42f7-b2ed-6490aab0b810.png</url>
      <title>DEV Community: Tushar Vashishth</title>
      <link>https://dev.to/tushar_vashishth_45ef7ac3</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tushar_vashishth_45ef7ac3"/>
    <language>en</language>
    <item>
      <title>AI Solved the Problem Perfectly. There Was Just One Problem.</title>
      <dc:creator>Tushar Vashishth</dc:creator>
      <pubDate>Tue, 08 Sep 2026 10:59:46 +0000</pubDate>
      <link>https://dev.to/tushar_vashishth_45ef7ac3/ai-solved-the-problem-perfectly-there-was-just-one-problem-4f48</link>
      <guid>https://dev.to/tushar_vashishth_45ef7ac3/ai-solved-the-problem-perfectly-there-was-just-one-problem-4f48</guid>
      <description>&lt;p&gt;&lt;em&gt;It wasn't the problem we actually had.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;![AI solving the wrong problem]&lt;/p&gt;

&lt;p&gt;There is something slightly funny about working with AI today.&lt;/p&gt;

&lt;p&gt;We have incredibly capable models. They can write code, analyze data, summarize documents, reason through problems, call tools, and even take actions on our behalf.&lt;/p&gt;

&lt;p&gt;So naturally, when something doesn't work, our first instinct is often:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Maybe we need a better model.”&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Then we try a bigger model.&lt;/p&gt;

&lt;p&gt;Still not working?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Maybe we need an agent.”&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Still messy?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Let's add RAG.”&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Still not quite there?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Maybe we need more tools, memory, or a more complicated pipeline.”&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And before we know it, we've built a very sophisticated system...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;for the wrong problem.&lt;/strong&gt; 😅&lt;/p&gt;




&lt;h2&gt;
  
  
  The AI system can be technically correct and still be wrong
&lt;/h2&gt;

&lt;p&gt;This is something I've been thinking about more while learning about AI-native systems.&lt;/p&gt;

&lt;p&gt;Imagine asking an AI system:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Help me reduce customer support response time.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And it comes back with a beautifully designed solution for improving customer acquisition.&lt;/p&gt;

&lt;p&gt;The solution might be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;logically sound&lt;/li&gt;
&lt;li&gt;technically impressive&lt;/li&gt;
&lt;li&gt;well researched&lt;/li&gt;
&lt;li&gt;perfectly implemented&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But it doesn't matter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It solved a different problem.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This distinction is easy to miss because modern AI is extremely good at producing convincing outputs.&lt;/p&gt;

&lt;p&gt;A bad answer used to look bad.&lt;/p&gt;

&lt;p&gt;Now, a bad answer can look &lt;strong&gt;professional&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That's a much more interesting engineering problem.&lt;/p&gt;




&lt;h1&gt;
  
  
  Intelligence isn't the same as direction
&lt;/h1&gt;

&lt;p&gt;A highly capable model still needs the right direction.&lt;/p&gt;

&lt;p&gt;Think about a very smart employee.&lt;/p&gt;

&lt;p&gt;You don't just give them access to every company document, every software tool, and the freedom to make decisions and say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Go do something useful.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You first explain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what we're trying to achieve,&lt;/li&gt;
&lt;li&gt;what information matters,&lt;/li&gt;
&lt;li&gt;what they're allowed to do,&lt;/li&gt;
&lt;li&gt;what tools they should use,&lt;/li&gt;
&lt;li&gt;and how we'll know whether the work was successful.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI systems need similar thinking.&lt;/p&gt;

&lt;p&gt;The model is only one component.&lt;/p&gt;

&lt;p&gt;The surrounding system determines &lt;strong&gt;how that intelligence is actually used&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  This is where things get interesting
&lt;/h1&gt;

&lt;p&gt;When building AI applications, it's tempting to start with technology.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Which model should we use?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But perhaps a better starting point is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“What problem are we actually trying to solve?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Then we can work backwards.&lt;/p&gt;

&lt;p&gt;Do we need external information?&lt;/p&gt;

&lt;p&gt;→ Maybe we need &lt;strong&gt;retrieval&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Does the system actually need to take multiple steps or interact with tools?&lt;/p&gt;

&lt;p&gt;→ Maybe we need an &lt;strong&gt;agent&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;What kind of reasoning or generation is required?&lt;/p&gt;

&lt;p&gt;→ Now we can think about the appropriate &lt;strong&gt;model&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And once the system produces an answer or takes an action:&lt;/p&gt;

&lt;p&gt;→ &lt;strong&gt;How do we know it worked?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's where evaluation, verification and &lt;strong&gt;proof&lt;/strong&gt; become important.&lt;/p&gt;




&lt;h1&gt;
  
  
  More components don't automatically mean a better system
&lt;/h1&gt;

&lt;p&gt;This is probably one of the easiest traps to fall into with modern AI.&lt;/p&gt;

&lt;p&gt;Because there are so many interesting technologies available, we can start adding them simply because we &lt;em&gt;can&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Need a chatbot?&lt;/p&gt;

&lt;p&gt;Add RAG.&lt;/p&gt;

&lt;p&gt;Need RAG?&lt;/p&gt;

&lt;p&gt;Add a vector database.&lt;/p&gt;

&lt;p&gt;Need more flexibility?&lt;/p&gt;

&lt;p&gt;Add an agent.&lt;/p&gt;

&lt;p&gt;Need the agent to do more?&lt;/p&gt;

&lt;p&gt;Add tools.&lt;/p&gt;

&lt;p&gt;Need better reasoning?&lt;/p&gt;

&lt;p&gt;Use a bigger model.&lt;/p&gt;

&lt;p&gt;Need reliability?&lt;/p&gt;

&lt;p&gt;Add another layer.&lt;/p&gt;

&lt;p&gt;Eventually, the architecture looks incredibly sophisticated.&lt;/p&gt;

&lt;p&gt;But complexity should have a reason.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Every component should solve a problem.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Otherwise, we're just making the system harder to understand, maintain and debug.&lt;/p&gt;




&lt;h1&gt;
  
  
  The model isn't always the problem
&lt;/h1&gt;

&lt;p&gt;Suppose an AI application is giving poor answers.&lt;/p&gt;

&lt;p&gt;There are many possible reasons.&lt;/p&gt;

&lt;p&gt;Maybe the model doesn't have the information it needs.&lt;/p&gt;

&lt;p&gt;Maybe retrieval is returning irrelevant context.&lt;/p&gt;

&lt;p&gt;Maybe the context is too large or poorly structured.&lt;/p&gt;

&lt;p&gt;Maybe the agent is choosing the wrong tool.&lt;/p&gt;

&lt;p&gt;Maybe we're using an unnecessarily expensive model for a simple task.&lt;/p&gt;

&lt;p&gt;Maybe our evaluation process isn't catching failures.&lt;/p&gt;

&lt;p&gt;Or maybe...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;we simply misunderstood the original problem.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Replacing the model might fix none of these.&lt;/p&gt;

&lt;p&gt;This is why I think AI engineering is becoming less about &lt;em&gt;“which model are you using?”&lt;/em&gt; and more about &lt;strong&gt;how the entire system is designed around the problem.&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  A useful mental model: Retrieve → Agents → Models → Proof
&lt;/h1&gt;

&lt;p&gt;One framework I've been exploring through RAMP is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Retrieve → Agents → Models → Proof&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I like this because it encourages thinking beyond the model itself.&lt;/p&gt;

&lt;h3&gt;
  
  
  Retrieve
&lt;/h3&gt;

&lt;p&gt;Give the system the information it actually needs.&lt;/p&gt;

&lt;p&gt;The goal isn't simply to retrieve &lt;em&gt;more&lt;/em&gt; information.&lt;/p&gt;

&lt;p&gt;It's to retrieve &lt;strong&gt;relevant information&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Agents
&lt;/h3&gt;

&lt;p&gt;If the problem genuinely requires actions, decisions, or multiple steps, then agents can become useful.&lt;/p&gt;

&lt;p&gt;But not every problem needs an agent.&lt;/p&gt;

&lt;p&gt;Sometimes a simple workflow is better.&lt;/p&gt;

&lt;h3&gt;
  
  
  Models
&lt;/h3&gt;

&lt;p&gt;Choose the model based on the actual requirement.&lt;/p&gt;

&lt;p&gt;The biggest or newest model isn't automatically the right choice.&lt;/p&gt;

&lt;p&gt;Sometimes speed matters more.&lt;/p&gt;

&lt;p&gt;Sometimes cost matters.&lt;/p&gt;

&lt;p&gt;Sometimes reasoning capability matters.&lt;/p&gt;

&lt;p&gt;Sometimes a smaller model is perfectly sufficient.&lt;/p&gt;

&lt;h3&gt;
  
  
  Proof
&lt;/h3&gt;

&lt;p&gt;Finally:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do we know the system worked?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is arguably one of the most important questions as AI systems become more autonomous.&lt;/p&gt;

&lt;p&gt;An answer isn't automatically trustworthy just because it sounds convincing.&lt;/p&gt;

&lt;p&gt;We need ways to evaluate, verify and measure system behavior.&lt;/p&gt;




&lt;h1&gt;
  
  
  The real goal isn't “make AI smarter”
&lt;/h1&gt;

&lt;p&gt;Of course, better models matter.&lt;/p&gt;

&lt;p&gt;Model capabilities have improved dramatically, and they will continue to improve.&lt;/p&gt;

&lt;p&gt;But there's another layer to the problem.&lt;/p&gt;

&lt;p&gt;A smarter model can produce a &lt;strong&gt;better answer to the wrong question&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And that's still the wrong answer.&lt;/p&gt;

&lt;p&gt;So perhaps the goal shouldn't simply be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Make AI smarter.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It should be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Build systems that use intelligence in the right direction.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That means understanding the problem first, choosing the right architecture second, and selecting the technology that actually supports it.&lt;/p&gt;




&lt;h1&gt;
  
  
  One question I'm trying to ask more often
&lt;/h1&gt;

&lt;p&gt;Whenever I see a new AI technique, framework or model, instead of immediately asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“How can I use this?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I'm trying to ask:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“What problem would this actually solve?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That small change in perspective can make a surprisingly big difference.&lt;/p&gt;

&lt;p&gt;Because the AI ecosystem is moving extremely fast.&lt;/p&gt;

&lt;p&gt;There will always be another model.&lt;/p&gt;

&lt;p&gt;Another framework.&lt;/p&gt;

&lt;p&gt;Another agent architecture.&lt;/p&gt;

&lt;p&gt;Another tool.&lt;/p&gt;

&lt;p&gt;Another technique that everyone is talking about.&lt;/p&gt;

&lt;p&gt;We probably don't need to use all of them.&lt;/p&gt;

&lt;p&gt;We need to understand &lt;strong&gt;why we'd use them.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;AI can be incredibly smart.&lt;/p&gt;

&lt;p&gt;It can reason.&lt;/p&gt;

&lt;p&gt;It can retrieve information.&lt;/p&gt;

&lt;p&gt;It can use tools.&lt;/p&gt;

&lt;p&gt;It can write code.&lt;/p&gt;

&lt;p&gt;It can take actions.&lt;/p&gt;

&lt;p&gt;But none of that guarantees that we're solving the right problem.&lt;/p&gt;

&lt;p&gt;So before asking:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Which model should I use?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Maybe ask:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“What exactly am I trying to solve?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because sometimes the best AI solution isn't a bigger model.&lt;/p&gt;

&lt;p&gt;It's realizing that &lt;strong&gt;the problem was defined incorrectly in the first place.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;And honestly...&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Cool. But that's not what I asked.”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;might become one of the most important debugging messages in AI engineering. 😄&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I'm currently exploring these ideas as part of my RAMP learning journey, and this shift—from thinking primarily about models to thinking about the complete AI system—is one of the perspectives I've found particularly useful.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>career</category>
      <category>llm</category>
    </item>
    <item>
      <title>From Learning the Stack to Understanding the System</title>
      <dc:creator>Tushar Vashishth</dc:creator>
      <pubDate>Tue, 25 Aug 2026 13:30:40 +0000</pubDate>
      <link>https://dev.to/tushar_vashishth_45ef7ac3/from-learning-the-stack-to-understanding-the-system-2jn5</link>
      <guid>https://dev.to/tushar_vashishth_45ef7ac3/from-learning-the-stack-to-understanding-the-system-2jn5</guid>
      <description>&lt;p&gt;&lt;strong&gt;Why AI-native development may require a different way of thinking about technology.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;The way we learned software for years&lt;br&gt;
LAMP → MEAN → MERN → other stacks.&lt;br&gt;
Learning the stack gave developers a practical mental model for building applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then AI changed the shape of the application&lt;br&gt;
We're no longer just choosing frontend, backend and database technologies. A modern AI application may involve retrieval, agents, multiple models, tools, memory, evaluation, and human intervention.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The problem with thinking only in terms of tools&lt;br&gt;
Models change quickly. Frameworks change quickly. Tools come and go. If your understanding is tied too closely to one particular stack, it can become outdated quickly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;So what should we understand instead?&lt;br&gt;
This is where we introduce the four RAMP areas naturally:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Retrieve — How does the system get the information it needs?&lt;br&gt;
Agents — How does it decide, act, and interact with tools?&lt;br&gt;
Models — Which intelligence is appropriate for each task?&lt;br&gt;
Proof — How do we know the result is reliable?&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;RAMP isn't another programming stack&lt;br&gt;
This distinction is important. It's a way of organizing the major pieces of an AI-native system, rather than telling developers which programming language or framework to use.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What this could mean for developers&lt;br&gt;
Instead of only asking “What technologies do I know?”, developers may increasingly need to ask “Can I design and reason about an AI system?”&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What happens to MERN, MEAN, LAMP, etc.?&lt;br&gt;
Don't say they are obsolete. They still solve the application-stack problem. RAMP is addressing a different layer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The bigger question&lt;br&gt;
Could RAMP become a common vocabulary for describing AI-native engineering, in the same way that stack names gave developers a shorthand for web development?&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Then finish with something conversational:&lt;/p&gt;

&lt;p&gt;I'm still exploring this idea, but I think there's an interesting shift happening here.&lt;/p&gt;

&lt;p&gt;We're not necessarily moving away from stacks.&lt;/p&gt;

&lt;p&gt;We're adding a new layer of thinking on top of them.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>career</category>
      <category>learning</category>
      <category>performance</category>
    </item>
    <item>
      <title>Most RAG Problems Don’t Start With the LLM</title>
      <dc:creator>Tushar Vashishth</dc:creator>
      <pubDate>Fri, 21 Aug 2026 10:46:30 +0000</pubDate>
      <link>https://dev.to/tushar_vashishth_45ef7ac3/most-rag-problems-dont-start-with-the-llm-5hi2</link>
      <guid>https://dev.to/tushar_vashishth_45ef7ac3/most-rag-problems-dont-start-with-the-llm-5hi2</guid>
      <description>&lt;p&gt;If you've worked with RAG, you've probably seen this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The answer is wrong.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So you change the prompt.&lt;br&gt;
Try another model.&lt;br&gt;
Increase the context window.&lt;br&gt;
Maybe even switch to a bigger LLM.&lt;/p&gt;

&lt;p&gt;And somehow...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;the answer is still wrong.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I've started to think that we sometimes look at the wrong part of the system.&lt;/p&gt;

&lt;p&gt;The problem may have started &lt;strong&gt;before the LLM ever saw the question.&lt;/strong&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  First, look at the whole flow
&lt;/h2&gt;

&lt;p&gt;A simple RAG system can be thought of as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User Question
      ↓
   Retrieval
      ↓
    Context
      ↓
     LLM
      ↓
    Answer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The LLM is only one part of this.&lt;/p&gt;

&lt;p&gt;Before it generates anything, the system has already made several decisions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What information should be searched?&lt;/li&gt;
&lt;li&gt;How were the documents split?&lt;/li&gt;
&lt;li&gt;Which results are relevant?&lt;/li&gt;
&lt;li&gt;How many results should be returned?&lt;/li&gt;
&lt;li&gt;Should some results be filtered out?&lt;/li&gt;
&lt;li&gt;Which results should appear first?&lt;/li&gt;
&lt;li&gt;What finally goes into the model's context?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So when the final answer is bad, &lt;strong&gt;the model isn't necessarily where things went wrong.&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Here's a simple example
&lt;/h1&gt;

&lt;p&gt;Imagine you're building an internal support assistant.&lt;/p&gt;

&lt;p&gt;Someone asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“What's our refund policy for prepaid orders?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The company has the answer somewhere in its documentation.&lt;/p&gt;

&lt;p&gt;Your LLM is capable of understanding the policy.&lt;/p&gt;

&lt;p&gt;But your retrieval system returns these:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Refunds are available for eligible purchases.

Customers can contact support regarding refunds.

Refund requests are reviewed within 5 business days.

Prepaid orders are processed immediately.

Refunds may be issued to the original payment method.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Everything looks relevant.&lt;/p&gt;

&lt;p&gt;But there's one problem:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The actual rule for prepaid orders wasn't retrieved.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now the LLM has incomplete information.&lt;/p&gt;

&lt;p&gt;It might still produce a very confident answer.&lt;/p&gt;

&lt;p&gt;And we might say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“The LLM hallucinated.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Maybe.&lt;/p&gt;

&lt;p&gt;But the problem actually started earlier.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;We gave the model the wrong context.&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Where can things go wrong?
&lt;/h1&gt;

&lt;p&gt;There are a few common places.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The document was split badly
&lt;/h3&gt;

&lt;p&gt;A policy might say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Customers can request a refund within 30 days.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And immediately after:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Prepaid orders are subject to different conditions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If those two statements are split into different chunks, retrieval might find one without the other.&lt;/p&gt;

&lt;p&gt;The model gets &lt;strong&gt;half the story&lt;/strong&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. The right document wasn't retrieved
&lt;/h3&gt;

&lt;p&gt;This is probably the easiest one to overlook.&lt;/p&gt;

&lt;p&gt;The answer may be sitting inside your knowledge base.&lt;/p&gt;

&lt;p&gt;But your search never brings it back.&lt;/p&gt;

&lt;p&gt;So you:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;change the prompt → change the model → change the temperature → try again&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;...while the correct document is still sitting in the database.&lt;/p&gt;

&lt;p&gt;Sometimes the model isn't failing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The system simply didn't give it the information it needed.&lt;/strong&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Similar doesn't always mean useful
&lt;/h3&gt;

&lt;p&gt;Suppose your system retrieves the five most similar chunks.&lt;/p&gt;

&lt;p&gt;That sounds reasonable.&lt;/p&gt;

&lt;p&gt;But imagine all five are about &lt;em&gt;refunds&lt;/em&gt; while the one chunk containing the actual &lt;em&gt;prepaid-order exception&lt;/em&gt; is ranked sixth.&lt;/p&gt;

&lt;p&gt;You've technically retrieved relevant information.&lt;/p&gt;

&lt;p&gt;But you haven't retrieved the &lt;strong&gt;right information&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That's where things like better search, filtering and re-ranking start becoming important.&lt;/p&gt;




&lt;h3&gt;
  
  
  4. Old information can look very relevant
&lt;/h3&gt;

&lt;p&gt;Imagine your knowledge base contains:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;2022 Refund Policy
2023 Refund Policy
2024 Refund Policy
2025 Refund Policy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A question about the 2025 policy might still retrieve the 2023 document because the wording is almost identical.&lt;/p&gt;

&lt;p&gt;This is where metadata can matter:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;date → source → department → document type → version&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sometimes the system needs more than semantic similarity to find the right answer.&lt;/p&gt;




&lt;h1&gt;
  
  
  So... should we just use a bigger model?
&lt;/h1&gt;

&lt;p&gt;Not necessarily.&lt;/p&gt;

&lt;p&gt;A bigger model can certainly help with reasoning and generation.&lt;/p&gt;

&lt;p&gt;But it can't reliably answer from information it never received.&lt;/p&gt;

&lt;p&gt;Think about it this way:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Bad context
     ↓
Good model
     ↓
Bad / unreliable answer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;versus:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Good context
     ↓
Appropriate model
     ↓
Much better chance of a useful answer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's why I'm starting to look at RAG less as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Search + LLM”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and more as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Getting the right information to the right model at the right time.”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  What I would check first
&lt;/h1&gt;

&lt;p&gt;If a RAG application is giving poor answers, I'd be tempted to check the retrieval pipeline &lt;strong&gt;before immediately replacing the LLM&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A simple checklist:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Retrieval&lt;/strong&gt;&lt;br&gt;
Did we actually find the right information?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Chunking&lt;/strong&gt;&lt;br&gt;
Did we split the information in a useful way?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Ranking&lt;/strong&gt;&lt;br&gt;
Did the useful result make it near the top?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Metadata&lt;/strong&gt;&lt;br&gt;
Are we filtering by things like date, source or version?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Context&lt;/strong&gt;&lt;br&gt;
Is the model actually receiving enough of the right information?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Generation&lt;/strong&gt;&lt;br&gt;
Only then — is the model struggling to turn that context into a good answer?&lt;/p&gt;

&lt;p&gt;The Chapter 2 material I've been going through goes quite deep into these areas, including embeddings, vector databases, chunking, hybrid search, re-ranking and retrieval evaluation. &lt;/p&gt;




&lt;h1&gt;
  
  
  The bigger takeaway
&lt;/h1&gt;

&lt;p&gt;The more I work through this, the more I think:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Building a good RAG system isn't just about choosing a smart model.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It's about building a good path between:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;the question → the information → the model → the answer.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If the information going into that path is wrong, incomplete or badly ranked, throwing a smarter model at the end of it may not solve much.&lt;/p&gt;

&lt;p&gt;And that's probably the part of RAG I find most interesting right now.&lt;/p&gt;

&lt;h3&gt;
  
  
  What has caused more trouble in your RAG projects?
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Retrieval or generation?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'd genuinely be interested to hear what others have run into.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>rag</category>
      <category>mcp</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Your ML model isn't the whole AI system anymore</title>
      <dc:creator>Tushar Vashishth</dc:creator>
      <pubDate>Thu, 20 Aug 2026 07:59:49 +0000</pubDate>
      <link>https://dev.to/tushar_vashishth_45ef7ac3/your-ml-model-isnt-the-whole-ai-system-anymore-4hip</link>
      <guid>https://dev.to/tushar_vashishth_45ef7ac3/your-ml-model-isnt-the-whole-ai-system-anymore-4hip</guid>
      <description>&lt;p&gt;For a long time, when we talked about an ML project, the model was usually at the center of everything.&lt;/p&gt;

&lt;p&gt;Get the data.&lt;br&gt;
Train the model.&lt;br&gt;
Improve the accuracy.&lt;br&gt;
Deploy it.&lt;br&gt;
Monitor it.&lt;/p&gt;

&lt;p&gt;Pretty straightforward.&lt;/p&gt;

&lt;p&gt;But AI applications are starting to feel different.&lt;/p&gt;

&lt;p&gt;Imagine you build a system that answers questions about your company's internal data.&lt;/p&gt;

&lt;p&gt;Having a good model is important, but that's only the beginning.&lt;/p&gt;

&lt;p&gt;Where does the information come from?&lt;/p&gt;

&lt;p&gt;What if the answer isn't in one document?&lt;/p&gt;

&lt;p&gt;What if the system needs to search, think through a few steps, use a tool, and then come back with an answer?&lt;/p&gt;

&lt;p&gt;What if a smaller model is better for one part of the job and a larger one is better for another?&lt;/p&gt;

&lt;p&gt;And probably the hardest question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How do you know the answer is actually good?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Suddenly, the model isn't doing everything.&lt;/p&gt;

&lt;p&gt;There's a whole system around it: information, different models, actions, checks, and people when needed.&lt;/p&gt;

&lt;p&gt;I think this is one of the biggest changes in how we should think about building AI applications.&lt;/p&gt;

&lt;p&gt;We're not just building a model anymore.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;We're building a system that knows how to use intelligence.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>programming</category>
      <category>opensource</category>
    </item>
    <item>
      <title>We're getting really good at adding AI to things.</title>
      <dc:creator>Tushar Vashishth</dc:creator>
      <pubDate>Wed, 19 Aug 2026 13:33:15 +0000</pubDate>
      <link>https://dev.to/tushar_vashishth_45ef7ac3/were-getting-really-good-at-adding-ai-to-things-8ii</link>
      <guid>https://dev.to/tushar_vashishth_45ef7ac3/were-getting-really-good-at-adding-ai-to-things-8ii</guid>
      <description>&lt;p&gt;Add an LLM here.&lt;br&gt;
Add a copilot there.&lt;br&gt;
Put an agent in the workflow.&lt;/p&gt;

&lt;p&gt;Done. “AI-native.” 😅&lt;/p&gt;

&lt;p&gt;But building &lt;em&gt;around&lt;/em&gt; AI feels like a different problem.&lt;/p&gt;

&lt;p&gt;Where does the right information come from?&lt;br&gt;
Which model should handle the job?&lt;br&gt;
What should an agent actually do?&lt;br&gt;
And probably the biggest one — how do we know the result is good?&lt;/p&gt;

&lt;p&gt;I've been looking at an idea from AiDOOS around this called &lt;strong&gt;RAMP — Retrieve, Agents, Models, Proof&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Still early, but I think there's something worth exploring here.&lt;/p&gt;

&lt;p&gt;Maybe being AI-native is less about adding AI...&lt;/p&gt;

&lt;p&gt;and more about &lt;strong&gt;rethinking how the whole system works&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>python</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
