<?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[GrowAIth]]></title><description><![CDATA[Helping Network Engineers become Automation Experts using Python, Ansible & AI

Real scripts. Real problems. No fluff.]]></description><link>https://blog.growaith.com</link><image><url>https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png</url><title>GrowAIth</title><link>https://blog.growaith.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 16 May 2026 04:17:27 GMT</lastBuildDate><atom:link href="https://blog.growaith.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Anurudh]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[beyondnoisehq@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[beyondnoisehq@substack.com]]></itunes:email><itunes:name><![CDATA[Dubey]]></itunes:name></itunes:owner><itunes:author><![CDATA[Dubey]]></itunes:author><googleplay:owner><![CDATA[beyondnoisehq@substack.com]]></googleplay:owner><googleplay:email><![CDATA[beyondnoisehq@substack.com]]></googleplay:email><googleplay:author><![CDATA[Dubey]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[# Start Here: 30 Days of Network Automation]]></title><description><![CDATA[For a long time, I was doing everything manually.]]></description><link>https://blog.growaith.com/p/start-here-30-days-of-network-automation</link><guid isPermaLink="false">https://blog.growaith.com/p/start-here-30-days-of-network-automation</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Mon, 04 May 2026 09:37:57 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!FfGU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FfGU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FfGU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FfGU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:815905,&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://blog.growaith.com/i/196400607?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FfGU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FfGU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4209593-7702-4662-9a9d-4fa015e45bcd_2848x2848.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 role="img" 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><title></title><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>For a long time, I was doing everything manually.<br><br>Logging into one device&#8230; then the next&#8230; then the next.<br>Running the same commands. Fixing the same issues.<br>And every time, I thought &#8212; *this is just part of the job.*<br><br>But it started getting frustrating.<br><br>Not because the work was hard&#8230;<br>but because it was repetitive.<br><br>And deep down, I knew something wasn&#8217;t right.<br><br><br>One day, after spending hours doing something that felt like it should take minutes, I paused and asked myself:<br><br>*&#8220;Is this really the best way to do this?&#8221;*<br><br>That question stayed with me.<br><br>I didn&#8217;t suddenly become an automation expert overnight.<br><br>I started small.<br><br>One simple script.<br>Then another.<br>Then slowly&#8230; things began to change.<br><br>Tasks that used to take hours started taking minutes.<br>And more importantly &#8212; I started thinking differently.<br><br>Not like someone who executes tasks&#8230;<br>but like someone who builds systems.<br><br><br><strong>This series is just me sharing that journey.</strong><br><br>No big claims.<br>No &#8220;become expert in 24 hours&#8221; promises.<br><br>Just one small step every day.<br><br><strong>## What you&#8217;ll find here</strong><br><br>Every day, I&#8217;ll pick one real problem.<br><br>Something I&#8217;ve faced.<br>Something you&#8217;ve probably faced too.<br><br>And I&#8217;ll show how I approached it using automation.<br><br>Sometimes it&#8217;ll be simple.<br>Sometimes I&#8217;ll mess up and learn along the way.<br><br>But it&#8217;ll always be real.<br><br><strong>## Who this is for</strong><br><br>If you&#8217;re someone who:<br><br>* Feels stuck doing repetitive network tasks<br>* Knows automation is important but hasn&#8217;t started yet<br>* Wants to move beyond just running commands<br><br>Then you&#8217;ll feel at home here.<br><br><strong>## How to follow this</strong><br><br>Don&#8217;t overthink it.<br><br>Start from Day 1.<br>Spend a little time with each post.<br>Even if you don&#8217;t understand everything &#8212; that&#8217;s okay.<br><br>Just stay with it.</p><p><br><strong>## The plan</strong><br><br>30 days.<br>30 small steps.<br>That&#8217;s it.<br><br>No pressure to be perfect.<br><br><strong>## Start here</strong><br><br>&#128073; Day 1: Coming Soon !!<br>&#128073; Day 2: <br><br>(I&#8217;ll keep updating this as we go)<br><br><br>If you decide to follow along&#8230;<br><br>just know this:<br><br>You don&#8217;t need to have everything figured out.You just need to start.---<br><br>See you in Day 1.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Transformer: What’s Actually Inside ChatGPT]]></title><description><![CDATA[A simple way to understand the engine behind everything]]></description><link>https://blog.growaith.com/p/the-transformer-whats-actually-inside</link><guid isPermaLink="false">https://blog.growaith.com/p/the-transformer-whats-actually-inside</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 26 Apr 2026 08:47:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6dXL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6dXL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6dXL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 424w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 848w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 1272w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6dXL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png" width="502" height="463" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:463,&quot;width&quot;:502,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:14838,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6dXL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 424w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 848w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.png 1272w, https://substackcdn.com/image/fetch/$s_!6dXL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F645aa65a-acee-4d0c-81d0-6724cac46635_502x463.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 role="img" 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><title></title><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>LLMs for Engineers &#8212; Part 5</strong></p><p>So far in this series, we&#8217;ve broken things down step by step. We started with where the data comes from, then saw how text becomes tokens, and then understood how the model predicts the next token again and again. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;273b1f35-3732-49bf-bb84-52a0eadf682a&quot;,&quot;caption&quot;:&quot;LLMs for Engineers &#8212; Part 4&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How ChatGPT Actually Generates Answers (It&#8217;s Not What You Think)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Dubey&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18de547c-5819-4b94-a6ac-a3702e9d1058_1024x1024.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-04-05T16:39:37.711Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!LbDZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.growaith.com/p/how-chatgpt-actually-generates-answers&quot;,&quot;section_name&quot;:&quot;&#129302; AI ML Notes&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:193265768,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4712004,&quot;publication_name&quot;:&quot;GrowAIth&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!3Yu8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>At this point, you already know how the system behaves from the outside. But there is still one big missing piece .What is actually inside the model that makes all of this possible?</p><p>If we simplify everything, we can think of the model as a function. You give it a sequence of tokens, and it gives you probabilities for the next token. That&#8217;s the behavior we discussed earlier. But that function is not magic. It has a structure, and that structure is what we call a transformer.</p><p>Before transformers came into the picture, models used to process text step by step. They would read one word, then the next, and then the next. This worked, but it had clear limitations. It was slow, and more importantly, it struggled to handle long sequences. If something important appeared earlier in a sentence, the model would often lose track of it by the time it reached the end.</p><p>Transformers changed this completely by introducing a different way of looking at text. Instead of processing words one by one, they look at the entire sequence at the same time. This might sound simple, but it is a big shift. It means the model doesn&#8217;t have to &#8220;remember&#8221; things in the same way. It can directly look at any part of the input whenever it needs to.</p><p>To make this more concrete, think about a sentence like &#8220;the router that connects to the core switch is down&#8221;. When you read this, you naturally understand that &#8220;is down&#8221; refers to the router, not the switch. You connect different parts of the sentence without even thinking about it. The transformer is designed to do something similar, but using numbers.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ze8C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ze8C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 424w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 848w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 1272w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ze8C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png" width="430" height="214" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:214,&quot;width&quot;:430,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:137639,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ze8C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 424w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 848w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 1272w, https://substackcdn.com/image/fetch/$s_!ze8C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ecafa49-c979-4f32-9378-da9d9bf1caee_430x214.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This is where the idea of attention comes in. Attention is the core mechanism inside a transformer. In simple terms, it means that for every token in the sequence, the model looks at all the other tokens and decides which ones are important. Not all tokens contribute equally. Some carry more useful information for the current prediction, and the model learns to focus on those.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WPK3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WPK3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 424w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 848w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 1272w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WPK3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png" width="390" height="357" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:357,&quot;width&quot;:390,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:160574,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WPK3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 424w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 848w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.png 1272w, https://substackcdn.com/image/fetch/$s_!WPK3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e1959d5-152f-4c4e-a1c6-d010e6e28777_390x357.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 role="img" 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><title></title><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><p>You can think of it like this. Each token is asking a question: &#8220;which other tokens should I pay attention to right now?&#8221; The model then assigns weights to all the tokens based on their importance. Tokens that matter more get higher weights, and those that matter less get lower weights. This creates a web of relationships across the entire sequence.</p><p>Once these relationships are established, the information flows through multiple layers inside the transformer. Each layer refines the representation a little more. At the beginning, the model might only capture very basic patterns. As we go deeper into the layers, it starts capturing more complex relationships and context. By the time we reach the final layers, the model has built a rich internal representation of the input sequence.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LF5L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LF5L!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 424w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 848w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 1272w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LF5L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png" width="376" height="361" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/def9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:361,&quot;width&quot;:376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154113,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LF5L!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 424w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 848w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.png 1272w, https://substackcdn.com/image/fetch/$s_!LF5L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdef9e2f8-a00f-47d8-8667-d63be04a2ac8_376x361.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 role="img" 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><title></title><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><p>From there, the process is similar to what we discussed in the previous post. The model takes this refined representation and produces probabilities for the next token. So even though the core task is still next-token prediction, the transformer makes that prediction much more informed by understanding how tokens relate to each other.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!s1gA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!s1gA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 424w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 848w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 1272w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!s1gA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png" width="549" height="358" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f517bcc8-55f6-42f0-9681-a6551837b531_549x358.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:358,&quot;width&quot;:549,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:200960,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!s1gA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 424w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 848w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.png 1272w, https://substackcdn.com/image/fetch/$s_!s1gA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff517bcc8-55f6-42f0-9681-a6551837b531_549x358.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 role="img" 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><title></title><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><p>One way to think about the transformer is that it allows every token to interact with every other token. Instead of a straight line where information flows from left to right, it creates a fully connected view of the sequence. This is why it works so well for language, where meaning often depends on relationships between words that may be far apart.</p><p>At this point, it&#8217;s important to remember something we&#8217;ve said before. Even with all this complexity, the model is not actually &#8220;understanding&#8221; language the way humans do. It is still working with numbers and patterns. What the transformer gives us is a much better way to capture those patterns, especially when context matters.</p><p>If you connect this back to the earlier posts, the full picture becomes clearer. We start with tokens, feed them into the transformer, use attention and layers to build relationships, and finally produce probabilities for the next token. That output is then sampled and added back into the sequence, and the process repeats.</p><p></p><p>So while the behavior of ChatGPT might feel complex from the outside, the core idea remains consistent. It is still predicting the next token, one step at a time. The transformer is simply the reason those predictions are so good.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AOFC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AOFC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 424w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 848w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 1272w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AOFC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png" width="544" height="370" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09665ecc-5afe-4105-955f-4bad98a14087_544x370.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:370,&quot;width&quot;:544,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:204221,&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://blog.growaith.com/i/195506349?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AOFC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 424w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 848w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.png 1272w, https://substackcdn.com/image/fetch/$s_!AOFC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09665ecc-5afe-4105-955f-4bad98a14087_544x370.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 role="img" 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><title></title><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>Simple network architecture, the <em><strong>Transformer</strong></em> Link for reference </p><p>https://arxiv.org/abs/1706.03762</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Notes on Network Automation !!!]]></title><description><![CDATA[A simple misconfiguration can took down hundreds of devices, and it changed how we think about CLI, automation, and scaling networks.]]></description><link>https://blog.growaith.com/p/notes-on-network-automation</link><guid isPermaLink="false">https://blog.growaith.com/p/notes-on-network-automation</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Mon, 20 Apr 2026 18:39:34 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!txxK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!txxK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!txxK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!txxK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!txxK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!txxK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!txxK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2313009,&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://blog.growaith.com/i/194828129?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!txxK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!txxK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!txxK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!txxK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83699d11-1dd1-4740-82ad-d9349b59d313_1536x1024.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 role="img" 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><title></title><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><p>This week I spent some time going through network automation basics. Not deeply, just trying to understand what problem we are actually solving. I was not focusing on tools yet. More on the &#8220;why&#8221; behind all of this.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>I would like to start with one of the scenerio where a retail network with around 500 stores had a full outage during what was supposed to be a routine change.</p><p>Everything was managed through CLI. During a security update, an ACL was pushed manually across devices. The configuration itself was not complex, but the order was wrong. A deny all rule was placed before the permit rules.</p><p>That was enough to stop traffic everywhere.</p><p>At first, it looks like a simple mistake. Someone configured it wrong. But after thinking about it for a while, it did not feel like just a human error. It felt more like a system problem.</p><p>Because one small mistake should not be able to take down an entire network like that.</p><p>That only happens when the same action is repeated manually across a large number of devices without any real validation in between. The mistake itself was small, but the way it was applied made it big</p><h3>Where CLI Starts Feeling Uncomfortable</h3><p>Most networks still run on CLI. Login via SSH , run commands, check output , move to enxt devcie .That is how things are done</p><p>But when the number of devices increases, something starts to feel off. Not immediately, but gradually. You spend more time repeating steps than actually thinking about what you are doing. It becomes mechanical.</p><p>And the more repetitive it gets, the more it depends on you not making a mistake.</p><p>That is the part that does not scale.</p><p>It is not about effort. It is about consistency. Doing the same thing correctly, every single time, across hundreds of devices. That is harder than it sounds.</p><h3><strong>First Thought Was, Just Automate It with Python</strong></h3><p>Naturally, the next thought was scripting.</p><p>Connect to devices, send commands, capture output. It feels like a direct upgrade from CLI. Same workflow, just automated.</p><p>This is probably why most people start here. It feels familiar and you can get something working quickly.</p><p>But after looking into it a bit more, there is something slightly uncomfortable about it.</p><p>You are still dealing with text.</p><div><hr></div><p>The commands are text. The output is text. Everything depends on how that text looks.</p><p>And that is not stable.</p><p>A small change in output format can break everything. The information is still there, just displayed differently. That is enough for parsing logic to fail.</p><p>I had not really thought about this before. From a human perspective, the output still makes sense. From a script&#8217;s perspective, it can completely break.</p><p>So now instead of manually checking output, you are writing logic to interpret it. Which adds another layer that can go wrong.</p><p>It works, but it does not feel reliable when you think about scaling it.</p><div><hr></div><h3><strong>APIs Felt Cleaner, But Took Time to Click</strong></h3><p>Then I looked at NETCONF and RESTCONF.</p><p>At first, it was not immediately clear why this was better. It just looked like another way of doing the same thing.</p><p>But after spending some time with it, the difference started to make sense.</p><p>Instead of sending commands, you are sending structured data. Instead of parsing output, you are receiving structured responses.</p><p>JSON or XML.</p><div><hr></div><p>This changes things in a better way.</p><p>You are no longer guessing where the data is. You are accessing it directly.</p><p>Error handling also becomes clearer. You are not searching for keywords in output, you are reading defined responses.</p><p>It feels more predictable.</p><p>Still, not everything is available via API. So CLI does not disappear. It just becomes one option among others.</p><div><hr></div><h3><strong>Ansible and Terraform Were Not Obvious at First</strong></h3><p>This part honestly took me some time. Because it is not just a tool difference. It is a thinking difference.</p><p>Earlier the approach was always step by step. Run this command. Then this. Then check. Now it becomes something else. You define what should exist.</p><div><hr></div><p>For example, instead of writing steps to create a VLAN, you just say VLAN 10 should be there.</p><p>The system figures out whether it needs to create it or not.</p><p>This felt strange initially. I kept thinking in steps, so this did not click immediately.</p><p>But after a while, it started to make sense.</p><p>You are not managing execution anymore. You are defining intent.</p><div><hr></div><p>There is also this concept of idempotency, which sounds complex but is actually simple.</p><p>Running the same thing again should not change anything unnecessarily.</p><p>That turns out to be very important when you are dealing with repeated operations.</p><div><hr></div><p>Terraform goes a bit further.</p><p>It keeps track of what already exists and compares it with what you want. Then it calculates what needs to change.</p><p>That makes things more predictable. You can see changes before applying them.</p><p>It feels closer to managing a system rather than running commands on devices.</p><div><hr></div><h3><strong>Controllers Felt Powerful, But Also Slightly Distant</strong></h3><p>Then I looked at controller-based platforms.This is where you stop thinking about devices directly.</p><p>You define something like creating a network across multiple locations, and the system handles the rest.</p><div><hr></div><p>This looks powerful, especially at scale.But it also feels a bit distant from what is actually happening underneath.</p><p>You are relying on the platform to do the right thing.</p><p>And while that works for standard use cases, I am not sure how it behaves in edge scenarios.</p><p>There is also dependency on the vendor, which changes how flexible your setup is.</p><p>So it feels useful, but not something that replaces everything else.</p><div><hr></div><h3><strong>What I Thought Initially vs What I Think Now</strong></h3><p>Initially, I was trying to figure out which tool is best. That question does not really make sense anymore.</p><p>Each approach solves a different part of the problem. </p><p>&#8594; CLI is simple but fragile at scale<br>&#8594; Python scripting gives control but depends on parsing<br>&#8594; APIs make things structured<br>&#8594; Ansible and Terraform improve consistency<br>&#8594; Controllers simplify large environments</p><div><hr></div><p>It is not about picking one.</p><p>It is about understanding where each one fits.</p><div><hr></div><h3><strong>What Actually Stayed With Me</strong></h3><p>Automation, at least from what I understand now, is not about doing things faster.</p><p>It is about making sure the same thing happens correctly every time.</p><p>Especially when the system grows.</p><div><hr></div><h3><strong>What I Am Doing Next</strong></h3><p>Right now I am not jumping into complex automation setups.</p><p>Still trying to get basics right. Python network fundamentals<br>simple scripts</p><p>Trying to understand things properly before layering more complexity.</p><div><hr></div><h3><strong>Closing Thought</strong></h3><p>I am still figuring things out. But one thing feels clear.</p><p>Manual processes do not fail immediately. They fail when they scale.</p><h3></h3><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[How ChatGPT Actually Generates Answers (It’s Not What You Think)]]></title><description><![CDATA[A deep dive into the core engine behind LLMs]]></description><link>https://blog.growaith.com/p/how-chatgpt-actually-generates-answers</link><guid isPermaLink="false">https://blog.growaith.com/p/how-chatgpt-actually-generates-answers</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 05 Apr 2026 16:39:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LbDZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Q4r2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Q4r2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 424w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 848w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 1272w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Q4r2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png" width="662" height="273" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:273,&quot;width&quot;:662,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Q4r2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 424w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 848w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.png 1272w, https://substackcdn.com/image/fetch/$s_!Q4r2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8315d5f1-e8bf-4368-9241-e9bbe22ef0d1_662x273.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 role="img" 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><title></title><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>LLMs for Engineers &#8212; Part 4 </strong></p><p>So far in this series, we&#8217;ve talked about where the data comes from and how text gets converted into tokens. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;5e16d034-de32-459b-90dd-eefd4f386070&quot;,&quot;caption&quot;:&quot;LLMs for Engineers &#8212; Part 3Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How AI Actually Reads Text (It Doesn&#8217;t See Words)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6fa464f-9ae2-472e-99b0-78fd602456c3_388x388.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-04-05T12:47:21.761Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!_p4q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.growaith.com/p/how-ai-actually-reads-text-it-doesnt&quot;,&quot;section_name&quot;:&quot;&#129302; AI ML Notes&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:193248497,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4712004,&quot;publication_name&quot;:&quot;GrowAIth&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!3Yu8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>That gives us the raw ingredients, but it still doesn&#8217;t explain the most important part how the model actually learns from all of this and how it ends up generating responses that feel surprisingly intelligent. If you strip everything away, what remains is a very simple objective, but one that becomes incredibly powerful at scale . The model is trained to predict what comes next.</p><p>To understand this properly, it helps to change how you think about the data. Instead of imagining documents, web pages, or structured knowledge, it&#8217;s better to think of the entire training dataset as one long continuous stream of tokens. There are no real boundaries in the way the model sees it is just sequences of numbers flowing endlessly.</p><p> In large systems, this stream can be on the order of trillions of tokens, but conceptually, it&#8217;s just a sequence where each token follows another. The model&#8217;s job is to observe this stream and learn the patterns that govern how tokens tend to follow each other.</p><p>Now imagine we take a small slice of this stream. For example, something like &#8220;router sends data packet&#8221;. </p><pre><code><code>[router, sends, data, packet]</code></code></pre><p>This slice is what we call the context. The training task is surprisingly straightforward: given this context, predict the next token. In this case, a reasonable continuation might be &#8220;forward&#8221;. </p><p>But instead of directly outputting the word &#8220;forward&#8221;, the model produces a probability distribution over all possible tokens in its vocabulary. So it might assign a higher probability to &#8220;forward&#8221;, a slightly lower probability to &#8220;drop&#8221;, and smaller probabilities to many other tokens. At the beginning of training, these probabilities are essentially random because the model hasn&#8217;t learned anything yet.</p><p>At this point, it helps to pause and visualize what is actually happening. The entire learning process can be reduced to a simple flow  a sequence goes in, probabilities come out, and the model moves  toward the correct answer.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ja0f!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ja0f!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 424w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 848w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 1272w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ja0f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png" width="684" height="274" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:274,&quot;width&quot;:684,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&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="" srcset="https://substackcdn.com/image/fetch/$s_!ja0f!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 424w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 848w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.png 1272w, https://substackcdn.com/image/fetch/$s_!ja0f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69d2d6d-5e46-473e-804f-d45830ce0976_684x274.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 role="img" 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><title></title><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>If you look at the  diagram, you can see exactly what we just described. A sequence of tokens such as &#8220;router sends data packet&#8221; is fed into the neural network, which then produces probabilities for the next token. The correct answer  in this case &#8220;forward&#8221; is already known from the dataset, and the model is adjusted so that its probability increases. This process is repeated over and over again, across massive amounts of data, gradually shaping the model&#8217;s internal parameters.</p><p>This is where the learning actually happens. Since we already know the correct next token from the dataset, we can compare the model&#8217;s prediction with the actual answer. If the model assigned a low probability to the correct token, we adjust its internal parameters slightly to increase that probability and decrease the probabilities of incorrect tokens. The adjustment itself is very small, almost negligible in isolation, but when you repeat this process across millions of sequences and eventually trillions of tokens, the model begins to capture meaningful structure in the data.</p><p>What&#8217;s important here is that the model is not learning rules in the traditional sense. It is not explicitly told that routers forward packets or that certain facts must always hold true. Instead, it is learning statistical relationships between tokens based on how frequently they appear together. If a particular sequence shows up often enough, the model encodes that relationship into its parameters. Over time, these relationships become strong enough that the model&#8217;s predictions start to look intelligent, even though they are fundamentally based on probabilities.</p><p>If we look inside the model, things become more mathematical but not necessarily more mysterious. At its core, the model is simply a function that maps input tokens to output probabilities. Internally, this involves a series of matrix multiplications, additions, and nonlinear transformations applied across many layers. The behavior of this function is controlled by its parameters often billions of them  which are adjusted during training. You can think of these parameters as knobs that are gradually tuned so that the model produces better predictions over time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cmbW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cmbW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 424w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 848w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 1272w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cmbW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png" width="748" height="289" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:289,&quot;width&quot;:748,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&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="" srcset="https://substackcdn.com/image/fetch/$s_!cmbW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 424w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 848w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.png 1272w, https://substackcdn.com/image/fetch/$s_!cmbW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38979a05-85b7-46b6-97ae-586e223a2d53_748x289.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 role="img" 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><title></title><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>Once training is complete, the model stops learning and switches to what we call inference, which is what happens when you interact with it. Suppose you type &#8220;router sends data&#8221;. The model processes this input and predicts a probability distribution for the next token. It might assign high probability to &#8220;packet&#8221;, but instead of always choosing the highest probability token, the model samples from this distribution. This introduces a controlled amount of randomness, allowing the model to produce more varied and natural responses.</p><p>Again, it helps to visualize what is happening during generation. The diagram shows this process clearly. Instead of updating the model, we now repeatedly feed the growing sequence back into the network and sample one token at a time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LbDZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LbDZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 424w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 848w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 1272w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LbDZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png" width="622" height="325" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:325,&quot;width&quot;:622,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&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="" srcset="https://substackcdn.com/image/fetch/$s_!LbDZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 424w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 848w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.png 1272w, https://substackcdn.com/image/fetch/$s_!LbDZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff524e0e7-98a0-46fb-8904-4f2126dcde7c_622x325.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 role="img" 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><title></title><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>Each step looks simple in isolation, but together they form a loop. The model takes the current sequence, predicts the next token, appends it, and then repeats the process. So &#8220;router sends data&#8221; becomes &#8220;router sends data packet&#8221;, then &#8220;router sends data packet forward&#8221;, and so on. What looks like a complete sentence to us is actually built one token at a time through this iterative process.</p><p>This also explains many of the behaviors people observe when using models like ChatGPT. Because the model is generating text based on probabilities rather than verifying facts, it can sometimes produce outputs that sound confident but are incorrect. Similarly, because sampling introduces randomness, the same input can lead to slightly different outputs on different runs. These are natural consequences of how the system works, not anomalies.</p><p>One useful way to think about the model is as a compressed representation of the data it was trained on. It doesn&#8217;t store exact copies of the internet, but it captures patterns in a highly condensed form within its parameters. When generating text, it reconstructs these patterns in new combinations, which is why it can produce both familiar and novel outputs.</p><p>If there&#8217;s one idea to take away from all of this, it&#8217;s that ChatGPT is fundamentally a next-token prediction system operating over sequences of tokens. Everything else the fluency, the apparent reasoning, and the usefulness emerges from this simple mechanism applied at massive scale. Once you internalize this, many of the behaviors of large language models start to make much more sense.</p><p>In the next post, we&#8217;ll build on this foundation and explore how a base model, which is essentially just a next-token predictor, gets transformed into something that behaves like an assistant &#8212; following instructions, answering questions, and interacting in a helpful way. That&#8217;s where alignment and post-training come into the picture, and it&#8217;s what turns a raw model into something like ChatGPT.</p><p>Smiles :)</p><p>Anurudh</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[How AI Actually Reads Text (It Doesn’t See Words)]]></title><description><![CDATA[A simple way to understand what really goes inside the model]]></description><link>https://blog.growaith.com/p/how-ai-actually-reads-text-it-doesnt</link><guid isPermaLink="false">https://blog.growaith.com/p/how-ai-actually-reads-text-it-doesnt</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 05 Apr 2026 12:47:21 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_p4q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_p4q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_p4q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_p4q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:746887,&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://blog.growaith.com/i/193248497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_p4q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!_p4q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f52e20c-5471-4d8f-a080-dc14f0cc312b_1536x1024.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 role="img" 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><title></title><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><p>LLMs for Engineers &#8212; Part 3</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Welcome back to our LLM Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.</p><p>So far, we&#8217;ve seen:</p><ul><li><p>ChatGPT predicts the next word</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;f9617b04-3d1d-4462-96e8-e76f7a4d18bc&quot;,&quot;caption&quot;:&quot;LLMs for Engineers - Part 1&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;What&#8217;s Actually Behind ChatGPT? &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6fa464f-9ae2-472e-99b0-78fd602456c3_388x388.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-03-29T17:09:20.959Z&quot;,&quot;cover_image&quot;:null,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.growaith.com/p/whats-actually-behind-chatgpt&quot;,&quot;section_name&quot;:&quot;&#129302; AI ML Notes&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:192520345,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4712004,&quot;publication_name&quot;:&quot;GrowAIth&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!3Yu8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div></li><li><p>It learns from internet-scale data</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;6ce9378f-2091-439d-ae07-bb35c381e5d1&quot;,&quot;caption&quot;:&quot;LLMs for Engineers &#8212; Part 2&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Where ChatGPT Actually Learns From &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6fa464f-9ae2-472e-99b0-78fd602456c3_388x388.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-03-29T17:39:17.994Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!COgR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe4a853bc-3b3c-4f0b-8c1a-ae1c41c1edfa_458x311.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.growaith.com/p/where-chatgpt-actually-learns-from&quot;,&quot;section_name&quot;:&quot;&#129302; AI ML Notes&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:192526782,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4712004,&quot;publication_name&quot;:&quot;GrowAIth&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!3Yu8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div></li></ul><p>Most of us assume that AI reads text the same way we do. We see words, sentences, and meaning. So it&#8217;s natural to think that models like ChatGPT also process language in a similar way.</p><p>But that&#8217;s not what&#8217;s happening at all.</p><p>In fact, the model doesn&#8217;t see words. It doesn&#8217;t see sentences either. What it actually sees is something much more basic  numbers.</p><p>To understand this properly, it helps to zoom in a bit.</p><p>Take a simple sentence like &#8220;router sends data&#8221;. When you read it, you instantly understand what it means. But a computer can&#8217;t work with text directly. The first thing it does is convert everything into a numerical form. At the lowest level, this means turning characters into bytes, and bytes into numbers. So even before we talk about AI, the sentence is already transformed into a long sequence of numbers.</p><p>Now here&#8217;s the problem. If we keep everything at the character or byte level, the sequence becomes very long and inefficient. And in models like these, sequence length matters a lot. Longer sequences mean more computation, more cost, and slower processing. So we need a better way to represent text.</p><p>This is where tokenization comes in.</p><p>Instead of working with individual characters, the model groups pieces of text into units called tokens. You can think of tokens as chunks of text that are more efficient to work with. Sometimes a token is a full word, sometimes it&#8217;s part of a word, and sometimes it even includes spaces or punctuation.</p><p>For example, the sentence &#8220;router sends data&#8221; might be broken into tokens like:</p><pre><code><code>[router, sends, data]</code></code></pre><p>Each of these tokens is then mapped to a unique number. So what the model actually sees is not the words themselves, but something like:</p><pre><code><code>[1532, 8471, 2983]
</code></code></pre><p>These numbers are just IDs. They don&#8217;t carry meaning by themselves. They are simply a way to represent text in a format the model can process.</p><p>At this point, it might feel like we&#8217;re losing information, but we&#8217;re actually making things more efficient. By using tokens, we reduce the length of the sequence while still keeping important patterns intact. Common patterns like &#8220;data&#8221;, &#8220;packet&#8221;, or &#8220;forward&#8221; can become single tokens, while rare or complex words can be broken into smaller pieces. This balance is what makes tokenization powerful.</p><p>A natural question here is: how does the model decide what becomes a token?</p><p>The idea is surprisingly simple. We look at large amounts of text and find patterns that appear frequently. If certain combinations of characters show up again and again, we merge them into a single token. Over time, this builds a vocabulary of tokens that covers common patterns in language. This process is often done using methods like Byte Pair Encoding, but you don&#8217;t need to worry about the details. The key idea is that tokens are designed to make text both compact and flexible.</p><p>If you want to really understand this, it helps to try it yourself once.</p><p>Go to:</p><p>&#128073; </p><p>https://tiktokenizer.vercel.app/?model=cl100k_base</p><p>Type something simple like &#8220;router sends data&#8221;.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LBWt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LBWt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 424w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 848w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 1272w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LBWt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png" width="1456" height="628" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:628,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:31021,&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://blog.growaith.com/i/193248497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LBWt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 424w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 848w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.png 1272w, https://substackcdn.com/image/fetch/$s_!LBWt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5f579d5-3e06-430c-9cfd-c1d51968028d_1720x742.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 role="img" 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><title></title><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><p>Now try small changes. Add an extra space. Change the case. Add punctuation. You&#8217;ll notice that the tokens change. Sometimes even a tiny change in text leads to a completely different token sequence.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mxHH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mxHH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 424w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 848w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 1272w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mxHH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png" width="1456" height="606" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:606,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:34815,&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://blog.growaith.com/i/193248497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mxHH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 424w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 848w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.png 1272w, https://substackcdn.com/image/fetch/$s_!mxHH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F574fb559-9f89-4652-b6c4-12a4c9290a96_1789x745.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 role="img" 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><title></title><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 is an important moment.</p><p>Because what you type is not what the model sees.</p><p>The model only sees tokens.</p><p>That means when you change your prompt  even slightly ,you are actually changing the sequence of tokens going into the model. And that can change the output.</p><p>This explains a lot of things people notice when using AI. Why small wording changes affect responses. Why formatting matters. Why sometimes adding or removing a word changes everything. It&#8217;s all happening at the token level.</p><p>If you like networking analogies, you can think of this like packetization. Before sending data over a network, we break it into packets. Here, before feeding text into a model, we break it into tokens. The model doesn&#8217;t see the original message it sees the encoded form.</p><p>So when you write a prompt, you&#8217;re not really writing for a human. You&#8217;re designing a sequence of tokens for a machine.</p><p>And that sequence is what drives everything that comes next.</p><p>In the next post, we&#8217;ll build on this idea and see what the model actually does with these tokens. Because once text becomes tokens, the next step is where the real magic &#8212; or more accurately, the math &#8212; begins.</p>]]></content:encoded></item><item><title><![CDATA[Where ChatGPT Actually Learns From ]]></title><description><![CDATA[A simple look at the data behind AI]]></description><link>https://blog.growaith.com/p/where-chatgpt-actually-learns-from</link><guid isPermaLink="false">https://blog.growaith.com/p/where-chatgpt-actually-learns-from</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 29 Mar 2026 17:39:17 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!URW2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!URW2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!URW2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!URW2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!URW2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!URW2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!URW2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1688422,&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://blog.growaith.com/i/192526782?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!URW2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!URW2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!URW2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!URW2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d601e0a-1d5c-43cb-89db-f3df377880a0_1536x1024.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 role="img" 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><title></title><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>LLMs for Engineers &#8212; Part 2</strong></p><p>In the last post, we uncovered something surprising:</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;bae6d8a3-6a99-4cd1-af6e-867a0a62206e&quot;,&quot;caption&quot;:&quot;LLMs for Engineers - Part 1&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;What&#8217;s Actually Behind ChatGPT? &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6fa464f-9ae2-472e-99b0-78fd602456c3_388x388.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-03-29T17:09:20.959Z&quot;,&quot;cover_image&quot;:null,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.growaith.com/p/whats-actually-behind-chatgpt&quot;,&quot;section_name&quot;:&quot;&#129302; AI ML Notes&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:192520345,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4712004,&quot;publication_name&quot;:&quot;GrowAIth&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!3Yu8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><blockquote><p>ChatGPT is just predicting the next word.</p></blockquote><p>When people first hear about ChatGPT, one of the most common questions is this: where does it actually learn all of this from? It can answer questions, explain concepts, write code, and even sound conversational. So it&#8217;s natural to assume there must be some kind of structured knowledge base behind it.</p><p>But that&#8217;s not really how it works.</p><p>At its core, the model learns from a massive amount of text data. Not neatly organized knowledge, not curated lessons, but raw text collected from across the internet. This includes things like articles, blogs, forums, documentation, and code. The idea is simple &#8212; if you expose a model to enough examples of how language is used, it can start picking up patterns. And once it learns those patterns, it can generate similar text on its own.</p><p>But this doesn&#8217;t mean the model is just blindly copying the internet. The process is more structured than that.</p><p>A large part of this data comes from datasets like Common Crawl, which has been collecting web data for years. You can think of it like a system that starts from a set of websites, follows links, and keeps collecting content along the way. Over time, it builds a huge snapshot of the web. But this raw data is messy. It contains everything &#8212;useful content, ads, broken pages, scripts, and a lot of noise.</p><p>So before any training happens, this data goes through heavy cleaning.</p><p>At this point, it helps to think about what we actually want the model to learn from. If we feed it entire web pages as they are, it will learn patterns from things we don&#8217;t care about  navigation menus, pop-ups, or random scripts. That&#8217;s not useful. So the first step is filtering out bad or irrelevant sources. Websites that are spammy, unsafe, or low quality are removed early on.</p><p>Once that is done, the next step is extracting the main content. This means stripping away all the extra parts of a webpage and keeping only the meaningful text. If you&#8217;ve ever used a &#8220;reader mode&#8221; in your browser, it&#8217;s a similar idea. We only want the actual content, not the surrounding clutter.</p><p>After that comes language filtering. Since most large models are trained primarily on English, the system checks whether the text is mostly in English. If a page doesn&#8217;t meet a certain threshold, it might be excluded. This step directly affects what languages the model becomes good at.</p><p>Then comes deduplication, which is more important than it sounds. The internet has a lot of repeated content copied articles, mirrored pages, or slight variations of the same text. If the model sees the same thing again and again, it doesn&#8217;t learn anything new. So duplicates are removed to make the dataset more useful.</p><p>Finally, there is filtering for sensitive information. Things like personal data, phone numbers, or credit card details are removed. This step is important for safety and privacy.</p><p>If you step back and look at all this, the process is actually quite logical. We start with a huge amount of raw data, then clean it step by step until we are left with mostly useful text. What remains is not perfect, but it&#8217;s good enough for the model to learn patterns from.</p><p>Even after all this filtering, the dataset is still enormous. We are talking about tens of terabytes of text. That&#8217;s far beyond what any human could read in a lifetime. And that scale is what makes these models powerful. The more data they see, the better they get at capturing how language works. </p><p>But here&#8217;s an important point that is easy to miss.</p><p>The model is not learning facts in the way we think. It is not storing information like a database. Instead, it is learning patterns in how words and sentences are used. If something appears frequently in the data, the model becomes more likely to generate it. If something is rare or inconsistent, the model is less confident about it.</p><p>So when you ask a question, the model is not retrieving an answer from memory. It is generating a response based on patterns it has learned from all this data.</p><p>That&#8217;s a subtle but very important difference.</p><p>You can think of this entire process as building the &#8220;experience&#8221; of the model. Just like humans learn language by reading and listening over time, the model learns by seeing massive amounts of text. The difference is scale ,the model sees far more data than any human ever could.</p><p>And this is just the first stage.</p><p>Because even after learning from all this data, the model is still not ChatGPT yet. It has learned patterns, but it doesn&#8217;t know how to behave like an assistant. That part comes later.</p><p>In the next post, we&#8217;ll zoom in further and understand how this text is actually represented inside the model. Because before the model can learn patterns, it needs to convert everything into a form it can work with.</p><p>And that&#8217;s where tokens come in.</p><p>Smiles :)</p><p>Anurudh</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[What’s Actually Behind ChatGPT? ]]></title><description><![CDATA[It&#8217;s not intelligence. It&#8217;s something simpler.]]></description><link>https://blog.growaith.com/p/whats-actually-behind-chatgpt</link><guid isPermaLink="false">https://blog.growaith.com/p/whats-actually-behind-chatgpt</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 29 Mar 2026 17:09:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!s5SG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!s5SG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 424w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 848w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 1272w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!s5SG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png" width="728" height="66.73972602739725" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:87,&quot;width&quot;:949,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:3840,&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://blog.growaith.com/i/192520345?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!s5SG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 424w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 848w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 1272w, https://substackcdn.com/image/fetch/$s_!s5SG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fcd0a74-05f9-4505-bc78-ee69bb42b5b6_949x87.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p><strong>LLMs for Engineers &#8212; Part 1</strong></p><p>When you first use ChatGPT, it feels a bit strange.</p><p>You ask a question, and it replies almost instantly. Not just with random text, but with something that feels structured, confident, and often surprisingly accurate. It explains things clearly, writes code, fixes errors, and even sounds conversational.</p><p>At some point, a natural question comes up.</p><p>&#128073; <em>What is actually going on behind this?</em></p><p>Is it thinking?<br>Does it understand what I&#8217;m saying?<br>Is there some kind of intelligence inside?</p><div><hr></div><p>The surprising answer is&#8230; not really.</p><p>Or at least, not in the way we usually think about intelligence.</p><div><hr></div><p>What ChatGPT is doing at its core is much simpler than it appears. It is not searching the internet in real time. It is not looking up answers in a database. And it is not reasoning like a human sitting across from you.</p><p>Instead, it has learned patterns from a massive amount of text and uses those patterns to generate responses. In fact, one of the simplest ways to describe what it does is this:</p><p>&#128073; It tries to predict what should come next in a piece of text. </p><p>That&#8217;s it.</p><div><hr></div><p>Now this might sound almost too simple.</p><p>How can something that just &#8220;predicts the next word&#8221; write essays, explain concepts, or answer questions?</p><p>The answer lies in scale.</p><p>The model has seen an enormous amount of text  articles, documentation, conversations, code, and more. Over time, it has learned how language usually flows. So when you give it a prompt, it doesn&#8217;t &#8220;think&#8221; about the answer. It continues the pattern in a way that looks correct.</p><p>You can imagine it like this.</p><p>If you had read millions of examples of how people explain something, you would also get very good at continuing those explanations. You might not know the exact source of every fact, but you would still be able to produce something that sounds right.</p><p>That&#8217;s roughly what&#8217;s happening here.</p><div><hr></div><p>This also explains something important.</p><p>Sometimes ChatGPT gives answers that sound very confident&#8230; but are not fully correct. That&#8217;s because it is not verifying facts. It is generating what is most likely to come next based on patterns it has learned.</p><p>So in a way, you are not talking to a system that &#8220;knows&#8221; things.</p><p>You are interacting with a system that is very good at <strong>producing language that looks like knowledge</strong>.</p><div><hr></div><p>At this point, things start to look different.</p><p>It stops feeling like magic and starts feeling like a system with a very specific behavior.</p><p>And once you see it this way, a lot of things begin to make sense:</p><ul><li><p>why small changes in prompts change the output</p></li><li><p>why it sometimes makes mistakes</p></li><li><p>why it can sound intelligent without actually understanding</p></li></ul><div><hr></div><p>But this is just the surface.</p><p>Because now the real questions begin:</p><p>&#128073; Where did it learn these patterns from?<br>&#128073; How does it even read text?<br>&#128073; What is happening inside when it generates a response?</p><div><hr></div><p>That&#8217;s exactly what we&#8217;ll explore in this series.</p><p>We&#8217;ll break this down step by step, starting from the data, then tokens, then prediction, and finally what&#8217;s inside the model itself.</p><p>By the end, you won&#8217;t just use ChatGPT.</p><p>&#128073; You&#8217;ll understand how it works.</p><div><hr></div><h2>Next in this series</h2><p>&#128073; Where ChatGPT actually learns from</p><p>Smiles :)</p><p>Anurudh</p>]]></content:encoded></item><item><title><![CDATA[Why I’m Writing GrowAith (and What I’ll Be Exploring Here)]]></title><description><![CDATA[Most people discover AI via tools i,e chatgpt , claude ,grok etc.]]></description><link>https://blog.growaith.com/p/why-im-writing-growaith-and-what</link><guid isPermaLink="false">https://blog.growaith.com/p/why-im-writing-growaith-and-what</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 01 Feb 2026 14:05:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most people discover AI via tools i,e chatgpt , claude ,grok etc.</p><p>But i am more interested to know the behind the scenes , actually how the overall system is working.How they actually helps us to think grow and learn !!</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>That is what i generally put in GrowAIth.</p><h4><br>The noise problem</h4><p>Right now, AI content is everywhere.</p><p>There is so muss fuss about AI everywhere. </p><p>new Models , new Prompts ,New 10X claims !!!</p><p>But very little of it explains </p><ul><li><p>What problem is actually being solved</p></li><li><p>Why a technique works</p></li><li><p>Where AI fits in real work</p></li></ul><p>The result is noise.</p><p>You can consume a lot and still feel unsure about what you really understand.</p><p></p><h4>The approach I want to take</h4><p>GrowAith is my attempt to slow things down.</p><p>Instead of chasing updates, I want to focus on:</p><ul><li><p>Understanding core ideasbehind AI and systems</p></li><li><p>Breaking concepts into clear mental models</p></li><li><p>Writing what I&#8217;m learning, as I&#8217;m learning it</p></li></ul><p>Think less &#8220;AI hacks&#8221; and more:</p><p> How does this actually work, and why does it matter?</p><h4> What I&#8217;ll be writing about</h4><p>Here&#8217;s the rough direction:</p><p><strong>AI fundamentals</strong></p><p>Not tutorials first but concepts that make tools easier to understand.</p><p><strong>Systems thinking</strong></p><p>Learning from networks, automation, and engineering .</p><p><strong>Learning in public</strong></p><p>My Notes, explanations, and mistakes.</p><p><strong>Practical takeaway</strong></p><p>Each post should leave you with at least one clear insight.</p><p>This won&#8217;t be perfectly structured from day one  and that&#8217;s okay.</p><h4>Who this is for</h4><p>GrowAith is for:</p><ul><li><p>Engineers and builders</p></li><li><p>Curious learners</p></li><li><p>Anyone tired of shallow explanations</p></li></ul><p>If you enjoy thinking slowly and clearly, you&#8217;ll probably enjoy what I write here.</p><h4>A simple promise</h4><p>I won&#8217;t write to impress.</p><p>I&#8217;ll write to understand</p><p>And if something helps me think better, I&#8217;ll share it here.</p><p>That&#8217;s the idea behind GrowAith.</p><h3>Key takeaway</h3><p>This publication is about <strong>clarity over speed</strong> and <strong>understanding over hype</strong>.</p><p>If that resonates, welcome aboard.</p><p>Anurudh</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading GrowAIth! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Real Power (and Limitations) of Generative AI]]></title><description><![CDATA[Why &#8220;Generative AI&#8221; Is More Than Just a Buzzword]]></description><link>https://blog.growaith.com/p/lets-talk-generative-ai-simply-put</link><guid isPermaLink="false">https://blog.growaith.com/p/lets-talk-generative-ai-simply-put</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sat, 12 Jul 2025 19:04:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Why &#8220;Generative AI&#8221; Is More Than Just a Buzzword<br><br>We hear &#8220;Generative AI&#8221; everywhere - in ads, in conversations, in offices, and on every highlight reel of tech innovation. But if we pay attention only to what it can do, we&#8217;re missing something deeper about why it matters and how it really works.<br><br>Generative AI isn&#8217;t magic. It&#8217;s a pattern machine. It doesn&#8217;t understand the world .It finds relationships inside massive amounts of data, then uses that to create new content that looks meaningful. </p><p><br>Let&#8217;s unpack this in plain language.<br><br>Not Understanding &#8212; Predicting<br><br>When most people talk about AI &#8212; especially generative models &#8212; they assume the system understands like a human does. That&#8217;s not true.<br><br>Generative AI is trained on huge amounts of data and then uses statistical patterns to generate new content. It&#8217;s not thinking. It&#8217;s not reasoning. It is incredibly good at predicting what comes next based on patterns it has seen before. <br><br>If you ask it to write an essay, it doesn&#8217;t sit down and think about ideas &#8212; it predicts word patterns that make sense based on training data. If you ask it to generate an image, it doesn&#8217;t imagine like a person &#8212; it stitches together elements that look right together in the data it saw during training. <br><br>Generative AI in Practice: A Different Kind of Collaboration<br>So what is it really good at?</p><p><br>It can produce new artifacts &#8212; text, music, images &#8212; that look original.But this &#8220;originality&#8221; is really a recombination of patterns it has already seen. It&#8217;s creativity without consciousness, intuition, or intent.<br><br>So Why All the Hype?<br><br>Because humans are pattern-seekers too. We look at outputs that seem cohesive and pretend the machine has internal understanding. That&#8217;s not just inaccurate &#8212; it&#8217;s dangerous.<br><br>Hype focuses on what AI looks like it can do, not what it actually can do.<br><br>This leads us to two common pitfalls:<br><br>&#10060; Believing AI is a thinking partner<br><br>AI doesn&#8217;t think, it predicts.<br><br>&#10060; Assuming it&#8217;s always correct<br><br>Pattern prediction can still be flawed , biased or incorrect ,especially if the training data is poor or incomplete.<br><br>What Really Matters<br><br>Here&#8217;s the insight most people miss:<br><br>Generative AI is a mirror &#8212; not a mind.<br>It reflects patterns  from provided data ,not understanding from experiance.<br><br>This distinction matters because it defines how we should use it:<br><br>It&#8217;s great for augmentation -summarizing, drafting, pattern spotting.<br><br>It&#8217;s not a substitute for expert judgment or contextual reasoning.<br><br>As professionals - whether in tech, products, analysis, or decision-making &#8212; this should be our lens:<br>We don&#8217;t ask what AI can generate.<br>We ask what patterns we should trust, and why.<br><br>Final Thought<br><br>The beauty and the risk of generative AI aren&#8217;t in what it outputs.<br>They&#8217;re in how people interpret those outputs.<br><br>If you chase the pattern - the shiny result-you&#8217;ll be distracted by noise.<br>If you chase the meaning beneath the pattern - that&#8217;s signal.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p><div><hr></div><h3>Let&#8217;s Bring It Into Networking</h3><p>This is where it gets interesting for us.</p><p>Say you&#8217;re managing a large network &#8212; multiple sites, lots of routers, switches, logs , lot of support tickets.</p><p>Now imagine Gen AI trained on your own environment &#8212; logs, past tickets, config files, SNMP data, etc.</p><p>Here&#8217;s what it can do.</p><div><hr></div><h3>Example: Automatic  RCA Report with Gen AI</h3><p><strong>Problem:</strong> You see packet loss in Region X. Alerts come in.<br><strong>Old Way:</strong> You log in, check logs, dig through past incidents, prepare RCA. Hours gone.</p><p><strong>With Gen AI:</strong><br>You just type below prompt:</p><blockquote><p>"Generate RCA for packet loss on Router R2 at 4PM in Region X"</p></blockquote><p>And it replies:</p><blockquote><p>"Packet loss caused due to MTU mismatch post-software upgrade on R2. Similar problem on 14 Mar &amp; 3 June. Recommend audit + MTU compliance check."</p></blockquote><p>Straight to the point.</p><p>&#9201;&#65039; Time saved: Big<br>&#128196; Consistency: High<br>&#128218; Backed by actual data: Yes</p><p></p><p>There are so many other case too , like config generator ,capacity manangment ,audit repot etc.</p><div><hr></div><h3>Why It Works for Us</h3><ul><li><p>It handles logs, tickets, config &#8212; all the messy stuff</p></li><li><p>It finds patterns we may miss</p></li><li><p>It can explain things, not just detect</p></li><li><p>It keeps getting better with feedback</p></li></ul><div><hr></div><h3>Final Words</h3><p>Generative AI is like a team member that doesn&#8217;t sleep. You give it data, it gives you solutions.<br>You ask for help, it explains. It&#8217;s not perfect &#8212; but it&#8217;s fast, useful, and always learning.So don&#8217;t think of it as a threat.<br>Use it as a tool &#8212; to save time, reduce noise, and work smarter.</p><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/lets-talk-generative-ai-simply-put?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/lets-talk-generative-ai-simply-put?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/lets-talk-generative-ai-simply-put?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[Designing AI Infrastructure in a Multi-Cloud World]]></title><description><![CDATA[A practical guide for network engineers to build scalable, compliant, and cost-effective AI systems&#8212;beyond a single vendor.]]></description><link>https://blog.growaith.com/p/designing-ai-infrastructure-in-a</link><guid isPermaLink="false">https://blog.growaith.com/p/designing-ai-infrastructure-in-a</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 06 Jul 2025 14:52:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cKch!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cKch!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cKch!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 424w, https://substackcdn.com/image/fetch/$s_!cKch!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 848w, https://substackcdn.com/image/fetch/$s_!cKch!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 1272w, https://substackcdn.com/image/fetch/$s_!cKch!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cKch!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png" width="580" height="397" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:397,&quot;width&quot;:580,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:38382,&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://netomate.substack.com/i/167649578?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cKch!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 424w, https://substackcdn.com/image/fetch/$s_!cKch!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 848w, https://substackcdn.com/image/fetch/$s_!cKch!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.png 1272w, https://substackcdn.com/image/fetch/$s_!cKch!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc94b6bc2-d5a8-483d-8d7b-ad7cd393e4b3_580x397.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 role="img" 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><title></title><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><h4><strong>Multicloud is now new normal for Network engineer.  </strong></h4><p>When it comes of AI workload , Companies are no way interested to bet on single cloud provider ,they prefer multi cloud option and for good reason .Reason is simple no one cloud is best on everything</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h4>&#128161; Why Go Multi-Cloud for AI? </h4><p>Each cloud provider has its own strength </p><ul><li><p>One might be excellent in providing top tier AI/ML service</p></li><li><p>Another might be good in serverless compute</p></li><li><p>Third may be providing good pricing as compared to others</p></li></ul><p>So its now the cloud architect task to pick the best provider considering all below points.</p><ul><li><p>Better uptime and distory recovery</p></li><li><p> Dependability on one vendor </p></li><li><p> Flexibility and more power while renewing the contract</p></li><li><p> Most importantly meeting data residency &amp; sovereignty laws</p></li></ul><h4>&#10067; Is It Common for AI Workloads?</h4><p>While multicloud is now standard in many IT companies but still less common for AI training  Why ? </p><ul><li><p>Training models is very resource-intensive </p></li><li><p>Highly Optimized on a single cloud or even on premises</p></li><li><p>Often involves massive datasets which is more expensive to move across clouds.</p></li></ul><p>But once the model is trained...</p><ul><li><p> Inference (making predication) is less resource intensive</p></li><li><p> Can be deployed closer to user </p></li><li><p>Reducing latency and providing better user experience.</p></li></ul><p>That&#8217;s why <em><strong>inference workloads (predications) </strong></em> are more likely to be spread across clouds.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6XZW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6XZW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 424w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 848w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 1272w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6XZW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png" width="694" height="444" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:444,&quot;width&quot;:694,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:51231,&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://netomate.substack.com/i/167649578?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6XZW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 424w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 848w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.png 1272w, https://substackcdn.com/image/fetch/$s_!6XZW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F858caf2d-e79c-4c3e-8467-f1aea29e2f3b_694x444.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 role="img" 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><title></title><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><h4>&#128190; Managing Data in a Multi-Cloud World</h4><p>AI workloads run on data&#8212;and lots of it.</p><p>Managing that across clouds? Needs solid strategy. Here&#8217;s a breakdown:</p><ul><li><p><strong>Portability &amp; Interoperability</strong> </p><p>Keep data in sync across clouds using available tools like AWS DataSync. </p></li><li><p><strong>Smart Storage Strategies</strong></p><p>Localize storage near compute to reduce data transfer latency</p><p>Hybrid storage(on prem+cloud) offers flexibility and compliance benefits</p></li><li><p><strong>Data Consistency</strong></p><p>Use distributed database and leverage available synchronization  tools to keep data up to date and accurate across cloud </p></li><li><p><strong>Security &amp; Compliance</strong></p><p>Encrypt data in transit and at rest.</p><p>Use governance tools for compliance and auditing</p></li><li><p><strong>Cost Optimization</strong></p><p>Use compression </p><p>Avoid unnecessary cross-cloud movement</p><p>Use fast storage for active data wheras cheap storage for archived data.</p></li></ul><h4>&#128269; Final Thought</h4><p> Multi-cloud AI isn&#8217;t just a trend&#8212;it&#8217;s a smart, strategic move if done right. But it requires planning, the right tools, and a mindset focused on portability, security, and efficiency.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Introduction to Container-Based Architectures]]></title><description><![CDATA[A Simple Guide to How Containers Are Changing the Way We Deploy Applications]]></description><link>https://blog.growaith.com/p/introduction-to-container-based-architectures</link><guid isPermaLink="false">https://blog.growaith.com/p/introduction-to-container-based-architectures</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 29 Jun 2025 15:58:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jFzQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jFzQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jFzQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 424w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 848w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 1272w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jFzQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png" width="922" height="427" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:427,&quot;width&quot;:922,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:110941,&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://netomate.substack.com/i/167101220?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jFzQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 424w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 848w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.png 1272w, https://substackcdn.com/image/fetch/$s_!jFzQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b96b9cf-fdf3-4a25-9052-b742aff7ac82_922x427.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 role="img" 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><title></title><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>Container - It&#8217;s word that pops up everywhere right ? May be you have gone through   few youtube videos  .Many of them  decent and good jobs explaining concept but here, I want to explain containers in a way that&#8217;s <strong>super simple</strong>, natural, and easy to relate and most importantly, these are <strong>my own notes</strong> as I&#8217;m learning this myself, and as I do, I want to make sure I <strong>learn and share</strong> along the way.</p><p></p><h3>&#128678; The Real-World Problem</h3><p>Why we even need to know or care  about container ? </p><p>If you have worked in deveolpment or IT operations, you might be aware of struggle </p><ul><li><p>The code works perfectly in ppe enviornemnt or on deveoplers own machine </p></li><li><p>As soon as code is pushed on production  ? Error , crash , mismatch some or other issue </p><p></p><p>This disconnet between Dev and Ops  is frustrating &#8212; it&#8217;s sometime costly for companies .And even it today&#8217;s exponentially growing tech , its not expected move slow or break things in production. . So what&#8217;s the fix ?</p><p></p><h3>&#128230; Enter Container-Based Architectures</h3><p></p><p>We can say Container is solution of the problem . It packages everything application needed - the code , the runtime, libaries and dependencies &#8212;- into a single unit .Thus making apps:</p></li><li><p>Easily to deploy</p></li><li><p>Easier to Update</p></li><li><p>Easier to run on any machine</p></li></ul><p></p><h3>&#129521; From Monolith to Microservices</h3><p>Let&#8217;s look at architecure now &#8594;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FkaX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FkaX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 424w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 848w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 1272w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FkaX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png" width="1069" height="508" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:508,&quot;width&quot;:1069,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:69695,&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://netomate.substack.com/i/167101220?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FkaX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 424w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 848w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.png 1272w, https://substackcdn.com/image/fetch/$s_!FkaX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02742d24-bdd4-4a63-8dc0-4943f4b2ee2f_1069x508.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 role="img" 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><title></title><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><ul><li><p>On the <strong>left</strong>, you have a <strong>traditional  way (Monolithic) </strong> &#8212; all parts of the application bundled together (&#8230;all one big block).</p></li><li><p>On the <strong>right</strong>, you split that into <strong>smaller services ( Microservcies )</strong>&#8212; each one running independently in its own container .</p></li></ul><p>Why this is awesome:</p><ul><li><p>You can <strong>scale</strong> each part separately.</p></li><li><p>You can <strong>update</strong> one service without touching the others.</p></li><li><p>You can <strong>deploy</strong> services faster and with fewer errors.</p></li></ul><h3></h3><h3>Deployment Models: Bare Metal &#8594; VMs &#8594; Containers</h3><p>We had bare Metal , VMs then whey there was need of Container .Lets see difference of all three in simplastic way :</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1i0E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1i0E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 424w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 848w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 1272w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1i0E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png" width="1072" height="541" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:541,&quot;width&quot;:1072,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:111166,&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://netomate.substack.com/i/167101220?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1i0E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 424w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 848w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.png 1272w, https://substackcdn.com/image/fetch/$s_!1i0E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fc03ebc-1e27-46d1-b277-f9aa7270e31e_1072x541.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 role="img" 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><title></title><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><h4>Bare Metal </h4><p> Apps runs directly on the OS . One change or update has potentail to break everything .Its headache for Dev /OPS  to troubleshoot or update </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><h4>Virtual Machines</h4><p> Apps now run inside a full virtaul OS .Its more stable but use lot of resourse and is bit slow to start .Each VM can be servaral GBs in size .</p><h4> Containers</h4><p>APps shre the Host OS but are completed isolated to each other .Container starts in second and use less resourse .Its portable ,easy to move scale and replicate. </p><p>USP &#8212; &gt; One container = One service = Super clean and efficient</p><h2>&#129504; How Containers Work </h2><p>Imagine a <strong>container</strong> like a lightweight box that holds your application code , all dependencies it need to run and contains seetinga nd config file.</p><p>Now, imagine these containers running on your system, <strong>isolated but lightweight</strong> &#8212; just like  you ahve multiple apps  installed on your phone.</p><p>Technically speaking:</p><ul><li><p>Containers run in a <strong>namespace</strong> &#8212; a sandboxed space on the host OS.</p></li><li><p>They behave like mini virtual machines, but they&#8217;re just regular processes.</p></li><li><p>They share the host&#8217;s kernel but are managed separately.</p></li></ul><div><hr></div><h2>&#9881;&#65039; Why Developers and Engineers Love Containers</h2><ul><li><p> <strong>Fast to Start:</strong> Seconds, not minutes</p></li><li><p><strong>Clean Deployments:</strong> No leftover  or conflicts</p></li><li><p><strong>Repeatable:</strong> &#8220;It works on my machine&#8221; becomes &#8220;It works everywhere&#8221;</p></li><li><p><strong>Composable:</strong> Build systems from plug-and-play components</p></li><li><p> <strong>Scalable:</strong> Quickly spin up more containers during high demand</p><p></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2>&#129520; Example Tools and Features in the Container Ecosystem</h2><ul><li><p><strong>Docker</strong> &#8211; The most popular tool to create and manage containers</p></li><li><p><strong>Docker Compose</strong> &#8211; To define multi-container setups</p></li><li><p><strong>Kubernetes</strong> &#8211; For large-scale orchestration</p></li><li><p><strong>Monitoring &amp; Telemetry</strong> &#8211; Containers can be monitored app-wise, not just machine-wise</p></li></ul><div><hr></div><h2>&#129514; For Network Engineers: Why It Matters</h2><p>Containers aren&#8217;t just for app developers &#8212; they&#8217;re <strong>changing network automation</strong> too:</p><ul><li><p>Run various tools like  <strong>NetBox</strong>, or <strong>custom scripts</strong> in containers</p></li><li><p>No OS dependency: works on Linux, Mac, or Windows</p></li><li><p>Spin up test labs, tools, or dashboards in seconds</p></li><li><p>Extend network devices with containerized apps &#8212; safely and easily</p></li></ul><div><hr></div><h2>&#128282; Wrapping It Up</h2><p>Containers are transforming how we build, deploy, and scale applications. They&#8217;re:</p><ul><li><p>Lightweight</p></li><li><p>Fast</p></li><li><p>Isolated</p></li><li><p>Portable</p></li></ul><p>Whether you're a <strong>developer</strong>, a <strong>DevOps engineer</strong>, or even a <strong>network engineer</strong>, learning Docker and containers will level up your game.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/introduction-to-container-based-architectures?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/introduction-to-container-based-architectures?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/introduction-to-container-based-architectures?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><p></p>]]></content:encoded></item><item><title><![CDATA[Why Network Automation Alone Isn’t Enough Anymore]]></title><description><![CDATA[Scripts follow instructions. AI understands intent]]></description><link>https://blog.growaith.com/p/why-network-automation-alone-isnt</link><guid isPermaLink="false">https://blog.growaith.com/p/why-network-automation-alone-isnt</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 22 Jun 2025 18:19:34 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!4-AV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4-AV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4-AV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 424w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 848w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 1272w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4-AV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png" width="828" height="461" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:461,&quot;width&quot;:828,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84761,&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://netomate.substack.com/i/166540269?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4-AV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 424w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 848w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.png 1272w, https://substackcdn.com/image/fetch/$s_!4-AV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd1523f8-2054-4da9-b0e4-2897de022e20_828x461.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 role="img" 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><title></title><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><p>Last week, I was watching a random AI video on YouTube when a thought struck me:</p><p>What if AI actually had a important role in networking industry?</p><p>This post is the outcome of that thought and bit reserach .</p><p>I&#8217;ve written a lot of Ansible playbooks recently.</p><p>Honestly, it felt magical at first. Push changes across routers with a single play &#8212; amazing.<br>But over time, something about it didn&#8217;t sit right.</p><p>I kept asking myself: <em>Is this really automation?</em> Or just scripted execution?</p><h3><strong>The Realization</strong></h3><p>The more I automated &#8212; using Ansible, Python, and even some in-house tools &#8212; the more I saw the issue.</p><p>Yes, configs got pushed faster. But if something went wrong ?<br>Manual digging. Logs. Debugs.<br>No real &#8220;Brain&#8221; in the system.</p><p>It was like teaching a robot to follow steps, but not think.</p><p>And then AI started buzzing everywhere. ChatGPT, co-pilots, LLMs...</p><p>And the question hit me hard:</p><p><em>What if the system could understand what I want &#8212; not just what I tell it?</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p><h3><strong>What If I Could Say&#8230;</strong></h3><p>&#8220;Add a static route for 10.1.1.0/24 via 192.168.1.1 on router R1.&#8221;</p><p>That&#8217;s it.</p><p>No YAML. No template variables. Just the intent.</p><p>And the system should know:</p><ul><li><p>Which router R1 is</p></li><li><p>What the current config looks like</p></li><li><p>Whether that next hop is reachable</p></li><li><p>And apply the change safely</p></li></ul><p>Right now, its not a dream. But AI is making it possible.</p><h3><strong>Where Automation Falls Short</strong></h3><p>Let&#8217;s be honest.</p><p>Automation is great. But it:</p><ul><li><p>Doesn&#8217;t understand intent</p></li><li><p>Can&#8217;t read the network&#8217;s topology or policy dependencies</p></li><li><p>Doesn&#8217;t explain logs</p></li><li><p>Doesn&#8217;t help you write documentation (which we all love to skip)</p></li><li><p>And grows harder to maintain the more scripts you have</p></li></ul><p>We&#8217;re building bigger toolboxes &#8212; but not necessarily smarter ones.</p><h3><strong>How AI Can Help</strong></h3><p>I don&#8217;t think AI will replace us. But it&#8217;s already <em>helping</em>.</p><p>Tools like GPT can:</p><ul><li><p>Turn natural language into starting configs</p></li><li><p>Draft validation logic for pre/post checks</p></li><li><p>Generate parts of LLDs</p></li><li><p>Parse log outputs and summarize them</p></li></ul><p>And yes &#8212; even generate diagrams or mind maps based on device configs.</p><h3><strong>The One Thing We Always Skip</strong></h3><p>Documentation.</p><p>We all hate it. Most of us leave it to the last minute (or never).<br>But when something breaks &#8212; it&#8217;s the <em>first</em> thing we wish we had.</p><p>AI can:</p><ul><li><p>Summarize LLDs</p></li><li><p>Highlight change impacts</p></li><li><p>Auto-generate diagrams</p></li><li><p>Keep things up to date when the network changes</p></li></ul><p>It saves hours of writing and backtracking.</p><h3><strong>So What&#8217;s the Future Look Like?</strong></h3><p>A hybrid world.</p><ul><li><p>CLI + YAML + Prompts + AI + Human judgment.</p></li><li><p>Systems that suggest. Engineers that decide.</p></li><li><p>AI that writes the first draft, and we finalize it.</p></li></ul><p>The goal isn&#8217;t to remove engineers.<br>It&#8217;s to remove the repetition &#8212; and free us to focus on what matters.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/why-network-automation-alone-isnt?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/why-network-automation-alone-isnt?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/why-network-automation-alone-isnt?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><p>I believe the best network engineers of the in future won&#8217;t just configure routers &#8212; they&#8217;ll Join Hands with AI to design, test, and troubleshoot smarter than ever before.</p><p>Smiles :)</p><p>Anurudh</p>]]></content:encoded></item><item><title><![CDATA[What AI Infrastructure Really Looks Like (A Friendly Breakdown)]]></title><description><![CDATA[A practical breakdown of compute, storage, and networking that power today&#8217;s intelligence systems.]]></description><link>https://blog.growaith.com/p/what-ai-infrastructure-really-looks</link><guid isPermaLink="false">https://blog.growaith.com/p/what-ai-infrastructure-really-looks</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Mon, 16 Jun 2025 04:20:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!i7Fr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Let's understand AI infrastructure in very simple way ,not in buzzwords, but in real-    world terms. Imagine you are running a Amazon Delivery service.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!i7Fr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i7Fr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i7Fr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:237318,&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://netomate.substack.com/i/165938988?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!i7Fr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!i7Fr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3544a83f-2b43-4823-84f9-7e398fa2aded_1024x1024.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 role="img" 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><title></title><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> You have got big warehouse, drivers and a road connecting to all destinations. </p><p><strong>&#129504; Compute: The Brains &#8212; or the Drivers on the Road</strong></p><p>Compute  layer is like team of drivers ground around, moving packages (data) from Point A to Point Z.</p><p><strong>CPU</strong>   are all purpose vans -- they can handle anything but aren't used for speed delivery.</p><p><strong>GPU</strong>   are the specialized trucks that carry huge volume fast -- Built for heavy duty tasks lets say like training neural network</p><p> <strong>RAM</strong>   That is essential part that every driver need like dashbaoard  in front of hime</p><p><strong>NICs</strong>  Think of its like high-speed lanes of tunnels that helps you bypass traffic and get to destination faster</p><p>Why the love with GPUs lately? Because AI training isn&#8217;t normal &#8212; it&#8217;s like moving large chunk of data around. </p><p>GPUs are wired to handle that kind of workload efficiently, with thousands of cores working in parallel. </p><p>Some systems stack up 8, 16, even more GPUs in a single server &#8212; all linked with ultra-fast NICs pushing speeds up to 800 Gbps.</p><p>That&#8217;s not a typo. We're talking about transferring entire libraries worth of data in the blink of an eye.</p><p><strong>&#128230; Storage: Your Warehouse System</strong></p><p>Now, where do all those packages come from? Right &#8212; the warehouse.</p><p>In AI, storage plays that role. But it&#8217;s not just about capacity. It&#8217;s about speed. If your drivers are sitting around waiting for boxes to load, your whole system slows down.</p><p><strong>SSDs</strong> are the fast-loading bays &#8212; perfect for handling large datasets quickly.</p><p><strong>InfiniBand with RDMA?</strong> It&#8217;s like teleporting data  straight to the truck, skipping the harder task. (in our case  the CPU). Again this itself is very big topic and will love to come with post specfically to <strong>InfiniBand with RDMA.</strong></p><p><strong>IP-based</strong> storage is more plug-and-play. Maybe not the fastest, but it works well with what most systems already have.</p><p>And distributed storage spreads data out, so there's no single point of failure. It's like having multiple warehouses stocked with the same inventory &#8212; so if one goes down, another picks it up.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p><p><strong>&#127760; Networking: The Road System That Connects It All</strong></p><p>Networking is the glue. Or, sticking everything together, it's the actual road system your fleet depends on.</p><p>Most AI data centers use something called spine-leaf architecture:</p><p><strong>Leaf switches</strong> connect directly to compute nodes &#8212; the endpoints.</p><p><strong>Spine switches</strong> tie everything together, making sure data can flow across the entire network without bottlenecks.</p><p>If that sounds technical, think of it like this: it's a carefully designed freeway system with enough lanes to handle rush hour &#8212; or in this case, petabytes of data moving in real time.</p><p>And to keep things moving? Engineers tweak the subscription ratio &#8212; the balance between how many compute nodes share bandwidth and how much is actually available. Get it wrong, and things slow down. Get it right, and data moves so efficiently it barely feels like it&#8217;s traveling at all.</p><p><strong>&#128295; When Everything Clicks</strong></p><p>Put all of this together &#8212; compute that&#8217;s optimized, storage that&#8217;s fast and accessible, and networking that keeps things flowing &#8212; and you&#8217;ve got an AI infrastructure that can scale to almost anything.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/what-ai-infrastructure-really-looks?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/what-ai-infrastructure-really-looks?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/what-ai-infrastructure-really-looks?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><p>That&#8217;s what powers:</p><p>It&#8217;s not about any one component. It&#8217;s how they all work together.</p><p>Smiles :)</p><p>Anurudh</p>]]></content:encoded></item><item><title><![CDATA[Ansible Mastery Part 6: Encrypting Secrets with Ansible Vault]]></title><description><![CDATA[Protect passwords, API keys, and licenses in your playbooks. A practical guide to using Ansible Vault without breaking your automation flow.]]></description><link>https://blog.growaith.com/p/ansible-mastery-part-6-encrypting</link><guid isPermaLink="false">https://blog.growaith.com/p/ansible-mastery-part-6-encrypting</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sat, 24 May 2025 02:30:40 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6nbn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6nbn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 424w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 848w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 1272w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6nbn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png" width="618" height="267" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:267,&quot;width&quot;:618,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55244,&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://netomate.substack.com/i/162759026?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6nbn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 424w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 848w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.png 1272w, https://substackcdn.com/image/fetch/$s_!6nbn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe6dc868-1b19-4976-a7cd-9b86369c42cd_618x267.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 role="img" 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><title></title><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><p>Welcome back to our Ansible Mastery Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;555a8cec-4ef1-452f-b5c0-3c963c6d772a&quot;,&quot;caption&quot;:&quot;Welcome back to our Ansible Mastery Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Ansible Mastery Part 5 :Dynamic Hostname Configuration with Ansible&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-05-18T02:30:22.285Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/ansible-mastery-part-5-dynamic-hostname&quot;,&quot;section_name&quot;:&quot;&#9881;&#65039;Network Automation&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:163791770,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p></p><p>We have already discussed how ansible is used to automate infrastructre .right ?</p><p> We right playbooks to handle config  and much more .But sometimes these playbooks need senstive information &#8212;password API tokens, Licence key ,SSH Keys &#8212;Stuff that you dont want to be in plain text.</p><p>Now imagine  pushing those playbook to Github or Gitlab , may be due to need of collabaration with others. If you just drop your secrets into the YAML as plain text , bascially you are taking risk and sharing your secrets with the world.</p><p></p><h4>&#128274; What is Ansible Vault?</h4><p>Think of <strong>Ansible Vault</strong>  as a  <strong>password protected envelope</strong> for your YAML content . You can encrypyt either:</p><ul><li><p>Entire files </p></li><li><p>Or just  individual variables.</p></li></ul><p>This way we can safely version control playbooks with senstive data in locked condition.</p><h4>&#129514; Step-by-Step: Encrypting a File</h4><p>Let&#8217;s say we have critical_data.yml file which has api and licence key</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ cat inventory/critical_data.yml 
---
 api_key: Cisco@123
 licence_key: abcdef
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p>Let&#8217;s Encrypt it :</p><pre><code>ansible-vault encrypt ./inventory/critical_data.yml </code></pre><p>It will ask for vault password- choose one  and remember. You will need it to  decrypt file later</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ ansible-vault encrypt ./inventory/critical_data.yml 
<strong>New Vault password: 
Confirm New Vault password: 
Encryption successful</strong>
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p>The contents are now encrypted. &#9989;</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ cat inventory/critical_data.yml 
$ANSIBLE_VAULT;1.1;AES256
3764346265303562323837363163663030636231373665343763366339343064346331323066638
3035336434306331366230306361396465333635363739300a33373533313238633666666330611
3735616534633434373262343930336136303938303332303136373030313833383739643133361
3032613261666333330a33393431633662623436656538306537336662393838613433383661363
3937653837316337313532353734343432393762346333333636373036353637363032353236306
6438323364373136316432616163396164383564616366653439
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-6-encrypting?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/ansible-mastery-part-6-encrypting?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p></p><h4>&#128275; Decrypting the File</h4><p>To decrypt it when needed:</p><pre><code>ansible-vault decrypt ./inventory/critical_data.yml </code></pre><p></p><h4>&#128230; Using Encrypted Files in Playbooks</h4><p>Lets look back at our playbook</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ cat ansible_playbook/03_ssh_key.yml 
---
 - hosts: routers
   #gather_facts: false
   vars_files:    
           /<strong>home/anurudh/Ansible_Network_Engineer/inventory/critical_data.yml</strong>
   tasks:
     - name: Print Ansible Config location 
       ansible.builtin.debug:
        msg: 
        - "{{ ansible_config_file }}"
        - "{{ ansible_user }}"
        - "{{ api_key }}"
        - "{{ license_key }}"((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$  </code></pre><p>Let&#8217;s run the playbook:</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ ansible-playbook ansible_playbook/03_ssh_key.yml 
ERROR! Attempting to decrypt but no vault secrets found
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ 
</code></pre><p>Expected. We will get <code>ERROR! Attempting to decrypt but no vault secrets found</code></p><p>we need to tell Ansible to <strong>ask for the vault password</strong>:</p><pre><code>ansible-playbook ansible_playbook/03_ssh_key.yml <strong>--ask-vault-pas</strong></code></pre><p>Then provide the vault password, and boom &#8212; it works:</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ ansible-playbook ansible_playbook/03_ssh_key.yml --ask-vault-pass
Vault password: 

PLAY [routers] ******************************************************************************************************************

TASK [Gathering Facts] **********************************************************************************************************
ok: [r2]
ok: [r1]

TASK [Print Ansible Config location] ********************************************************************************************
ok: [r1] =&gt; {
    "msg": [
        "/home/anurudh/Ansible_Network_Engineer/ansible.cfg",
        "ansible_admin",
        "Cisco@123",
        "abcdef"
    ]
}
ok: [r2] =&gt; {
    "msg": [
        "/home/anurudh/Ansible_Network_Engineer/ansible.cfg",
        "cisco",
        "Cisco@123",
        "abcdef"
    ]
}

PLAY RECAP **********************************************************************************************************************
r1                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
r2                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p>&#129300; Tired of Typing the Password Every Time?</p><p>You might have noticed that we have to provide Vault password everytime while running playbook</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ ansible-playbook ansible_playbook/03_ssh_key.yml --ask-vault-pass
<strong>Vault password:</strong> 
</code></pre><p>Shouldn&#8217;t be great if we dont have to provide Vault password everytime? </p><p>Lets see how it can be done.</p><p>Lets create a vault password file to store the vault password .</p><p>In my case i have take vault password as 1234 </p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ cat inventory/vid_pass 
1234
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ 
((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p>Then update your <code>ansible.cfg</code>:</p><pre><code>vault_password_file=/home/anurudh/Ansible_Network_Engineer/inventory/vid_pass</code></pre><p> ansible.cfg file for reference </p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ cat ansible.cfg 

[defaults]
inventory = /home/anurudh/ansible/inventory/cisco_devices
transport = network_cli
#host_key_checking =False  # Disables SSH host key checking
vault_password_file=/home/anurudh/Ansible_Network_Engineer/inventory/vid_pass
 </code></pre><p>Now you can run your playbook <strong>without --ask-vault-pass</strong>:</p><pre><code>ansible-playbook ansible_playbook/03_ssh_key.yml </code></pre><p>It picks up the password automatically. Nice.</p><pre><code>((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ ansible-playbook ansible_playbook/03_ssh_key.yml 

PLAY [routers] ******************************************************************************************************************

TASK [Gathering Facts] **********************************************************************************************************
ok: [r2]
ok: [r1]

TASK [Print Ansible Config location] ********************************************************************************************
ok: [r1] =&gt; {
    "msg": [
        "/home/anurudh/Ansible_Network_Engineer/ansible.cfg",
        "ansible_admin",
        "Cisco@123",
        "abcdef"
    ]
}
ok: [r2] =&gt; {
    "msg": [
        "/home/anurudh/Ansible_Network_Engineer/ansible.cfg",
        "cisco",
        "Cisco@123",
        "abcdef"
    ]
}

PLAY RECAP **********************************************************************************************************************
r1                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
r2                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

((venv) ) anurudh@localhost:~/Ansible_Network_Engineer$ </code></pre><p></p><p>Yes, you have got it !!! We have used now Ansible-Vault feature to encrypt our critcial data.  You know, we can go ahead and encrypt even out vault password file ? </p><p>I hope you can try even to encrypt vault password file .Its all same as above.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share Automation&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share Automation</span></a></p><h4>&#9989; <strong>Recap</strong></h4><ul><li><p>Ansible Vault is your <strong>built-in secret protector</strong>.</p></li><li><p>It plays nice with Git and automation pipelines.</p></li><li><p>Use it to keep your playbooks clean and your credentials safe.</p></li></ul><h4>&#9989; <strong>Action Step for You Today</strong></h4><p>Try it, break it, automate it.<br>If you&#8217;re doing infra-as-code, this is a must-have tool in your Ansible workflow.</p><p>I&#8217;ll guide you, one simple post at a time.</p><p>We will deep dive more into Ansible in upcoming posts. Don&#8217;t miss to DM or ping me with your queries and comments.</p><p>Smiles :)</p><p>Anurudh</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Ansible Mastery Part 5 :Dynamic Hostname Configuration with Ansible]]></title><description><![CDATA[Giving Your Routers Real Names (the Easy Way)]]></description><link>https://blog.growaith.com/p/ansible-mastery-part-5-dynamic-hostname</link><guid isPermaLink="false">https://blog.growaith.com/p/ansible-mastery-part-5-dynamic-hostname</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 18 May 2025 02:30:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!u_Pn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u_Pn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u_Pn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 424w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 848w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 1272w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u_Pn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png" width="913" height="367" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:367,&quot;width&quot;:913,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:85635,&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://netomate.substack.com/i/163791770?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!u_Pn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 424w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 848w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.png 1272w, https://substackcdn.com/image/fetch/$s_!u_Pn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b1bfb11-758b-492f-a9a5-1f4cf469c95a_913x367.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 role="img" 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><title></title><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>Welcome back to our Ansible Mastery Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;0c4784ef-e13a-46fd-8af2-56b87adfa0bd&quot;,&quot;caption&quot;:&quot;Welcome back to our Ansible Mastery Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Ansible Mastery Part 4 :Let&#8217;s Talk SSH &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-05-05T02:30:23.176Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/ansible-mastery-part-3-lets-talk&quot;,&quot;section_name&quot;:&quot;&#9881;&#65039;Network Automation&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:162743796,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Ever stare at a bunch of IPs and think, <em>"This would be so much easier if these routers had names?"</em> Same. Instead of setting hostnames manually on each Cisco box, here&#8217;s a simple way to get Ansible to do it for you. No copy-pasting the same command again and again. Just clean automation.</p><p>Let&#8217;s get straight into it.</p><div><hr></div><h3>Start With Your Inventory</h3><p>Open up your <code>hosts.ini</code> file. Here's how I set mine up:</p><pre><code>[anurudh@localhost ansible_start]$ cat hosts.ini 

[routers]
1.1.1.1
2.2.2.2

[ios_devices:children]
routers

[ios_devices:vars]
ansible_user=cisco
ansible_password=cisco
ansible_connection=network_cli
ansible_network_os=ios[anurudh@localhost ansible_start]$ </code></pre><p>This tells Ansible: &#8220;Hey, we&#8217;re working with Cisco IOS gear, here are the devices, and here&#8217;s how to log in.&#8221;</p><div><hr></div><h3>Make Sure Ansible Knows What&#8217;s Up</h3><p>Next, check your <code>ansible.cfg</code>. You don&#8217;t need anything fancy &#8212; just make sure it points to your inventory file and uses the right connection method:</p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p><pre><code>[anurudh@localhost ansible_start]$ cat ansible.cfg 

[defaults]
gathering = explicit
inventory = hosts.ini
transport = network_cli
#host_key_checking = False  # Disables SSH host key checking
[anurudh@localhost ansible_start]$ 
</code></pre><p>That commented-out line disables SSH key checking &#8212; helpful during testing, but use it wisely.</p><div><hr></div><h3>Now the Fun Part: Auto-Generate Hostnames</h3><p>You don&#8217;t want to manually set hostnames like <code>R1111</code> and <code>R2222</code>, right? Let Ansible do that. Here's a tiny playbook that makes it happen:</p><pre><code>[anurudh@localhost ansible_start]$ cat 04_config_hostname.yml 

---
 - name: Configure Hostane on Cisco routers
   hosts: ios_devices
   gather_facts: no 
   
   tasks:
    - name: set hostname based on IP
      cisco.ios.ios_config :
         lines:
            - hostname R{{ inventory_hostname | regex_replace('\\.', '') }}
            
[anurudh@localhost ansible_start]$ </code></pre><p>What&#8217;s happening here?</p><ul><li><p><code>inventory_hostname</code> is the IP of each device.</p></li><li><p>The <code>regex_replace('\\.', '')</code> bit strips out the dots.</p></li><li><p>So <code>1.1.1.1</code> becomes <code>R1111</code>. Neat, right?</p></li></ul><div><hr></div><h3>Let&#8217;s See It in Action</h3><p>Run the playbook like this:</p><pre><code>
[anurudh@localhost ansible_start]$ ansible-playbook  03_ping_router 

PLAY [check connectivity to cisco routers] *************************************************

TASK [ping the router] *********************************************************************
ok: [1.1.1.1]
ok: [2.2.2.2]

PLAY RECAP *********************************************************************************
1.1.1.1                    : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
2.2.2.2                    : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

[anurudh@localhost ansible_start]$ 


</code></pre><p>Once it runs, SSH into your devices to confirm the hostname stuck:</p><pre><code>[anurudh@localhost ansible_start]$ ssh cisco@1.1.1.1
(cisco@1.1.1.1) Password: 

R1.1.1.1#exit
Connection to 1.1.1.1 closed.
[anurudh@localhost ansible_start]$ ssh cisco@2.2.2.2
(cisco@2.2.2.2) Password: 

R2.2.2.2#</code></pre><p>If you see that hostanme  R111 for router 1 and R2222 for router 2, congrats &#8212; it worked.</p><div><hr></div><h3>Recap </h3><ul><li><p>You learned how to build hostnames from router IPs</p></li><li><p>You used Jinja2 to clean them up</p></li><li><p>You pushed config with Ansible</p></li><li><p>You did it without repeating yourself 50 times</p></li></ul><p>If you&#8217;ve got more routers to name, this setup will save you hours. Add this to your playbook toolbox &#8212; you&#8217;ll use it again.</p><h3><strong>Action Step for You Today</strong></h3><p><strong>Just one thing:</strong> make sure to go through the concepts and follow along with the tasks. </p><p>I&#8217;ll guide you, one simple post at a time.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/anurudh&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/anurudh"><span>Buy Me A Coffee</span></a></p><p>We will deep dive more into Ansible in upcoming posts. Don&#8217;t miss to DM or ping me with your queries and comments.</p><p>Smiles :)</p><p>Anurudh</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-5-dynamic-hostname?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-5-dynamic-hostname?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/ansible-mastery-part-5-dynamic-hostname?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p>]]></content:encoded></item><item><title><![CDATA[How Machines Actually Learn — A Real-World Guide for Curious Engineers]]></title><description><![CDATA[A beginner-friendly dive into Supervised, Unsupervised, and Reinforcement Learning]]></description><link>https://blog.growaith.com/p/how-machines-actually-learn-a-real</link><guid isPermaLink="false">https://blog.growaith.com/p/how-machines-actually-learn-a-real</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Wed, 07 May 2025 02:30:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GJms!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Welcome back to our AI Journey. If you are new to here , don&#8217;t miss to check previous posts before diving into this post.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;9440d229-9f23-42eb-b17c-c3eb7b17b73c&quot;,&quot;caption&quot;:&quot;Welcome back to our Journey to AI. If you are new to here , don&#8217;t miss to check out earlier post &#8220;How Traditional AI system think &#8220;,&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;From Rule-Based Systems to Learning Machines: A Personal Journey into AI&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-04-27T02:30:25.329Z&quot;,&quot;cover_image&quot;:null,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/from-rule-based-systems-to-learning&quot;,&quot;section_name&quot;:&quot;&#128104;&#8205;&#128187;&#129504; Gen AI&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:162177318,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>In this post , we will talk about &#8220;How AI Learns&#8221;</p><ul><li><p>Supervised Learning :How we train machine with example with correct answer</p></li><li><p>Un Supervised Learning: How Machine finds hidden pattern when provided with unlabeled data</p></li><li><p>Reinforcement Learning :How machine leans by trying things out using feedback  </p></li></ul><h3>&#128269; Supervised Learning :Teaching Machine With Example</h3><p>Its basically to teach a machine using examples that already have a answers. So we teach model with real example with both input and the correct answers. Over the time ,it starts to get in.</p><p>Supervised learning is like teaching someone with flashcard.</p><p>Imagine this:</p><p>You are sitting with kid showing him flash card of shapes. Each flashcard has a label:</p><p>&#8220;Square&#8221; &#8220;Triangle&#8221; &#8221; Circle&#8221;</p><p>Keep showing him flash card over and over. </p><p>After sometime , show him flash card having new shape  without any label and ask: </p><p>&#8220;What is this ? </p><p>Kid will reply with correct answer may be &#8220;Triangle&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GJms!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GJms!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 424w, https://substackcdn.com/image/fetch/$s_!GJms!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 848w, https://substackcdn.com/image/fetch/$s_!GJms!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 1272w, https://substackcdn.com/image/fetch/$s_!GJms!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GJms!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png" width="686" height="359" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b801298-e636-4d28-bd57-59562f64fe03_686x359.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:359,&quot;width&quot;:686,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:44095,&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://netomate.substack.com/i/162671998?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GJms!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 424w, https://substackcdn.com/image/fetch/$s_!GJms!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 848w, https://substackcdn.com/image/fetch/$s_!GJms!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.png 1272w, https://substackcdn.com/image/fetch/$s_!GJms!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b801298-e636-4d28-bd57-59562f64fe03_686x359.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 role="img" 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><title></title><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><br>That&#8217;s <strong>supervised learning</strong>&#8212;you learn from examples that already have answers (labels), and then you try to guess the answer for new stuff.</p><h4>&#127919; Real-Life Example &#8211; Predicting House Prices</h4><p>Okay,  Let&#8217;s say we are  building a model to guess house prices. we provide relevant input to it:</p><ul><li><p>How big the house is</p></li><li><p>Where it&#8217;s located</p></li><li><p>Number of rooms</p></li></ul><p>...plus what it <em>actually</em> sold for. We keep giving it example after example, and slowly it starts to notice, &#8220;Hmm, houses in Mumbai facing Sea  go for more. &#8220;</p><p>Now, if you hand it data for a brand-new house, it can take a decent guess at the price&#8212;even if it&#8217;s never seen that specific one before.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p></p><h4>&#127760; How This Works in Networking</h4><p>Lets consider &#8212;network data&#8212;we  might use this to catch bad traffic.</p><p>we train the model on labeled flow data. Stuff like:</p><ul><li><p>IP addresses</p></li><li><p>Ports</p></li><li><p>Traffic volume</p></li><li><p>Protocol used</p></li><li><p>Packet size</p></li><li><p>Time of day</p></li><li><p>Duration</p></li></ul><p>And for each one, mark it &#8220;Safe&#8221; or &#8220;Malicious.&#8221;</p><p>We do that long enough, and the model starts spotting patterns. &#8220;Ah, this combination of port + packet timing? Seen that before. Pretty sure it&#8217;s a X&#8221;</p><p>This is where it starts getting useful&#8212;real-time detection, with way less manual effort.</p><div><hr></div><h4>So Why&#8217;s It Called &#8220;Supervised&#8221;?</h4><p>Simple: because We are literally <em>supervising</em> the learning process. Like showing kid how to ride a bike. We are e right there holding the seat, giving feedback as they go.</p><p>It&#8217;s not figuring stuff out on its own yet&#8212;We are guiding it.</p><p></p><h3>&#128269; Unsupervised Learning: When There Are No Answers</h3><p>So, this one&#8217;s bit  different. There&#8217;s no training, no right answers, nothing.  basically give the model a bunch of raw data and say, &#8220;Here. Figure it out.&#8221;</p><p>It&#8217;s like landing in a city you&#8217;ve never been to&#8212;with no map&#8212;and just walking around. Over time, you notice stuff: &#8220;Okay, everyone gathers near that bus stop,&#8221; or &#8220;This street&#8217;s always jammed during peek hours at 6 PM.&#8221; That&#8217;s what unsupervised learning does. Finds patterns. Groups. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kzUt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kzUt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 424w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 848w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 1272w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kzUt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png" width="599" height="177" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:177,&quot;width&quot;:599,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:29511,&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://netomate.substack.com/i/162671998?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kzUt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 424w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 848w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 1272w, https://substackcdn.com/image/fetch/$s_!kzUt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec5d067-4ef2-4016-b1d9-ae609a246f1e_599x177.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><h4>&#127919; Real-life Example &#8211; Retirement Savings</h4><p>Take this&#8212;say you&#8217;ve got a dataset of people&#8217;s ages and their savings. That&#8217;s it. No idea who&#8217;s doing well, who&#8217;s behind. Just raw numbers.</p><p>Now, the model might look at it and say, &#8220;Hmm, looks like these over-50 folks with low savings&#8212;yeah, one group. Then these younger ones saving aggressively? Another group.&#8221;</p><p>No labels. No judgment. Just clusters. Then a human (like a financial advisor) can come in, look at those clusters, and go, &#8220;Yeah, that first group&#8217;s in trouble. These others? They&#8217;re good.&#8221;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://netomate.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share&quot;,&quot;text&quot;:&quot;Share Automation&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://netomate.substack.com/?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share Automation</span></a></p><p></p><h4>&#127760; Network Example &#8211; Spotting  Behavior</h4><p>Okay, now let&#8217;s bring it to networking.</p><p>Say you&#8217;ve got logs&#8212;tons of unlabeled flow data. You dump it into a model. It&#8217;s got no clue what &#8220;normal&#8221; even means, but still starts spotting patterns.</p><p>Maybe it figures out that from 9 to 5, traffic looks pretty normal. But then at 2 AM, suddenly some host is pushing massive files to some unknown IP. The model&#8217;s like, &#8220;That&#8217;s not the usual routine.&#8221;</p><p>Boom. Anomaly detection.</p><p>That&#8217;s the magic. No one tells it what&#8217;s bad&#8212;it just sees something off.</p><div><hr></div><h3>&#127918; Reinforcement Learning: Learning by Doing</h3><p>This one&#8217;s honestly a gaming. Feels like how we all actually learn.</p><p>Reinforcement learning is trial and error, plain and simple. The model does something, sees what happens, and adjusts.</p><p>Do something good? Get a reward.<br>Mess up or wrongly executed ? Penalty.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kdOk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kdOk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 424w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 848w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 1272w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kdOk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png" width="594" height="179" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:179,&quot;width&quot;:594,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:24644,&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://netomate.substack.com/i/162671998?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kdOk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 424w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 848w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 1272w, https://substackcdn.com/image/fetch/$s_!kdOk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b30a87b-2111-4f01-856b-46b2222b8cd6_594x179.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><h4>&#127919; Example &#8211; Teaching a Game Bot</h4><p>You&#8217;ve got a bot learning to play a game. You don&#8217;t tell it the rules. You just give it a little reward when it scores.</p><p>You just say,<br>&#128994; &#8220;Score point? +1 reward&#8221;<br>&#128308; &#8220;Lose a life? -1 penalty&#8221;</p><p>First few rounds? It&#8217;s clueless. But it keeps trying. Gets a little better. Tries different moves. Slowly starts winning more.</p><p>Eventually it <em>discovers</em> the strategy to win.</p><p>Same as how a kid learns. Fall off the cycle?  Stay upright? </p><h4>&#127760; Network Example &#8211; Auto-Tuning Without the Manual Work</h4><p>Now, think networking.</p><p>Imagine a system that&#8217;s allowed to adjust routing paths, bandwidth, QoS settings&#8212;whatever.</p><p>It tries something new. If latency improves, or throughput increases&#8212;reward.<br>If things get worse&#8212;penalty.</p><p>And over time? It learns the best combo. Without a human manually tweaking BGP attribute or adjusting buffer size</p><p>It&#8217;s literally self-tuning. Just like we all do after messing up a few times and figuring things out.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8adC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8adC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 424w, https://substackcdn.com/image/fetch/$s_!8adC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 848w, https://substackcdn.com/image/fetch/$s_!8adC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 1272w, https://substackcdn.com/image/fetch/$s_!8adC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8adC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png" width="680" height="108" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:108,&quot;width&quot;:680,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7631,&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://netomate.substack.com/i/162671998?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8adC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 424w, https://substackcdn.com/image/fetch/$s_!8adC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 848w, https://substackcdn.com/image/fetch/$s_!8adC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 1272w, https://substackcdn.com/image/fetch/$s_!8adC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a41a20-4333-4d8b-9251-e321a91f36a8_680x108.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>We will talk more about AI in coming posts.</p><p>Till time , keep learning !!!!</p><p>Smiles :)</p><p>Anurudh</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Ansible Mastery Part 4 :Let’s Talk SSH ]]></title><description><![CDATA[SSH Key Authentication Setup for Ansible-Controlled Cisco Devices]]></description><link>https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk</link><guid isPermaLink="false">https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Mon, 05 May 2025 02:30:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3oZ1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3oZ1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3oZ1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 424w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 848w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 1272w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3oZ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png" width="826" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:826,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:42332,&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://netomate.substack.com/i/162743796?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3oZ1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 424w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 848w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.png 1272w, https://substackcdn.com/image/fetch/$s_!3oZ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8c55c28-f53d-4d7a-9dd5-f43212d4596d_826x354.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 role="img" 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><title></title><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><p>Welcome back to our Ansible Mastery Journey. If you are new to here , don&#8217;t miss to check  previous posts before diving into this post. </p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;3fd3cdc3-06b8-491f-9494-2e752d38c1b4&quot;,&quot;caption&quot;:&quot;Just many of you , I also started my networking journey with manual config troubleshooting the various issue . Thanks for reading Network Automation! Subscribe for free to receive new posts and support my work.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Why Every Network Engineer Should Learn Ansible (Even If You&#8217;re Just Starting Out)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-04-18T06:19:54.526Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a0b85b7-f0de-4791-8318-758e56d666b2_590x475.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/why-every-network-engineer-should&quot;,&quot;section_name&quot;:&quot;&#9881;&#65039;Network Automation&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:161589071,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;31496192-c514-4a4c-847d-c9cbe82b08a9&quot;,&quot;caption&quot;:&quot;Let&#8217; s continue with our Ansible journey. Don&#8217;t miss to go through Ansible Post 1 .Thanks for reading Network Automation! Subscribe for free to receive new posts and support my work.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Ansible Mastery Part 2:Install Ansible &amp; Run Your First Ping&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-04-20T12:54:52.064Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a0b85b7-f0de-4791-8318-758e56d666b2_590x475.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/install-ansible-and-run-your-first&quot;,&quot;section_name&quot;:&quot;&#9881;&#65039;Network Automation&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:161728358,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;917f33d6-81c0-43d2-af74-64b2102f9130&quot;,&quot;caption&quot;:&quot;Ansible Mastery: Part 3 &#8211; Your First Real Playbook to Ping Routers&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Ansible Mastery Part 3: Your First Network Automation Playbook to Ping Cisco Routers&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-04-25T02:30:20.789Z&quot;,&quot;cover_image&quot;:null,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/ansible-mastery-part-3-your-first&quot;,&quot;section_name&quot;:&quot;&#9881;&#65039;Network Automation&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:161822622,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>In this post, we will have a deep dive  into:</p><ul><li><p>Why SSH matters for Ansible</p></li><li><p>How to set up key-based ssh access(no password required)</p></li><li><p>Real setup providing steps to push your public key to Cisco routers</p></li><li><p>Testing your setup and tshoot with playbooks.</p></li></ul><h3><strong>&#128640; Why SSH Matters for Ansible</strong></h3><p>Lets talk about SSH , honestly its one thing which we expect to work while working with ansible. </p><p>At its core ,SSH is basically secure tunnel into remote machines. Its how we get in device without physically  being there. It used port 22 by default but you can t change it without any issue.</p><p>Ansible is agentless, which means it doesn&#8217;t need to install anything on the remote machine to work its magic. It just depend upon  on SSH to get in, do its job.</p><p>So if your SSH setup is broken or misconfigured? Good luck running playbooks. That&#8217;s why getting SSH right is half the battle when setting up Ansible.</p><h3><strong>&#9881;&#65039; Setting Up SSH for Ansible </strong></h3><p>Here&#8217;s how I usually go about it:</p><h4>1. Install OpenSSH</h4><p> Make sure OpenSSH is installed&#8212;both on your control machine (where you run    Ansible) and the target machines (the ones you want to manage).</p><p>To check if it's installed:</p><pre><code>[anurudh@localhost ~]$ ssh -V
OpenSSH_8.7p1, OpenSSL 3.2.2 4 Jun 2024
[anurudh@localhost ~]$ 
[anurudh@localhost ~]$ 
[anurudh@localhost ~]$ </code></pre><p>if not , it can be installed like this:</p><pre><code>[anurudh@localhost ~]$ <strong>sudo yum install openssh-server</strong>
Last metadata expiration check: 1:02:08 ago on Sat 03 May 2025 12:33:40 PM IST.
Package openssh-server-8.7p1-45.el9.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
[anurudh@localhost ~]$ </code></pre><h4>2. Set Up Key-Based Auth</h4><p>This is important. You don&#8217;t want to be typing passwords every time Ansible connects, right?<br>So generate a key pair on your control node:</p><pre><code>[anurudh@localhost ~]$ ssh-keygen</code></pre><p>Now if you check your <code>.ssh</code> directory:</p><pre><code>anurudh@localhost ~]$ ls ~/.ssh/
id_rsa  id_rsa.pub  known_hosts
[anurudh@localhost ~]$ </code></pre><p>That <code>id_rsa</code> is your private key. Keep it safe. Never share it.</p><p>And <code>id_rsa.pub</code>? That&#8217;s the one you give to devices so they let you in.</p><p>This way, Ansible can log in without needing a password every time.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><h4>3. Test the Connection</h4><p>Before going all-in with Ansible, test the SSH connection manually:</p><pre><code>[anurudh@localhost ~]$ ssh ansible_admin@1.1.1.1</code></pre><p>If it logs in without asking for a password&#8212;you&#8217;re done</p><p>Lets walk through  each step  discussed above with real example </p><h3>&#128295; Real-World Example: Pushing Public Key to a Cisco Device</h3><p>Let&#8217;s go step-by-step on setting up key-based SSH access with a Cisco router.</p><p>Lets first check ssh directory in master node </p><pre><code>[anurudh@localhost ~]$ ls ~/.ssh/
known_hosts
[anurudh@localhost ~]$ </code></pre><p>Okay, no key yet&#8212;let&#8217;s generate one:</p><pre><code>[anurudh@localhost ~]$ ssh-keygen
</code></pre><p>After that directory should look like this</p><pre><code>[anurudh@localhost ~]$ ls ~/.ssh/ 
id_rsa  id_rsa.pub  known_hosts</code></pre><p>Here we have got bot  private ( <code>id_rsa ) </code>and public key (<code>id_rsa.pub )</code> generated. Private key should not leave this machine . We will copy  public key to network devices to enable SSH key based authentication.</p><p>and now we'll take a look into the public key.</p><pre><code>[anurudh@localhost ~]$ cat ~/.ssh/id_rsa.pub </code></pre><pre><code>ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDiHucZaT0Q6dYc5LD5tYZBfiioPY6WrsryPLV4K7ypw+bS92fWnPorNi5EUvJY4xJ46uCFvIj14JNGBHiUfDDbmX2ZHqsIGe536fh1V7TmkQl/5n1Aq6tikzjui3tBgh5r7O5A3EF6HoU/FsFPGEWPDMLJP0uv2KIVcD5VJDr9SdR62x2b/+6ZhKV6R6v8seEk31El4oFyGIRh8G9e21avqhl9ikoXor9SEaQx5WEVvO3vjHH+JWgyq2QfR3bqC4tXM+BRgpHiJ9PirL/unneZMAQD/+relOVWymY2uMrtSZFvSoWWxE10CabAn2Lc2Fs7MQM6gRFWo4BaPJCCUMwvcv3g7nmIAVY86BDYnzcSCCkR6xzrY4WB1OPfY9bDunDC3ZUWwMHzl/yB8pagl84g83/r/FfGxABntnM7UMBC2rNHUYJYGSOp0GDTO5iJ2YabBoIy99tFEqzoXrqwHsuFxS/oLtNC26eFFuEZ9eAYX1WbV2x9xWipnz6khJo6hw8= anurudh@localhost.localdomain
[anurudh@localhost ~]$ </code></pre><p></p><p>So we need to copy and paste this content into Cisco device.</p><p>But hold up&#8212;Cisco CLI only accepts 256 characters per line. So we need to <em>fold</em> that key before pasting:</p><pre><code>[anurudh@localhost ~]$ fold -b -w 64 ~/.ssh/id_rsa.pub</code></pre><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><h4><strong>Now let&#8217;s jump into the Cisco device:</strong></h4><pre><code>[anurudh@localhost network_automation_ansible]$ ssh cisco@1.1.1.1(cisco@1.1.1.1) Password: 
R1#</code></pre><p>Inside the router</p><pre><code>anurudh@localhost network_automation_ansible]$ ssh cisco@1.1.1.1 (cisco@1.1.1.1) 
Password:  
R1#config t Enter configuration commands, one per line.  End with CNTL/Z. R1(config)#username ansible_admin
R1(config)#ip ssh pu 
R1(config)#ip ssh pubkey-chain  
R1(conf-ssh-pubkey)#username ansible_admin 
R1(conf-ssh-pubkey-user)#key-? key-hash  key-string   
R1(conf-ssh-pubkey-user)#key-str 
R1(conf-ssh-pubkey-user)#key-string  
R1(conf-ssh-pubkey-data)#</code></pre><p>we will paste public key copied  into cisco terminal </p><pre><code>R1(conf-ssh-pubkey-user)#key-string
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDiHucZaT0Q6dYc5LD5tYZBfiio
PY6WrsryPLV4K7ypw+bS92fWnPorNi5EUvJY4xJ46uCFvIj14JNGBHiUfDDbmX2Z
HqsIGe536fh1V7TmkQl/5n1Aq6tikzjui3tBgh5r7O5A3EF6HoU/FsFPGEWPDMLJ
P0uv2KIVcD5VJDr9SdR62x2b/+6ZhKV6R6v8seEk31El4oFyGIRh8G9e21avqhl9
ikoXor9SEaQx5WEVvO3vjHH+JWgyq2QfR3bqC4tXM+BRgpHiJ9PirL/unneZMAQD
/+relOVWymY2uMrtSZFvSoWWxE10CabAn2Lc2Fs7MQM6gRFWo4BaPJCCUMwvcv3g
7nmIAVY86BDYnzcSCCkR6xzrY4WB1OPfY9bDunDC3ZUWwMHzl/yB8pagl84g83/r
/FfGxABntnM7UMBC2rNHUYJYGSOp0GDTO5iJ2YabBoIy99tFEqzoXrqwHsuFxS/o
LtNC26eFFuEZ9eAYX1WbV2x9xWipnz6khJo6hw8= anurudh@localhost.local
domain                                                                                          </code></pre><p>Press enter and exit </p><pre><code>R1(conf-ssh-pubkey-data)#exit
R1(conf-ssh-pubkey-user)#
R1(conf-ssh-pubkey-user)#exit
R1(conf-ssh-pubkey)#</code></pre><h4><strong>Now test it again from your control node:</strong></h4><pre><code>[anurudh@localhost ~]$ ssh ansible_admin@1.1.1.1
R1#</code></pre><p>if you&#8217;re in without a password prompt&#8212;Great we have done it .</p><p>If not, and you're being asked for a password, try updating your SSH config:</p><pre><code>[anurudh@localhost ~]$ sudo vi /etc/ssh/ssh_config
</code></pre><p>add:</p><pre><code><code>PubkeyacceptedKeyTypes +ssh-rsa</code></code></pre><h5><strong>Lets run below playbook now</strong></h5><p>Here&#8217;s a simple Ansible playbook to check inventory details:</p><pre><code>[anurudh@localhost network_automation_ansible]$ cat 03_cisco_inventory_check 
---
 - name: Cisco inventory check
   hosts: ios_devices
   #
   gather_facts: false

   tasks: 
    - name: print Ansible config location
      ansible.builtin.debug:
        msg:
         - "{{ ansible_config_file }}"
         - "{{ inventory_file }}"
         - "{{ ansible_facts }}"
         - "{{ ansible_user }}"

[anurudh@localhost network_automation_ansible]$ </code></pre><p>run it </p><pre><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check </code></pre><p>You should see output like:</p><pre><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check 

PLAY [Cisco inventory check] *************************************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************************************************
ok: [R2]
ok: [R1]

TASK [print Ansible config location] *****************************************************************************************************************************************************
ok: [R1] =&gt; {
    "msg": [
        "/home/anurudh/network_automation_ansible/ansible.cfg",
        "/home/anurudh/network_automation_ansible/hosts.ini",
        {
            "net_api": "cliconf",
            "net_gather_network_resources": [],
            "net_gather_subset": [
                "default"
            ],
            "net_hostname": "R1", .....},
        "ansible_admin"
    ]
}
ok: [R2] =&gt; {
    "msg": [
        "/home/anurudh/network_automation_ansible/ansible.cfg",
        "/home/anurudh/network_automation_ansible/hosts.ini",
        {
            "net_api": "cliconf",
            "net_gather_network_resources": [],
            "net_gather_subset": [
                "default"
            ],
            "net_hostname": "R2", ....},            
        "cisco"
    ]
}

PLAY RECAP *******************************************************************************************************************************************************************************
R1                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
R2                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

[anurudh@localhost network_automation_ansible]$ </code></pre><p>So  R1 is using the <code>ansible_admin</code> user we set up for key-based access. R2 is still using the default <code>cisco</code> user from the group vars.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/ansible-mastery-part-3-lets-talk?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><h5>Lets check our inventory file</h5><pre><code>[anurudh@localhost network_automation_ansible]$ cat hosts.ini 

[routers]
R1 ansible_host=1.1.1.1 ansible_user=ansible_admin
R2 ansible_host=2.2.2.2

[ios_devices:children]
routers

[ios_devices:vars]
ansible_user=cisco
ansible_password=cisco
ansible_connection=network_cli
ansible_network_os=ios
[anurudh@localhost network_automation_ansible]$ </code></pre><p>R1 has its own user and SSH key setup. R2 falls back to the default group settings. Simple, flexible, and super clean.</p><p>let change private key file location to something different , if we get error after playbook , it means that ssh key  is working perfectecly </p><pre><code>[anurudh@localhost network_automation_ansible]$ cat hosts.ini 

[routers]
R1 ansible_host=1.1.1.1 ansible_user=ansible_admin ansible_ssh_private_key_file=<strong>/home/anurudh/.ssh/id_rsa_2</strong>
R2 ansible_host=2.2.2.2

[ios_devices:children]
routers

[ios_devices:vars]
ansible_user=cisco
ansible_password=cisco
ansible_connection=network_cli
ansible_network_os=ios
[anurudh@localhost network_automation_ansible]$ </code></pre><p>configured wrong file name &#8212;&gt; <code>/home/anurudh/.ssh/id_rsa_2</code></p><h5>lets run same playbook again</h5><pre><code><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check </code></code></pre><p>You should see output like:</p><pre><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check 

PLAY [Cisco inventory check] *************************************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************************************************
<strong>fatal: [R1]: FAILED! =&gt; {"ansible_facts": {}, "changed": false, "failed_modules": {"ansible.legacy.ios_facts": {"failed": true, "invocation": {"module_args": {"available_network_resources": false, "gather_network_resources": null, "gather_subset": ["min"]}}, "msg": "[Errno 2] No such file or directory: '/home/anurudh/.ssh/id_rsa_2'"}}, "msg": "The following modules failed to execute: ansible.legacy.ios_facts\n"}
ok: [R2]</strong>

TASK [print Ansible config location] *****************************************************************************************************************************************************
ok: [R2] =&gt; {
    "msg": [
        "/home/anurudh/network_automation_ansible/ansible.cfg",
        "/home/anurudh/network_automation_ansible/hosts.ini",
        {
            "net_api": "cliconf",
            "net_gather_network_resources": [],
            "net_gather_subset": [
                "default"
            ],
            "net_hostname": "R2" ....},
        "cisco"
    ]
}

PLAY RECAP *******************************************************************************************************************************************************************************
R1                         : ok=0    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0   
R2                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

[anurudh@localhost network_automation_ansible]$ </code></pre><p>R1 is failing as it not having correct ssh key path.  so we are good and  It means R1 is taking SSH authentication .</p><p>Lets modify inventory file and correct it </p><pre><code>[anurudh@localhost network_automation_ansible]$ cat hosts.ini 

[routers]
R1 ansible_host=1.1.1.1 ansible_user=ansible_admin ansible_ssh_private_key_file=/home/anurudh/.ssh/id_rsa
R2 ansible_host=2.2.2.2

[ios_devices:children]
routers

[ios_devices:vars]
ansible_user=cisco
ansible_password=cisco
ansible_connection=network_cli
ansible_network_os=ios
[anurudh@localhost network_automation_ansible]$ </code></pre><h5>lets run same playbook again</h5><pre><code><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check </code></code></pre><p>You should see output like:</p><pre><code>[anurudh@localhost network_automation_ansible]$ ansible-playbook 03_cisco_inventory_check 

PLAY [Cisco inventory check] *************************************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************************************************
ok: [R1]
ok: [R2]

TASK [print Ansible config location] *****************************************************************************************************************************************************
ok: [R2] =&gt; {
    "msg": [
        "/home/anurudh/network_automation_ansible/ansible.cfg",
        "/home/anurudh/network_automation_ansible/hosts.ini",
        {
            "net_api": "cliconf",
            "net_gather_network_resources": [],
            "net_gather_subset": [
                "default"
            ],
            "net_hostname": "R2".....},
        },
        <strong>"cisco"</strong>
    ]
}
ok: [R1] =&gt; {
    "msg": [
        "/home/anurudh/network_automation_ansible/ansible.cfg",
        "/home/anurudh/network_automation_ansible/hosts.ini",
        {
            "net_api": "cliconf",
            "net_gather_network_resources": [],
            "net_gather_subset": [
                "default"
            ],
            "net_hostname": "R1"......},
        <strong>"ansible_admin"</strong>
    ]
}

PLAY RECAP *******************************************************************************************************************************************************************************
R1                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
R2                         : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
</code></pre><p>We have done it !!!!</p><h3><strong>Action Step for You Today</strong></h3><p><strong>Just one thing:</strong> make sure to go through the concepts and follow along with the tasks. Try to complete them within two days after the post is published.</p><p>I&#8217;ll guide you, one simple post at a time.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/anurudh&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/anurudh"><span>Buy Me A Coffee</span></a></p><p>We will deep dive more into Ansible in upcoming posts. Don&#8217;t miss to DM or ping me with your queries and comments.</p><p>Smiles :)</p><p>Anurudh</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Understanding Key Differences in Infrastructure and Network Automation Tools]]></title><description><![CDATA[A Simple Guide to How These Tools Work and What Makes Them Unique]]></description><link>https://blog.growaith.com/p/understanding-key-differences-in</link><guid isPermaLink="false">https://blog.growaith.com/p/understanding-key-differences-in</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Mon, 28 Apr 2025 02:30:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_HAF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>As a network Engineer, we need to know some of the Major Architectural and Conceptual Differences Between Tools.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_HAF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_HAF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 424w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 848w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 1272w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_HAF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png" width="673" height="502" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:502,&quot;width&quot;:673,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:99154,&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://netomate.substack.com/i/162261665?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_HAF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 424w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 848w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.png 1272w, https://substackcdn.com/image/fetch/$s_!_HAF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16fdce68-8d13-47ec-9e63-851cd4fac38f_673x502.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 role="img" 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><title></title><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><p>When it comes to automation tools for networks and infrastructure, they aren't all built the same way. <br>Here are some important differences you should know &#8212; explained in a way that&#8217;s easy to understand:</p><div><hr></div><p><strong>1. Building vs. Setting Up Infrastructure</strong></p><ul><li><p><strong>Infrastructure provisioning</strong> is like <strong>building the house</strong> &#8212; setting up walls, roofs, windows, and doors (things like servers, network connections, and databases).</p></li><li><p><strong>Configuration management</strong> is like <strong>setting up the inside of the house</strong> &#8212; adding beds, lights, and furniture (installing and configuring the right software).</p></li></ul><p>Provisioning happens on <strong>Day 0</strong> (building), and configuration happens on <strong>Day 1</strong> (setting things up properly).</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/understanding-key-differences-in?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/understanding-key-differences-in?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/understanding-key-differences-in?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><div><hr></div><p><strong>2. Agent-Based vs. Agentless Tools</strong></p><ul><li><p><strong>Agent-based tools</strong> need a little helper (software) installed on each device to manage it.</p></li><li><p><strong>Agentless tools</strong> don&#8217;t need any helper installed; they connect directly.</p></li></ul><p>In networking, agentless tools are often better because many devices don&#8217;t allow installing extra software.</p><div><hr></div><p><strong>3. Centralized vs. Decentralized Control</strong></p><ul><li><p><strong>Centralized</strong> = one big "boss" server tells all devices what to do.</p></li><li><p><strong>Decentralized</strong> = devices manage themselves or work with each other without a central boss.</p></li></ul><div><hr></div><p><strong>4. Special Language vs. Common Language</strong></p><ul><li><p>Some tools use their <strong>own special language</strong> (DSL), and you have to learn it to use the tool.</p></li><li><p>Other tools use common formats like <strong>YAML</strong>, making it easier because many people already know it.</p></li></ul><div><hr></div><p><strong>5. Declarative vs. Imperative Approaches</strong></p><ul><li><p><strong>Declarative</strong> = you say what you want ("I want a red living room") and the system figures out how to do it.</p></li><li><p><strong>Imperative</strong> = you tell it step-by-step ("First paint the wall red, then bring in a big sofa").</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p></li></ul><div><hr></div><p><strong>6. Extending Tools with Programming</strong></p><ul><li><p>Many tools let you <strong>add extra features</strong> using common languages like <strong>Python</strong> or <strong>Go</strong> &#8212; kind of like upgrading your house with smart gadgets.</p></li></ul><div><hr></div><p><strong>7. Push, Pull, and Event-Driven Actions</strong></p><ul><li><p><strong>Push model</strong> = you send instructions to the devices.</p></li><li><p><strong>Pull model</strong> = devices ask for new instructions themselves.</p></li><li><p><strong>Event-driven</strong> = devices act when something specific happens (like turning on lights when someone rings the doorbell).</p></li></ul><div><hr></div><p><strong>8. Mutable vs. Immutable Infrastructure</strong></p><ul><li><p><strong>Mutable</strong> = you change things in the house while living in it (like repainting while living there).</p></li><li><p><strong>Immutable</strong> = if you want changes, you build a <strong>brand-new house</strong> and move in.</p></li></ul><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share Automation&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share Automation</span></a></p><p><strong>9. Managing the "State" of Infrastructure</strong></p><ul><li><p>Some tools <strong>don&#8217;t remember</strong> what was changed &#8212; you have to check manually.</p></li><li><p>Other tools <strong>keep track</strong> of everything they built and know when something needs to be rebuilt or fixed.</p></li></ul><p>Smiles:)</p><p>Anurudh</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/anurudh&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/anurudh"><span>Buy Me A Coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[From Rule-Based Systems to Learning Machines: A Personal Journey into AI]]></title><description><![CDATA[From Rule-Followers to Pattern-Finders: How AI Learned to Think Smarter]]></description><link>https://blog.growaith.com/p/from-rule-based-systems-to-learning</link><guid isPermaLink="false">https://blog.growaith.com/p/from-rule-based-systems-to-learning</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sun, 27 Apr 2025 02:30:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3Yu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Welcome back to our Journey to AI. If you are new to here , don&#8217;t miss to check out earlier post  &#8220;How Traditional AI system think &#8220;,</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;4c35c424-09d4-4e93-8fdc-6ee31708c47a&quot;,&quot;caption&quot;:&quot;Traditional AI = Knowledge Base + Inference EngineThanks for reading Network Automation! Subscribe for free to receive new posts and support my work.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Traditional AI Systems Think&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:332955290,&quot;name&quot;:&quot;Anurudh&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65e70e32-c367-4039-a741-d221ecb97850_144x144.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-04-21T02:30:44.478Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23e7ab2c-101f-4d77-93b9-689da6fe4763_565x367.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://netomate.substack.com/p/how-traditional-ai-systems-think&quot;,&quot;section_name&quot;:&quot;&#128104;&#8205;&#128187;&#129504; Gen AI&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:161735558,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Automation&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2978784c-71a4-48e0-ad3b-fec440d2d2ee_94x94.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Have you wondered how computer can recognize face , talk like human , suggest for next movie or even suggest what you need to buy . Let's explore this transformation together.</p><h3>The Early Days: Traditional AI</h3><p>A long time ago , Scientist wanted computer to think like people. This idea was called Traditional AI. Because of their work, computers got better at solving problems and understanding information.</p><p>One smart person, John McCarthy, made a special computer language called Lisp to help with AI. Lisp is really good at working with symbols, like letters and numbers. Even today, some scientists still use it when working on AI.</p><p>Thanks to Traditional AI, we also learned more about how the human brain works and how computers can copy some of that thinking.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.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="https://blog.growaith.com/subscribe?"><span>Subscribe now</span></a></p><p>But Traditional AI had some trouble. It followed very strict rules and didn&#8217;t do well with messy or confusing problems. So, people came up with better ways to make AI smarter &#8212; like machine learning and deep learning. These new methods help computers learn from a lot of data instead of just following rules.</p><p>That&#8217;s how AI keeps getting better and better over time!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MdcK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MdcK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 424w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 848w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 1272w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MdcK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png" width="280" height="288" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/158ee836-d830-41e1-b90c-9071df4470d2_280x288.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:288,&quot;width&quot;:280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:24604,&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://netomate.substack.com/i/162177318?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MdcK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 424w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 848w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.png 1272w, https://substackcdn.com/image/fetch/$s_!MdcK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F158ee836-d830-41e1-b90c-9071df4470d2_280x288.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 role="img" 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><title></title><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>The Shift: Embracing ML and DL</h3><p>Today, there are two main types of smart computer programs: Machine Learning (ML) and Deep Learning (DL). They both learn from data, but they do it in different ways.</p><p>It's important for people who build and use these programs to know the difference between ML and DL. This helps them pick the best one for what they need.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/p/from-rule-based-systems-to-learning?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.growaith.com/p/from-rule-based-systems-to-learning?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p></p><p>Knowing about both also helps people come up with new and better ideas. Sometimes, they even mix ML and DL together to get the best of both! For example, they might use ML first to clean up and organize the data, and then use DL to find really tricky patterns and make smart guesses.</p><h3>Machine Learning (ML)</h3><p>Machine Learning (ML) is when computers use different algo to get better at tasks the more they practice.</p><p>In simple words, ML is like teaching a computer by giving it lots of examples. After learning from these examples, the computer can guess or figure out things it has never seen before!</p><p>A good example is how email spam filters work:</p><p>The computer looks at tons of old emails that were marked as "spam" and "not spam," learns the difference, and then tries to catch new spam emails all by itself.</p><h3>Deep Learning (DL) </h3><p>Deep Learning (DL) is a special kind of Machine Learning.</p><p>It uses something called artificial neural networks, which are a lot like the way our brains work. These networks have many layers that help computers learn from huge amounts of information.</p><p>Deep Learning can look at things like pictures, words, or sounds and figure out patterns.</p><p>For example, it can help a computer look at a photo and say what&#8217;s in it!</p><p>Because DL uses so much data and many smart layers, it can be very, very good at things like recognizing faces in pictures or understanding what someone says in a recording.</p><h3>Data Needs for ML and DL</h3><p>Machine Learning (ML) doesn&#8217;t need a lot of data to work well.</p><p>Imagine you want to teach a computer to guess house prices &#8212; you only need a small list with basic information like house size and number of rooms.</p><p>Since it doesn&#8217;t need tons of examples, it&#8217;s faster to teach and doesn&#8217;t need super powerful computers.</p><p>ML is also easier to understand &#8212; you can usually figure out why it made a certain choice.</p><p>That&#8217;s why ML is great when you don&#8217;t have much information or when the information is nice and neat (like tables).</p><p>But ML struggles with messy stuff like pictures or sounds.</p><p>Deep Learning (DL) is different &#8212; it needs way more data, especially messy things like photos, music, or books.</p><p>Even if the information looks small (like a short story), DL still takes a lot of time because it has to work really hard to understand it.</p><p>Teaching a DL computer to recognize voices, for example, could take days or even weeks!</p><p>It also needs big, powerful computers to do all that work.</p><p>And, it's much harder to understand how DL makes decisions because it&#8217;s like a giant maze inside the computer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sXz-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sXz-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 424w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 848w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 1272w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sXz-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png" width="606" height="99" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:99,&quot;width&quot;:606,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8533,&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://netomate.substack.com/i/162177318?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sXz-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 424w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 848w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 1272w, https://substackcdn.com/image/fetch/$s_!sXz-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fa8219d-72ea-4a04-9016-00f3a3e5d38e_606x99.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.growaith.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Automation! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p>We will talk more about AI in coming posts.</p><p>Smiles :)</p><p>Anurudh</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/anurudh&quot;,&quot;text&quot;:&quot;Buy Me a Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/anurudh"><span>Buy Me a Coffee</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[☕️ Buy Me a Coffee]]></title><description><![CDATA[Love what I&#8217;m doing?]]></description><link>https://blog.growaith.com/p/buy-me-a-coffee</link><guid isPermaLink="false">https://blog.growaith.com/p/buy-me-a-coffee</guid><dc:creator><![CDATA[Dubey]]></dc:creator><pubDate>Sat, 26 Apr 2025 07:06:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Zwxo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Love what I&#8217;m doing? You can support my work here &#128153; Your support keeps this project alive and thriving. </p><p>&#9749;&#65039; Buy Me a Coffee</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/anurudh&quot;,&quot;text&quot;:&quot;&#9749;&#65039; Buy Me a Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://buymeacoffee.com/anurudh"><span>&#9749;&#65039; Buy Me a Coffee</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Zwxo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Zwxo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 424w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 848w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 1272w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Zwxo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png" width="423" height="432" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/851dc4c9-8318-423c-b517-225c370ab571_423x432.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:432,&quot;width&quot;:423,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:78887,&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://netomate.substack.com/i/161909351?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Zwxo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 424w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 848w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.png 1272w, https://substackcdn.com/image/fetch/$s_!Zwxo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851dc4c9-8318-423c-b517-225c370ab571_423x432.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 role="img" 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><title></title><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><p></p><p></p>]]></content:encoded></item></channel></rss>