<script data-pm-proxy="intercept"></script><?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[AI Product Management Guru]]></title><description><![CDATA[Practical frameworks, actionable insights, and clear guidance to empower Product Managers navigating AI & Generative AI product management.]]></description><link>https://aipmguru.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!50IR!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52667de-8494-4e73-a899-da9c8b04bb20_1024x1024.png</url><title>AI Product Management Guru</title><link>https://aipmguru.substack.com</link></image><generator>Substack</generator><lastBuildDate>Fri, 04 Sep 2026 12:29:15 GMT</lastBuildDate><atom:link href="/__u/aipmguru.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Shaili Guru]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[shailiguru@gmail.com]]></webMaster><itunes:owner><itunes:email><![CDATA[shailiguru@gmail.com]]></itunes:email><itunes:name><![CDATA[Shaili Guru]]></itunes:name></itunes:owner><itunes:author><![CDATA[Shaili Guru]]></itunes:author><googleplay:owner><![CDATA[shailiguru@gmail.com]]></googleplay:owner><googleplay:email><![CDATA[shailiguru@gmail.com]]></googleplay:email><googleplay:author><![CDATA[Shaili Guru]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Back to Seattle and almost back to School]]></title><description><![CDATA[Summers are always busy for us, with kids out of school and trying to get as much screen time as possible - and me frantically trying to figure out how to schedule their time so that they have screen time but are also getting outside the house as much as possible.]]></description><link>https://aipmguru.substack.com/p/back-to-seattle-and-almost-back-to</link><guid isPermaLink="false">https://aipmguru.substack.com/p/back-to-seattle-and-almost-back-to</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Mon, 17 Aug 2026 20:04:21 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bUw3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Summers are always busy for us, with kids out of school and trying to get as much screen time as possible - and me frantically trying to figure out how to schedule their time so that they have screen time but are also getting outside the house as much as possible. Who is with me?</p><p>This summer we tried something different; as kids are growing up, we are also realizing we only have 6 more summers with our older one and 8 more summers with our younger one, so we took about a month to visit our family in the Midwest (Cleveland, Michigan, and Chicago) and 10 days to go to Africa to see a whole new world! It was so worth it! </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!bUw3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 424w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 848w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 1272w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!bUw3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic" width="485" height="363.75" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:485,&quot;bytes&quot;:4492996,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/heic&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/211600291?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 424w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 848w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 1272w, /__u/substackcdn.com/image/fetch/$s_!bUw3!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90f8a1be-b960-47d8-b24a-47cd8265f500_5712x4284.heic 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">If you look in a straight line from my right ear, there's a cheetah in that picture. </figcaption></figure></div><p>Now that we are back and rested, I am back to learning and eager to share what I've learned. Here are the topics I am diving into in the upcoming week, so that&#8217;s what you will learn, too!</p><ol><li><p>Automation vs. workflows vs. agents (What are they? How are they different from each other? When to utilize which one? <span>Please join Amy and me as we dive into it with the&nbsp;</span><a href="https://luma.com/event/manage/evt-KWmJmFaXAjJldEw/overview"><span>Seattle Tech Forum Product community on Friday, August 28th</span></a><span>.</span></p></li><li><p>Next, I want to learn more about Agents (I'm still thinking about what that looks like, but I know I'll go beyond just what they are!).</p></li><li><p> This is also on top of my mind, as all of the frontier AI labs keep coming up with the latest and greatest AI layers - the latest one I want to dive into is graph engineering. Look at the timeline below to see when each of the layers came about:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!LJd9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 424w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 848w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!LJd9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png" width="623" height="311.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:623,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A simple horizontal timeline from prompt engineering to graph engineering.&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A simple horizontal timeline from prompt engineering to graph engineering." title="A simple horizontal timeline from prompt engineering to graph engineering." srcset="/__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 424w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 848w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LJd9!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae2d1d5f-eea8-4a68-9ec3-e02ca334cbe8_1774x887.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></li></ol><p>Are there any AI topics you are exploring or want to learn about? What are they? Don&#8217;t forget to tell about those topics in the comments below. </p><p></p><p></p>]]></content:encoded></item><item><title><![CDATA[Model Distillation, in Plain English]]></title><description><![CDATA[Same job, smaller bill. Here's how the trick works.]]></description><link>https://aipmguru.substack.com/p/model-distillation-in-plain-english</link><guid isPermaLink="false">https://aipmguru.substack.com/p/model-distillation-in-plain-english</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sun, 05 Jul 2026 14:08:11 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Zkgk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In this post, I want to dive into distillation: how a large, expensive AI model trains a smaller, cheaper one to do the same job almost as well. Fair warning, this one comes with drama. Distillation sparked a public fight between two of the biggest AI labs in the world, and we&#8217;ll get to it. But first, the concept itself, because most explanations of it are either one vague sentence or a wall of math. This is the middle version.</p><p><strong>What you&#8217;ll learn (5-minute read):</strong></p><ul><li><p>What distillation is, in one picture</p></li><li><p>Why it works (the &#8220;dark knowledge&#8221; idea from the researcher who invented it)</p></li><li><p>When you&#8217;d reach for it as a PM, and when you&#8217;d reach for something else</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!Zkgk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!Zkgk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1790478,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/204577142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Zkgk!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb578b5e-eca1-499c-a6f0-4f21e4277c57_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Picture a brilliant professor and an eager student.</p><p>The professor is your big model. Brilliant, but expensive to run every single time you ask it something. The student is a much smaller model. It can&#8217;t hold everything the professor knows, but it doesn&#8217;t need to. It just needs to do <em>one job</em> well.</p><p>So the big model teaches the small one. What you get back is a model that&#8217;s a fraction of the size and way cheaper to run. And it stays good at the one task you care about.</p><p>This isn&#8217;t hand-waving, by the way. The classic example is DistilBERT, a distilled version of Google&#8217;s BERT model: 40% smaller and 60% faster, while keeping about 97% of the original&#8217;s language understanding (Sanh et al., link in Sources). You give up 3 points of capability and get back nearly half the size and more than half the speed. I&#8217;d take that trade most days.</p><p>That&#8217;s distillation in one sentence. The interesting part is <em>how</em> the teaching happens.</p><h2>Why it works: the teacher shares <em>their</em> judgment, not just the answer</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!KJM6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!KJM6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2243056,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/204577142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!KJM6!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7605f06-c2ff-425e-9f7c-94cb032360e2_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here&#8217;s the piece most explanations skip.</p><p>Take a training photo of a cat. Trained the normal way, the student learns from one flat label: <em>cat</em>. Nothing else. Right, but thin.</p><p>Distillation trains it on something richer. Instead of that flat label, the student learns from the teacher&#8217;s full answer: <em>90% cat, 8% dog, 2% fox</em>. That spread is the teacher&#8217;s <em>judgment</em>, and it&#8217;s full of hidden lessons. The 8% dog quietly teaches the student that cats and dogs are kind of similar. The 2% fox says foxes are a little like cats too. A flat &#8220;cat&#8221; label never teaches any of that.</p><p>This idea comes straight from the source. Geoffrey Hinton (yes, that Hinton, the one with the Nobel) introduced distillation in a 2015 paper with Oriol Vinyals and Jeff Dean, and he gave those hidden judgments a name I love: &#8220;dark knowledge.&#8221; The whole technique is built on the idea of transferring it.</p><p>Quick update for the LLM era, because a cat classifier is probably not where you&#8217;ll actually meet this word. For today&#8217;s language models the teaching often looks even simpler: the small model trains on thousands of the big model&#8217;s actual written answers and learns to respond the way the teacher does. Same picture, judgment passing from teacher to student. Only the format changed.</p><div class="pullquote"><p>If you remember one thing here, make it this: the student copies the teacher&#8217;s judgment, not just the answer.</p></div><h2>When to reach for it: the PM decision</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!qF3M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!qF3M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2205651,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/204577142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qF3M!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3449e9d1-0610-4fd3-a622-33be575d3696_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Distillation is a tool, not a default. Here&#8217;s when it&#8217;s the right one.</p><p><strong>Reach for distillation when</strong> the job is narrow and the bill is real. A support classifier handling millions of tickets. An on-device suggestion that has to run on a phone. A high-traffic routing step where a giant model would work but would cost you a fortune. (If you&#8217;ve ever watched an inference bill outrun the value attached to it, you know exactly this pain.)</p><p><strong>Reach for something else when</strong> the situation is different, and this is the part that keeps you from overusing it:</p><ul><li><p>If you need the big model&#8217;s <em>full range</em> across open-ended tasks, keep the big model. Don&#8217;t distill away the flexibility you actually need.</p></li><li><p>If the problem is that the model needs <em>fresher information</em>, that&#8217;s a <a href="/__u/aipmguru.substack.com/p/unlocking-the-power-of-ai-with-retrieval">RAG</a> job (retrieval-augmented generation): you give the model better documents to work from, you don&#8217;t shrink it.</p></li><li><p>If you just need the model <em>smaller</em>, not retrained, there&#8217;s a simpler tool called quantization, which trims a model's numerical precision to shrink it without a full teacher-student process.</p></li></ul><p>Distillation trades a little range for speed and cost. Pick it when the job is narrow and the bill is real.</p><h2>Why two AI giants fought about it</h2><p>I promised you a fight.</p><p>In early 2025, a Chinese lab called DeepSeek released models that rivaled the best American ones at a fraction of the reported cost. OpenAI&#8217;s accusation: DeepSeek got there partly by distilling <em>OpenAI&#8217;s own models</em>, using ChatGPT&#8217;s outputs as the teacher. OpenAI later told US lawmakers that DeepSeek was making &#8220;<a href="/__u/aipmguru.substack.com/p/unlocking-the-power-of-ai-with-retrieval">ongoing efforts to free-ride on the capabilities developed by OpenAI and other U.S. frontier labs</a>&#8221;.</p><p>Set aside who&#8217;s right. What I want you to take from it is simpler: distillation is powerful enough to be a competitive weapon, and that cuts both ways. If your team ever distills from a model accessed via an API, read the provider&#8217;s terms first. Most frontier labs explicitly prohibit using their outputs to train competing models. That&#8217;s a conversation to have with legal <em>before</em> the training run, not after.</p><h2>The one honest catch</h2><p>A distilled model is small on purpose, not small by accident, and the trade is real: it loses some of the teacher&#8217;s range on the weird, rare edge cases. Great for the narrow job you trained it for, riskier the further you drift from that job.</p><p>Which connects to two things I&#8217;ve written before. Distillation is the cleanest example of <a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">using the smallest capability that works</a>, the choice that saves you money up front. But the smaller and more specialized a model is, the more brittle it gets when the world shifts under it, which is exactly the <a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">drift</a> cost of going small. So distill with your eyes open: cheap and fast today, worth a plan for tomorrow.</p><p>That&#8217;s distillation. A teacher, a student, and the judgment that passes between them.</p><div><hr></div><p><em>If this made distillation click, forward it to one person on your team who could use it. And if there&#8217;s an AI concept you want me to explain this way next, quantization, embeddings, RAG, drop it in the comments. That&#8217;s how this series gets built.</em></p><p><em>Next in the series: [to be decided by what you ask for].</em></p><div><hr></div><h2>Sources</h2><ul><li><p>Hinton, Vinyals &amp; Dean, &#8220;Distilling the Knowledge in a Neural Network&#8221; (2015): <a href="https://arxiv.org/abs/1503.02531">https://arxiv.org/abs/1503.02531</a></p></li><li><p>Hinton&#8217;s &#8220;Dark Knowledge&#8221; talk slides (Google, 2014): <a href="https://www.ttic.edu/dl/dark14.pdf">https://www.ttic.edu/dl/dark14.pdf</a></p></li><li><p>Sanh et al., DistilBERT &#8212; 40% smaller, 60% faster, retains 97% of BERT&#8217;s language understanding (paper abstract, arXiv 1910.01108): <a href="https://arxiv.org/abs/1910.01108">https://arxiv.org/abs/1910.01108</a></p></li><li><p>Reuters via Bloomberg, OpenAI memo to US lawmakers on DeepSeek distillation (Feb 2026): <a href="https://www.investing.com/news/stock-market-news/openai-accuses-deepseek-of-distilling-us-models-to-gain-advantage-bloomberg-news-reports-4504138">https://www.investing.com/news/stock-market-news/openai-accuses-deepseek-of-distilling-us-models-to-gain-advantage-bloomberg-news-reports-4504138</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[IMPACT: An AI Product Design Framework for Deciding Where AI Belongs (and Where It Doesn't)]]></title><description><![CDATA[Every PM framework was built for software that doesn't surprise you. AI broke them.]]></description><link>https://aipmguru.substack.com/p/impact-an-ai-product-design-framework</link><guid isPermaLink="false">https://aipmguru.substack.com/p/impact-an-ai-product-design-framework</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Wed, 24 Jun 2026 14:07:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HYU_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>CIRCLES, RICE, the design-question scripts you memorized for your PM interview. Every one of them assumes the same thing: you know what the product will do before you build it. You write the spec. Engineering builds it. The product does what the spec said, every time.</p><p>AI doesn&#8217;t work that way. It&#8217;s probabilistic. The same input can yield different outputs. It hallucinates. It drifts. And the most important decision in the whole design isn&#8217;t a feature at all. It&#8217;s whether AI belongs in the product, and where it has to stop.</p><p>No traditional framework asks that. So I built one that does.</p><p>I needed something I could run before I started building, something that would stop me from asking &#8220;what should I build?&#8221; and start me asking &#8220;what problem am I actually solving?&#8221; I couldn&#8217;t find it. So I wrote it, and now it&#8217;s the thing I teach my UW students and walk through in talks before anyone touches a tool. <strong>Because the fastest way to ship a bad AI product, and the fastest way to fumble an AI design question in an interview, is to assume the answer is always more AI.</strong></p><p>It&#8217;s called IMPACT. Six layers. I&#8217;ll walk all six through one real example: a podcast automation I built and demoed live. It scrapes my AI news sources every morning, has Claude pick and summarize the top stories, turns that into a script, and sends it to ElevenLabs to be turned into audio. Six nodes. I built it in about two hours, my first time ever in n8n. Watch where AI actually shows up.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!HYU_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!HYU_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2348224,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/203140457?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HYU_!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7798003-8ac0-4f2e-91e1-bd1e68cf4e80_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>I &#8212; Intent: Name the Burden Before You Reach for AI</h2><p>This is the layer everyone rushes. Don&#8217;t.</p><p>When I ask builders for the intent of their AI feature, I usually get something like &#8220;make people more productive&#8221; or &#8220;reduce manual work.&#8221; I&#8217;ve heard that one enough times to finish the sentence for them. It&#8217;s a wish, not a burden.</p><p>A real intent is specific enough to act on. It names the actual pain a real person carries. So before you propose anything, answer three questions about the problem itself: What&#8217;s the ambiguity AI is handling that rules can&#8217;t? What cognitive load is the person drowning in? And what&#8217;s the cost of being wrong?</p><p>For the podcast, my intent was concrete: the cognitive overload of scanning five-plus AI news sources every single morning. Same tabs, same synthesis, every day. The user wants a spoken digest without having to read it themselves. That&#8217;s specific, it&#8217;s repetitive, and it&#8217;s fully delegatable. Which is exactly why it&#8217;s a good automation candidate.</p><p>Notice what just happened. I haven&#8217;t named a feature yet, and I already know AI has a real job here, because the work is genuine synthesis a tired person repeats daily. If the intent had come back as &#8220;make my mornings better,&#8221; I&#8217;d have nothing to build toward. Vague intent is where most weak answers die in the first thirty seconds.</p><h2>M &#8212; Mental Model: Decide What AI Touches and What Stays Human</h2><p>This is the layer that makes or breaks AI products, and it&#8217;s the one no other framework has.</p><p>Once you know AI belongs, you don&#8217;t hand it everything. You map the journey and decide, step by step, where AI acts and where a human stays in the loop. Skip this, and six months later, you&#8217;ve got an AI doing things it was never supposed to do. Resolving billing disputes on its own. Handing out airfare discounts nobody approved. We&#8217;ve all seen those chatbots.</p><p>For the podcast, the split is driven by the cost of being wrong, and here that cost is low. A bad summary is mildly annoying, but not catastrophic. So AI can do most of the work, and I made the human review optional, a quick approval before the audio gets generated. That&#8217;s the right call when a mistake just means a so-so podcast.</p><p>Flip the stakes and the map changes completely. Put AI inside a medical or healthcare flow and you&#8217;re not shipping unless it&#8217;s 99.99 percent accurate, with a STILL human doing the final check before anything reaches a patient. Same framework, opposite answer. The judgment is in reading the stakes and drawing the line, and that judgment is the thing an interviewer is actually screening for. Anyone can add AI. Knowing where to stop is the senior move.</p><h2>P &#8212; Plumbing: Start Deterministic, Add AI Only Where It Earns It</h2><p>Now, and only now, the architecture. And this is where the podcast makes the whole point for me.</p><p>Six nodes. Pull the RSS feeds, merge them, run a code node to shape the data, send it to Claude to summarize and prioritize the top stories, run another code node to shape the script, then hand it to ElevenLabs for audio and drop it in Drive.</p><p>Look at what&#8217;s actually happening, tier by tier. The RSS reads, the merge, and the formatting nodes are plain rules, the same deterministic code you&#8217;ve always written. The two Claude calls, summarize and write the script, are GenAI. And the ElevenLabs voice is its own kind of AI, a machine-learning model that turns text into speech. So one tiny pipeline already spans three rungs of the capability ladder: rules for the plumbing, GenAI for the language, ML for the voice. And most of it sits on the cheapest rung.</p><p>That&#8217;s the discipline. You start with the lowest capability that works and climb only when it can&#8217;t do the job. Rules first. Then machine learning. Then generative AI. Then agents, then multiple agents, if and only if the problem demands it. The goal is using the right capability at the right moment, not building the fanciest category because it&#8217;s exciting. Almost every time, the simpler thing would have worked fine, and the complex thing just ships later, breaks in production, and gets killed six months in.</p><h2>A &#8212; Accuracy &amp; Safety: Design the Failure Before It Ships</h2><p>Every AI system sometimes produces incorrect outputs. <strong>The question isn&#8217;t whether it will happen. It&#8217;s what the consequences are when it does, and whether you designed for them.</strong></p><p>Here&#8217;s mine, from the real build. One morning, the script opened with &#8220;This is the news from March 24, 2024.&#8221; Excuse me. We were in March 2026, and nowhere near the 24th. The model just made up a date and said it with total confidence.</p><p>That&#8217;s exactly why the human approval node exists in my flow. Before any audio gets generated, the script pauses and shows me what it wrote so I can catch the thing that&#8217;s confidently wrong. I also keep the attributions and transcript links verifiable, so I can check that a story is real and not hallucinated. None of that is bolted on at the end. It&#8217;s a product decision I made up front, because I already knew the model would be confident even when it shouldn&#8217;t be.</p><h2>C &#8212; Cost &amp; Constraints: Don&#8217;t Build a $100 Solution for a $5 Problem</h2><p>Proof of concepts are cheap now. Lovable, Bolt, a dozen low-code tools will get you a working demo fast. The cost question bites later, when you turn that POC into something real and start paying for infrastructure at scale.</p><p>For the podcast, I&#8217;d run tests for a while and my Claude API bill was about $2.21. Skip one coffee and you&#8217;ve covered it. But that&#8217;s the POC. The number to watch is what it costs when something works and you scale it up, because that&#8217;s where teams burn their runway solving cheap problems with expensive tools. Match the spend to the stakes. A $5 problem doesn&#8217;t get a $100 solution.</p><h2>T &#8212; Tracking: The Layer Software Never Had</h2><p>The AI product lifecycle has one thing the software lifecycle never did: monitoring and maintaining.</p><p>You don&#8217;t launch and walk away. Once the model is live, you watch what the data tells you. Is it drifting? Does it need retraining, and how often? For the podcast, tracking means the stories stay fresh and I&#8217;m not getting duplicates day to day. For a bigger product, it means watching for drift and rebuilding the model as the data moves under you.</p><p>And track the promise, not the vanity metric. Engagement is a trap. Time spent could mean the thing is working or could mean it&#8217;s broken in a way that makes people keep poking at it. Measure whether you actually solved the burden you named back in Intent.</p><h2>The One Thing to Take Into Your Next Build, or Your Next Interview</h2><p>If you remember nothing else, remember the move that makes IMPACT different from every framework before it.</p><p>The first real decision in any AI product once you have figured out what to build is whether AI belongs at all, and where it has to stop. My podcast proves it. Six steps across three tiers of the capability ladder, and the real cognitive work lives in only two of them. Most of the rest is the cheapest rung, the deterministic plumbing you&#8217;ve always known how to build.</p><p>Traditional frameworks skip that question because the software they were built for doesn&#8217;t surprise you. AI does. So when you sit down to build, or an interviewer asks you to design an AI product and you open by mapping which tasks go to the model and which stay human, you&#8217;ve already shown the thing that matters. Not enthusiasm for AI. Judgment about it.</p><p>That&#8217;s what I teach before anyone in my class touches a tool. Build the muscle for knowing when to keep AI out, and the rest of the framework does its job.</p><p>The podcast was deliberately low stakes. A bad episode is annoying, nothing more. So below, I run the same six layers on a product where being wrong means a hospital visit, an allergy-aware restaurant finder I built for a Demo Day. Same framework, real stakes, and the actual output each layer should produce so you can run it on your own product.</p>
      <p>
          <a href="/__u/aipmguru.substack.com/p/impact-an-ai-product-design-framework">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The MCP Economy Is Already Here. Have you noticed it yet?]]></title><description><![CDATA[A few weeks ago, I had a thought that&#8217;s been bothering me ever since.]]></description><link>https://aipmguru.substack.com/p/the-mcp-economy-is-already-here-have</link><guid isPermaLink="false">https://aipmguru.substack.com/p/the-mcp-economy-is-already-here-have</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Fri, 05 Jun 2026 14:07:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!PRDu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A few weeks ago, I had a thought that&#8217;s been bothering me ever since.</p><p>APIs are metered. APIs are charged for. APIs have rate limits, tiers, overages, the whole thing. That&#8217;s been true in software since roughly forever.</p><p>So what happens to MCP servers?</p><p>Because MCP servers are the new API layer (the way agents reach tools, data, and other systems). Right now, almost all of them are free. Anthropic publishes a directory. Smithery and Glama publish more. You can stand up an MCP server in an afternoon and connect Claude to your CRM, your file system, or your internal docs. Nobody is sending you a bill.</p><p>That can&#8217;t hold. The shift that&#8217;s coming reshapes how SaaS gets priced, how PMs design products, and how the actual unit economics of AI work.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!PRDu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 424w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 848w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 1272w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!PRDu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6870630,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/200242002?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 424w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 848w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 1272w, /__u/substackcdn.com/image/fetch/$s_!PRDu!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61352409-a696-4d44-8433-b9a29f676171_5504x3072.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This isn&#8217;t a hypothetical future. It&#8217;s already starting.</p><p><strong>What you&#8217;ll learn (10-minute read):</strong></p><ul><li><p>Why MCP servers can&#8217;t stay free forever, and the early monetization patterns are appearing right now</p></li><li><p>The structural reason agent traffic breaks human-paced pricing models</p></li><li><p>Three pricing models emerging in the MCP economy, with real per-call numbers</p></li><li><p>The &#8220;dual-identity problem&#8221; PMs need to design for (humans plus agents on the same system)</p></li><li><p>The governance layer is being built underneath all of this</p></li><li><p>What this shift means for AI PM job descriptions in the next 18 months</p></li></ul><h2>I Really Think That The Free Period Is Ending</h2><p>Quick math, because I think it&#8217;s the clearest way to see this.</p><p>When a human uses Salesforce, they make roughly 50 to 200 actions a day. Open the app, look at a lead, update a field, send an email, close out. Human pace.</p><p>When an agent uses Salesforce via MCP, it might make 500 tool calls in 10 seconds while &#8220;researching a lead&#8221; before doing anything visible. Same infrastructure on the SaaS side. Same database queries, same compute, same egress. Roughly 10x to 100x the load.</p><p>The asymmetry is brutal. The bill is going to land somewhere.</p><p>I covered the underlying agent architecture in <a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows">AI Architecture Patterns 101: Workflows, Agents, MCPs, and A2A Systems</a>. What I didn&#8217;t cover then (and what I&#8217;m trying to figure out now) is what happens to the business model when the architecture changes. Because the architecture has changed. The business model hasn&#8217;t caught up.</p><p>Apify, <a href="https://nevermined.ai/">Nevermined</a>, and a payments protocol called x402 are all building monetization layers for MCP servers right now. Nevermined offers per-token, per-call, and outcome-based pricing on the same protocol, with sub-cent micropayments starting at $0.001 per transaction. xpay charges in USDC, with tool-specific pricing: search at $0.01, analyze at $0.05, generate at $0.10 per call.</p><p>The free period is ending. Probably faster than most people think.</p><h2>Why the API Analogy Breaks</h2><p>API pricing <em>was</em> built around three assumptions:</p><ul><li><p>A developer integrates once and the integration is stable</p></li><li><p>Traffic is roughly proportional to human users</p></li><li><p>The customer relationship lives at the company level (one company, one contract, one bill)</p></li></ul><p>Agent traffic breaks all three.</p><p>The agent integrates dynamically. It might discover your MCP server in a tools list, use it for a single task, and forget about it. Or it might call it ten thousand times in one session. The traffic doesn&#8217;t scale with users; it scales with task complexity. And the customer relationship gets tangled because the agent is acting on behalf of someone, but the &#8220;someone&#8221; might be a person, a team, or another agent.</p><p>That last part is the dual-identity problem. I&#8217;ll come back to it.</p><div class="pullquote"><p>The point for now: MCP pricing will borrow from API pricing, but it can&#8217;t be a clone. The unit economics don&#8217;t match.</p></div><h2>I Can See Three Pricing Models Emerging</h2><p><strong>Tool invocations (pay per call).</strong> The simplest model. Every time an agent calls a tool on your MCP server, you charge. Easy to track, easy to bill. Apify and xpay both use this. It works when the value to the customer scales with how often the agent uses your tools, which is the case in most cases. Where it breaks down: agents are bad at being economical. They retry, they re-query, they loop. A naive per-call model rewards the SaaS vendor for the agent&#8217;s inefficiency, and that gets uncomfortable fast.</p><p><strong>Re-wrapped human seats.</strong> This is the model most enterprise SaaS is shipping right now and they are calling it <strong>agent pricing</strong>. Microsoft Copilot charges $30 per human user per month for AI features bundled into M365. <a href="https://www.salesforce.com/agentforce/pricing/">Salesforce Agentforce add-ons</a> run $125 to $150 per human user per month for "unmetered" agent usage. The seat is still anchored to a person. The agent is just a privilege that the person now has.</p><p>This works for procurement (the contract shape is familiar) and it works for the vendor (revenue per human seat goes up). What it doesn&#8217;t actually solve: the underlying unit economics. If one human&#8217;s agent does the work of three humans, the customer still has only one seat, and the vendor still gets one fee. Re-wrapping the seat doesn&#8217;t fix the math. It just postpones the conversation.</p><p>True per-agent pricing, where the agent itself is the SKU, isn&#8217;t really shipping yet. <a href="https://fin.ai/pricing">Intercom Fin</a> makes a point of saying &#8220;no seat charges for the AI agent itself&#8221; on their pricing page. The fact that they&#8217;re calling out the alternative tells you it exists somewhere. It just isn&#8217;t mainstream, yet!</p><p><strong>Outcome-based pricing.</strong> The most disruptive one, and the one I think will reshape the space. Instead of paying per call or per seat, you pay when the agent successfully completes a job. <a href="https://fin.ai/pricing">Intercom Fin</a> charges $0.99 per outcome, defined as either a confirmed resolution or a procedure handoff. <a href="/__u/www.zendesk.com/pricing/">Zendesk</a> charges $1.50 per automated resolution on committed volume, $2.00 pay-as-you-go. </p><p><a href="https://www.deloitte.com/global/en/about/press-room/2026-tmt-predictions.html">Deloitte&#8217;s TMT Predictions 2026</a> frames the same direction across the industry: subscription and seat-based licensing are being replaced by hybrid pricing that blends usage- and outcome-based components. The shift is happening in the data, not just on Twitter.</p><p>Here&#8217;s where outcome-based pricing actually breaks down: defining the outcome is harder than charging for it. When Intercom says &#8220;we resolved the ticket&#8221; and the customer says &#8220;you didn&#8217;t,&#8221; who decides? There&#8217;s no neutral arbiter yet. That gap is going to get filled by an entire infrastructure category that doesn&#8217;t exist yet (and might be worth building, but that&#8217;s another post).</p><p>If I had to pick which model new AI products should default to, here&#8217;s where I landed: start with usage-based per-call, design the contract so you can move to outcome-based later. Hybrid is the realistic answer for most teams in 2026.</p><h2>The Dual-Identity Problem</h2><p>This is the section I&#8217;ve been wanting to write.</p><p>When a SaaS product gets used by humans, the design is clear. You build for the human. You optimize for the human. Your pricing reflects how many humans use it.</p><p>When the same product gets used by agents on behalf of those humans, everything gets weird.</p><p>Picture this. Five employees on your team, each with their own Claude agent connected to your company&#8217;s Slack instance. The agents are summarizing channels, drafting messages, and surfacing decisions. At 3am, one employee&#8217;s agent runs an automated workflow that pulls all messages from all channels over the last 90 days. It blows through the company&#8217;s API rate limit. At 9am, the other four employees can&#8217;t use Slack because their team is throttled.</p><p>Whose fault is that? Whose seat got &#8220;used&#8221;? Who pays the overage?</p><p>Slack doesn&#8217;t have a clean answer. Most SaaS products don&#8217;t.</p><div class="pullquote"><p>This is the dual-identity problem. Your product now has two consumers: the human user and the agent acting on the human&#8217;s behalf. They have different traffic patterns, different cost profiles, and potentially different rate limit needs. And your pricing, identity model, and audit logs probably assume only the first one.</p></div><p>The PM work here is real. You have to ask:</p><ul><li><p>Does my product treat an agent&#8217;s actions as the user&#8217;s actions, or as separate?</p></li><li><p>If both, how do I attribute cost and usage between them?</p></li><li><p>Can I tell, from a single API call, whether a human or an agent triggered it?</p></li><li><p>If I can&#8217;t, what&#8217;s my audit trail actually worth?</p></li></ul><p>These are not edge case questions. They&#8217;re going to be table-stakes product requirements in the next 18 months for any SaaS product that opens an MCP server.</p><p>Sound familiar? It should. This is the same kind of foundational design choice we made when mobile apps showed up and SaaS products had to decide what &#8220;mobile&#8221; even meant for their product. Some treated the mobile as a thin wrapper. Some redesigned around mobile-first. The ones who redesigned won.</p><h2>The Governance Layer Underneath All of This</h2><p>And then, there&#8217;s a second category emerging that&#8217;s worth flagging.</p><p>Underneath the MCP servers themselves, a layer is forming that handles the messy parts: authentication, rate limiting, cost attribution, audit logging, and agent identity. The standard term for this is &#8220;MCP gateway&#8221; and it&#8217;s being built by Kong, Tyk, MintMCP, Arcade, TrueFoundry, and Microsoft (the AI Gateway inside Foundry).</p><p>The CISO (Chief Information Security Officer) version of this story is about security. Palo Alto&#8217;s Prisma AIRS framing calls agents &#8220;non-human identities&#8221; (NHIs) and the risk surface is real. Agents loop. Agents fan out. Agents stay within their rate limits and still create cost spikes that look nothing like human usage.</p><p>The PM version of this story is about measurement. Because the gateway is where the data lives. Per-agent, per-tool, per-workflow cost. Per-call latency. Per-outcome success rates. The same data that lets a CISO sleep at night is the data that lets a PM finally answer one question their CFO has been asking for two years: <em>is my AI feature actually saving the company money?</em></p><p>I think this is where the next big category for AI PMs lives, and almost nobody is positioned for it yet. The CISO tools exist. The CFO tools don&#8217;t.</p><h2>So What Does This Mean for AI PMs?</h2><p>Three things I&#8217;d take into next week.</p><p>Your product has two personas now. The human user and the agent that integrates with it. One of them is in your wireframes. The other one isn&#8217;t. That gap is your roadmap.</p><p>Your pricing model assumptions are about to break. If you&#8217;re at a SaaS company on a pure per-seat model, the procurement conversation in 2026 is going to get harder. Buyers know the agent-seat math doesn&#8217;t work, and they&#8217;re starting to negotiate against it. Get ahead of this with hybrid pricing now (a base subscription plus variable usage or outcome components) rather than waiting for renewal to surface the conflict.</p><p>There&#8217;s a new measurement discipline coming, and it doesn&#8217;t have a name yet. Some people call it FinOps for agents. Some call it AI cost attribution. Whatever it ends up being called, the PMs who can answer &#8220;what did our agents cost this month, by workflow, by outcome&#8221; are going to be in a very different conversation than the PMs who can&#8217;t.</p><p>I&#8217;ll be honest. I don&#8217;t have a clean framework for this yet. I&#8217;m building one in my head as I write. If you have one, I want to see it.</p><h2>MCP is Bringing Changes to the AI Economy</h2><p>The MCP economy is already being built. The free period is ending. The pricing models are being defined right now (mostly by infrastructure companies).</p><p>The PMs who notice this in 2026 get to shape what their products look like in 2027. The ones who don&#8217;t will inherit the systems built by people who did.</p><p>This connects to a frame I keep coming back to: <a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">Build AI Products by Capability, Not Category</a>. The MCP economy is a clean test of that idea, because the question isn&#8217;t &#8220;do I support MCP?&#8221; (a category). The question is &#8220;what capability does my product offer to agents that humans alone couldn&#8217;t have used as effectively&#8221; (capability). That&#8217;s the product question. The pricing question follows from it.</p><div><hr></div><p><em>If this was useful, forward it to one person on your team who needs it. And if there&#8217;s something here you&#8217;d push back on, or an AI PM question you wish I&#8217;d answered, hit reply. I read every reply. The forwards and DMs are the signal that doesn&#8217;t show up on any dashboard.</em></p><p><strong>One question I&#8217;d love to hear from you:</strong> Is your product team treating agent traffic differently from human traffic yet? If not, what&#8217;s the blocker? I&#8217;m collecting examples for the next post and I&#8217;ll credit anyone who wants to be named.</p><div><hr></div><h3>Internal Links Suggested</h3><ol><li><p><a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows">AI Architecture Patterns 101: Workflows, Agents, MCPs, and A2A Systems</a> (foundational context for MCP) </p></li><li><p><a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">Build AI Products by Capability, Not Category</a> (referenced in the closing) </p></li><li><p><a href="/__u/aipmguru.substack.com/p/to-agent-or-not-to-agent-thats-the">To Agent or Not to Agent</a> (good companion piece for readers earlier in their agent journey)</p></li></ol>]]></content:encoded></item><item><title><![CDATA[Drift on Foundation Models vs. Your Own Models]]></title><description><![CDATA[Use the AI Drift Map to decide what you can (and can't) control when you build on cloud-hosted foundation models.]]></description><link>https://aipmguru.substack.com/p/drift-on-foundation-models-vs-your</link><guid isPermaLink="false">https://aipmguru.substack.com/p/drift-on-foundation-models-vs-your</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Tue, 02 Jun 2026 14:07:55 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/03bc5cf7-f244-47dd-9dbf-bf8d6233e7b7_5504x3072.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi, I&#8217;m Shaili. I teach AI Builder at UW and shipped AI at Amazon, Disney, Nike, and T-Mobile. AI PM Guru is for PMs who want senior-grade AI interview answers and frameworks that stand the test of launch. Practitioner-real, no hype.</em></p><p><em>This is Post 2 of 2 in the Drift Series. The playbook. Post 1 was the map. If you haven&#8217;t read it, <a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">start there</a> &#8212; this post assumes the vocabulary from <a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">post 1</a>. </em></p><div><hr></div><p>In the first post of this series, we built the AI Drift Map. A one-page legend for how AI systems quietly go stale.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!7Z_r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!7Z_r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png" width="508" height="772.7323943661971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:710,&quot;resizeWidth&quot;:508,&quot;bytes&quot;:1065411,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199809524?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8db64152-5db4-4179-baff-061c5a2d173f_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!7Z_r!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082dd37c-da2b-4581-8eee-b7795f1c5d8f_710x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The point was simple. When a model &#8220;drifts&#8221;, something has changed:</p><ul><li><p><strong>Inputs changed</strong> (data/feature drift),</p></li><li><p><strong>Rules changed</strong> (concept drift),</p></li><li><p><strong>Outcomes changed</strong> (label drift),</p></li><li><p><strong>Plumbing changed</strong> (domain / upstream drift), or</p></li><li><p><strong>Decisions changed</strong> (prediction drift).</p></li></ul><p>That taxonomy doesn&#8217;t change when you move from classic ML to cloud-hosted foundation models like GPT, Gemini, or Claude. What changes is <em>who controls what</em>, and <em>which levers you can pull</em> when drift shows up.</p><p>This post is about that control plane.</p><h2><strong>Foundation models vs your own models, in drift terms</strong></h2><p>When I say &#8220;building on foundation models,&#8221; I mean three common patterns:</p><ul><li><p>Calling a cloud-hosted foundation model API directly (OpenAI, Anthropic, Google).</p></li><li><p>Using a managed foundation model on a cloud platform (Bedrock, Vertex, Azure OpenAI, watsonx).</p></li><li><p>Fine-tuning a foundation model, but still running it on the provider&#8217;s infrastructure.</p></li></ul><p>When I say &#8220;your own models,&#8221; I mean:</p><ul><li><p>Classic ML models, <strong>you</strong> train and deploy.</p></li><li><p>LLMs or foundation models you self-host and fully control (weights and infrastructure both).</p></li></ul><p>Same physics. Two different architectures. And the architecture decides which knobs you can turn.</p><h2><strong>Same drifts, different ownership</strong></h2><p>The high-level view.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!XmOr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!XmOr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png" width="599" height="336.9375" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:599,&quot;bytes&quot;:1308642,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199809524?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!XmOr!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec90dde8-72f1-4e3b-8139-5986ced8dd90_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!eO7I!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!eO7I!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png" width="600" height="337.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:600,&quot;bytes&quot;:1226109,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199809524?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!eO7I!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe15f7bd-73f3-4563-b616-722e3a98c839_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here&#8217;s the table I&#8217;d hand a PM walking into their first AI architecture review.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!HkAX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!HkAX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png" width="727" height="408.9375" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:727,&quot;bytes&quot;:238713,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199809524?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HkAX!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ea845b-0f10-42eb-8baa-c98e8edaeb71_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The takeaway, in one line:</p><div class="callout-block" data-callout="true"><p><strong>Owning the model</strong> gives you more <em>levers at the model level</em>. Weights, data, architecture.</p><p><strong>Building on cloud-hosted foundation models</strong> shifts your power to <em>system-level</em> levers. Prompts, routing, RAG, UX, evals.</p><p></p><p style="text-align: center;"><em><strong>The drift map stays the same. The knobs you can actually turn are very different.</strong></em></p></div><h2><strong>Two drift stories</strong></h2><p>Let&#8217;s make this concrete.</p><h3><strong>Story 1: Drift on your own model (a churn model)</strong></h3><p>You ship a churn model for a B2B SaaS product.</p><ul><li><p><em>Inputs changed:</em> you expanded from U.S. enterprise customers to SMBs in new regions.</p></li><li><p><em>Outcomes changed:</em> churn rate jumps from 4% to 10% after pricing changes.</p></li><li><p><em>Decisions changed:</em> the model still labels accounts as &#8220;low risk&#8221; that are now clearly at risk.</p></li></ul><p>Your runbook:</p><ul><li><p>Update labels and calibration targets.</p></li><li><p>Retrain on newer data with the new mix.</p></li><li><p>Add features that capture the new dimensions (region, segment).</p></li><li><p>Update thresholds and monitoring.</p></li></ul><p>Everything lives inside your stack. You can change data, model, or both.</p><h3><strong>Story 2: Drift on a foundation model (a support copilot)</strong></h3><p>You ship a support copilot built on a cloud-hosted foundation model with RAG.</p><ul><li><p><em>Inputs changed:</em> support tickets shift from &#8220;how-to&#8221; questions to &#8220;complex billing&#8221; and &#8220;policy edge cases&#8221;.</p></li><li><p><em>Plumbing changed:</em> your RAG index hasn&#8217;t been refreshed in months. New policy changes are missing.</p></li><li><p>Rules changed: the provider updates the hosted model sometimes without a version bump on your end, and behavior shifts, becoming more cautious or simply different in the cases you care about.</p></li><li><p><em>Decisions changed:</em> the copilot becomes more evasive and less helpful on exactly the hard cases you care about.</p></li></ul><p>Your runbook is different:</p><ul><li><p><em>Prompt drift:</em> tighten system prompts and policies.</p></li><li><p><em>RAG drift:</em> refresh indexes, update retrieval filters, seed your evals with new documents.</p></li><li><p><em>Provider drift:</em> run golden prompts and evals on a schedule, catch behavior changes early, switch model versions or vendors if needed.</p></li></ul><p>You never touch the weights. You have plenty of room to steer behavior.</p><h2><strong>The Drift Readiness Checklist</strong></h2><p>Five steps. Doable on a normal sprint.</p><p><strong>Step 1: Inventory your AI surfaces.</strong> List 2-3 critical AI use cases (fraud, churn, recommendations, copilots). Label each as &#8220;own model,&#8221; &#8220;foundation model,&#8221; or &#8220;hybrid.&#8221; If you can&#8217;t get to three, one is fine. Start with the highest-stakes one.</p><p><strong>Step 2: Minimal monitoring.</strong> Log inputs, outputs, and at least one business KPI. Add one simple drift signal for inputs, outputs, and outcomes. None of this needs to be elaborate. A nightly job and a Slack alert are enough.</p><p><strong>Step 3: Golden tests.</strong> For foundation models, create 10-50 golden prompts with expected behavior. Run them on every change, plus weekly. For your own models, maintain a basic eval set with labels. (I wrote a <a href="/__u/aipmguru.substack.com/p/how-to-build-your-first-ai-eval-a">walkthrough on building your first eval</a> that lays this out step by step.)</p><p><strong>Step 4: One-page runbook.</strong> For each drift box (inputs, rules, outcomes, plumbing, decisions), define two things: who investigates first, and what the first lever is. Prompts/RAG vs data/model/pipeline.</p><p><strong>Step 5: Governance.</strong> Make the AI Drift Map and the Drift Readiness Checklist part of your design reviews and postmortems. The map is only useful if your team actually uses it.</p><blockquote><p><em>I turned this into a one-page Drift Readiness Checklist you can paste into your workspace and use in design reviews. <strong><a href="https://docs.google.com/document/d/1UNY_tZKwSG0Ne18Js-cq_LXHvt_F4zyUYG2Tg90PzGY/edit?usp=sharing">Grab it here.</a></strong></em></p></blockquote><h2><strong>What you&#8217;ve got after two posts</strong></h2><p>You now have:</p><ul><li><p><a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">A </a><strong><a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">map</a></strong><a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems"> (Post 1</a>): the vocabulary and visuals for all the ways AI systems drift.</p></li><li><p>A <strong>guide</strong> (Post 2): how drift behaves on your own models vs cloud-hosted foundation models, and what to do about each.</p></li></ul><p>Use the map when you&#8217;re explaining drift to stakeholders, students, or new teammates. Use the runbook when you&#8217;re planning your AI architecture or reviewing a production incident. Use the checklist when you&#8217;re not sure where to start.</p><p>I wrote about <a href="/__u/aipmguru.substack.com/p/how-to-build-your-first-ai-eval-a">evals</a> and <a href="/__u/aipmguru.substack.com/p/synthetic-data-101-when-real-data">synthetic data</a> earlier this year, and both of those land harder once you have the drift map in your head. If you haven&#8217;t read them, they&#8217;re the next stops in this same conversation.</p><div><hr></div><p><strong>Related posts</strong></p><ul><li><p><a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">AI Drift Map: How Your AI Systems Quietly Go Stale (Post 1)</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/synthetic-data-101-when-real-data">Synthetic Data 101</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/how-to-build-your-first-ai-eval-a">How to Build Your First AI Eval</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/revising-my-2024-guardrails-post">Revising My 2024 Guardrails Post</a></p></li></ul><div><hr></div><p><em>If this was useful, forward it to one person on your team who needs it. And if there&#8217;s something here you&#8217;d push back on, or an AI PM question you wish I&#8217;d answered, hit reply. I read every reply. The forwards and DMs are the signal that doesn&#8217;t show up on any dashboard.</em></p><p><em>What&#8217;s the one AI PM resource you&#8217;d hand to a non-engineer PM trying to skill up? Drop it below, I&#8217;ll compile.</em></p>]]></content:encoded></item><item><title><![CDATA[AI Drift Map: How Your AI Systems Quietly Go Stale]]></title><description><![CDATA[A visual mental model for AI students and product leaders who want to ship AI features that age gracefully.]]></description><link>https://aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems</link><guid isPermaLink="false">https://aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sat, 30 May 2026 14:07:26 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0aae8578-da6b-4191-bf9a-7e553a150f43_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi, I&#8217;m Shaili. I teach AI Builder at UW and shipped AI at Amazon, Disney, Nike, and T-Mobile. AI PM Guru is for PMs who want senior-grade AI interview answers and frameworks that stand the test of launch. Practitioner-real, no hype.</em></p><p><em>This is Post 1 of 2 in the Drift Series. <strong>The map.</strong> Post 2 is the &#8220;what to do when drift hits you&#8221;, depending on whether you own the model or build on a cloud-hosted foundation model like GPT, Gemini, or Claude.</em></p><div><hr></div><p>Drift is where AI products quietly die after launch. This post is the PM&#8217;s map: the five kinds of drift, how each one shows up in production, and what to ask about each in a design review.</p><h2><strong>The AI Drift Map</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!OW2Z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!OW2Z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png" width="532" height="789.2307692307693" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:728,&quot;resizeWidth&quot;:532,&quot;bytes&quot;:1081667,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199768181?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8608c28e-cb5c-4c3b-b5b1-78fb05ebe415_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!OW2Z!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e0dff60-df0d-47d3-b9e7-7f195a4cbb56_728x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Think of the AI Drift Map as a one-page legend for all the ways your model can go stale.</p><p>At the top, it asks a simple question: <strong>what changed?</strong></p><ul><li><p><strong>Inputs changed &#8594; Data/feature drift</strong></p></li><li><p><strong>Rules changed &#8594; Concept drift</strong></p></li><li><p><strong>Outcomes changed &#8594; Label drift</strong></p></li><li><p><strong>Plumbing changed &#8594; Domain / upstream drift</strong></p></li><li><p><strong>Decisions changed &#8594; Prediction drift</strong> (what you see first)</p></li></ul><p>This vocabulary is intentionally PM-friendly, but it maps directly to the formal definitions used in ML monitoring tools and research.</p><p>Let&#8217;s walk through each box with one example you can reuse in your own projects.</p><h2><strong>Inputs changed: data drift</strong></h2><p>Data drift, also called feature drift, occurs when the inputs your model sees in production no longer resemble the data it was trained on.</p><p>Think of a coffee shop that opened to serve weekday-morning office workers and slowly became a weekend brunch spot for students. Same menu. Same espresso machines. Same staff. Different crowds walking in, ordering different drinks at different times, sitting longer. You&#8217;re still &#8220;doing coffee.&#8221; But the crowd you optimized for isn&#8217;t who walks in anymore.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!fk1g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!fk1g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png" width="570" height="320.625" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:570,&quot;bytes&quot;:1239589,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/199768181?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!fk1g!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F611cfdb4-58da-47bf-ac0f-79cea2e4d5d6_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Industry example: You trained a churn model on U.S. enterprise customers. A year later, your business expanded into SMBs across new geographies. Company size, contract length, and spend - the feature distributions all shifted. The model&#8217;s still internally consistent. But it&#8217;s making predictions about a population it never really saw.</p><p>What changed: the inputs. What&#8217;s still intact: the model and its rules.</p><p>The diagnosis question to ask in a review:</p><blockquote><p>&#8220;Did our user or data mix change meaningfully since we trained this?&#8221;</p></blockquote><h2><strong>Rules changed: concept drift</strong></h2>
      <p>
          <a href="/__u/aipmguru.substack.com/p/ai-drift-map-how-your-ai-systems">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Synthetic Data 101: When Real Data Isn't Enough, Isn't Safe, or Doesn't Exist Yet]]></title><description><![CDATA[What it is, when you need it, and the workflow to actually generate and validate it.]]></description><link>https://aipmguru.substack.com/p/synthetic-data-101-when-real-data</link><guid isPermaLink="false">https://aipmguru.substack.com/p/synthetic-data-101-when-real-data</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sun, 24 May 2026 14:07:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kesn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I first heard of synthetic data in my Nike working days, and I also built synthetic avatar data with my team. Synthetic data came up again recently in my spring AI Product Foundations class at the University of Washington: a team of students working on a B2B project hit the data wall. Their product spec was solid. Their hypothetical customer were lined up. But the customers they could pilot with had only a few hundred data points each, not the thousands their model would need to build.</p><p>Their proposed fix: take whatever real data the businesses gave them, generate synthetic data on top to fill the gaps, and train the model on the combined set. Use synthetic data as a bridge from &#8220;not enough&#8221; to &#8220;enough to start.&#8221;</p><p>I told them that was exactly the right instinct. I also told them they were stepping into a bigger conversation than they realized.</p><p>Here&#8217;s what I dug into so they (and you) could think about it clearly, and actually act on it.</p><p><strong>What you&#8217;ll learn (12-minute read):</strong></p><ul><li><p>What synthetic data actually is (and what it isn&#8217;t)</p></li><li><p>The three situations where it becomes your best option</p></li><li><p>How it gets generated, from rules to foundation models</p></li><li><p>How teams actually generate synthetic data today (with a few tools to look into)</p></li><li><p>Where it&#8217;s showing up in real products</p></li><li><p>The risks you need to design around, and how to validate against them</p></li><li><p>A practical framework for deciding if your product needs it</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!kesn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!kesn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2501535,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/198996849?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!kesn!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf51af89-9e51-4dcb-84f9-cb63f84621e9_1920x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>What Synthetic Data Actually Is</h2><p>Synthetic data is artificially generated data that mimics the statistical properties of real data without intentionally including real records. (More on the &#8220;intentionally&#8221; qualifier later. Leakage is a real risk.)</p><p>That sentence is accurate. It&#8217;s also not very helpful.</p><p>Here&#8217;s what made it click for me: synthetic data is a stunt double. It looks enough like the real actor to film the dangerous scenes, but nobody&#8217;s actual body is at risk. The audience can&#8217;t tell the difference in the final cut. But if the stunt double doesn&#8217;t move like the real actor, the scene falls apart.</p><p>The same trade-off applies. Synthetic data is useful exactly to the degree that it faithfully represents the patterns in your real data. When it does, it&#8217;s genuinely powerful. When it doesn&#8217;t, you&#8217;ve trained your model on fiction.</p><h2>Three Situations Where Synthetic Data Becomes Your Best Option</h2><p>Not every team needs synthetic data. But these three situations keep showing up, and when you&#8217;re in one of them, real data alone won&#8217;t get you there.</p><h3>1. You Can&#8217;t Use Real Data</h3><p>Healthcare. Finance. Education. Any domain where the data you need is personally identifiable, legally protected, or ethically sensitive. HIPAA, GDPR, FERPA. The acronyms change, but the constraint is the same: you can&#8217;t just hand real patient records to your ML pipeline.</p><p>Healthcare AI is the textbook case. <a href="https://synthetichealth.github.io/synthea/">The Synthea project</a>, an open-source generator of synthetic patient records, exists for exactly this reason. Real records can&#8217;t be shared across institutions; synthetic records can. Teams that need to test model behavior on edge cases (rare diseases, complex polypharmacy, demographic representation) generate test populations rather than wait for permission to access real patients&#8217; data. Synthea is widely used in research and benchmarking.</p><p>The pattern repeats outside healthcare. Anywhere data is regulated, synthetic data is how teams prototype and test.</p><h3>2. You Don&#8217;t Have Enough Real Data</h3><p>This is the rare-event problem. Your model needs thousands of examples of something rare. Reality has given you a hundred. This is called class imbalance, and it&#8217;s one of the most common problems in applied ML.</p><p>The numbers are brutal. In fraud detection, legitimate transactions might outnumber fraudulent ones 10,000 to 1. In manufacturing defect detection, you might have millions of &#8220;good&#8221; images and fifty &#8220;defect&#8221; images. In autonomous driving, the scenarios that matter most (near-misses, edge cases, unusual weather conditions) are by definition rare.</p><p>You can&#8217;t train a model to catch something it&#8217;s barely seen. Synthetic data fills the gap by generating thousands of realistic examples of the rare class. In practice, teams often combine techniques such as SMOTE (Synthetic Minority Oversampling Technique) style oversampling or GAN-based tabular synthesis (e.g., CTGAN) to expand the representation of rare classes. More on these in the methods section below.</p><h3>3. Your Product Doesn&#8217;t Exist Yet</h3><p>This is the cold-start problem. You&#8217;re building a product for a market that doesn&#8217;t have existing data, because the product itself is new.</p><p>A robotics team building a warehouse navigation system for a new facility. An autonomous vehicle team preparing for road conditions in a country they haven&#8217;t launched in yet. An AI assistant being designed for a workflow that no one has done before.</p><p>And, at a smaller scale, the UW students from the opening of this post: a B2B product team that can pilot with a handful of customers but needs thousands of records to train. Same problem, different size. The product doesn&#8217;t exist yet, so the data doesn&#8217;t either.</p><p>You can&#8217;t collect user interaction data for a product that hasn&#8217;t shipped. But you need that data to build the product that ships. Synthetic data breaks the chicken-and-egg problem.</p><p>I touched on this in my <a href="/__u/aipmguru.substack.com/p/world-models-101-the-environment">World Models 101 post</a>. The sim-to-real pattern: train heavily in simulation, then fine-tune on smaller real-world datasets once you deploy. Synthetic data is what makes that pattern possible.</p><p>That&#8217;s the &#8220;<em>what&#8221;</em> and the &#8220;<em>when&#8221;</em>: what synthetic data is, and the three situations where you actually need it.</p><p>The rest of this post is &#8220;the <em>how&#8221;</em> and &#8220;the <em>decide&#8221;</em>. The operational half you run on Monday morning:</p><ul><li><p><strong>How synthetic data actually gets made</strong>: the four generation methods, each with a PM checklist for when to use it</p></li><li><p><strong>How teams generate it today</strong>: three concrete workflows, including a no-code LLM workflow you can run yourself, plus the vendor tools worth a look</p></li><li><p><strong>Where it&#8217;s showing up in real products</strong>: autonomous vehicles, healthcare, finance, evals, and LLM training</p></li><li><p><strong>The four risks, each with a validation check</strong>: how to catch distribution mismatch, artifacts, privacy leakage, and bias amplification before they ship</p></li><li><p><strong>A decision framework</strong>: whether your product needs synthetic data at all, and which method fits your risk tolerance</p></li><li><p><strong>Three interview questions</strong>: how to handle synthetic data when it comes up in an AI PM interview</p></li></ul>
      <p>
          <a href="/__u/aipmguru.substack.com/p/synthetic-data-101-when-real-data">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Explain Your Business to AI Once. Then Never Again.]]></title><description><![CDATA[&#8220;It organizes your business so you understand where it&#8217;s going.&#8221; Twelve markdown files, confidence-tagged, open-sourced today.]]></description><link>https://aipmguru.substack.com/p/explain-your-business-to-ai-once</link><guid isPermaLink="false">https://aipmguru.substack.com/p/explain-your-business-to-ai-once</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sat, 16 May 2026 14:07:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1KTZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="callout-block" data-callout="true"><p><em>Quick note before this one: this is different from what I usually write here. I&#8217;ve been quiet for about a week and a half. I&#8217;ve been heads-down the last month building something rather than writing about it. I tested it on myself first. This week I&#8217;m shipping it. Here&#8217;s how it went.</em></p></div><p>Let me tell you about this context portfolio I built, and how I got started. How many of us business owners and side hustlers have answered the same questions over and over in different tools? This context portfolio is going to be your one-stop shop, believe me - even if you don&#8217;t believe me - keep reading :)</p><p>Before I started writing this blog post, I spent 75 minutes being interviewed about my own side hustle by a structured interview I built myself.</p><p>The system prompt, templates, multi-file capture, and judgment-layer challenges. All mine. Claude is the engine that executes them.</p><p>The interview asked me things I thought I had ready answers for. Then it pushed back when those answers were too generic.</p><p>Mid-interview, a sentence came out that I&#8217;d never assembled before. It compressed three things at once. Who I am, who I&#8217;m writing for, and why now. The interview flagged it as load-bearing, and I had to thread it through three other files before continuing. That&#8217;s not something you do alone. You skip past sentences like that when you&#8217;re writing for yourself.</p><p>Then the interview challenged my thesis. Not gently. Three counter-arguments came back, all real, all things I&#8217;d been quietly hoping nobody would push on. I kept the core thesis intact but rewrote the framing to focus on the strongest of the three. The new version is harder to knock over. That update would have taken me months on my own.</p><p>Then the coherence check caught a gap between my long-term goals and my current bets. Stated it plainly: <em>partial, with an honest gap</em>. The kind of thing you&#8217;d never write into your own document because it makes you uncomfortable.</p><p>At the end, twelve markdown files sat in a folder on my laptop. My strategic context. Confidence-tagged. Portable. Ready to drop into any AI tool I use after this.</p><p>That&#8217;s what I built. <strong>I open-sourced it today.</strong></p><p><strong><a href="https://github.com/aipmguru/founder-context-portfolio">github.com/aipmguru/founder-context-portfolio</a></strong></p><p>A non-tech founder who ran the portfolio with me this week put the value prop in his own words:</p><blockquote><p><em>&#8220;An assistant that just understands everything about your company. And any decision that you can bounce it off of this system. And it&#8217;ll make sure that with whatever you choose, it&#8217;ll align with your ultimate end goal.&#8221;</em></p></blockquote><p><strong>You never have to re-explain your business to another AI tool again. The twelve files are the </strong><em><strong>how</strong></em><strong>. The persistent memory is the </strong><em><strong>why</strong></em><strong>.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!1KTZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 424w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 848w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 1272w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!1KTZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6854355,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/197882566?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 424w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 848w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 1272w, /__u/substackcdn.com/image/fetch/$s_!1KTZ!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6f18844-751b-4ed5-91eb-8ad9684f77a7_5504x3072.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2><strong>The problem this solves</strong></h2><p>You&#8217;ve explained your business fifty times this year. To investors. To advisors. To a friend at dinner. To ChatGPT. To Claude. To Cursor. To your cofounder.</p><p>Every time you open a new AI tool, you start over.</p><p>You write a prompt that tries to compress everything: <em>&#8220;I run a Series A SaaS for healthcare ops, my customer is hospital revenue cycle teams, my pricing is per-seat with a usage component, here&#8217;s where I&#8217;m stuck...&#8221;</em></p><p>Then the next tool, the same paragraph in a slightly different shape, with the small things you forgot to mention last time. A week later you re-explain to a new advisor and forget the thing you told ChatGPT yesterday.</p><p>Your strategic context lives in your head and shows up in fifty different ChatGPT threads, none of which talk to each other. The answers reflect that. Every AI tool you use is having a generic conversation with you because you keep feeding it generic prompts. You get generic answers. You scroll, paste, copy, rewrite, and start over the next day.</p><p><strong>This is the system that ends that.</strong></p><h2><strong>What&#8217;s in the repo</strong></h2><p>Twelve markdown files in one MIT-licensed repository. Free.</p><p>The files capture:</p><ol><li><p><strong>Identity</strong> &#8212; who you are, what you do in plain English</p></li><li><p><strong>Founder-Market Fit</strong> &#8212; the earned secret you have that competitors don&#8217;t</p></li><li><p><strong>Market and Customers</strong> &#8212; your beachhead, customer language, what they&#8217;re using today instead of you</p></li><li><p><strong>Thesis and Bets</strong> &#8212; what you believe has to be true, what you&#8217;re betting on, what would kill the bet</p></li><li><p><strong>Positioning</strong> &#8212; competitive alternatives, category, unique value, point of view</p></li><li><p><strong>Narrative and Story</strong> &#8212; origin, public version, private truth, voice</p></li><li><p><strong>Business Model</strong> &#8212; value, pricing, unit economics, what breaks the model</p></li><li><p><strong>Constraints</strong> &#8212; runway, time, team, stack, ethical lines, refused-to-do list</p></li><li><p><strong>Goals</strong> &#8212; week, month, quarter, year, long-term, and what you&#8217;re explicitly <em>not</em> chasing</p></li><li><p><strong>Stakeholder Pressure</strong> &#8212; who&#8217;s pulling on you and where their expectations conflict with your thesis</p></li><li><p><strong>Decision Log</strong> &#8212; recent decisions, options considered, reasoning, what would change your mind</p></li><li><p><strong>Competitive Landscape</strong> &#8212; direct competitors, emerging threats, your moat, response to a $50M-funded entrant</p></li></ol><p>You don&#8217;t fill these in by hand. You run a guided interview that lives in <code>interview-protocol/agent-system-prompt.md</code>. You run it in Claude Code, Claude.ai, ChatGPT, Cursor, Gemini. Anywhere that reads markdown files.</p><p>The interview pushes back on weak answers. It tags every claim as <strong>Evidence / Faith / Untested</strong>. It runs devil&#8217;s advocate on your thesis. It captures the moments your private truth diverges from your public narrative. When you give it a generic answer, it asks again.</p><p>It&#8217;s not a fill-in-the-blank template. It&#8217;s a structured interrogation (yes, I know I said interrogation, and you&#8217;ll get that when you&#8217;re going through the interview - believe me) that ends with strategic clarity you actually wrote down.</p><h2><strong>Two audiences, one context portfolio</strong></h2><p><strong>Founders making strategic calls without a PM.</strong> Solo founders. Cofounder duos. Pre-seed and seed-stage operators who are scoping AI features, pricing decisions, customer theses, and positioning. All without a senior PM in the room. The portfolio gives you the strategic thinking layer that lives in markdown. The interview does what a good PM would do if you hired one: ask the questions you&#8217;ve been avoiding.</p><p><strong>AI PMs and product operators building a body of work.</strong> If you&#8217;re an AI PM with frameworks, posts, courses, interview prep, and conference talks, your strategic context (thesis, positioning, decision log) is also worth structuring. The same twelve files capture your professional context the way they capture a business&#8217;s. You take them with you across roles, contracts, side projects.</p><p>Same twelve files, two different audiences. That&#8217;s the point of building it markdown-first.</p><h2><strong>Why does this matter more than another founder framework?</strong></h2><p>Three reasons.</p><p><strong>1. AI tools amplify what you give them.</strong> Generic prompts produce generic answers that are already in their training data. Structured, confidence-tagged, contradiction-checked context produces advice calibrated to <em>your</em> situation. The quality of your AI conversations is bottlenecked by the strategic clarity you&#8217;ve actually done the work of writing down. Most founders haven&#8217;t.</p><p><strong>2. Strategic context is the most valuable thing in your head and the worst-organized.</strong> You make thirty product decisions a month. By month eighteen, you can&#8217;t remember why you decided what you decided. You can&#8217;t remember which advisor pushed for which thing. You can&#8217;t remember why you killed the feature you killed.</p><p>The decision-log file alone is worth the time you spend on it. The thesis-and-bets file forces you to write down what would make you kill the bet. Most founders don&#8217;t have that on paper anywhere. They have a deck. And the deck is the polished version of strategic thinking that already happened, sanded smooth for an audience. The portfolio is the actual thinking, with the rough edges still in it. That&#8217;s what makes it useful for the next decision instead of the last fundraise.</p><p><strong>3. Markdown beats every other format.</strong> Your strategic context shouldn&#8217;t live inside a vendor&#8217;s UI. It should live in your laptop and your GitHub. No vendor lock-in. You own the artifact.</p><h2><strong>How to use it</strong></h2><p>Five steps. The whole thing takes 60 to 90 minutes if you have most of the strategic context already in your head. Longer if the interview surfaces gaps you need to think through.</p><p><strong>Step 1: Click &#8220;Use this template&#8221; on the GitHub repo.</strong></p><p>Go to <a href="https://github.com/aipmguru/founder-context-portfolio">github.com/aipmguru/founder-context-portfolio</a>. Click the green &#8220;Use this template&#8221; button at the top right. Choose &#8220;Create a new repository.&#8221; This makes your own private copy. Your strategic context never touches my repo.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!ATg8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 424w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 848w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!ATg8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png" width="728" height="93.20971302428256" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:174,&quot;width&quot;:1359,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="/__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 424w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 848w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ATg8!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4097a6a4-2924-4842-9c05-9ecbe2d84606_1359x174.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><strong>Step 2: Create your own private copy.</strong></p><p>Name it whatever feels right. I named mine <code>aipmguru-context</code>. Make it private. Click create. You now have your own repo with the 12 empty files waiting.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!E7pI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 424w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 848w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 1272w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!E7pI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png" width="953" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:953,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Screenshot 2026-05-13 at 11 16 47&#8239;AM&quot;,&quot;title&quot;:&quot;Screenshot 2026-05-13 at 11 16 47&#8239;AM&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Screenshot 2026-05-13 at 11 16 47&#8239;AM" title="Screenshot 2026-05-13 at 11 16 47&#8239;AM" srcset="/__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 424w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 848w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 1272w, /__u/substackcdn.com/image/fetch/$s_!E7pI!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e0684cc-cb93-4d19-a41a-d11738b3705b_953x813.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="pullquote"><p>Do either steps 1 and 2 <strong>OR </strong>steps 3 and 4!</p></div><p><strong>Step 3 &#8212; Get the repo onto your computer</strong></p><p>Two options &#8212; pick whichever you&#8217;re more comfortable with.</p><p><strong>Option A &#8212; Download ZIP (easiest, no terminal required)</strong></p><ol><li><p>Go to your new repo (<code>github.com/[your-username]/my-context-portfolio</code>)</p></li><li><p>Click the green <strong>Code</strong> button (top right of the file list)</p></li><li><p>Click <strong>Download ZIP</strong></p></li><li><p>Unzip the downloaded file into a folder you can find easily &#8212; Documents, Desktop, wherever you keep important files</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!LzPt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 424w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 848w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!LzPt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png" width="1009" height="437" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:437,&quot;width&quot;:1009,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Screenshot 2026-05-13 at 11 01 50&#8239;AM&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Screenshot 2026-05-13 at 11 01 50&#8239;AM" title="Screenshot 2026-05-13 at 11 01 50&#8239;AM" srcset="/__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 424w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 848w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LzPt!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac8bbee4-47ac-466e-9493-c91108ccfe5c_1009x437.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Option B &#8212; Clone with Git (terminal users)</strong></p><pre><code>git clone https://github.com/[your-username]/my-context-portfolio.git
cd my-context-portfolio</code></pre><p><strong>Then: open the folder in Claude Code</strong></p><ol><li><p>Open Claude Code</p></li><li><p>Click <strong>Open Folder</strong> (or File &#8594; Open Folder)</p></li><li><p>Navigate to where you saved or unzipped your repo</p></li><li><p>Select the folder</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!Xm6C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 424w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 848w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!Xm6C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png" width="728" height="93.33333333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:190,&quot;width&quot;:1482,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:33393,&quot;alt&quot;:&quot;Screenshot 2026-05-13 at 11 06 01&#8239;AM&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Screenshot 2026-05-13 at 11 06 01&#8239;AM" title="Screenshot 2026-05-13 at 11 06 01&#8239;AM" srcset="/__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 424w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 848w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Xm6C!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1f28e9e-a7d5-41e1-9caf-f40a20ce7bd9_1482x190.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><strong>Note</strong></p><p>You should now see the folder structure on the left side of Claude Code: <code>templates/</code>, <code>interview-protocol/</code>, plus README.md and other docs.</p><div><hr></div><h2><strong>Step 4 &#8212; Start the interview</strong></h2><p>In the Claude Code chat window, type this and press Enter:</p><pre><code><code>start interview
</code></code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!TTwP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 424w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 848w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 1272w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!TTwP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png" width="1456" height="235" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:235,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Screenshot 2026-05-13 at 11 06 46&#8239;AM&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Screenshot 2026-05-13 at 11 06 46&#8239;AM" title="Screenshot 2026-05-13 at 11 06 46&#8239;AM" srcset="/__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 424w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 848w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 1272w, /__u/substackcdn.com/image/fetch/$s_!TTwP!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6ce562b-98d5-416f-98fc-9e5a311e299a_1475x238.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!86rR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 424w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 848w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 1272w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!86rR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png" width="1456" height="750" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:750,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Screenshot 2026-05-13 at 11 06 59&#8239;AM&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Screenshot 2026-05-13 at 11 06 59&#8239;AM" title="Screenshot 2026-05-13 at 11 06 59&#8239;AM" srcset="/__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 424w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 848w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 1272w, /__u/substackcdn.com/image/fetch/$s_!86rR!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F652d8965-40a8-4553-9fd9-41ae82bd6b6f_1526x786.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Claude Code reads the file at <code>interview-protocol/agent-system-prompt.md</code> and begins the structured interview.</p><p>Four tips for answering well:</p><ul><li><p><strong>Be specific.</strong> &#8220;Mid-market SaaS&#8221; is not specific. &#8220;Series A SaaS companies with 50-200 employees in the last 18 months&#8221; is.</p></li><li><p><strong>Don&#8217;t polish.</strong> This is for you and your AI tools. Nobody else reads it. Polished answers hide assumptions.</p></li><li><p><strong>It&#8217;s okay to say &#8220;I don&#8217;t know.&#8221;</strong> That tags as Untested and gives you a list of things to validate.</p></li><li><p><strong>Use the confidence tags.</strong> Evidence / Faith / Untested. The discomfort of marking something Faith or Untested is exactly the point.</p></li></ul><h2><strong>What I actually went through</strong></h2><p>I ran this interview on AIPMGURU this week. A few things happened that wouldn&#8217;t have happened in a self-guided journaling session.</p><p><strong>The interview pushed back when I hand-waved.</strong> Early on I gave a generic dinner-party description of the business. The pushback came right back: <em>&#8220;That&#8217;s the about-page version. It could be ten different newsletters. Drop the marketing layer. Who&#8217;s actually reading you, and what do they get from it that they can&#8217;t get from the fifty other AI PM newsletters?&#8221;</em> That single push got me to a beachhead persona, three reader segments ranked by need, and a specific data point about which posts grew the list versus which didn&#8217;t. I would have written a smoother version in a self-guided document. The interview wouldn&#8217;t let me.</p><p><strong>Devil&#8217;s advocate updated my thesis.</strong> I&#8217;d been carrying around a thesis framing with a single urgency anchor. The interview surfaced three counter-arguments. I absorbed one of them and rewrote the thesis around a more durable framing. The new thesis travels across geographies and survives the original anchor. That&#8217;s the kind of revision that only happens when something you can&#8217;t dismiss is asking the question.</p><p><strong>Coherence check caught a gap I&#8217;d been ignoring.</strong> My long-term goal doesn&#8217;t yet stack with my current bets. The interview stated it plainly. Not as a criticism, as an observation. Once I read it written down, I couldn&#8217;t un-see it. That&#8217;s now the right strategic question for me to work on.</p><p><strong>Confidence tagging surfaced what I don&#8217;t actually know.</strong> Every claim gets tagged Evidence, Faith, or Untested. I caught myself wanting to tag a few claims &#8220;Evidence&#8221; that were really &#8220;Faith.&#8221; Once you have to label it, you can&#8217;t dodge it.</p><p>Here&#8217;s a thing I didn&#8217;t expect when I built this: the interview doesn&#8217;t only catch things you don&#8217;t know. It catches things you know perfectly well but haven&#8217;t said out loud yet. The avoidance is what surfaces, not the ignorance. That was a different reaction than I&#8217;d planned for.</p><blockquote><p>The discomfort is the value.</p></blockquote><p>A founder who ran the portfolio sent me this:</p><blockquote><p><em>&#8220;This AI system is hardcore, it really made me do some deep thinking about my current business, how to approach prospects, and how to pivot or approach all these AI changes happening to startups.&#8221;</em> &#8212; Jennifer, GoWavey</p></blockquote><p>Sharpened differentiation. Caught contradictions. Strategic clarity you can hand to any AI tool. That&#8217;s the experience.</p><h2><strong>What sits on top of the files</strong></h2><p>The repo is free. MIT-licensed. Fork it, edit it, use it however you want.</p><p>What sits on top of the files is the <strong>Strategic PM OS</strong>. A workshop where I teach a set of structured AI Skills that read your portfolio and walk you through every major strategic decision. Customer thesis. Problem validation. Bet selection. Coherence check. And the rest of the operating system you&#8217;d build if you had a product team. Each skill produces a decision memo you can defend to your board, your cofounder, or yourself.</p><p>Building the portfolio is step one. Running an operating system that uses it to make ongoing strategic decisions is step two.</p><p>Next cohort: <strong>Saturday May 30 and Saturday June 6, 2026.</strong> Four hours each. Virtual. <strong>Founding cohort rate: $597.</strong> Fifteen seats only.</p><p>A founding-cohort student told me:</p><blockquote><p><em>&#8220;Those courses give you knowledge. This gives you a working product built around your specific business.&#8221;</em></p></blockquote><p>That&#8217;s the bar I&#8217;m holding the workshop to.</p><p><strong><a href="https://pmos.founderwell.com/">Reserve your seat &#8594; pmos.founderwell.com</a></strong></p><h2><strong>What to do now</strong></h2><p>Pick whichever fits where you are:</p><ol><li><p><strong>Star the repo.</strong> Helps me know what&#8217;s landing and who&#8217;s reading.</p></li><li><p><strong>Use the template.</strong> Click &#8220;Use this template&#8221; on the GitHub page to create your own private copy. Cost: zero dollars. Your business context never leaves your machine.</p></li><li><p><strong>Run the interview.</strong> Sixty to ninety minutes of structured pushback. Twelve filled files at the end.</p></li><li><p><strong>Sign up for the PM OS workshop.</strong> May 30 and June 6. Fifteen seats. The judgment layer that sits on top of the files.</p></li></ol><p><strong><a href="https://github.com/aipmguru/founder-context-portfolio">Get the repo &#8594; github.com/aipmguru/founder-context-portfolio</a></strong></p><p>If you run the interview, reply to this post with what surfaced. The load-bearing phrases other founders find are interesting to me, and I&#8217;ll write about the patterns I see across portfolios as more come in.</p><div><hr></div><h2><strong>A short note on lineage</strong></h2><p>This is built on top of <a href="https://github.com/nlwhittemore/personal-context-portfolio">Nathaniel Whittemore&#8217;s Personal Context Portfolio</a>. I adapted it for founders and strategic operators. The differences: founder-strategic content (not personal-general), multi-file capture during the interview (one answer feeds three files at once), judgment-layer challenges woven in (not just neutral capture), and integration with the Strategic PM OS.</p><p>Credit where it&#8217;s due. The structure is portable. The founders who run it are the ones who make it real.</p><div><hr></div><p>The discomfort is the value. Build the portfolio anyway.</p>]]></content:encoded></item><item><title><![CDATA[Revising My 2024 Guardrails Post]]></title><description><![CDATA[Toxicity filters and length limits aren't a guardrails section. They're a quarter of one. The other three are where the 2026 incidents come from.]]></description><link>https://aipmguru.substack.com/p/revising-my-2024-guardrails-post</link><guid isPermaLink="false">https://aipmguru.substack.com/p/revising-my-2024-guardrails-post</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sat, 02 May 2026 14:07:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/cdb75ebc-da8b-4335-849c-a06f60730daa_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Toxicity filters and length limits are a quarter of the guardrails section. The other three are where the 2026 incidents come from.</em></p><p>I wrote about <a href="/__u/aipmguru.substack.com/p/guardrails-understanding-and-implementing">guardrails on this Substack in February 2024</a>. I organized that post by category. Technical guardrails. Data-driven approaches. Process and human oversight. Legal and ethical. Four buckets of <em>what kind of guardrail</em> you&#8217;re building. That cut held up when AI products mostly generated text.</p><p>The headlines from the past eighteen months have a pattern. <a href="https://www.pcmag.com/news/vibe-coding-fiasco-replite-ai-agent-goes-rogue-deletes-company-database">An agent deletes production data</a>. <a href="https://www.reddit.com/r/SaaS/comments/1s8h2j5/my_ai_agent_silently_burned_800_in_api_calls/">A coding agent silently burns through hundreds of dollars in API calls overnight</a>. <a href="https://thehackernews.com/2026/01/researchers-reveal-reprompt-attack.html">An agent retrieves customer records that nobody told it were off-limits</a>.</p><p>Every one of those incidents traces back to the same gap. Not &#8220;we forgot a category.&#8221; We didn&#8217;t know <em>when</em>, in the system&#8217;s journey to fire, each guardrail would be fired.</p><p>Two years ago, the right question was <em>what kind of guardrail does this product need?</em> Today, the right question is <em>when in the system&#8217;s journey does each guardrail fire?</em> The 2024 categories are still valid however, they need to be re-cut by stage.</p><h2>What Guardrails Meant in 2024</h2><p>Two years ago, the AI PM world was mostly shipping chatbots. LLMs that generated text. Maybe a RAG pipeline. Maybe a function call or two if you were feeling ambitious. The product surface was LLMs generating words.</p><p>So the way I organized guardrails in 2024 made sense for that surface. I cut by category. Technical guardrails covered the model&#8217;s output (toxicity filters, length enforcement, fact-checking). Data-driven approaches covered training and content quality. Process safeguards covered human oversight. Legal and ethical covered compliance and impact. Four buckets, each addressing a different <em>kind</em> of risk.</p><p>When the surface is words, organizing by category works. Most of your risk is concentrated at one moment, the model produces a response, and your category buckets cover the kinds of things that can go wrong with it. The journey only has one moment that matters, so it doesn&#8217;t matter much that the categories don&#8217;t tell you <em>when</em> anything fires.</p><p>But the surface area of what an AI product does has expanded since then. The journey isn&#8217;t one moment anymore.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!KA-D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 424w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 848w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 1272w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!KA-D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png" width="399" height="711.9411764705883" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:816,&quot;resizeWidth&quot;:399,&quot;bytes&quot;:1595811,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/196143643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 424w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 848w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 1272w, /__u/substackcdn.com/image/fetch/$s_!KA-D!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f79ef66-d767-4087-ad22-b03f5660da2f_816x1456.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>What Changed in Two Years</h2><p>Your product surface stopped being words, now in 2026 - it is all about actions. It books calendar events. It writes code to your repo. It exports data. It executes transactions. It touches external systems your customers depend on.</p><p>That shift is the whole post I wrote about last week: <a href="/__u/aipmguru.substack.com/p/ai-agents-vs-agentic-ai-a-pms-guide">AI Agents vs. Agentic AI</a>. Five dimensions of autonomy, dialed up from &#8220;chatbot with search&#8221; to &#8220;autonomous system that runs for hours.&#8221; When you turn those dials up, your failure modes change completely.</p><p>Here&#8217;s the part that matters for guardrails: when your product only generates text, a guardrail failure is a bad response. Embarrassing, maybe reputationally damaging, but bounded. You catch it and move on.</p><p>When your product takes actions, a guardrail failure is an incident.</p><p>An agent that exports a customer list isn&#8217;t a bad response. It&#8217;s a data breach. An agent that modifies a production database isn&#8217;t a quality issue. It&#8217;s an operational event. An agent that runs up $40,000 in API costs overnight because nobody capped the spend isn&#8217;t a miss. It&#8217;s a finance conversation with your CFO.</p><p>A 2024 stack was built for the bad-response failure mode. The 2026 failure modes need their own stack.</p><h2>The Four-Layer Guardrail Stack</h2><p>The mental model I landed on after two years of watching this play out, in class, in interviews, in the agentic features I&#8217;ve built: guardrails in 2026 are a stack of four distinct layers, each firing at a different moment in the system&#8217;s journey.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!hjwz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!hjwz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png" width="1738" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1738,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2756063,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/196143643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc22134e-3993-4ea2-a875-4bd839875a89_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!hjwz!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3cbc52e-ee8c-4948-9b80-a5758e460741_1738x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Let me walk through each layer.</p><h3>Stage 1: Before the Model (Input Guardrails)</h3><p>These fire before the model sees anything.</p><ul><li><p><strong>Prompt injection detection.</strong> Someone is trying to hijack your system prompt. Catch it before the model reads it.</p></li><li><p><strong>PII masking.</strong> The user pasted a credit card number, an SSN, a customer ID. Mask it before it hits the model and before it gets logged anywhere.</p></li><li><p><strong>Off-topic rejection.</strong> A customer support bot is being asked to write code. A medical Q&amp;A tool is being asked about stock picks. Recognize scope violations and reject at the door.</p></li><li><p><strong>Policy and scope checks.</strong> Does this user have permission to ask this question at all? Is the request in the approved use case?</p></li></ul><p>This is the layer most teams have. It&#8217;s the closest thing to the 2024 guardrails. A well-known set of filters, solid tooling and clear product decisions.</p><p>Most AI PMs can list these without thinking.</p><h3>Stage 2: During (Context Guardrails)</h3><p>These fire while the model retrieves and reasons.</p><p>This is the journey moment the 2024 framework didn&#8217;t cover well. The data-driven category in that post addressed training data quality, not runtime data access. In 2024, most products weren&#8217;t doing retrieval at scale, and most PMs treated retrieval as an engineering concern rather than a product one. That&#8217;s the gap.</p><p>Context guardrails control what the model can <em>see</em>. And that&#8217;s a product decision, not an engineering one.</p><ul><li><p><strong>Data access controls.</strong> If the agent is doing RAG, it should only retrieve documents that the user is authorized to see. A support agent looking up ticket history shouldn&#8217;t pull up tickets from a different account.</p></li><li><p><strong>Row-level security on retrieval.</strong> Vector databases don&#8217;t enforce this for you. Your retrieval layer has to filter based on user identity.</p></li><li><p><strong>Memory scoping.</strong> If your agent has persistent memory, whose memory is it? What does it retain? When does it forget?</p></li><li><p><strong>Permitted data scoping.</strong> Even authorized data has a scope. Personal data from three years ago might be authorized technically, but off-limits by policy.</p></li></ul><p>Why most teams miss this layer: it looks like plumbing. It feels like infrastructure. It gets pushed to engineering as a data security concern and stays there.</p><p>But if an agent retrieves data it shouldn&#8217;t have seen, the incident is a product incident. Your name is on that PRD. Context is a guardrail.</p><h3>Stage 3: After the Model (Output Guardrails)</h3><p>These fire before the response goes back to the user.</p><p>This is the 2024 layer. The one everyone has. The one most teams cover thoroughly.</p><ul><li><p><strong>Hallucination detection.</strong> Cross-check outputs against retrieved sources. Flag claims that don&#8217;t trace back to a verified context.</p></li><li><p><strong>Toxicity and safety filters.</strong> Block harmful content before it reaches the user.</p></li><li><p><strong>Compliance checks.</strong> Financial outputs need disclaimers. Medical outputs need &#8220;consult a doctor&#8221; language. Legal outputs need a jurisdiction context.</p></li><li><p><strong>Format validation.</strong> If the output is supposed to be JSON, make sure it parses. If it&#8217;s supposed to be under 200 words, enforce that.</p></li><li><p><strong>Brand voice checks.</strong> Does this response sound like your brand, or does it sound like generic GPT?</p></li></ul><p>These are critical. They&#8217;re necessary. They&#8217;re also not sufficient.</p><p>A system with perfect output guardrails and nothing else can still export the wrong customer list. Can still charge the wrong card. Can still send the wrong email. Because by the time you&#8217;re filtering the output, the agent has already decided to take an action.</p><p>That&#8217;s what Stage 4 is for.</p><h3>Stage 4: Before Actions (Behavioral Guardrails)</h3><p>These fire before the agent does anything in the real world.</p><p>This is the moment of the journey that didn&#8217;t exist in most 2024 products. The process category in that 2024 framework covered human oversight in general, but &#8220;before the agent takes an action&#8221; wasn&#8217;t a moment that needed its own layer because most products didn&#8217;t have that moment. Now they do, and most teams skip Stage 4 entirely.</p><ul><li><p><strong>Tool permissions.</strong> What tools does the agent have access to? What&#8217;s out of scope? An agent that can read from your database probably shouldn&#8217;t be able to drop tables.</p></li><li><p><strong>Confidence thresholds.</strong> Only execute if the agent is above X% confident. Below that, flag for review.</p></li><li><p><strong>Human-in-the-loop triggers.</strong> High-stakes actions always get a human. Financial transactions over $Y. Customer-facing emails. Permanent deletes.</p></li><li><p><strong>Cost caps.</strong> Maximum spend per task, per user, per hour. Circuit breakers when limits are hit.</p></li><li><p><strong>Rate limits.</strong> Not just on API calls. On the number of actions per unit time.</p></li><li><p><strong>Rollback capability.</strong> If something goes wrong, can you undo it? If not, you need stronger gates before the action.</p></li></ul><p>This layer is where the real 2026 incidents happen. Every story you&#8217;ve heard about an AI agent that &#8220;went off the rails&#8221; traces back to Stage 4, missing or incomplete.</p><p>The pattern is almost always the same. The team had input filters. Had output filters. Built the agent. Shipped. Nobody wrote down what the agent was permitted to actually do. The agent did a thing nobody expected. Incident.</p><h2>Why Most Teams Miss Stages 2 and 4</h2><p>Teams with AI products in 2026 usually have Stages 1 and 3. Input filters and output filters. The 2024 version of guardrails.</p><p>They usually miss Stages 2 and 4.</p><p>Why? Because Stages 1 and 3 feel like the model&#8217;s safety, Stages 2 and 4 feel like infrastructure.</p><p>Context guardrails look like data security. Behavioral guardrails look like DevOps. Both get scoped to engineering, get pushed to the backlog, and never land in the PRD because they don&#8217;t feel like product decisions.</p><p>They are product decisions. They might be the most important product decisions you make on an agentic feature.</p><p>What the agent can see (Stage 2) and what the agent can do (Stage 4) aren&#8217;t technical constraints. They&#8217;re the literal scope of the product. If you wouldn&#8217;t let an engineer decide what features ship, you shouldn&#8217;t let them decide what an agent can touch and what it can&#8217;t.</p><p>Here&#8217;s the gut check I use now. If someone asked you, &#8220;What&#8217;s this agent allowed to do and under what conditions?&#8221; and you can&#8217;t answer in three sentences, you don&#8217;t have Stage 4. And if you can&#8217;t answer &#8220;what data is this agent authorized to see?&#8221; the same way, you don&#8217;t have Stage 2.</p><p>Two questions - that&#8217;s it!</p><h2>The PRD Pattern for 2026 Guardrails</h2><p>So what does this actually look like when you&#8217;re writing the spec?</p><p>I wrote a bigger post last month on <a href="/__u/aipmguru.substack.com/p/the-builders-prd-what-to-think-through">The Builder&#8217;s PRD</a>. The five table-stakes PM questions and three AI-specific ones. Guardrails is the section most AI PRDs are missing entirely, and when it is there, it&#8217;s usually a short paragraph about toxicity filters.</p><p>That&#8217;s not enough anymore. The guardrails section needs to answer four questions explicitly. One per layer.</p><p><strong>Input (Stage 1):</strong> What inputs does the system accept, and what gets rejected at the door?</p><p><strong>Context (Stage 2):</strong> What data is this system authorized to see, and who enforces that boundary?</p><p><strong>Output (Stage 3):</strong> What outputs pass, and what gets blocked or flagged before the user sees them?</p><p><strong>Actions (Stage 4):</strong> What is the system permitted to do, what requires human approval, what gets logged, and who gets paged when something goes wrong?</p><p>If your PRD answers all four with specifics, you&#8217;ve thought about this seriously. If it answers two with specifics and hand-waves the other two, you&#8217;re shipping a 2024 stack in 2026. That&#8217;s the gap I see most often.</p><h2>The Reframe That Matters</h2><p>Most PMs treat guardrails as the thing slowing them down. The legal-compliance-paranoia layer that makes shipping harder. Something to minimize so the team can move fast.</p><p>That framing is backward.</p><p>I write this as someone shipping AI products too. The 2024 stack I wrote isn&#8217;t holding up under what I&#8217;m building today. None of us has this fully figured out. We are working through them in real time. </p><p>Teams without strong guardrails don&#8217;t ship faster. They ship once, have an incident, and then spend three months rebuilding trust, answering regulators, and apologizing in public. The shipping-fast companies in 2026 are the ones with the strongest stacks, not the weakest.</p><p>Guardrails aren&#8217;t the restriction. They&#8217;re why you can ship at all.</p><p>This isn&#8217;t about being cautious. It&#8217;s about being trustworthy enough that the people with the budget, users, and data are willing to put AI products in their workflows. No trust, no adoption. No adoption, no business. Your four-layer stack is the reason a risk-averse enterprise customer signs the contract.</p><p>Risk tolerance doesn&#8217;t mean risk blindness. It means you know exactly where the risks are and you&#8217;ve built controls around them. That&#8217;s what the stack does.</p><h2>Monday Morning Audit</h2><p>Here&#8217;s what I want you to do with this.</p><p>Pull up your current AI feature. Or the one you&#8217;re about to ship. Or the agentic thing on your roadmap that your team keeps waving away as &#8220;we&#8217;ll figure out guardrails later.&#8221;</p><p>Write one sentence for each of the four layers. What guardrail fires here?</p><p><strong>Stage 1 (Before the Model):</strong> _____________</p><p><strong>Stage 2 (During):</strong> _____________</p><p><strong>Stage 3 (After the Model):</strong> _____________</p><p><strong>Stage 4 (Before Actions):</strong> _____________</p><p>Any layer where you wrote &#8220;nothing yet,&#8221; &#8220;TBD,&#8221; or &#8220;engineering is handling it&#8221; is a gap. Those are your 2024-stack holes.</p><p>Close them before the next version ships. Not because guardrails are nice-to-have. Because without them, you&#8217;re not actually shipping a product. You&#8217;re shipping a liability.</p><h2>The One-Line Version</h2><p>If you remember one thing from this post, remember this.</p><p><em>Guardrails aren&#8217;t the restriction. They&#8217;re why you can ship.</em></p><p>If you built an AI feature before 2025, your guardrails probably cover two layers. Go check. You&#8217;ll know immediately which two you missed.</p><p>And if you&#8217;re writing your first agentic PRD right now, organize the guardrails section by journey stage, not by category. All four stages are your job.</p><div><hr></div><p>What layer does your team handle best? Which one&#8217;s the biggest gap? Drop it in the comments. I&#8217;m curious whether the pattern I&#8217;m seeing across teams holds across the broader PM audience.</p><div><hr></div><p><em>Related reading:</em></p><ul><li><p><a href="/__u/aipmguru.substack.com/p/ai-agents-vs-agentic-ai-a-pms-guide">AI Agents vs. Agentic AI: A PM&#8217;s Guide to the Distinction That Actually Matters</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/the-builders-prd-what-to-think-through">The Builder&#8217;s PRD: What to Think Through Before You Touch Any Tool</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">Use the Smallest Capability That Works</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows">AI Architecture Patterns 101: Workflows, Agents, MCPs, and A2A Systems</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/the-q1-2026-ai-vocabulary-list-every">The Q1 2026 AI Vocabulary List Every Product Manager Needs</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/guardrails-understanding-and-implementing">Guardrails: Understanding and Implementing LLMs with Responsibility</a> (the 2024 post this one updates)</p></li></ul>]]></content:encoded></item><item><title><![CDATA[AI Agents vs. Agentic AI: A PM’s Guide to the Distinction That Actually Matters]]></title><description><![CDATA[A framework for scoping, a script for interviews, and the one phrase that signals staff+ level]]></description><link>https://aipmguru.substack.com/p/ai-agents-vs-agentic-ai-a-pms-guide</link><guid isPermaLink="false">https://aipmguru.substack.com/p/ai-agents-vs-agentic-ai-a-pms-guide</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Fri, 24 Apr 2026 13:07:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!e8hw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I went looking for a clear explanation of the difference between AI agents and agentic AI. Something a PM could use to make actual product decisions. Not a philosophical distinction. Not a vendor pitch. A framework for scoping.</p><p>I couldn&#8217;t find it. So I wrote it.</p><p>These two terms are doing very different jobs, and when you conflate them, you don&#8217;t just sound fuzzy in meetings. You scope the wrong problem. You either over-engineer (building a full agent architecture when you needed one additional capability) or under-engineer (adding a tool call and calling it &#8220;agentic&#8221; when you&#8217;ve barely changed anything about the system&#8217;s autonomy).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!e8hw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!e8hw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png" width="500" height="279.18956043956047" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:500,&quot;bytes&quot;:7199136,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192132162?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e8hw!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1ced522-a006-4345-9aa3-9cda9bc61cb7_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The Core Distinction</h2><p><strong>&#8220;Agentic AI&#8221; is a property.</strong> It describes how a system behaves: goal-directed, multi-step, capable of taking action in the world without a human approving every move.</p><p><strong>&#8220;AI agent&#8221; is a thing.</strong> A discrete software system, intentionally designed and scoped, that expresses agentic behavior.</p><p>The relationship is definitional. An AI agent is an implementation that sits at the higher end of the agentic spectrum. But not everything that exhibits agentic behavior is a fully architected AI agent, and not everything called an &#8220;AI agent&#8221; is actually very agentic.</p><p>That second part surprised me when I dug into it. A chatbot with a single web search tool attached is technically &#8220;an agent&#8221; by some definitions. It has tool access. It can take an action. But the autonomy is shallow. No planning, no memory across sessions, no self-evaluation. It generates text and stops.</p><p>Mildly agentic.</p><p>A system like <strong>Devin</strong> (Cognition&#8217;s software engineering agent) runs for hours, decomposes ambiguous goals into task sequences, writes code, runs tests, reads error messages, fixes them, and loops until the build passes. It&#8217;s deeply agentic. The architecture underneath looks nothing like the chatbot.</p><p>Same label. Very different systems.</p><h2>The Agentic Spectrum: Five Dimensions That Actually Matter</h2><p>Agentic behavior isn&#8217;t a binary. It&#8217;s a spectrum defined by five dimensions. Every AI product sits somewhere on each one, and understanding where your product sits is a PM scoping decision, not an engineering one.</p><p>There&#8217;s no single &#8220;official&#8221; taxonomy here. I use five dimensions because they&#8217;ve been the most useful in my own work scoping AI systems as a PM.</p><p>Every AI product sits somewhere on each one, and understanding where your product sits is a PM scoping decision, not an engineering one.</p><p>Here&#8217;s the model: five dials you can turn up or down.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!wE5G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!wE5G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png" width="500" height="279.18956043956047" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:500,&quot;bytes&quot;:7398137,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192132162?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wE5G!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffbe2c512-c988-4fd4-b925-837ad6441b3e_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>1. Tool Use</h3><p>This is the one most PMs grasp immediately. The model stops describing what should happen and actually does something. It calls a calculator, hits a search API, queries a database, creates a calendar event.</p><p>Under the hood, this works through <strong>function calling</strong> (OpenAI&#8217;s term) or <strong>tool use</strong> (Anthropic&#8217;s term). The model outputs structured JSON specifying which tool to call and with what parameters. The runtime executes it, returns the result, and the model folds that into its next output.</p><p>A model with one tool is barely agentic. But tool use is the prerequisite for everything else on this list. And the moment you add it, your failure modes change completely. Your product can now take actions in external systems. Rate limits, error handling, rollback capabilities. None of that exists in a pure chatbot. All of it lands on your plate the moment you flip this dial.</p><h3>2. Planning and Sequential Reasoning</h3><p>This is where it gets interesting. And where I teach my students to pay close attention.</p><p>When I walk through agent architectures in class, planning is the concept that gets the most &#8220;wait, really?&#8221; reactions. Not tool use. Not memory. Planning. Because this is where the system stops feeling like autocomplete and starts feeling like it&#8217;s <em>thinking</em>.</p><p>Instead of responding to a single prompt, the model decomposes a goal into subtasks, figures out the order, and executes them step by step. The mechanism behind this is the <strong>ReAct pattern</strong> (Reason + Act), a widely used agent paradigm introduced in a 2022 Google Research/Princeton paper that combines reasoning traces with tool calls. The model thinks (&#8221;I need to find flight options first, then check calendar conflicts, then compare prices&#8221;), acts (calls the tool), observes the result, and loops.</p><blockquote><p><strong>Thought &#8594; Action &#8594; Observation &#8594; Thought &#8594; Action &#8594; Observation &#8594; ... &#8594; Final Answer</strong></p></blockquote><p>Without planning, you have a chatbot that can use tools. With planning, you have something that pursues a goal across multiple steps without the user guiding every transition.</p><p>That&#8217;s a meaningful architectural difference. Most agent frameworks you&#8217;ll encounter (LangGraph, LangChain, CrewAI) are essentially ReAct or variants of it, wrapped in tooling.</p><p><strong>Here&#8217;s the PM catch</strong>, and this is the part that trips up my students every time: planning introduces non-determinism. Two identical inputs can produce two different execution paths. That means your evals need to test outcomes, not sequences. You can&#8217;t diff the expected path against the actual path. You have to ask: did the agent get to the right answer? That&#8217;s a fundamentally different testing philosophy than most PM teams are used to, and it changes how you write acceptance criteria, how you define &#8220;done,&#8221; and how you build confidence that the thing works.</p><h3>3. Memory</h3><p>I&#8217;ve watched students design agents in class and memory is consistently the thing they underestimate. They get tool use and planning right, but then the agent forgets everything between sessions. A sales copilot that loses account context mid-thread. A support agent that re-asks what the user just told it.</p><p>There are four memory types worth knowing. </p><ol><li><p><strong>In-context</strong> is the current conversation window, fast but temporary. </p></li><li><p><strong>External</strong> memory is a vector database or key-value store the agent reads from and writes to. Most production agents combine these two.</p></li><li><p><strong>Semantic</strong> memory is what&#8217;s baked into the model&#8217;s trained weights, separate from any external vector store you set up. </p></li><li><p><strong>Episodic</strong> memory is the agent&#8217;s record of what it&#8217;s already done, separate from its in-context conversation.</p></li></ol><p>The PM question here is a privacy question: what does the agent store? Who can access it? How long is it retained? These are product requirements, not engineering details.</p><h3>4. Self-Correction</h3><p>A reactive system does what it&#8217;s told and returns the result. </p><p><strong>An agentic system asks:</strong> <em>was that good enough?</em></p><p>After completing a step, the agent evaluates its own output. Did my code compile? Does this response actually answer the question? If not, it re-enters the planning loop. Some systems use a separate &#8220;critic&#8221; model for this. Others self-evaluate, which works but introduces blind spots.</p><p>The PM implication is latency variance. A task that takes 3 seconds on the first pass might take 45 seconds after two correction cycles. Design for the variance, not the average.</p><h3>5. Human-in-the-Loop (HITL) Reduction</h3><p>This was the dimension I had the least clarity on before this research pass. Honestly, I think it&#8217;s the most misunderstood one.</p><p>Human-in-the-loop isn&#8217;t a binary. It&#8217;s a dial. A system that drafts an email for your review is mildly agentic. A system that drafts, addresses, and sends it is more agentic. A system that monitors your inbox, identifies which emails need responses, drafts them, and sends them within a confidence threshold is deeply agentic. Same capability, three very different levels of autonomy.</p><p>Each step along that dial introduces more risk and more product design complexity. Where you set it is a product decision, not a technical constraint.</p><p><strong>The question to ask before removing any human checkpoint:</strong> what&#8217;s the worst-case output if the agent is wrong here? For low-stakes outputs, low HITL is fine. For high-stakes outputs, every checkpoint you remove needs a corresponding increase in confidence thresholds and rollback capability. Sending emails to customers, executing transactions, modifying production databases. Those aren&#8217;t places to discover your confidence threshold was wrong.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!WNkG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 424w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 848w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 1272w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!WNkG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png" width="1456" height="469" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:469,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6987533,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192132162?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 424w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 848w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 1272w, /__u/substackcdn.com/image/fetch/$s_!WNkG!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F086254ab-edac-43dd-a8ec-63d0ab053645_3574x1152.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>So What Is an AI Agent, Technically?</h2><p>An AI agent is a system architected to score high across all five dimensions: it uses tools, plans multi-step sequences using something like ReAct, maintains memory across steps, evaluates its own outputs, and operates with limited human checkpoints.</p><p>Here&#8217;s how the architecture breaks down:</p><ul><li><p><strong>Perception layer:</strong> Receives inputs from the environment (user messages, API responses, database reads, tool outputs)</p></li><li><p><strong>Memory layer:</strong> Short-term (in-context) and long-term (vector DB or key-value store)</p></li><li><p><strong>Planning and reasoning:</strong> The ReAct loop, often powered by a capable frontier model</p></li><li><p><strong>Action layer:</strong> Tool calls, API integrations, function execution</p></li><li><p><strong>Evaluation layer:</strong> Self-scoring or critic model, feeds back into planning</p></li></ul><p>The <strong>Think &#8594; Plan &#8594; Act &#8594; Observe</strong> loop connects all of these. The agent observes its environment, thinks about what to do, plans a sequence of actions, acts, observes the result, and loops until the goal is satisfied or a stopping condition is met.</p><p><strong>A concrete example:</strong> a support agent that reads incoming tickets (perception), retrieves past conversations and account history (memory), plans a response with possible actions (planning), issues a refund or updates a record (action), and checks for policy compliance before sending (evaluation). Each layer is doing a distinct job. Remove one and the system degrades in a specific, predictable way.</p><p>This is meaningfully different from a chatbot with a search plugin. The architecture complexity, the failure surface, and the design requirements are all different.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!lSXA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!lSXA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2215760,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192132162?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 424w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 848w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lSXA!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ab20093-2b3a-484a-af15-0cac0bf22e24_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The Product Question Nobody Asks</h2><p>When someone on your team says, &#8220;We should build an AI agent for this,&#8221; the right follow-up isn&#8217;t &#8220;What framework should we use?&#8221; It&#8217;s: <strong>how agentic does this actually need to be?</strong></p><p>Map the requirement to the five dimensions:</p><ul><li><p>Does it need to use tools? &#8594; Add tool use.</p></li><li><p>Does it need to execute a multi-step sequence? &#8594; You need planning.</p></li><li><p>Does it need to remember the state across sessions? &#8594; You need external memory.</p></li><li><p>Does it need to improve its own outputs? &#8594; You need evaluation loops.</p></li><li><p>Does it need to run without human review? &#8594; You&#8217;re deliberately reducing HITL. Design for that explicitly.</p></li></ul><p>Most products need two or three of these, not all five. Most &#8220;AI assistants&#8221; today sit at the tool-use plus light planning level. Systems like Devin have all five dials turned up. The gap between those two things is enormous in cost, complexity, and failure surface.</p><p>The <strong>Use the Smallest Capability That Works</strong> principle applies directly here. More agentic doesn&#8217;t mean better. <em>It means greater complexity, a larger failure surface, greater latency variance, and more privacy obligations.</em> You earn each dimension by showing that the simpler version can&#8217;t do the job.</p><h2>The Interview Version</h2><p>If someone asks you &#8220;what&#8217;s the difference between AI agents and agentic AI?&#8221; in an interview, here&#8217;s where I&#8217;d land.</p><p><strong>The 30-second answer:</strong></p><blockquote><p>&#8220;Agentic AI describes a property of AI behavior: how goal-directed, multi-step, and autonomous a system is. It&#8217;s a spectrum, not a category. AI agents are systems deliberately architected to sit at the higher end of that spectrum, combining tool use, planning, memory, and self-correction into a persistent loop. As a PM, I think about agenticism across five dimensions, and the product question I always ask is: how far along each dimension does this use case actually need to go? Because each dimension adds complexity, failure modes, and design requirements that a simpler system avoids.&#8221;</p></blockquote><p><strong>If they give you more time</strong>, extend it with an example. A simple RAG chatbot has one dial turned up. Devin has all five. That contrast does a lot of work in a short window. It signals you understand the architecture isn&#8217;t theoretical. It&#8217;s a set of deliberate product and engineering decisions that compound.</p><p><strong>What the interviewer is actually testing.</strong></p><p>This question isn&#8217;t about whether you memorized the definition. It&#8217;s about four things:</p><ul><li><p><strong>Technical depth.</strong> Do you know what&#8217;s under the hood? Tool use, ReAct, memory patterns.</p></li><li><p><strong>Scoping judgment.</strong> Do you reach for &#8220;full agent&#8221; every time, or do you ask how much autonomy the use case actually needs?</p></li><li><p><strong>Appropriate skepticism.</strong> Do you push back on vendor marketing that labels every chatbot with a tool call an &#8220;agent&#8221;?</p></li><li><p><strong>Business context.</strong> Can you connect agenticism to cost, latency, failure surface, and user trust?</p></li></ul><p>A textbook definition nails the first one and misses the other three. That&#8217;s the gap between a candidate who sounds smart and a candidate who gets the offer.</p><p>That&#8217;s the answer. But here&#8217;s what separates candidates who get the offer from candidates who don&#8217;t. And it has nothing to do with the definition itself.</p>
      <p>
          <a href="/__u/aipmguru.substack.com/p/ai-agents-vs-agentic-ai-a-pms-guide">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Builder’s PRD: What to Think Through Before You Touch Any Tool]]></title><description><![CDATA[The 5 questions AI tools make you forget and the 3 they can't answer for you]]></description><link>https://aipmguru.substack.com/p/the-builders-prd-what-to-think-through</link><guid isPermaLink="false">https://aipmguru.substack.com/p/the-builders-prd-what-to-think-through</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sun, 12 Apr 2026 14:07:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-HOb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Everyone is talking about Plan Mode.</p><p>Claude Code has it. Cursor has it. bolt.new has it. The idea is the same across all of them: before the AI writes a single line of code, stop and align on the approach. What files to modify? What components to use? How the pieces fit together.</p><p>It&#8217;s a good idea. And it&#8217;s not enough.</p><p>Plan Mode asks: How should I build this?</p><p>That&#8217;s an implementation question. It assumes you&#8217;ve already answered the harder questions. What problem are you actually solving? What does the user experience at each step, not just at the feature level? What happens when step 3 gets a null value? Where does a human need to stay in the loop?</p><p>Those questions don&#8217;t live in Plan Mode. They live in the thinking you do before you open any tool. And if you skip them, Plan Mode just helps you build the wrong thing faster.</p><p>In my last post, <a href="/__u/open.substack.com/pub/aipmguru/p/what-n8n-teaches-you-that-claude?r=d2ed8&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true">What n8n Teaches You That Claude Code Doesn&#8217;t</a>, I wrote about why building visibly in n8n changes how you think about systems. This is the follow-up: the mental model n8n forced me to develop, written down so you can apply it in any tool.</p><p>I&#8217;m calling it the Builder&#8217;s PRD. Not because it&#8217;s a document. Because it&#8217;s the thinking an AI builder needs to do before any build starts.</p><p><strong>What You&#8217;ll Learn (9-minute read):</strong></p><ul><li><p>Why Plan Mode isn&#8217;t enough and what it&#8217;s missing</p></li><li><p>The 5 foundational questions you already know (but AI tools make you forget)</p></li><li><p>The 3 questions AI building specifically demands, and that Plan Mode can&#8217;t help you with</p></li><li><p>Why this isn&#8217;t just for PMs anymore</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!-HOb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!-HOb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png" width="547" height="298.2953296703297" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:547,&quot;bytes&quot;:9459115,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192055400?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!-HOb!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e77386f-0725-4eae-9687-288fe0e3509b_2816x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Why Plan Mode Isn&#8217;t Enough</h2><p>Here&#8217;s what Plan Mode is good at. You describe what you want. The AI reads your codebase, proposes an approach, shows you what it&#8217;s going to do before it does it. You approve. It builds.</p><p>That&#8217;s genuinely useful. It prevents the &#8220;one-shot prompt and pray&#8221; problem. You&#8217;ve effectively briefed a developer before they start.</p><p>But notice what it doesn&#8217;t ask.</p><p>It doesn&#8217;t ask whether you actually need AI at this step, or whether a simple rule would do. It doesn&#8217;t ask what the user is experiencing at this point in the flow, or whether they&#8217;ve earned enough trust in the system to hand control over. It doesn&#8217;t ask what happens when the model is wrong, or what it costs the user when it is.</p><p>Plan Mode starts where the Builder&#8217;s PRD ends. It&#8217;s the contractor reviewing blueprints. The Builder&#8217;s PRD is the architect&#8217;s work that produced them.</p><h2>The 9 Questions</h2><p>Nine questions, two tiers. Answer them before you open any tool.</p><p>The first five are PM fundamentals. You&#8217;ve heard them before. I&#8217;m including them because AI builder tools make it dangerously easy to skip them, and when you skip them with AI, the consequences show up faster and uglier than they do in traditional product development.</p><p>The last three are the questions AI building specifically demands. These don&#8217;t exist in a world without LLMs, agents, and generated outputs. They&#8217;re the reason this post exists.</p>
      <p>
          <a href="/__u/aipmguru.substack.com/p/the-builders-prd-what-to-think-through">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[What n8n Teaches You That Claude Code Doesn’t]]></title><description><![CDATA[I was already building with Bolt, Lovable, and Claude Code.]]></description><link>https://aipmguru.substack.com/p/what-n8n-teaches-you-that-claude</link><guid isPermaLink="false">https://aipmguru.substack.com/p/what-n8n-teaches-you-that-claude</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Tue, 07 Apr 2026 14:07:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!H2d4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I was already building with Bolt, Lovable, and Claude Code. Things were shipping. And honestly? n8n intimidated me. All those nodes, all that configuration. It looked like a tool for automation engineers, not for someone coming at this from the product side.</p><p>Then I tried it. And then I built a whole workflow with it live at a PDMA Seattle event, which I wrote about <a href="/__u/aipmguru.substack.com/p/i-was-terrified-of-n8n-six-days-later">here</a>. That post is about what I built. This one is about what n8n taught me that no other tool has.</p><p>I was right that it would make me slow down. That turned out to be the point.</p><p><strong>What You&#8217;ll Learn (7-minute read):</strong></p><ul><li><p>Why Claude Code is the wrong starting point if you actually want to understand what you&#8217;re building</p></li><li><p>What n8n forces you to confront, node by node</p></li><li><p>How I use Claude as a build collaborator (not a vending machine)</p></li><li><p>The capability ladder in practice, not just in theory</p></li><li><p>When to graduate to Claude Code &#8212; and why the sequence is the whole point</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!H2d4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!H2d4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png" width="466" height="254.12362637362637" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:466,&quot;bytes&quot;:10111443,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/191716604?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!H2d4!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcef7cdab-4848-4159-b4a6-7ef7b9d8b37c_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>What Claude Code Hides (And Why That&#8217;s a Problem for PMs)</h2><p>Claude Code is genuinely good. I use it. I&#8217;m not here to argue against it.</p><p>But here&#8217;s what happens when you build with it as a PM. You describe what you want. Code appears. You run it. Something works. And then you move on, because it works, and you&#8217;re busy.</p><p>The gap between &#8220;it works&#8221; and &#8220;I understand why it works&#8221; doesn&#8217;t feel urgent when things are going well. It becomes very urgent when something breaks in production and you&#8217;re staring at a codebase you didn&#8217;t write, trying to explain to an engineer where you think the problem is.</p><p>You shipped a feature. You just don&#8217;t understand the feature you shipped.</p><p>I started calling this transcribing. You&#8217;re not building. You&#8217;re taking dictation from a model and calling it a build.</p><h2>What n8n Forces You to See</h2><p>In n8n, your workflow lives on a canvas. Every step is a node. Data flows from one node to the next, and you can click into any node and see exactly what went in and what came out.</p><p>Nothing is hidden. That&#8217;s uncomfortable at first.</p><p>If you&#8217;re calling an API, you configure that connection yourself. If you&#8217;re transforming data, you write the expression. If you&#8217;re passing something to an LLM, you construct the prompt, decide what context to include, and watch exactly what the model receives.</p><p>When I built my first real workflow in n8n, I hit a step where I needed to route a message based on a field value. My instinct was to use the AI node. I&#8217;d been conditioned by months of Claude Code to reach for the model when something felt even slightly ambiguous.</p><p>I stopped. A switch node handled it in about 20 seconds.</p><p>That moment is hard to manufacture in Claude Code, because Claude Code doesn&#8217;t create that pause. It just writes the thing you asked for. <strong>n8n makes you decide, at every step, what kind of capability you actually need. That friction is a feature.</strong></p><h2>n8n Is System Design Practice</h2><p>There is an interview in technical product management interviews called the system design interview. You&#8217;d get a whiteboard and a prompt, &#8220;design a URL shortener,&#8221; &#8220;design a notification system&#8221;, and you had to walk through how the pieces connected. What talks to what? Where does data live? How does the system handle load, failure, and scale?</p><p>Most PMs prepared for these by studying other people&#8217;s diagrams. Which worked, sort of, until the interviewer asked a follow-up question and you realized you&#8217;d memorized a picture without understanding its reasoning.</p><p>n8n is the version of that practice where you actually have to build the thing.</p><p>Every workflow you construct in n8n is a system design exercise. You define the inputs. You decide what transforms the data and where. You choose what calls an external API and what stays internal. Think about what happens when a node fails. Does the workflow stop? Retry? Route to a fallback? Those aren&#8217;t configuration questions. They&#8217;re the same questions a good system design interviewer is trying to get at.</p><p>The difference is you can&#8217;t fake it in n8n. You can sketch a vague architecture diagram and talk your way through the gaps. You cannot place a node that doesn&#8217;t actually connect to the previous one. The tool forces precision in a way that whiteboarding doesn&#8217;t.</p><p>If you&#8217;re preparing for AI PM interviews or just trying to get sharper on how AI systems actually fit together, building in n8n is more useful than any prep guide I&#8217;ve seen.</p><h2>The Capability Ladder, Finally Making Sense</h2><p>I&#8217;ve written about the capability ladder before. Rules &#8594; ML &#8594; small language models &#8594; LLMs &#8594; agents &#8594; multi-agent systems. Start at the bottom. Only move up when the rung below genuinely can&#8217;t do the job.</p><p>Knowing that principle and feeling it are two different things. n8n is where I felt it. When you&#8217;re placing nodes manually, you can&#8217;t skip steps. You have to decide, for each one: is this a rule? A condition? A classification? Or does this actually need a language model?</p><p>Most of the time, for the workflows I was building, the answer was further down the ladder than I expected. Checking if a field is empty doesn&#8217;t need GPT-4. Routing based on a known value doesn&#8217;t need an LLM. Formatting a date really, really doesn&#8217;t need an LLM.</p><p>Every unnecessary model call costs money and adds latency. In Claude Code, those decisions are buried in generated code you didn&#8217;t write and probably won&#8217;t audit. In n8n, they&#8217;re sitting right there on the canvas.</p><p>If you&#8217;ve read my post on <a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">Use the Smallest Capability That Works</a>, this is what that principle looks like when you actually build with it, not just think about it.</p><h2>How I Use Claude Inside n8n (This Part Changed How I Work)</h2><p>Once I was building node by node, I started using Claude differently.</p><p>Instead of &#8220;build me this workflow,&#8221; the prompt became: I&#8217;m building a workflow that does X. I&#8217;m at this specific step. The input coming in looks like this. What should this node do, and what should the output look like?</p><p>One node. One question. One answer.</p><p>This sounds slower. It is, marginally. But it means I understand every single thing I put on that canvas. When something breaks, I know where to look. When I hand it to an engineer to scale, I can explain the logic because I built the logic, not because I read it off generated code.</p><p>I also started using Claude as a thinking partner on capability decisions. When I&#8217;m designing a node that involves something like intent classification or deciding where to route a user message, I&#8217;ll ask: Is this the right capability for this step? What happens when the model gets it wrong? Where does a human need to be in the loop?</p><p>That&#8217;s a PRD conversation happening inside a build session. </p><h2>Then Go to Claude Code</h2><p>None of this is an argument against Claude Code. It&#8217;s an argument about sequence.</p><p>Once you understand how a system works where data flows, what each step is actually doing, where AI earns its place, and where it doesn&#8217;t, code-first tools make you significantly more capable. You know what you&#8217;re asking for. You can review what gets generated. When something breaks, you have a mental model.</p><p>The PMs who struggle most with AI builder tools are the ones who started with code generation. They can ship things. They can&#8217;t explain what they shipped. When something goes wrong, they&#8217;re stuck.</p><p>The ones who built a few clunky n8n workflows first, who cursed at node configurations and figured out why their data was the wrong shape, move to Claude Code and suddenly they&#8217;re dangerous. The code is just an expression of a system they already understand.</p><div class="pullquote"><p>Understand the system first. Then move fast.</p></div><p>Claude Code is not the problem. Starting with Claude Code, before you understand what you&#8217;re building, is the problem.</p><p>n8n puts the system design on the canvas. You see the data move. You make an active decision at every step about which capability you need. You build slowly enough to actually understand what you&#8217;re building.</p><p>The mental models you develop in n8n outlast any specific workflow you build. That&#8217;s the thing I didn&#8217;t expect when I finally stopped avoiding it.</p><p>Start there. Graduate to code. Know what you&#8217;re looking at either way.</p><div><hr></div><p>What was the first thing n8n made you see that you&#8217;d been missing? I&#8217;m curious whether the capability ladder moment lands for others the way it did for me, or whether it&#8217;s something else entirely.</p><div><hr></div><p><em>Related reading:</em></p><ul><li><p><a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">Use the Smallest Capability That Works</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows?utm_source=publication-search">AI Architecture Patterns 101: Workflows, Agents, MCPs, and A2A Systems</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/to-agent-or-not-to-agent-thats-the?utm_source=publication-search">To Agent or Not to Agent: That&#8217;s the AI Product Question</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[World Models 101: The Environment Layer Your AI Agent Has Been Missing]]></title><description><![CDATA[What world models are, how they work, and what changes for AI PMs when simulation enters the stack]]></description><link>https://aipmguru.substack.com/p/world-models-101-the-environment</link><guid isPermaLink="false">https://aipmguru.substack.com/p/world-models-101-the-environment</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sun, 05 Apr 2026 14:07:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!S4Tu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The first time I heard &#8220;world models,&#8221; I was listening to my own AI-generated podcast. The one my n8n workflow produces automatically: scrape AI news, have Claude write the script, send it to ElevenLabs for audio.</p><p>I paused. Wait, what? Did I hear that correctly?</p><p>My genuine first reaction was that Claude&#8217;s API had hallucinated again. Made up a term that sounded impressive but didn&#8217;t exist. I&#8217;ve caught it doing that before.</p><p>But I searched it. And it was real. And the more I read, the more I realized this was a concept I needed to understand properly, not just nod along to.</p><p>So I did my research. This post is what I found.</p><p><strong>What you&#8217;ll learn (9-minute read):</strong></p><ul><li><p>Why &#8220;world model&#8221; means three different things right now (and which one you&#8217;ll actually encounter)</p></li><li><p>The core building blocks: perception, dynamics, and planning</p></li><li><p>How world models differ from LLMs and agents, and how they fit together</p></li><li><p>Where world models are showing up in real products today</p></li><li><p>What changes for AI PMs when world models enter the stack</p></li><li><p>A practical Phase 1/2/3 roadmap for thinking about this in your product</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!S4Tu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 424w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 848w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 1272w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!S4Tu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2122045,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192671536?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 424w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 848w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 1272w, /__u/substackcdn.com/image/fetch/$s_!S4Tu!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa47b035d-192e-4d48-b5a1-99979e83133e_1376x768.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The Terminology Problem</strong></h2><p>&#8220;World model&#8221; is one of those terms where you can spend 30 minutes searching and come out more confused than when you started. I&#8217;ll save you that experience.</p><p>The term means three different things depending on who&#8217;s using it.</p><p><strong>Yann LeCun&#8217;s framing</strong>: A learned internal representation of how the world works. Physics, causality, 3D space, object permanence. The things humans internalize from infancy. LeCun (Meta&#8217;s Chief AI Scientist) has spent years arguing that this is the missing ingredient for human-level AI.</p><p><strong>Video generation framing</strong>: Models like Sora (no longer an OpenAI offering) are called &#8220;world models&#8221; because they&#8217;ve apparently learned enough about physical dynamics to generate realistic video sequences. This is contested. Some researchers argue that predicting pixels isn&#8217;t the same as understanding physics.</p><p><strong>Robotics and simulation framing</strong>: A differentiable simulator that an agent can use to run rollouts before taking real actions. This is the most concrete version and the one with the most immediate product relevance.</p><p>These are related but not identical. For this post, I&#8217;m focused on the third framing. World models as a simulation and planning infrastructure. The others are worth knowing about (I covered the LeCun framing in my <a href="/__u/aipmguru.substack.com/p/the-q1-2026-ai-vocabulary-list-every">Q1 2026 AI Vocabulary List</a>), but if you&#8217;re building products, the simulation framing is where this gets real.</p><h2>What a World Model Actually Does</h2><p>Plain language: a world model is an internal simulator that lets an AI predict how the world will change before it acts.</p><p>Here&#8217;s where the concept clicked for me.</p><p>A warehouse robot needs to navigate around an obstacle to reach a package. <strong>Without a world model</strong>, the robot tries a path. Bumps into something. Backs up. Tries again. Learning from interaction. That works, but it&#8217;s slow, it causes wear, and in a hospital corridor or factory floor, it can be unsafe.</p><p><strong>With a world model</strong>, the robot simulates 10 possible paths before it moves a single motor. It predicts which paths hit obstacles, which ones are fastest, which ones minimize risk. Then it picks the best one and moves.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!bXPW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!bXPW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6516807,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192671536?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!bXPW!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37a8618b-bf56-4ab8-a032-29b6164ced5b_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That&#8217;s the core capability. Planning in imagination instead of only learning from experience.</p><p>A bit more technical: a world model takes a current state and an action as inputs, and predicts the next state. Sometimes it also predicts a reward signal. This lets an agent plan across sequences of actions, not just react to what&#8217;s in front of it.</p><h2><strong>How World Models Work: Three Building Blocks</strong></h2><p>Most world model architectures have three components. I&#8217;ll walk through each one using the warehouse robot, because the abstraction makes a lot more sense with a concrete example running through it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!6mJb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!6mJb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4570424,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192671536?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6mJb!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F501f2fe6-9143-4a73-ab62-ae3fec4686e5_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Perception: What&#8217;s Happening Right Now?</h3><p>The robot is getting camera feeds, LiDAR scans, and sensor readings simultaneously. That&#8217;s a massive amount of raw data. Perception converts all of it into a compact representation of &#8220;what&#8217;s going on right now.&#8221;</p><p>For the warehouse robot, that means taking the camera feed showing boxes on shelves, a forklift blocking aisle 3, and a worker walking through aisle 5, and compressing it into a state representation that the rest of the system can work with. In ML terms, it encodes the environment into a latent state. The goal: capture what matters without carrying every raw pixel.</p><blockquote><p><strong>A quick note on computer vision vs. world models:</strong></p><p>Computer vision answers: What am I looking at? A world model answers: what happens next if I do X, and which X is best?</p><p>In our warehouse robot, computer vision is the part that says &#8220;forklift in aisle 3, worker in aisle 5.&#8221; That&#8217;s perception. The world model runs 100 simulated futures for each of the following: if I turn left, if I go straight, and if I wait 3 seconds. Computer vision is the eyes. A world model is the eyes, plus imagination, plus judgment.</p></blockquote><h3>Dynamics: What Happens Next?</h3><p>This is the world model proper. It takes the compressed state from perception and predicts what happens next, given an action. If the robot turns left, what does the world look like in 500 milliseconds? If it speeds up, does it clear the forklift before the worker crosses?</p><p>This is where the physics, object permanence, and environmental behavior get encoded. A good dynamics model generalizes: it can predict states it never saw in training, not just memorize transitions. That generalization is what makes simulation useful. Without it, you&#8217;re just replaying recorded scenarios.</p><h3>Planning: Which Path Is Best?</h3><p>The planner uses the dynamics model to look ahead. Run 100 simulated rollouts. Score each one. Pick the action sequence that leads to the best outcome.</p><p>For the warehouse robot: simulate 100 possible routes in 200ms of compute time. Three routes hit the forklift. Twelve routes cross the worker&#8217;s predicted path. The planner picks the route that reaches the package fastest while minimizing collision risk. All of that happens before the robot moves an inch.</p><p>Compare that to 45 minutes of physical trial and error. That&#8217;s the business case for world models in a single number.</p><p>If you&#8217;ve read my <a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows">AI Architecture Patterns 101 post</a>, you&#8217;ll recognize the Think &#8594; Plan &#8594; Act &#8594; Observe loop for agents. World models make the &#8220;Plan&#8221; step dramatically more capable. Right now, most agents plan by reasoning over text and tool descriptions. With a world model, they plan by simulating what will actually happen.</p><p>Different categories of capability.</p><h2>Where World Models Fit: LLMs, Agents, and World Models</h2>
      <p>
          <a href="/__u/aipmguru.substack.com/p/world-models-101-the-environment">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Q1 2026 AI Vocabulary List Every Product Manager Needs]]></title><description><![CDATA[Your glossary is already out of date. Here&#8217;s what replaced it.]]></description><link>https://aipmguru.substack.com/p/the-q1-2026-ai-vocabulary-list-every</link><guid isPermaLink="false">https://aipmguru.substack.com/p/the-q1-2026-ai-vocabulary-list-every</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Tue, 31 Mar 2026 15:07:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!qZF8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I keep a running list of AI terms that matter for product decisions. Not every term. Just the ones that change how I scope, build, or evaluate.</p><p>That list changed a lot over the last six months. Some terms I&#8217;d been tracking for a while finally became unavoidable. Others showed up out of nowhere and were suddenly everywhere. A few I&#8217;d never heard six months ago are now part of how I think about AI product management.</p><p>The vocabulary changed because the behavior changed or new research emerged. We went from AI that answers to AI that acts. And then, quietly, AI that understands the physical world.</p><p>Here are the terms I&#8217;d keep in mind as a product manager this Q1 of 2026. I&#8217;ve grouped them into five clusters. The first one is the furthest from most PMs&#8217; current work. I&#8217;m starting there anyway, because it&#8217;s the one that tends to surprise people, and I think the surprise is worth having early.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!qZF8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!qZF8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png" width="450" height="251.2706043956044" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:450,&quot;bytes&quot;:7390874,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/192646851?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qZF8!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6e93e1e-dbb9-4d94-8d24-d392c9b430fc_2752x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Cluster 1: Physical and Spatial AI (The Horizon Terms)</h2><p>You might not need these for your next sprint. You&#8217;ll probably need them in your next couple of annual planning cycles.</p><p>Start with <strong>world models</strong>, because everything else in this cluster builds on them. A large language model predicts the next token. A world model predicts the next <em>state of the world</em>. It learns physics, gravity, spatial relationships and object permanence. Not from rules someone programmed, but from watching how the world actually behaves.</p><p>Yann LeCun put world models at the center of his argument at the AI Action Summit in Paris in early 2025, claiming they&#8217;re better suited for human-level AI than today&#8217;s LLMs. That claim is still contested. What&#8217;s not: the infrastructure is being built. NVIDIA launched Cosmos specifically for world models. Fei-Fei Li&#8217;s World Labs released Marble, generating 3D environments from a text prompt. Runway shipped world-model-style video generation in late 2025.</p><p>Not research demos. Products.</p><p>The PM question: if you&#8217;re building anything involving a physical environment (robotics, industrial simulation, AR/VR, gaming), world models are approaching your product surface. The question isn&#8217;t whether to care. It&#8217;s when.</p><p>Three related terms build on this. <strong>Physical AI</strong> is what world models power: any physical process learning from and applying AI (Citi Research&#8217;s definition). The robots at GTC, autonomous vehicles training on synthetic scenarios, surgical systems rehearsing procedures before touching a patient. <strong>Spatial intelligence</strong> is Fei-Fei Li&#8217;s framing for the capability underneath: not recognizing what&#8217;s in an image, but understanding depth, relationships, and consequences. &#8220;That&#8217;s a cup on a table&#8221; vs. &#8220;if I push it two inches left, it falls.&#8221; <strong>Embodied AI</strong> is the broadest category: AI that interacts with the physical world through sensors and actuators.</p><p>These aren&#8217;t replacing LLMs next quarter. But the companies building physical products are already in this vocabulary. And they&#8217;re most likely hiring PMs who understand it.</p><h2>Cluster 2: Agentic Architecture</h2><p>This is the cluster I hear most about right now. In interviews, in sprint reviews, in product discussions. The terminology is evolving fast because the architecture is still being figured out in real time.</p><p>If you only learn one term from this cluster, make it <strong>agentic workflow</strong>: AI that executes multi-step tasks across tools (email, CRM, code repos, files) with minimal human input between steps. Chatbots answer. Agents act. That&#8217;s the line. And every time you cross it, the first product question isn&#8217;t &#8220;what should the agent do?&#8221; It&#8217;s &#8220;where does a human stay in the loop, and what happens when the agent gets it wrong?&#8221;</p><p><strong>Orchestration</strong> is where the real architecture decisions live. It&#8217;s the coordination layer managing which agents fire in what order, how they hand off, and when to escalate. You&#8217;re not just speccing the model. You&#8217;re speccing the flow, the fallbacks, and the error states.</p><p>Two terms you&#8217;ll see together: <strong>Model Context Protocol (MCP)</strong> and <strong>Agent-to-Agent (A2A)</strong>. MCP is Anthropic&#8217;s open standard for how agents connect to tools and data sources in a structured way. Adoption has been fast. Within a year of launch, MCP integrations became a default part of most agentic toolchains. A2A is the pattern in which specialized agents collaborate and hand off work to one another. When you&#8217;re scoping a complex agentic product, &#8220;one agent or many?&#8221; is a real architecture decision with trade-offs in debuggability, latency, cost, and failure isolation.</p><p>Here&#8217;s the term that surprised me most when I dug into it for <a href="/__u/aipmguru.substack.com/">my agents vs. agentic AI post - coming in April</a>: <strong>Human-in-the-loop (HITL)</strong> isn&#8217;t new, but its meaning shifted. In 2022, HITL meant that a human reviewed the model&#8217;s output before it shipped. In 2026, it means a human approves specific <em>actions</em> before an agent takes them. That&#8217;s a different design problem. Where do you put the checkpoints? How do you surface them without making the agent useless? What triggers escalation vs. silent failure? Every agentic PRD needs an explicit answer.</p><p>Two more for your production vocabulary. <strong>AgentOps</strong> is the emerging discipline for managing agents in production, parallel to DevOps and MLOps. Analyst firms like Deloitte expect enterprises to spin up dedicated AgentOps-style functions as they scale agents in production. <strong>Observability</strong> goes deeper: not just monitoring what an agent did, but tracing <em>why</em> it decided to do it. LangChain&#8217;s 2025 State of Agent Engineering report found that the vast majority of organizations running agents in production had implemented some form of observability. Without it, you&#8217;re debugging failures from logs that show what happened, but not how the reasoning got there.</p><p>For PMs, observability is a launch requirement. Not a nice-to-have.</p><h2>Cluster 3: Reasoning and Computing</h2><p>These terms are showing up in infrastructure conversations, pricing discussions, and model selection decisions. If you&#8217;ve been nodding along without fully understanding them, this section is for you.</p><p><strong>Test-time compute</strong> changed how I think about pricing for AI features. Here&#8217;s the shift: traditional model scaling was about training. More data, more parameters, better model. Test-time compute is about what happens <em>at answer time</em>. The model gets more computing power to think through a problem before responding, exploring multiple reasoning paths, and checking its own work.</p><p>The PM implication is direct: better answers increasingly require more inference. When your team says, &#8220;We&#8217;ll use the reasoning model for this feature,&#8221; that&#8217;s a cost decision as much as a capability decision. Pricing, margins, and latency all depend on how much thinking you allow per query.</p><p><strong>Reasoning models</strong> are built specifically for this tradeoff. Instead of pattern-matching to a quick answer, they generate intermediate steps, verify them, and revise. A standard completion might take 3 seconds. A reasoning query on a complex problem can take 60 seconds and generate thousands of internal tokens the user never sees. Right-sizing, which queries get a reasoning model vs. a standard one, is a real product decision. <strong>Extended thinking</strong> is the user-facing name for the same concept. Whether to surface the &#8220;thinking&#8221; state to users or hide it is a UX question with no obvious right answer.</p><p>Two infrastructure terms are worth knowing. <strong>Mixture of Experts (MoE)</strong> is the architecture that makes massive models affordable to run. Instead of activating all parameters for every query, a MoE model activates only the relevant subset. A trillion-parameter model might activate 20 billion for any given input. <strong>Distillation</strong> compresses a larger model&#8217;s behavior into a smaller one. The big model teaches the small model through outputs, not weights. When you hear &#8220;we can run this on-device&#8221; or &#8220;we cut GPU cost by 70%,&#8221; distillation is usually the reason.</p><p>The framing I keep coming back to: <strong>frontier vs. efficient model classes</strong>. 2026 is splitting into two lanes. Frontier models pushing capability at enormous compute cost. Efficient models optimized for modest hardware. IBM researchers put it plainly: &#8220;We can&#8217;t keep scaling compute, so the industry must scale efficiency instead.&#8221; For PMs, this changes the build vs. buy analysis. Efficient open-source models are getting good enough for use cases that previously required frontier APIs.</p><h2>Cluster 4: Context and Memory</h2><p>I wrote about context windows in <a href="/__u/aipmguru.substack.com/p/understanding-context-windows-a-critical">March 2025</a>. The vocabulary has gotten more specific since then.</p><p><strong>Context engineering</strong> is the term to know here, and it&#8217;s not prompt engineering. Prompt engineering is about what you <em>ask</em> the model to do. Context engineering is about what the model <em>knows</em> when it answers: what you select to include, what you compress, what you isolate per task and what you store across turns. As context windows expanded to hundreds of thousands of tokens, decisions about what to fill them with became product-architecture decisions.</p><p>Two supporting terms. <strong>KV cache</strong> (key-value cache) is the internal memory store that holds processed token representations so the model doesn&#8217;t reprocess them every turn. You won&#8217;t configure this directly, but when your infrastructure team talks about &#8220;cache hit rate&#8221; or &#8220;cache miss scenarios,&#8221; this is what they mean. It drives latency and cost in long conversations. <strong>Long-term memory</strong> is external storage that lets an agent remember things <em>across</em> sessions, not just within a single context window. What gets stored? Who sees it? How does the user delete it? How does the agent decide when to retrieve vs. ignore old memories?</p><p>Product questions. Not engineering ones.</p><h2>Cluster 5: Building and Governance</h2><p><strong>Vibe coding</strong> is the one I have the most personal experience with. I built a family Guess Who game in Bolt. 34 versions. Collins Dictionary named the term its 2025 Word of the Year. Andrej Karpathy coined it: describe what you want to an AI coding assistant, iterate through natural language instead of writing syntax. The practical takeaway for PMs: prototyping cycles got dramatically shorter. What took a week of engineering mockup time now takes an afternoon of prompt iteration.</p><p>The counterargument worth hearing: there&#8217;s a real &#8220;vibe coding hangover&#8221; as teams discover that code written fast is hard to maintain. The wins are genuine for prototypes and internal tools. The risks are real when vibe-coded artifacts become production dependencies without proper review.</p><p><strong>Prompt injection</strong> becomes critical the moment your agents read external content. An adversary hides malicious instructions inside a document, email, or webpage. The agent processes them and acts on them rather than pursuing its original goals. In a chatbot, the worst case is a weird response. In an agent that sends emails, executes code, or modifies data, it&#8217;s a security threat. Every agentic product that ingests external content needs an explicit answer to: &#8220;What happens if something we ingest tells the agent to do something it shouldn&#8217;t?&#8221;</p><p><strong>Guardrails</strong> have the longest evolution of any term on this list. I wrote the <a href="/__u/aipmguru.substack.com/p/guardrails-understanding-and-implementing">original guardrails post</a> in February 2024. The framing then was accurate for that moment: output filters. Block toxic content. Flag hallucinations. Enforce length limits. A single layer, mostly at the response time.</p><p>The meaning expanded. A lot.</p><p>In 2026, guardrails means a full stack: who can deploy a model change, who approves new tools an agent can access, how prompts are versioned, what gets logged and what triggers a human review. The concern shifted from &#8220;what does the model say&#8221; to &#8220;what does the system do.&#8221; Because agents take actions, a guardrail failure now has operational consequences. An agent that miscalibrates and exports a customer list is an incident, not a bad response.</p><p>If you&#8217;re writing a PRD for any agentic feature, the guardrails section needs to answer: what the agent is permitted to do, what requires human approval, what gets logged, and who gets paged when something goes wrong. <strong>AI governance stack</strong> sits above all of this: the organizational layer that owns AI policy, approves model integrations, and handles behavior changes in shipped products. As a PM, knowing who those owners are is part of the job now.</p><div><hr></div><h2>Know Now vs. Know Soon</h2><p>This is my honest read on which clusters are active vocabulary and which are horizon vocabulary.</p><p><strong>Know now</strong> (your team is using these words): everything in Clusters 2, 3, and 5. Agentic architecture, reasoning models, observability, vibe coding, prompt injection, guardrails. If these aren&#8217;t in your working vocabulary yet, they should be.</p><p><strong>Know soon</strong> (you&#8217;ll need these within 12-18 months, depending on your industry): everything in Cluster 1. World models, physical AI, spatial intelligence. If you&#8217;re in consumer software, you have time. If you&#8217;re anywhere near robotics, manufacturing, healthcare devices, or autonomous systems, you might already be late.</p><p><strong>Know enough to ask smart questions</strong> (Cluster 4): context engineering and agent memory matter a lot if you&#8217;re shipping agentic products. If you&#8217;re not, understanding the concepts is enough for now.</p><div><hr></div><p>The vocabulary shifted because the technology shifted. AI moved from answering to doing. And now the earliest parts of it are starting to move from doing in digital space to doing in physical space.</p><p>Knowing these terms won&#8217;t make you a better PM by itself. But not knowing them means you&#8217;ll lose time in every conversation where they come up, either asking for a translation or (worse) not asking and missing the implications.</p><p>Part of what separates PMs who advance in AI roles from those who plateau is frameworks and judgment. A real part of it is vocabulary. You can&#8217;t push back on a technical decision you don&#8217;t have words for.</p><div><hr></div><p><strong>Related posts:</strong></p><ul><li><p><a href="/__u/aipmguru.substack.com/p/understanding-context-windows-a-critical">Understanding Context Windows</a> &#8212; the original deep dive on how context limits affect your product</p></li><li><p><a href="/__u/aipmguru.substack.com/p/ai-architecture-patterns-101-workflows">AI Architecture Patterns 101</a> &#8212; workflows vs. agents vs. MCP vs. A2A</p></li><li><p><a href="/__u/aipmguru.substack.com/p/guardrails-understanding-and-implementing">Guardrails: Understanding and Implementing LLMs with Responsibility</a> &#8212; the 2024 post this one updates</p></li></ul><div><hr></div><p><strong>Sources:</strong></p><ul><li><p>Built In: &#8220;World Models Are the Next Big Thing In AI&#8221;</p></li><li><p>Scientific American: &#8220;World models could unlock the next revolution in artificial intelligence&#8221;</p></li><li><p>The New Stack: &#8220;AI Engineering Trends in 2025: Agents, MCP and Vibe Coding&#8221;</p></li><li><p>IBM Think: &#8220;The trends that will shape AI and tech in 2026&#8221;</p></li><li><p>LangChain State of Agent Engineering 2025</p></li><li><p>Vibe Coding (Google Cloud)</p></li><li><p>Elektor Magazine: &#8220;2026: An AI Odyssey &#8212; The Vibe-Coding Hangover&#8221;</p></li><li><p>Deloitte: &#8220;More compute for AI, not less&#8221;</p></li><li><p>IBM: &#8220;What is AgentOps?&#8221;</p></li></ul>]]></content:encoded></item><item><title><![CDATA[How to Answer “Build vs. Buy for AI” in an AI PM Interview]]></title><description><![CDATA[&#8220;How would you decide between building a custom model vs.]]></description><link>https://aipmguru.substack.com/p/how-to-answer-build-vs-buy-for-ai</link><guid isPermaLink="false">https://aipmguru.substack.com/p/how-to-answer-build-vs-buy-for-ai</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Fri, 27 Mar 2026 14:07:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WvXq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#8220;How would you decide between building a custom model vs. using an existing solution?&#8221;</p><p>I&#8217;ve answered this question dozens of times, and the thing that sharpened my thinking the most was realizing it&#8217;s actually two different questions. The build vs buy calculus is fundamentally different for traditional ML vs GenAI, and once you make that distinction, the whole framework clicks.</p><p>Once I started teaching this topic in my classes, my thinking sharpened further. Here&#8217;s the framework I use now.</p><p><strong>What You&#8217;ll Learn (8-minute read)</strong></p><ul><li><p>Why build vs buy is a completely different question for traditional ML vs GenAI</p></li><li><p>A decision framework for each type</p></li><li><p>The hidden costs most people forget</p></li><li><p>How to answer when you don&#8217;t know which type the interviewer means</p></li><li><p>Follow-up questions to prepare for</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!WvXq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!WvXq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8280132,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/187051252?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!WvXq!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89818a83-a578-4ce1-b4ea-bb50225cad9a_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The Distinction Most People Miss</h2><p>When interviewers ask about build vs buy for AI, they might be thinking about two very different scenarios.</p><p><strong>Traditional ML</strong> means prediction tasks specific to your business. Fraud detection, demand forecasting, churn prediction, recommendation engines, and image classification for your particular use case.</p><p><strong>GenAI</strong> means language and content tasks powered by foundation models. Chatbots, summarization, content generation, code assistance, and document analysis.</p><p>The &#8220;buy&#8221; options look completely different for each. And that changes everything about the decision.</p><p>In traditional ML, &#8220;buy&#8221; often means purchasing a vertical SaaS solution or using an AutoML platform. But there may not be a pre-built solution for your specific prediction problem. Your fraud patterns aren&#8217;t the same as another company&#8217;s fraud patterns.</p><p>For GenAI, &#8220;buy&#8221; means using foundation model APIs like GPT-4, Claude, or Gemini. These are genuinely general-purpose and work surprisingly well out of the box.</p><p>This is why I always clarify which context the interviewer means before diving into my answer. </p><h2>Traditional ML: Build Is Often the Default</h2><p>Here&#8217;s the thing about traditional ML that took me a while to internalize: your prediction task is often inherently unique to your business.</p><p>Your customer churn signals depend on your specific product and user base. Your demand forecasting needs to account for your supply chain, your seasonality, and your market dynamics. There&#8217;s no &#8220;churn prediction API&#8221; that knows your customers.</p><p>This means the &#8220;just use an API&#8221; option that works so well for GenAI often doesn&#8217;t exist for traditional ML.</p><p><strong>When to use pre-built solutions for traditional ML:</strong></p><p>Your problem is genuinely common. Email spam filtering, basic sentiment analysis, and standard OCR. These are solved problems with commodity solutions.</p><p>Vertical SaaS exists for your industry. Fraud detection platforms for fintech, diagnostic tools for healthcare. These work because they&#8217;ve seen patterns across many similar companies.</p><p>AutoML platforms can handle your task. If you have structured tabular data and a standard classification or regression problem, tools like Google&#8217;s Vertex AI or Amazon SageMaker can get you a decent baseline quickly.</p><p>You need a baseline before investing in custom work. Sometimes you want to validate the opportunity first.</p><p><strong>When to build custom models for traditional ML:</strong></p><p>Your prediction task is specific to your business. Your fraud patterns, your churn signals, your demand drivers.</p><p>Pre-built solutions don&#8217;t exist or perform poorly on your data. You&#8217;ve tried the off-the-shelf options, and they don&#8217;t work.</p><p>The model is core to your differentiation. If predictions are the product, you probably need a custom solution.</p><p>You have sufficient labeled data. Traditional ML needs thousands to millions of labeled examples, depending on complexity. No data, no model.</p><h2>GenAI: Buy Is Usually the Default</h2><p>GenAI has a fundamentally different dynamic. The &#8220;buy&#8221; option is remarkably capable.</p><p>Foundation models like GPT-4 and Claude are trained on massive datasets and designed to be general-purpose. They can summarize, answer questions, generate content, analyze documents, and write code without any customization. I covered the technical foundations in my posts on <strong><a href="/__u/aipmguru.substack.com/p/how-llms-actually-work-and-why-it">how LLMs actually work</a></strong> and <strong><a href="/__u/aipmguru.substack.com/p/integrating-a-generative-ai-foundational">foundation models 101</a></strong>.</p><p>This flips the default. Start with existing APIs and only build custom when you have clear evidence it&#8217;s necessary.</p><p><strong>When to use existing APIs for GenAI:</strong></p><p>You need general language capabilities. Summarization, Q&amp;A, generation, analysis. Foundation models handle these well.</p><p>Prompting and RAG can achieve your goals. I covered this hierarchy in my <strong><a href="/__u/aipmguru.substack.com/p/what-i-learned-preparing-to-explain">RAG vs fine-tuning post</a></strong>. Most production GenAI systems use prompting plus RAG. Few need fine-tuning.</p><p>You don&#8217;t have unique data that would meaningfully improve a model. Having data isn&#8217;t the same as having data that creates differentiation.</p><p>Speed to market matters. APIs let you ship in days. Custom models take months.</p><p><strong>When to consider custom models for GenAI:</strong></p><p>You have genuinely proprietary data that creates a competitive advantage. Not just &#8220;we have data&#8221; but &#8220;we have data no one else has that would make our model meaningfully better.&#8221;</p><p>Your use case requires capabilities existing models can&#8217;t provide. You&#8217;ve tried prompting, tried RAG, and still can&#8217;t get there.</p><p>Latency or cost at scale makes APIs impractical. At very high volume, the economics might favor running your own models.</p><p>Regulatory requirements demand on-premise deployment. Some industries can&#8217;t send data to third-party APIs.</p><p>The key difference: for GenAI, the burden of proof is on building. You need evidence that the default (APIs + prompting + RAG) isn&#8217;t working before investing in custom models.</p><h2>The GenAI Customization Hierarchy</h2><p>For GenAI, there&#8217;s a progression of options I walk through when teaching this:</p><p><strong>Level 1: Prompting.</strong> Write good system instructions, provide examples, and specify output format. This gets you surprisingly far. Always start here. I covered the fundamentals of prompting in my <strong><a href="/__u/aipmguru.substack.com/p/understanding-ai-prompting-the-essential">prompting post</a></strong>.</p><p><strong>Level 2: RAG.</strong> Give the model access to your specific documents by retrieving relevant context and injecting it into the prompt. This solves most &#8220;the model doesn&#8217;t know about our stuff&#8221; problems.</p><p><strong>Level 3: Fine-tuning.</strong> Train the model further on your data to change its behavior patterns, tone, or domain vocabulary. This is for when prompting and RAG can&#8217;t achieve the behavior you need. I covered this in my <strong><a href="/__u/aipmguru.substack.com/p/fine-tuning-large-language-models">fine-tuning post</a></strong>.</p><p><strong>Level 4: Custom models.</strong> Training from scratch or heavy modification of base models. Requires massive data, compute, and expertise. The bar should be very high.</p><p>Most production GenAI systems use Level 1-2. Some use Level 3. Very few need Level 4.</p><p>One thing worth noting: &#8220;custom model&#8221; isn&#8217;t binary. There&#8217;s a spectrum from parameter-efficient fine-tuning (LoRA, QLoRA) to distillation to continued pre-training to full training from scratch. When someone says they &#8220;built a custom model,&#8221; they usually mean LoRA fine-tuning or distillation, not training from scratch. Knowing this helps you ask better follow-up questions in interviews.</p><h2>Hidden Costs Most People Forget</h2><p>This is where I spend a lot of time in my classes, because the costs extend far beyond the initial training or API fees.</p><p><strong>For traditional ML:</strong></p><p><strong>Data infrastructure.</strong> Collecting, storing, and processing training data. Building feature pipelines. Maintaining data quality.</p><p><strong>Labeling</strong>. Getting ground truth labels, either from natural feedback loops or manual annotation. This is often the bottleneck and the most expensive part.</p><p><strong>Deployment infrastructure.</strong> Serving predictions at the latency and scale you need. Often harder than training the model.</p><p><strong>Monitoring and retraining.</strong> Models degrade as data distributions shift. You need to detect drift and retrain periodically.</p><div class="pullquote"><p>For traditional ML, the operational burden is significant. You&#8217;re not just building a model; you&#8217;re building and maintaining a system.</p></div><p><strong>For GenAI:</strong></p><p><strong>Evaluation complexity.</strong> How do you measure whether your fine-tuned model is actually better? GenAI evaluation is genuinely harder than traditional ML metrics.</p><p><strong>Alignment and safety.</strong> Fine-tuning can break safety behaviors. You may need to re-implement <strong><a href="/__u/aipmguru.substack.com/p/guardrails-understanding-and-implementing">guardrails</a></strong>.</p><p><strong>Update cycles.</strong> When the base model improves (GPT-4 &#8594; GPT-5), do you need to re-fine-tune? You might fall behind the frontier while maintaining your custom version.</p><p><strong>Opportunity cost.</strong> Your team is working on model customization instead of product features and prompt optimization.</p><h2>How to Answer When You Don&#8217;t Know Which Type They Mean</h2>
      <p>
          <a href="/__u/aipmguru.substack.com/p/how-to-answer-build-vs-buy-for-ai">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Inference 101: What Actually Happens When an LLM “Runs”]]></title><description><![CDATA[The first time I built an ML product, I had no idea what inference meant.]]></description><link>https://aipmguru.substack.com/p/inference-101-what-actually-happens</link><guid isPermaLink="false">https://aipmguru.substack.com/p/inference-101-what-actually-happens</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Tue, 24 Mar 2026 14:07:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!PB5-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The first time I built an ML product, I had no idea what inference meant.</p><p>I searched it. Still didn&#8217;t get it. So I walked over to my ML engineer, lucky for me, he was a friend, and asked him to just explain it like I was five.</p><p>He did. And I remember thinking: not everyone has that friend.</p><p>This post is that friend.</p><p><strong>What you&#8217;ll learn (9 minutes):</strong> </p><ul><li><p>What inference actually is </p></li><li><p>The two phases every LLM response goes through</p></li><li><p>The three metrics that tell you whether your product feels fast or broken</p></li><li><p>Why do longer prompts slow things down</p></li><li><p>What batching means for your users</p></li><li><p>The one tradeoff every AI PM needs to understand before making deployment decisions.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!PB5-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 424w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 848w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!PB5-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png" width="381" height="472.8482142857143" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1807,&quot;width&quot;:1456,&quot;resizeWidth&quot;:381,&quot;bytes&quot;:8733268,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/191397028?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 424w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 848w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PB5-!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46d3e81a-6524-41f6-991a-99cbaef5d832_1856x2304.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>What &#8220;Inference&#8221; Actually Means</h2><p>Training is when a model learns. Inference is when a model runs. One request, one response, one inference.</p><p>Every time a user sends a message to your AI product and gets a response back, that&#8217;s inference. The model takes your input, does an enormous amount of math, and produces output. That&#8217;s it.</p><p>The reason inference matters for PMs  and why it&#8217;s worth understanding in some depth is that it drives three things you care about directly: </p><ol><li><p>How fast your product feels, </p></li><li><p>How much does it cost to run, and </p></li><li><p>How many users can you serve at once? </p></li></ol><p>Get inference wrong and you&#8217;re either burning money or delivering a sluggish experience or both.</p><h2>The Two Phases of Every LLM Response</h2><p>Here&#8217;s the part most people don&#8217;t know. When you send a prompt to an LLM, the model doesn&#8217;t process it the way you might imagine, reading it left to right and generating words as it goes. It actually works in two completely distinct phases.</p><h3>Phase 1: Prefill</h3><p>The model takes your entire input, your system prompt, conversation history, retrieved documents, and user messages, and processes them all at once. In parallel. This is called prefill.</p><p>During prefill, the model reads every token in your prompt simultaneously and builds an internal representation of the whole context. It&#8217;s compute-heavy, but fast relative to what comes next because all that parallel processing happens in one shot on the GPU.</p><p>The thing that comes out of prefill is called the KV cache (Key-Value cache). Think of it as the model&#8217;s compressed memory of everything you just told it. This cache is what the next phase uses.</p><p>One critical implication: longer prompts = more expensive, slower prefill. If your system prompt is 3,000 tokens and your RAG pipeline retrieves 2,000 tokens of context, the model has to process all 5,000 tokens before generating a single word of response. That&#8217;s why context window management, which I covered in depth in my post on <a href="/__u/aipmguru.substack.com/p/understanding-context-windows-a-critical">Understanding Context Windows</a>, is directly connected to your inference costs and latency.</p><h3>Phase 2: Decode</h3><p>After prefill, the model starts generating your response. One token at a time.</p><p>This is the decode phase. And here&#8217;s the part that surprises people: it cannot be parallelized. Each new token depends on every token that came before it. The model generates &#8220;The,&#8221; then looks at &#8220;The&#8221; to generate &#8220;refund,&#8221; then looks at &#8220;The refund&#8221; to generate &#8220;policy.&#8221; Sequential by design.</p><p>Each generated token is appended to the input and fed back into the model to generate the next token. The KV cache from prefill makes this manageable; without it, the model would have to reprocess the entire context from scratch for every token it generates.</p><p>Decode is slower, per token, than prefill. But it&#8217;s also where your users are actually watching something happen &#8212; the text streaming in. Which brings us to the metrics.</p><h2>The Three Numbers That Tell You If Your Product Feels Fast</h2><h3>Time to First Token (TTFT)</h3><p>TTFT is how long users wait before they see anything at all. It&#8217;s essentially the duration of the prefill phase plus a small amount of overhead.</p><p>A chatbot might require a TTFT under 500 milliseconds to feel responsive, while a code completion tool may need a TTFT below 100 milliseconds for a seamless developer experience. If your TTFT is over 3 seconds, users start to wonder whether the product is broken.</p><p>The PM implication: anything that makes your prompt longer makes your TTFT worse. Every extra sentence in your system prompt, every additional document chunk retrieved by RAG, every turn of conversation history you include, all add to prefill time and push TTFT up.</p><h3>Time Per Output Token (TPOT)</h3><p>Once the first token appears, TPOT measures how fast subsequent tokens stream in. This is purely the decode phase.</p><p>A TPOT of 100 milliseconds per token would be 10 tokens per second per user, or roughly 450 words per minute, which is faster than a typical person can read. So 10 tokens/second is the rough threshold where streaming feels smooth rather than halting.</p><p>Below that, say 3-4 tokens/second, users start reading faster than the model writes. That friction is surprisingly noticeable and ruins the product's feel, even when the answers are good.</p><h3>End-to-End Latency</h3><p>The total time from the request submitted to the response being complete. Roughly: TTFT + (TPOT &#215; number of output tokens).</p><p>For most product decisions, TTFT matters more than end-to-end latency, especially in streaming. If users can see tokens appearing, they&#8217;re engaged. A response that starts in 400ms and takes 8 seconds to complete feels very different from one that takes 4 seconds before anything shows up and completes in 5.</p><p>Streaming is not just a nice-to-have. It&#8217;s an inference architecture decision with real product impact. If your team hasn&#8217;t enabled streaming, it&#8217;s worth asking why.</p><h2>Why Your Prompt Length Is an Infrastructure Decision</h2><p>This is the thing I see PM teams miss constantly.</p><p>Every product decision that changes the size of your prompt is also an infrastructure and cost decision. Adding a more detailed system prompt: longer prefill, higher TTFT, and more cost. Retrieving more document chunks in RAG: same. Keeping longer conversation history: same.</p><p>This contrast is why commercial LLM APIs charge input tokens at a considerably lower rate than output tokens;  prefill (processing input) is more compute-efficient per token than decode (generating output). But &#8220;cheaper per token&#8221; doesn&#8217;t mean &#8220;free.&#8221; At scale, a 500-token increase in average prompt length across a million daily requests adds up fast.</p><p>The practical question for PMs: do you know what your average prompt length is? Most teams don&#8217;t. Your tracing data will tell you (I covered how to get that visibility in my <a href="/__u/aipmguru.substack.com/p/llm-tracing-101-what-it-is-why-it">LLM Tracing 101 post</a>). If you don&#8217;t have tracing, you&#8217;re flying blind on one of your biggest cost drivers. If you don&#8217;t have that number today, create a ticket this week to add prompt length to your tracing spans. It&#8217;s one data point that changes a lot of conversations.</p><h2>What Batching Means for Your Users</h2><p>When multiple users hit your product at the same time, the inference server doesn&#8217;t run each request separately. It batches them together, processing multiple requests on the GPU simultaneously to use the hardware more efficiently.</p><p>This is good for costs and throughput. But it creates a tradeoff.</p><p>The naive approach (static batching) waits until a batch is full before processing any of them. That means early arrivals in a batch wait for late arrivals before getting their TTFT. Not great for the users who showed up first.</p><p>Modern inference servers use continuous batching, with requests joining and leaving the batch dynamically as they complete. Any completed request is immediately removed from the batch, and the batch space is filled with the next request in line. This keeps TTFT lower across the board.</p><p>Why does this matter for PMs? Because when your team says &#8220;we need to optimize our inference server,&#8221; this is often what they&#8217;re talking about. And when you&#8217;re evaluating hosted inference providers (OpenAI, Anthropic, Together AI, Fireworks), their batching strategy directly affects your users&#8217; experience during traffic spikes.</p><h2>The Fundamental Tradeoff: Latency vs. Throughput</h2><p>Here&#8217;s the one thing I want every AI PM to internalize from this post.</p><p>Latency and throughput pull in opposite directions.</p><p><strong>Latency</strong> is about the speed of individual requests: how fast does a user get their answer?</p><p><strong>Throughput</strong>&nbsp;is about the system capacity, how many users the system can serve per second.</p><p>Techniques that improve throughput (larger batches, more requests processed together) often increase latency for individual requests because each request waits longer before being processed. Techniques that minimize latency (smaller batches, dedicated resources) reduce how many concurrent users you can serve efficiently.</p><p>There&#8217;s no free lunch. When hosting and optimizing LLM inference, there&#8217;s always a balance between these two key goals.</p><p>The product question that determines where you land on this tradeoff: what does your user actually need?</p><p>A real-time customer support chatbot needs low TTFT above all else. A user who waits 4 seconds for the first word will lose trust fast. Throughput matters less; you&#8217;d rather serve 70 concurrent users well than 200 users with a 5-second TTFT.</p><p>A batch document summarization tool is the opposite. Nobody is watching tokens stream in. They submitted a job and will come back when it&#8217;s done. High throughput, higher latency tolerance.</p><p>A coding assistant sits somewhere in between. TPOT matters a lot (tokens need to stream faster than the developer can read), but TTFT can be a bit higher because developers expect a brief &#8220;thinking&#8221; pause.</p><p>Here&#8217;s a quick reference for how to think about SLO priorities by use case:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!e5AC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 424w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 848w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!e5AC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png" width="1456" height="769" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:769,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8121599,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/191397028?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 424w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 848w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e5AC!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F875cb0dc-35a9-4fcf-902c-9edd5057549b_2848x1504.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I teach my students to define their latency SLO (service level objective) before touching infrastructure. What TTFT is acceptable for your use case? What TPOT makes the experience feel broken? If you don&#8217;t have those numbers, every infrastructure conversation is just guessing.</p><h2>Cold Starts: The Latency Spike Nobody Warns You About</h2><p>One more thing worth knowing, especially if you&#8217;re deploying your own models rather than using hosted APIs.</p><p>When a model hasn&#8217;t been used recently, it may be unloaded from GPU memory to save costs. The next request that comes in has to wait for the model to load back onto the GPU before inference can even begin. This is called a cold start, and it can add anywhere from a few seconds to 30+ seconds of latency on that first request,  longer if the model weights have to be loaded from disk in a self-hosted setup.</p><p>If your product has uneven traffic patterns, is busy during business hours, and quiet overnight, cold starts can create a painful experience for the first users each morning. The fix is to keep models &#8220;warm&#8221; by running occasional dummy requests, or to use an inference provider that handles warmup for you.</p><p>Most managed API providers (OpenAI, Anthropic, Google) handle this invisibly. If you&#8217;re self-hosting or using a serverless GPU provider, it&#8217;s your problem to solve.</p><h2>What This Means for Product Decisions</h2><p>A few concrete takeaways for your next sprint planning or infrastructure conversation:</p><p><strong>On prompt design:</strong> Every token in your prompt costs money and adds latency. Audit your system prompt. I&#8217;ve seen teams with 4,000-token system prompts that could be cut to 800 without losing anything meaningful.</p><p><strong>On streaming:</strong> If your product isn&#8217;t streaming responses, add it. It doesn&#8217;t change how fast the model runs; it changes how fast the experience <em>feels</em>. That&#8217;s a product decision, not just an engineering one.</p><p><strong>On model selection:</strong> Smaller models have faster TPOT. GPT-4o mini and Claude Haiku are not just cheaper, they&#8217;re faster per token. For use cases where quality doesn&#8217;t require the largest model, the latency improvement is real and user-facing. I covered how to think about right-sizing model selection in my post,&nbsp;<a href="/__u/aipmguru.substack.com/p/use-the-smallest-capability-that">"Use the Smallest Capability That Works</a>."</p><p><strong>On SLOs:</strong> Define your latency targets before you build. TTFT under X milliseconds for Y% of requests. TPOT above Z tokens/second. Without those numbers, your engineers can&#8217;t make good tradeoffs and you can&#8217;t evaluate whether your infrastructure is working.</p><div><hr></div><p>Inference is the part of the AI stack that&#8217;s invisible until it breaks and then it&#8217;s the only thing your users can talk about. Understanding the two phases, the three metrics, and the latency-throughput tradeoff gives you enough foundation to have informed conversations with your engineering team about the decisions that directly affect your users.</p><p>You don&#8217;t need to know how to configure vLLM or tune a KV cache. But you do need to know why your product felt slow that Tuesday afternoon when traffic spiked, and what questions to ask to figure it out.</p><p>That conversation starts with knowing what inference actually is.</p><p><em>What&#8217;s the inference-related issue that&#8217;s bitten your product hardest, cold starts, TTFT spikes during traffic peaks, something else? Drop it in the comments. And if this post helped clarify something your team has been debating, share it with an AI PM or engineer who&#8217;d find it useful. This is the kind of thing that&#8217;s easier to understand together.</em></p><p><em>If you&#8217;re not subscribed yet, I publish posts like this every week at <a href="/__u/aipmguru.substack.com/">aipmguru.substack.com</a>, practical AI PM concepts, no hype.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://aipmguru.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/aipmguru.substack.com/subscribe"><span>Subscribe now</span></a></p><div><hr></div><p><em>Related reading:</em></p><ul><li><p><a href="/__u/aipmguru.substack.com/p/understanding-context-windows-a-critical">Understanding Context Windows: A Critical Concept for AI PMs</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/llm-tracing-101-what-it-is-why-it">LLM Tracing 101: What It Is, Why It Matters, and When You Actually Need It</a></p></li><li><p><a href="/__u/aipmguru.substack.com/p/the-hybrid-chatbot-stack-when-to">The Hybrid Chatbot Stack: When to Cache, Route, or Generate</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[How to Answer "Why Do LLMs Hallucinate?" in an AI PM Interview]]></title><description><![CDATA[Most candidates jump straight to RAG. Here's why that's the wrong move and what to say instead.]]></description><link>https://aipmguru.substack.com/p/how-to-answer-why-do-llms-hallucinate</link><guid isPermaLink="false">https://aipmguru.substack.com/p/how-to-answer-why-do-llms-hallucinate</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Fri, 20 Mar 2026 14:07:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!EdEt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hallucinations aren&#8217;t a bug to fix. They&#8217;re a property to design around.</p><p>That one sentence is the difference between a candidate who will build responsible AI products and one who will ship hallucination factories and wonder why users don&#8217;t come back.</p><p>I know this question is coming in my AI PM interviews. Every prep guide flags it. Every hiring manager roundup mentions it. And more than almost any other question, it exposes whether you&#8217;ve thought carefully about what these models actually do or whether you&#8217;ve been treating them like magic.</p><p>So I went deep on it. Here&#8217;s where I landed.</p><p><strong>What You&#8217;ll Learn (6-minute read)</strong></p><ul><li><p>Why the &#8220;it&#8217;s a bug&#8221; framing is the first mistake candidates make</p></li><li><p>Why hallucinations happen at a technical level (and why that framing matters)</p></li><li><p>A three-layer approach to addressing them in products</p></li><li><p>How to answer the follow-up question that most candidates stumble on</p></li><li><p>What separates a good answer from a great one</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!EdEt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!EdEt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6766110,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/187049847?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!EdEt!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d1d8827-b020-47f9-b70b-b751acef200f_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The Framing Mistake That Kills Most Answers</h2><p>Most candidates approach this question as a mitigation exercise. They jump straight to RAG, guardrails, output validation, and lower temperature. All real tools. But leading with them tells the interviewer something that you think hallucination is a problem to be patched, not a property to be designed around.</p><p>The difference matters more than it sounds.</p><p>If hallucination is a bug, you&#8217;re waiting for the next model release to fix it. If it&#8217;s a property, you&#8217;re designing every product decision around it, the UX, the trust signals, the error states, the domain scope. Two completely different product philosophies. Interviewers can usually tell which one you hold within the first 90 seconds.</p><p>I actually tried the mitigation-first approach in a mock session with Claude early in my prep. Led with RAG. My interviewer (Claude) asked: &#8220;But what if the retrieved document is wrong?&#8221; I didn&#8217;t have a clean answer. That&#8217;s when I realized I was treating this as a technical checklist problem instead of a product design problem.</p><h2>Why Hallucinations Actually Happen</h2><p>I covered the full mechanics in my post on <a href="/__u/aipmguru.substack.com/p/how-to-answer-explain-how-an-llm">how LLMs actually work</a>, but the short version relevant here is: LLMs predict the most likely next tokens based on patterns in the training data. They&#8217;re optimizing for plausibility, not factual accuracy.</p><p>There&#8217;s no internal fact-checker. The model can&#8217;t distinguish between &#8220;I know this&#8221; and &#8220;this sounds right.&#8221;</p><p>When it hits a question without strong pattern matches, it generates confident-sounding text that follows the expected format, even if the underlying content is completely invented. That&#8217;s what &#8220;confidently wrong&#8221; means at the architectural level. Not a glitch. Not a failure state. The natural output of a system that predicts likely continuations rather than verifying facts.</p><p>You&#8217;re not working with a system that occasionally makes mistakes. You&#8217;re working with a system that fundamentally cannot verify its own outputs against reality. That&#8217;s the frame worth opening with in an interview.</p><h2>Three Layers Worth Walking Through</h2>
      <p>
          <a href="/__u/aipmguru.substack.com/p/how-to-answer-why-do-llms-hallucinate">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Metric Stack I Use in AI PRDs: Business, Product, Model]]></title><description><![CDATA[Every time I teach AI PRD writing at UW, I ask the class the same question before we get into requirements, user stories, or mocks.]]></description><link>https://aipmguru.substack.com/p/the-metric-stack-i-use-in-ai-prds</link><guid isPermaLink="false">https://aipmguru.substack.com/p/the-metric-stack-i-use-in-ai-prds</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Sun, 15 Mar 2026 15:07:34 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MEM0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every time I teach AI PRD writing at UW, I ask the class the same question before we get into requirements, user stories, or mocks.</p><p>&#8220;How will you know if this feature is working?&#8221;</p><p>The answers I get fall into one of three patterns. Some students jump straight to model metrics: accuracy, latency, and F1. Some go straight to product metrics: adoption, engagement, CSAT. A few go straight to business metrics: cost reduction, revenue impact.</p><p>All three are right. And all three are incomplete on their own.</p><p>The reason I start there is that the mistake I see most often in AI PRDs isn&#8217;t a missing metric. It&#8217;s a missing layer. Teams pick one frame and treat it as the full picture. Then they ship something that looks great by one measure and quietly fails by another.</p><p>What I teach and what I use in my own PRD work is a three-layer stack. Business metrics, product metrics, model metrics. In that order. Each layer answers a different question. Each one is incomplete without the other two.</p><p><strong>What You&#8217;ll Learn (7-minute read):</strong></p><ul><li><p>Why AI features require metrics at three distinct layers</p></li><li><p>How to define each layer in a PRD, with concrete thresholds (not hand-wavy goals)</p></li><li><p>A full worked example you can adapt directly</p></li><li><p>The one-layer trap and how to spot it in your own drafts</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!MEM0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!MEM0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6713951,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/190799383?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!MEM0!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3de52bd-a0e3-4b72-8e82-b27dd0fd5da0_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Start With the Business Layer</h2><p>I always tell my students: before you write a single acceptance criterion, write the business metric.</p><p>Not because it&#8217;s the most interesting layer. Because it&#8217;s the one that answers &#8220;why are we doing this at all?&#8221; If you can&#8217;t answer that with a specific, measurable outcome, you don&#8217;t have a PRD. You have a feature request dressed up in a template.</p><p>Business metrics for AI features usually live in one of four places: revenue lift (upsell attach, expansion, pricing power), cost reduction (support deflection, manual hours replaced), quality and retention (NPS, churn, CSAT on the specific workflow you&#8217;re improving), or risk reduction (compliance outcomes, error rates in high-stakes processes).</p><p>For a support summarization feature, a business metric might be: reduce average handle time per ticket by 20% within 6 months, while keeping CSAT at or above 4.5/5.</p><p>Notice there&#8217;s a number and a timeframe. &#8220;Improve efficiency&#8221; is not a business metric. That&#8217;s a wish.</p><p>One test I find useful: if this business outcome could be achieved just as well without AI, say so in the PRD. Better workflow tooling, better training, better templates, these are real alternatives. Being explicit about why AI is the right approach for this outcome forces a healthier conversation before a single line of code gets written.</p><h2>Then the Product Layer</h2><p>Once the business &#8220;why&#8221; is clear, the product metrics answer: how will user behavior tell me we&#8217;re on track before the business numbers move?</p><p>Business metrics are lagging. They tell you what happened. Product metrics are leading. They tell you whether you&#8217;re headed in the right direction.</p><p>This is where PM instincts matter most. A very accurate, very fast model can still produce a feature nobody trusts. Product metrics expose that gap before it becomes a customer problem.</p><p>The signals I reach for:</p><p><strong>Adoption and depth. </strong>What percentage of eligible users try the feature? Among those who try it, how often do they come back? For AI features, depth matters more than initial activation. The first experience is often rough. Users who return after that first rough experience are telling you something real.</p><p><strong>Trust signals. </strong>Thumbs up/down on outputs, feature-level CSAT, and qualitative feedback volume. Trust is a leading indicator for AI features in a way that it isn&#8217;t for traditional ones. If users don&#8217;t trust the output, they&#8217;ll stop engaging long before your business metrics show it.</p><p><strong>Behavioral shift.</strong> Did the AI change how users work, or did they use it once and default back to the old way? For support summarization: are agents actually sending tickets faster, or reading the summary and rewriting it from scratch? Those two behaviors look identical in a usage report. They mean completely different things.</p><p>For the same support feature: within 3 months of GA, 60% of active agents use AI summaries on at least 30% of tickets per week. Agent satisfaction at 80%+ &#8220;useful&#8221; votes. Behavioral shift is tracked by whether the summary-to-send workflow replaces the previous manual flow, not just whether summaries are being generated.</p><h2>Then the Model Layer</h2><p>Model metrics come last in the writing order. Not because they matter least &#8212; they don&#8217;t. Because they should be derived from the product and business you&#8217;ve already defined, not chosen in isolation.</p><p>This is something I push hard on in class. If you define model quality thresholds first, you end up optimizing for the wrong thing. &#8220;Let&#8217;s get to 95% accuracy&#8221; is a meaningful goal only if 95% &#8217;s what the product actually needs to earn user trust and hit the business target. Without layers one and two, that number is just a guess.</p><div class="pullquote"><p>The question model-metrics answer is: Is the model&#8217;s behavior good enough for this product and this business outcome?</p></div><p><strong>Quality.</strong> For classification: accuracy, precision/recall, F1. For generative outputs: human evaluation win rate. For summarization specifically: &#8220;What percentage of AI summaries do human evaluators rate as accurate enough to send without edits?&#8221; That&#8217;s not a model question. It&#8217;s a product question answered with a model threshold.</p><p><strong>Reliability and safety</strong>. Hallucination rate, policy violation rate, and PII exposure rate. These aren&#8217;t compliance checkboxes. They&#8217;re the floor below which user trust collapses. Define them explicitly.</p><p><strong>Latency</strong>. P95 response time is a UX metric that lives in the model layer. Users won&#8217;t wait. How long is too long for this specific workflow? That number should come from your product metric targets, not from what the model team thinks is achievable.</p><p>For support summarization: 90% of summaries rated &#8220;accurate enough to send without edits&#8221; in human eval. Fewer than 1% expose PII not already visible in the original ticket. P95 latency under 3 seconds from ticket submit to summary visible.</p><p>Those thresholds aren&#8217;t arbitrary. They&#8217;re derived from what agents need to trust the feature and what the business needs to see handle time actually drop.</p><h2>A Full PRD Example</h2><p>Here&#8217;s how I&#8217;d write the success section for &#8220;AI Draft Replies for Support Tickets.&#8221;</p><p><strong>Business metrics</strong></p><p>Reduce support cost per resolved ticket by 15% within 9 months. Maintain CSAT at 4.6/5 or above across all support interactions.</p><p><strong>Product metrics</strong></p><p>Within 3 months of GA, 70% of agents use AI draft replies on at least 40% of eligible tickets per week. For tickets where AI drafts are shown, agents send a final reply 30% faster than the pre-feature baseline. Agent feedback at 80%+ &#8220;draft was helpful&#8221; votes.</p><p><strong>Model metrics</strong></p><p>Quality: 85%+ of drafts rated &#8220;send with minor or no edits&#8221; in blind human evals. Safety: PII leak and policy-violation rate at 0.5% or lower on sampled interactions, with automated flags above threshold. Latency: P95 draft generation under 2.5 seconds.</p><p>The causal chain here is intentional. If the model hits its quality and latency targets, agents should find drafts useful. If agents find drafts useful, we should see faster replies and higher adoption. If replies are faster and quality holds, cost per ticket drops without hurting CSAT.</p><p>That chain is what you&#8217;re writing down in the PRD. Not three separate lists of metrics. The theory of how they connect.</p><h2>The One-Layer Trap</h2><p>The pattern I correct most often, both in student PRDs and in the mock interview feedback I give, is what I call the one-layer trap.</p><p>It looks like this: the PRD has model metrics (accuracy, latency, test set performance) and maybe product metrics (adoption, engagement), but no business success criteria with actual thresholds. Or it has strong business and product goals but no defined quality bar for the model, which means &#8220;good enough&#8221; gets decided by whoever is loudest in the launch review meeting.</p><p>The fix is the same in both cases. Ask the two bridging questions before you finalize any layer:</p><p>If the model hits these numbers, what will users do differently?</p><p>If users do that thing differently, what company-level metric moves and by how much?</p><p>If you can&#8217;t answer both with specifics, the PRD has a gap. Find it before engineering does.</p><div><hr></div><p>When I write the success section of an AI PRD, I don&#8217;t move on until I&#8217;ve answered three questions cleanly:</p><p>If this works, how does the company notice? Business metrics with specific thresholds and timeframes.</p><p>How will user behavior tell me it&#8217;s working before the business numbers move? Product metrics with adoption, depth, and trust signals.</p><p>What does &#8220;good enough&#8221; mean for the model, defined by what the product and business actually need? Model metrics derived from layers one and two, not chosen in isolation.</p><p>That&#8217;s the stack. Three layers, one causal chain, written down before you ship.</p><p>For a deeper look at how model evaluation fits into this, I wrote about building your first AI eval step by step in&nbsp;<a href="/__u/aipmguru.substack.com/p/how-to-build-your-first-ai-eval-a">"How to Build Your First AI Eval: A Step-by-Step Walkthrough Using the Anthropic Console</a>." </p><p>What layer do you find hardest to define in practice? Business metrics that are specific enough, or model thresholds that are actually derived from product needs? I&#8217;d love to hear what&#8217;s coming up in your PRDs.</p>]]></content:encoded></item><item><title><![CDATA[I Was Terrified of n8n. Six Days Later, I Demoed It Live]]></title><description><![CDATA[You probably know more than you think. You just have to start.]]></description><link>https://aipmguru.substack.com/p/i-was-terrified-of-n8n-six-days-later</link><guid isPermaLink="false">https://aipmguru.substack.com/p/i-was-terrified-of-n8n-six-days-later</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Thu, 12 Mar 2026 14:07:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LnMw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Two months ago, I said yes to speaking at <a href="https://community.pdma.org/seattle/home">PDMA Seattle</a>.</p><p>I told them I&#8217;d build a real AI workflow, one that scrapes AI news, writes a podcast script, and generates audio. Live demo. The whole thing.</p><p>I said yes confidently. I had two months. I build things. I know AI. I could figure out n8n.</p><p>Except for three weeks before the event, I still hadn&#8217;t opened it.</p><p>Not because I wasn&#8217;t building. I was - with Bolt, Lovable, Claude Code. I&#8217;m comfortable in those environments. But n8n felt different. The nodes, the wires, the HTTP requests. Every time I looked at a screenshot of someone&#8217;s workflow, my brain went quiet in a way it doesn&#8217;t usually go quiet around technical things. And that quiet was starting to feel like a message.</p><p>I genuinely considered pivoting to a Claude Code demo. Something I already knew. Something I could walk through confidently without the risk of freezing in front of a room.</p><p>One week out, I decided that wasn&#8217;t acceptable.</p><p>If I don&#8217;t try, I will always live in fear of this.</p><p>So the Thursday before the event &#8212; six days out &#8212; I cancelled my meetings and started.</p><h2>Day 1: Two Hours. Six Nodes. One Audio File.</h2><p>I opened Claude and started talking. Not coding. Just describing what I wanted: pull AI news from RSS feeds, have Claude prioritize the best stories, write a podcast script, send it to ElevenLabs, get audio back.</p><p>Claude walked me through it, piece by piece. And I want to be clear, Claude could have generated the entire workflow on its own. But I wanted to understand how each node worked, how the pieces connected to each other. So we went slow. One node at a time, me asking questions the whole way.</p><p>Two hours later. TWO whole hours. Six nodes.</p><p>Messy. But functional. And at the end of that session, I had an audio file.</p><p>An actual podcast episode. Generated from news I hadn&#8217;t touched.</p><p>I sat there for a minute just staring at it.</p><p>I&#8217;ve been building with AI for a while now &#8212; Bolt, Lovable, Claude Code. I&#8217;m not new to this. But n8n was the tool I&#8217;d been circling, the one I kept telling myself I&#8217;d get to eventually. And right there, staring at that audio file, something clicked. Not a new skill. A missing piece. The workflow layer I&#8217;d been avoiding finally made sense in a way that slides and frameworks never quite captured.</p><p>That&#8217;s the difference between teaching a thing and doing the thing. I know that difference. I talk about it constantly. And I still had to learn it again.</p><h2>Three Days Later: 14 Nodes</h2><p>By the time I got to the event, the workflow had grown.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!LnMw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 424w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 848w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!LnMw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png" width="1456" height="526" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:526,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:241120,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/190691086?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 424w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 848w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LnMw!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632e1039-af35-448b-81e3-0f4d8b4d98ed_2754x994.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">My current n8n flow as of March 11th, 2026</figcaption></figure></div><p>Four RSS feeds: ArXiv ML, TechCrunch, Hacker News, and MIT Technology Review. A merge node pulls everything together. Claude is summarizing and prioritizing per my instructions. Claude is writing the script. A human approval gate in the middle, because I wanted eyes on the script before audio got generated. ElevenLabs for the audio. Google Drive is storing the MP3 and the transcript. Notion is getting updated with the episode record.</p><p>Fourteen nodes. Three days.</p><p>I wasn&#8217;t starting from zero, knowing how to think about AI architecture, how to break a workflow into steps, how to write a good prompt, all of that mattered. The n8n-specific learning was maybe 30% of the work. The other 70% was the builder thinking I already had.</p><p>That&#8217;s worth saying, because I think a lot of PMs underestimate how much they already know. The tool is learnable. The thinking is the harder part, and if you&#8217;ve been doing the thinking, you&#8217;re closer than you think.</p><h2>The Demo Day</h2><p>Here&#8217;s what actually happened before I got to the demo.</p><p>I had a tech glitch that made me quit Zoom entirely and rejoin. Right before I was supposed to start. In front of 45+ people.</p><p>I got back in and said: &#8220;Sometimes AI can only get us so far.&#8221; Got a laugh. Kept going.</p><p>And then I built the 6-node version live, in front of the audience, in about 20 minutes. No pre-built shortcuts. Just the workflow, one node at a time, exactly the way I&#8217;d learned it six days earlier.</p><p>It worked.</p><p>But here&#8217;s the moment I actually want to talk about. During the build, I walked the audience through the human approval gate &#8212; the node that pauses the workflow and shows me the script before audio gets generated. I explained why it&#8217;s there.</p><p>A few days earlier, while I was testing, the workflow had produced a script that opened with: &#8220;Hello, this is the news from March 24, 2024.&#8221;</p><p>Two years off. Completely confident. Completely wrong.</p><p>That&#8217;s why the approval gate exists. Not because I don&#8217;t trust Claude. Because I know that every AI system produces wrong outputs sometimes, and the question isn&#8217;t whether it will happen, it&#8217;s whether you&#8217;ve designed for it. The approval gate is me staying in the loop on the one step where a mistake would actually matter.</p><p>I told that story live. And I think it landed harder than any of the framework slides I showed.</p><p>The audience got quiet, the way audiences do when something real just happened.</p><h2>&#8220;I Finally Started Calling Myself an AI Builder.&#8221;</h2><p>I said that in my intro. Out loud. To 45 strangers.</p><p>It felt weird to say. I&#8217;ve been an AI PM since 2019. I&#8217;ve worked at Disney, Nike, and Amazon. I teach AI Product Management at the University of Washington. But &#8220;AI builder&#8221; felt like a different claim, one I wasn&#8217;t sure I&#8217;d earned yet.</p><p>Building this workflow is what got me there. Not because n8n is hard (it isn&#8217;t, once you start). But because I stopped waiting until I felt ready and just built the thing. That&#8217;s what builders do.</p><div><hr></div><h2>Three Tools I Built for the Talk</h2><p>While preparing, I realized the demo wasn&#8217;t enough. I needed thinking tools. Things that would help people make better decisions before they build, not just watch a workflow run and go home inspired.</p><p>So I built three of them. A pressure-tester for build decisions. A 9-role PRD critic. And a 35-prompt library organized by situation.</p><p>They&#8217;re available below for paid subscribers, along with the workshop starter template and the simplified 6-node build guide you can use to build your first workflow this afternoon.</p><p><strong>The AI PM Thinking Partner</strong> is a Claude skill that acts like a senior AI PM who will push back before you commit to building something. It asks questions first &#8212; because that&#8217;s what good mentors do before giving opinions. Then it names the pattern it&#8217;s seeing. Then it gives you a verdict: BUILD IT, VALIDATE FIRST, SIMPLIFY FIRST, or DON&#8217;T BUILD THIS YET.</p><p><a href="https://drive.google.com/file/d/1XRyZQSDCs3ZcZuMnSyY68kKIXxolz4HP/view?usp=sharing">[</a><strong><a href="https://drive.google.com/file/d/1XRyZQSDCs3ZcZuMnSyY68kKIXxolz4HP/view?usp=sharing">Download the AI PM Thinking Partner &#8594;</a></strong><a href="https://drive.google.com/file/d/1XRyZQSDCs3ZcZuMnSyY68kKIXxolz4HP/view?usp=sharing">]</a></p><p><strong>The PRD Review Critic</strong> reads your product brief and interrogates it from nine stakeholder perspectives at once &#8212; Legal, Engineering, Design, AI Research, and more. The output is a traffic-light scorecard with specific, uncomfortable questions under each Red and Yellow item. Not &#8220;have you considered privacy?&#8221; &#8212; the version with actual teeth.</p><p><a href="https://drive.google.com/file/d/1p3komgfUI7OKZ5uKwrX-NiWBTAl6hgJV/view?usp=sharing">[</a><strong><a href="https://drive.google.com/file/d/1p3komgfUI7OKZ5uKwrX-NiWBTAl6hgJV/view?usp=sharing">Download the PRD Review Critic &#8594;</a></strong><a href="https://drive.google.com/file/d/1p3komgfUI7OKZ5uKwrX-NiWBTAl6hgJV/view?usp=sharing">]</a></p><p><strong>The AI PM Prompt Library</strong> is 35 copy-paste prompts organized by situation: scoping a build, writing or fixing a prompt, evaluating output, explaining AI to stakeholders, prepping for interviews. Each prompt includes a note on why it&#8217;s designed the way it is, so when your situation doesn&#8217;t fit exactly, you know what to adapt.</p><p><a href="https://drive.google.com/file/d/1flYO_juFxRMpPmR5GxiNb2we6m_b7kqw/view?usp=sharing">[</a><strong><a href="https://drive.google.com/file/d/1flYO_juFxRMpPmR5GxiNb2we6m_b7kqw/view?usp=sharing">Download the AI PM Prompt Library &#8594;</a></strong><a href="https://drive.google.com/file/d/1flYO_juFxRMpPmR5GxiNb2we6m_b7kqw/view?usp=sharing">]</a></p><p><strong>The workshop starter template</strong> is the n8n workflow from the live demo &#8212; importable, ready to wire up with your own API keys.</p><p><a href="https://drive.google.com/file/d/15_aeDswM743iL2b9NqLMhg9ywRhS8BnG/view?usp=sharing">[</a><strong><a href="https://drive.google.com/file/d/15_aeDswM743iL2b9NqLMhg9ywRhS8BnG/view?usp=sharing">Download the workshop starter template &#8594;</a></strong><a href="https://drive.google.com/file/d/15_aeDswM743iL2b9NqLMhg9ywRhS8BnG/view?usp=sharing">]</a></p><div><hr></div><p>Most product managers think they&#8217;re good with AI because they use ChatGPT to clean up emails or summarize docs. That&#8217;s useful. I&#8217;m not dismissing it.</p><p>But there&#8217;s another level. Where you&#8217;re not just using AI tools, you&#8217;re building with them. Workflows that run while you do the work you&#8217;re actually supposed to be doing.</p><p>The shift to get there isn&#8217;t really about the technology. I knew enough to build this in three days because I&#8217;d been doing the thinking for a long time. What I&#8217;d been missing was the willingness to sit with one specific discomfort long enough to get through it.</p><p>I cancelled my meetings on a Thursday because I was tired of being afraid of something I hadn&#8217;t tried. Six days later, I demoed a 14-node workflow to a room full of product managers.</p><p>You probably know more than you think. You just have to start.</p><p>What&#8217;s the thing you&#8217;ve been circling around, telling yourself you&#8217;ll get to eventually? Drop it in the comments.</p>]]></content:encoded></item><item><title><![CDATA[LLM Tracing 101: What It Is, Why It Matters, and When You Actually Need It]]></title><description><![CDATA[Every cohort, someone asks the same question.]]></description><link>https://aipmguru.substack.com/p/llm-tracing-101-what-it-is-why-it</link><guid isPermaLink="false">https://aipmguru.substack.com/p/llm-tracing-101-what-it-is-why-it</guid><dc:creator><![CDATA[Shaili Guru]]></dc:creator><pubDate>Wed, 04 Mar 2026 15:07:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!e8RQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every cohort, someone asks the same question. While pointing to the diagram below: &#8220;When the model hallucinates, where does it actually start going wrong? Is it here? Is it in the retrieval? The system prompt? The model itself?&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!e8RQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!e8RQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6613026,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/189829842?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!e8RQ!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43904930-213c-4e22-9ff4-beeccb4753f2_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The user query is just 1 of 7 components. Tracing shows you what happened in the other 6.</figcaption></figure></div><p>Without tracing, you can&#8217;t answer that question.</p><p>You can see the bad output. You can see the user&#8217;s input. But everything in between, the six steps the system took before generating that response, is a black box. You&#8217;re debugging a pipeline by staring at its endpoints and guessing what went wrong in the middle.</p><p>That&#8217;s what tracing fixes. And for AI PMs shipping production products, I think it&#8217;s one of the most underappreciated tools in the stack.</p><p><strong>What you&#8217;ll learn (8 minutes): </strong></p><ul><li><p>Why evals aren&#8217;t enough for production</p></li><li><p>What a trace actually looks like, span by span</p></li><li><p>Where hallucinations really originate in the seven context engineering components</p></li><li><p>Which tool to start with</p></li><li><p>When tracing is overkill.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!9gv4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!9gv4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:9794153,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/189829842?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9gv4!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55e80895-63ea-4d6a-8523-3ca733d3e383_2816x1536.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Evals Tell You It Can Work. Tracing Tells You It Is Working.</strong></h2><p>If you&#8217;ve built evals for your LLM product (and I wrote about how to get started with that <a href="/__u/aipmguru.substack.com/p/how-to-build-your-first-ai-eval-a">here</a>), you already know how to test whether your system gives good answers to known questions. That&#8217;s necessary. But it&#8217;s not sufficient.</p><p>Here&#8217;s the gap. Evals test a curated set of inputs against expected outputs. Tracing records what actually happens when real users, with messy, unpredictable queries, hit your system in production.</p><p>Traditional software crashes when it fails. You get a 500 error, a stack trace, and a Sentry alert. LLM products fail silently. The model returns a confident, grammatically perfect, completely wrong answer. No error code. No crash. Just a user who quietly loses trust in your product.</p><p>I think this is the single biggest operational difference between traditional and AI products. The failure mode is silence. And you can&#8217;t fix what you can&#8217;t see.</p><h2><strong>So What Is Tracing, Exactly?</strong></h2><p>Think of it like a flight recorder for your AI pipeline. Every time a user sends a query, the trace captures a complete, timestamped record of every step the system took to produce the response.</p><p>In traditional distributed systems, a &#8220;trace&#8221; follows a request as it bounces between microservices. Same concept here, but the hops are different. In an LLM application, a trace follows a user query through prompt construction, retrieval (if you&#8217;re using RAG), the model call itself, any tool use or function calls, post-processing, guardrail checks, and the final response.</p><p>The key distinction from logging: logs tell you <em>that</em> something happened. Traces tell you <em>why</em> it happened in that order, with that result, at that cost.</p><p>A log might say: &#8220;LLM call completed in 1,230ms.&#8221;</p><p>A trace shows: the user asked about refund policies, the system retrieved 4 document chunks (with their similarity scores), assembled a 2,847-token prompt including the system instructions and conversation history, called GPT-4o at temperature 0.3, generated 340 tokens in 1,230ms, passed the guardrail check, and returned the response. Total cost: $0.004.</p><p>That level of visibility is what lets you answer the hallucination question. Was the retrieval bad? Did it pull the wrong documents? Was the prompt too long, and did the model lose focus? Did the system instructions conflict with the retrieved context? You can see exactly where things went sideways.</p><h2><strong>The Anatomy of a Trace</strong></h2><p>Traces have a hierarchy that takes about five minutes to understand. Here&#8217;s the vocabulary:</p><div class="pullquote"><p>A <strong>session</strong> groups multiple traces from the same user interaction. If someone has a 10-message conversation with your chatbot, that&#8217;s one session containing 10 traces.</p><p>A <strong>trace</strong> represents one complete request-to-response cycle. User asks a question, system produces an answer. One trace.</p><p>A <strong>span</strong> is a single step within that trace. Each span has a start time, end time, and metadata about what happened during that step.</p></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!FchD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 424w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 848w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_webp, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!FchD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png" width="968" height="1277" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1277,&quot;width&quot;:968,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:150351,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://aipmguru.substack.com/i/189829842?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_424, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 424w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_848, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 848w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_1272, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FchD!, /__u/aipmguru.substack.com/w_1456, /__u/aipmguru.substack.com/c_limit, /__u/aipmguru.substack.com/f_auto, /__u/aipmguru.substack.com/q_auto:good, /__u/aipmguru.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb51d1c05-b6d1-4f80-a9bd-5738c3145102_968x1277.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here&#8217;s what a trace actually looks like for a RAG-based chatbot. A user asks: &#8220;What&#8217;s the refund policy for international orders?&#8221;</p><p><strong>Span 1: Query Processing (45ms)</strong></p><p>The raw user input gets cleaned up and prepared. Maybe you&#8217;re extracting intent or checking for prompt injection attempts.</p><p><strong>Span 2: Embedding Generation (120ms)</strong></p><p>The query is passed to your embedding model (say, text-embedding-3-small) and converted into a vector. If your embedding API is slow or rate-limited, this span tells you.</p><p><strong>Span 3: Vector Search (85ms)</strong></p><p>That vector goes to your database for similarity search. Four document chunks come back, each with a relevance score. This is where most RAG problems actually hide. Bad chunking, low relevance scores, wrong top-k values. The retrieval span exposes it all.</p><p><strong>Span 4: Prompt Assembly (15ms)</strong></p><p>The system instructions, retrieved chunks, conversation history, and user query get assembled into the final prompt. 2,847 tokens total. This span shows you exactly what the model is seeing, which matters because if the context is contradictory or too long, you&#8217;ll spot it here.</p><p><strong>Span 5: LLM Generation (1,230ms)</strong></p><p>The actual model call. This is typically the longest and most expensive span. You can see the model used, temperature setting, token counts (input and output), and the raw response.</p><p><strong>Span 6: Guardrail Check (35ms)</strong></p><p>Output validation. Did the response pass your safety filters? Was it grounded in the retrieved context?</p><p><strong>Total: 1,530ms. Cost: $0.004.</strong></p><p>And now you can see exactly where time and money went. If latency spikes, you know which span is responsible. If quality drops, you can trace back through the pipeline and find the step that broke.</p><h2><strong>So, Where Do Hallucinations Actually Start?</strong></h2><p>This is the question from the opening. The honest answer: it depends. Hallucinations don&#8217;t have one origin point. They can creep in at almost every stage. But tracing lets you narrow it down.</p><p>Let me map it back to the seven context engineering components from that diagram:</p><p><strong>Component 1: System Instructions</strong> &#8594; If your system prompt is vague or contradictory, the model has more room to improvise. You can&#8217;t trace inside the model&#8217;s reasoning, but you can inspect exactly what instructions were sent. Tracing catches this at Span 4 (prompt assembly), where you&#8217;ll see the full prompt, including system instructions.</p><p><strong>Component 2: Background Context</strong> &#8594; Stale or inaccurate domain knowledge baked into the prompt. Traceable at Span 4. If your background context says the return policy is 30 days, but it changed to 14 days last month, the trace shows exactly what context was injected.</p><p><strong>Component 3: Conversation History</strong> &#8594; In multi-turn conversations, if the history is too long and gets truncated, the model may lose important earlier context. Traceable at Span 4 by inspecting how much history was included and where it was cut.</p><p><strong>Component 4: Retrieved Knowledge (RAG)</strong> &#8594; This is the big one. Bad retrieval is probably the most common source of hallucinations in RAG systems. The retrieval span (Span 3) shows you the similarity scores, the documents returned, and whether they were actually relevant to the query. If the model hallucinated because it got irrelevant chunks, you&#8217;ll see it here.</p><p><strong>Component 5: Available Tools</strong> &#8594; If your system calls external tools or APIs and receives bad data, the model may incorporate that into its response. Traceable as a tool spans the nested trace.</p><p><strong>Component 6: Output Format</strong> &#8594; Less of a hallucination source, more of a formatting issue. But if the output format constraints are confusing, the model might generate structurally weird responses. Visible in the prompt assembly span.</p><p><strong>Component 7: User Query</strong> &#8594; Ambiguous or adversarial queries can trigger hallucinations. The trace starts with the raw input, so you can see exactly what the user asked and whether your preprocessing changed it.</p><p>And then there&#8217;s the one source tracing <em>can&#8217;t</em> catch: training data. If the model learned incorrect associations during pre-training, those associations are baked in before your pipeline even runs. No amount of tracing will surface that. This is where evals matter, because you can test for known factual errors even if you can&#8217;t trace their origin.</p><p>Most hallucinations you&#8217;ll deal with in production come from Components 1 through 4. System instructions, context, history, and retrieval. And all of those show up in traces. That&#8217;s the point. Evals catch what the model gets wrong. Tracing shows you <em>why</em> it got it wrong. Different jobs, both necessary.</p><h2><strong>How This Differs from Traditional APM (Application Performance Monitoring)</strong></h2><p>If you&#8217;ve worked with tools like Datadog or New Relic for regular software, LLM tracing looks familiar at first glance. But it tracks fundamentally different things.</p><p>Traditional APM monitors latency, error rates, and throughput. LLM tracing adds token counts (input and output), model parameters (temperature, top_p), retrieval quality scores, prompt versions, cost per request, and the actual content of inputs and outputs.</p><p>That content piece is what makes this a category entirely different. You&#8217;re not just monitoring whether the system responded. You&#8217;re monitoring whether the response was <em>good</em>. Traditional APM can tell you &#8220;the API returned 200 OK in 450ms.&#8221; LLM tracing can tell you &#8220;the API returned a confident answer that contradicted the retrieved documents.&#8221;</p><p>There&#8217;s a privacy consideration worth flagging early. Because traces capture full prompts and responses, you&#8217;re suddenly storing user inputs and model outputs. That has implications for compliance, data retention, and PII handling that traditional APM doesn&#8217;t have to worry about. A reasonable starting point: default to <em>not</em> logging raw prompts and responses in production. Log token counts, model names, latency, and trace IDs. Turn on full content capture selectively when you&#8217;re debugging a specific issue.</p><h2><strong>What Should a PM Actually Look At?</strong></h2><p>You don&#8217;t need to read raw trace data. (That&#8217;s your engineering team&#8217;s job.) You need dashboards that answer PM questions.</p><p>Here are the ones I think matter most:</p><p><strong>&#8220;What&#8217;s our average cost per conversation?&#8221;</strong> Not per API call. Per conversation. This is your unit economics question, and it comes directly from aggregating trace-level cost data across sessions. If you&#8217;re building pricing models or estimating margins, this number matters more than anything on your model provider&#8217;s invoice.</p><p><strong>&#8220;Which queries are going to the LLM when they shouldn&#8217;t be?&#8221;</strong> If you&#8217;ve built a hybrid stack with caching, rules-based routing, or tiered models (I covered this architecture in my <a href="/__u/aipmguru.substack.com/p/the-hybrid-chatbot-stack-when-to">hybrid chatbot post</a>), traces show you whether the routing is working. Maybe 40% of your queries are hitting your expensive model when they could have been handled by a cheaper one or a cached response.</p><p><strong>&#8220;Where are users dropping off mid-conversation?&#8221;</strong> If users ask one question and never come back, or abandon a multi-turn conversation at step 3, traces correlated with session data tell you where. Was the response too slow? Too generic? Did the model lose context?</p><p><strong>&#8220;How did last week&#8217;s prompt update affect quality?&#8221;</strong> This connects tracing back to evals. Your best eval test cases don&#8217;t come from synthetic examples you imagined at your desk. They come from real production queries that failed. Traces give you those failing examples, and you feed them back into your eval suite. That&#8217;s the iteration loop.</p><h2><strong>When You Need It (And When You Don&#8217;t)</strong></h2><p>Not every AI product needs full tracing from day one. I think about this as a maturity question.</p><p><strong>Just prototyping?</strong> Console testing and manual spot-checks are fine. Don&#8217;t over-invest in infrastructure you&#8217;ll probably rebuild anyway.</p><p>I&#8217;ll be honest: the first RAG pipeline I built for a course demo had zero instrumentation. When a student asked why it kept hallucinating product specs, I had to shrug and say, &#8220;Let me look at the prompts.&#8221; We spent 20 minutes manually reconstructing what the retrieval had probably returned. That&#8217;s when I started treating tracing as a day-one requirement, not a &#8220;we&#8217;ll add it later&#8221; item.</p><p><strong>Internal tool with a small user base?</strong> Basic logging (inputs, outputs, timestamps) might be enough. You can probably debug issues by just looking at recent queries.</p><p><strong>Production app with real users?</strong> You need tracing. Silent failures at scale are not debuggable with logs alone.</p><p><strong>Multi-step agent or RAG pipeline?</strong> You <em>really</em> need tracing. When you have 6+ steps in a pipeline, the combinatorial space of &#8220;what went wrong&#8221; gets unmanageable without span-level visibility.</p><p><strong>Regulated industry (healthcare, finance, legal)?</strong> Tracing isn&#8217;t optional. It&#8217;s your audit trail. You need to show exactly what the system did with each request and why.</p><p>The cost-complexity tradeoff is real. Most tracing tools charge per trace or per span. At scale (millions of requests), this becomes a meaningful line item. Some teams start by tracing 100% of requests in development, then sampling 10-20% in production, with full tracing triggered automatically for any request flagged by guardrails or receiving negative user feedback. That&#8217;s a reasonable starting point.</p><h2><strong>Where to Start with Tools</strong></h2><p>I&#8217;m not going to do a full comparison (the space moves fast). But if a student asked me which one to try first, here&#8217;s where I&#8217;d point them:</p><p><strong>If you want open-source and self-hostable:</strong> Start with <strong>Langfuse</strong>. It&#8217;s built on OpenTelemetry, which means you&#8217;re not locked into their ecosystem. You can self-host if you have data residency requirements, and the community is active.</p><p><strong>If your team is already building on LangChain:</strong> <strong>LangSmith</strong> has the tightest integration. The onboarding is fast because it understands your chain structure natively.</p><p><strong>If you&#8217;re already a Datadog shop:</strong> <strong>Datadog LLM Observability</strong> is the path of least resistance. Your LLM traces appear alongside your existing APM data, so you can correlate model latency with database queries or infrastructure issues without switching tools. Worth noting: LLM Observability requires an APM-enabled Datadog plan, so check your tier before assuming it&#8217;s included.</p><h2><strong>What&#8217;s Next</strong></h2><p>If you&#8217;ve already built evals, tracing is the natural next step. Evals confirm your system <em>can</em> do the job. Tracing confirms it <em>is</em> doing the job, request by request, in production.</p><p>Start simple. Instrument one pipeline. Look at 50 traces. I think you&#8217;ll immediately see patterns your evals missed: queries you never thought to test, retrieval failures you didn&#8217;t anticipate, cost hotspots you didn&#8217;t know existed.</p><p>And the next time someone asks, &#8220;Where did the hallucination come from?&#8221;, you&#8217;ll be able to pull up the trace, point to the span, and say, &#8220;Right here. The retrieval returned irrelevant documents at step 3. That&#8217;s what the model was working with.&#8221;</p><p>That&#8217;s a very different conversation than shrugging and saying &#8220;LLMs sometimes make things up.&#8221;</p><p><em>If you&#8217;ve shipped an LLM product, what&#8217;s the first thing tracing showed you that you couldn&#8217;t see before? Retrieval failures? Cost surprises? Users asking things you never anticipated? I&#8217;m curious what the first trace actually reveals in practice.</em></p>]]></content:encoded></item></channel></rss>