<?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"><channel><title><![CDATA[Arjun_MK]]></title><description><![CDATA[Arjun_MK]]></description><link>https://content.mkarjun.com</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 21:29:02 GMT</lastBuildDate><atom:link href="https://content.mkarjun.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[DeepSeek Unleashed – Part 1: From Bedrock to Control]]></title><description><![CDATA[By Arjun Manoj Kumar K, DevOps Engineer | AI Enthusiast
“November 30th  2022. ChatGPT dropped. And everything changed.”
LLMs went from research labs to everyday tools — fast.But spinning one up yourself? Still feels... a little rough.
In this two-par...]]></description><link>https://content.mkarjun.com/deepseek-from-bedrock-to-control</link><guid isPermaLink="true">https://content.mkarjun.com/deepseek-from-bedrock-to-control</guid><category><![CDATA[Deepseek]]></category><category><![CDATA[AI]]></category><category><![CDATA[AWS]]></category><category><![CDATA[bedrock]]></category><category><![CDATA[ollama]]></category><dc:creator><![CDATA[Arjun Manoj Kumar]]></dc:creator><pubDate>Mon, 28 Apr 2025 06:11:30 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1745820245979/6aecdd5f-9899-4e9c-847e-ba15d0e31cee.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>By Arjun Manoj Kumar K, DevOps Engineer | AI Enthusiast</em></p>
<p>“November 30<sup>th</sup>  2022. ChatGPT dropped. And everything changed.”</p>
<p>LLMs went from research labs to everyday tools — fast.<br />But spinning one up yourself? Still feels... a little rough.</p>
<p>In this two-part blog, I’ll walk you through how to run <strong>DeepSeek</strong>, one of the most capable open-source LLMs today — first on <strong>AWS Bedrock</strong>, then on your <strong>own machine</strong> with <strong>Ollama</strong>.</p>
<p>Before we dive into terminals and code, we'll make sense of a few key AI building blocks:<br /><em>Inference, weights, parameters, tokens — and even a peek at</em> what exactly is this new architecture called <strong>MAMBA</strong>?</p>
<p>Don’t worry, I’ve got you.<br />This isn’t a lecture — it’s a dev-to-dev download.</p>
<p>Grab your coffee. Let’s boot up the cloud.</p>
<h3 id="heading-llm-101-inference-weights-and-transformers-oh-my"><strong>LLM 101: Inference, Weights, and Transformers (Oh My!)</strong></h3>
<p>Before we get our hands dirty with DeepSeek, let’s cover a few basics of large language models (LLMs) in plain English:</p>
<ul>
<li><p><strong>Parameters and Weights:</strong> You can think of <em>parameters</em> as the internal configuration or “knowledge” of an LLM. These are often referred to as <em>weights</em> – essentially giant tables of numbers that the model has learned during training. Modern LLMs have lots of these; for example, DeepSeek has <strong>671 billion</strong> parameters (The DeepSeek variant we'll use, for example, packs about <strong>8 billion</strong> parameters!). The more parameters, generally, the more knowledge or nuance a model can have – but it also means more computing power needed to run it. When someone says “a 13B model,” they mean 13 billion parameters. These weights are what get loaded into memory when you “boot up” the model.</p>
</li>
<li><p><strong>Tokens &amp; Tokenization:</strong> When you type a sentence into a model like DeepSeek, it doesn’t actually understand words the way we do. Instead, it breaks everything down into tokens, which are like bite-sized pieces of text. A token might be a full word ("hello"), part of a word ("tion"), or even just punctuation ("!"). This process is called tokenization, and it’s the model’s first step in trying to make sense of language.</p>
</li>
</ul>
<blockquote>
<p>For example, the sentence:</p>
<p>"Transformers are cool!"</p>
<p>might get split into tokens like:</p>
<p>["Transform", "ers", " are", " cool", "!"]</p>
</blockquote>
<ul>
<li><strong>Embeddings:</strong> Once text is tokenized, the model still can’t process it as-is — it needs numbers. That’s where <strong>embeddings</strong> come in. An embedding is basically a <strong>vector representation</strong> of a token — a list of numbers that captures its meaning based on context. It’s like giving the model a way to understand that:</li>
</ul>
<blockquote>
<p>"dog" and "puppy" are similar,<br />but "dog" and "banana"... not so much.</p>
</blockquote>
<ul>
<li><p><strong>Inference (vs. Training):</strong> <em>Training</em> an LLM is the heavyweight process of updating those billions of weights by showing the model tons of examples (this is done by the model’s creators and can take weeks on supercomputers). <em>Inference</em>, on the other hand, is what <strong>we</strong> do as users: it’s when we feed input to a pre-trained model and get an output (a prediction). Inference is basically <em>using</em> the model to generate text. For instance, asking DeepSeek a question and getting an answer is an inference. It’s much less intensive than training, but for big models it can still be slow or require powerful hardware. In short, inference = <strong>running the model forward</strong> to get results (no learning happening at that time).</p>
</li>
<li><p><strong>Transformer Architecture:</strong> Most state-of-the-art LLMs today (including DeepSeek) are based on something called the <em>Transformer</em> architecture. Without diving too deep, the Transformer is a type of neural network that introduced a magic ingredient known as “self-attention.” Attention mechanisms let the model weigh the importance of different words in the input when generating each word of the output. Imagine you’re writing a reply to someone – you “pay attention” to the relevant parts of what they said. Transformers do this at scale and in multiple layers. This architecture was revolutionary because it allowed models to handle very long text inputs and outputs far more effectively than older recurrent neural networks. If you hear about “GPT-style” models, that basically means a Transformer-based model. So when we use DeepSeek, under the hood there’s a Transformer network doing the heavy lifting: reading the input text, figuring out which bits matter, and then producing a coherent response one token at a time. Neat, huh?</p>
</li>
</ul>
<p>Now, keep in mind that the AI field moves fast. Transformers were bleeding edge for a while, but researchers are exploring new architectures to address some of Transformers’ limitations, like the heavy compute cost for very long inputs. One of those contenders is MAMBA, which we’ll touch upon now.</p>
<h3 id="heading-beyond-transformers-meet-mamba-the-new-kid-on-the-block"><strong>Beyond Transformers: Meet MAMBA, the New Kid on the Block</strong></h3>
<p>You might have heard whispers about architectures beyond Transformers. <strong>MAMBA</strong> is one such new approach that’s generating buzz. So, what is MAMBA?</p>
<p>In a nutshell, <strong>MAMBA is a new LLM architecture that integrates something called the Structured State Space (S4) model to handle lengthy sequences of data</strong>​. The S4 technique borrows ideas from older sequence models (like RNNs and signal processing) to efficiently capture long-range dependencies. This means MAMBA-based models aim to <strong>manage very long context lengths with better efficiency</strong> than transformers, which tend to get slow or memory-hungry as context grows. In fact, MAMBA tries to combine the best of various approaches – recurrent models, convolutional models, etc. – to simulate long-term dependencies in text​.</p>
<p>What does that mean for you? Potentially, future LLMs may be a future DeepSeek version? could handle book-sized inputs or huge documents <em>much</em> faster using architectures like MAMBA. For example, where a transformer might choke or take forever on a thousands-of-words prompt, a MAMBA model could breeze through with linear scalability (no exponential slowdowns as the text grows). This is still an area of active research, but it’s exciting because it shows how the landscape is evolving.</p>
<p>For this blog, we’ll be working with DeepSeek, which (as of the R1 version) is still a Transformer-based model. But it’s cool to know what’s on the horizon. If nothing else, you can drop “structured state-space models” in your next friends chat to sound a bit extra intelligent. 😄 The key takeaway: <strong>Transformer models are the current standard, but architectures like MAMBA hint at a future where LLMs get even faster and handle more data with ease.</strong></p>
<p>With the groundwork set, let's dive into DeepSeek!</p>
<h3 id="heading-what-is-deepseek"><strong>What Is DeepSeek?</strong></h3>
<ul>
<li><p><strong>DeepSeek-R1</strong> is an open-source large language model that burst onto the scene in late 2024. It was in the spotlight for its strong reasoning abilities in areas like math and coding. In fact, DeepSeek has demonstrated performance on par with some of OpenAI’s models, at a fraction of the cost or resource requirements​. For Eg, it reportedly scored about <strong>79.3% on the AIME 2024 math competition</strong> and did well on a software engineering benchmark– these are tough tests, so those numbers turned heads. The model was developed by a team with the goal of pushing reasoning capabilities in an open manner. It’s released under the MIT license.</p>
</li>
<li><p>Being open-source has a couple of big implications. <strong>First</strong>, we can actually look under the hood – the architecture, training data, and weights are accessible, not a proprietary secret. That allows the community to understand its strengths and limitations, and even improve it. <strong>Second</strong>, we’re free to deploy DeepSeek on our own infrastructure. No dependency on a specific cloud provider or API – you could run it in AWS (as we will soon), on your own servers, or even on a beefy laptop. This freedom lets organizations avoid vendor lock-in and gives developers like us a playground to experiment without hefty paywalls.</p>
</li>
<li><p>DeepSeek comes in a few flavors. The main DeepSeek-R1 model is a large one (671 billion Parameters, similar scale to GPT-3 or beyond). Recognizing not everyone has the means to run a huge model, the creators also provided <strong>distilled,</strong> smaller versions – essentially compressed models that retain a lot of the capabilities of the big one, but with far fewer parameters. In this guide, we’ll use <strong>deepseek-r1:8B</strong> (an 8-billion parameter variant distilled from the original)​. It’s much easier to host and experiment with 8B than, say, 34B or more. Think of it as DeepSeek’s little sibling that hasn’t been to the gym – smaller in size, still pretty strong.</p>
</li>
</ul>
<p>Alright, now that we know who DeepSeek is and have some context, let’s actually run this thing! We’ll start with the cloud route: AWS Bedrock.</p>
<h3 id="heading-running-deepseek-on-aws-bedrock"><strong>Running DeepSeek on AWS Bedrock</strong></h3>
<p>Let’s go step-by-step through getting DeepSeek running on Bedrock.</p>
<ul>
<li><strong>Accessing DeepSeek on Bedrock</strong></li>
</ul>
<p>First, you’ll need an AWS account with access to Bedrock. In the AWS Management Console, navigate to <strong>Amazon Bedrock</strong>. Under <strong>Bedrock configurations</strong>, find <strong>Model access</strong> in the sidebar. Here, you’ll see a list of available models from various providers (Amazon’s own models, Anthropic, Cohere, Stability, and many others – Bedrock is a bit like a model marketplace). Look for the <strong>DeepSeek</strong> section. You should see <strong>DeepSeek-R1</strong> listed as a model under that category.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745917960793/e209542d-2834-42f3-867d-b53cfa413728.png" alt class="image--center mx-auto" /></p>
<p><em>Screenshot: The AWS Bedrock console’s Model Access panel, showing DeepSeek-R1 in the list of base models (with access granted).</em></p>
<p>In my case, after I clicked “Request access” for DeepSeek-R1 and got the green light, I was ready to use the model. You might only have to do this once. Now the DeepSeek model is enabled for your account. Time to test it out!</p>
<ul>
<li><strong>Testing DeepSeek in the Bedrock Playground</strong></li>
</ul>
<p>AWS Bedrock provides a handy UI called the <strong>Playground,</strong> where you can interact with models directly in the browser. On the left menu, click <strong>Playgrounds</strong>, then choose <strong>Chat/Text</strong> (since DeepSeek is a text generation model). At the top of the Playground interface, there’s a drop-down to <strong>select a model</strong>. Click that, and you’ll see categories for each provider. Choose <strong>DeepSeek</strong>, and then select <strong>DeepSeek-R1</strong> as the model. DeepSeek supports an up to 128k context window on Bedrock ​. Hit <strong>Apply</strong> to confirm the model selection.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745817506652/5a89e426-30b9-4bf6-92a5-f64ee0e98f84.png" alt class="image--center mx-auto" /></p>
<p><em>Screenshot: Selecting DeepSeek-R1 in the Bedrock Playground. Under “Model providers” you can see DeepSeek (alongside Amazon, Anthropic, etc.), and we’ve chosen the DeepSeek-R1 model.</em></p>
<p>With the model selected, you can enter a prompt in the text box and hit send. For example, try something simple like: <strong>“Hello DeepSeek, can you solve 2+2?”</strong>. In a few seconds, you should get a response from the model right there in the browser. (DeepSeek might return something like “4” or a brief explanation – it’s good at complex math reasoning also.). This playground is nice for quick experiments. I gave it a more complex math word problem from a textbook and it actually wrote out the reasoning steps and solution, which was impressive to see live.</p>
<p>So the Playground confirms everything is working. But the real power is using DeepSeek in your applications via code. Let’s see how to do that.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745918798969/e04e6a4d-dd9b-4c49-b08f-49a903a48d12.png" alt class="image--center mx-auto" /></p>
<ul>
<li><strong>Challenges &amp; Workarounds:</strong> When I first started, I did the CLI approach. The gotcha was that the CLI returns the result in a bytestream, which isn’t directly printed to the terminal. That’s why I had to output to a file and then check the file. It felt a bit roundabout – copying JSON strings and opening files in VS Code just to see the answer. Switching to a simple Python script with boto3 made things easier since I could see the output directly in my VS code output. So, <strong>if you’re iterating as a developer, I’d recommend using boto3 or an SDK</strong> instead of the CLI.</li>
</ul>
<p>Another thing I encountered was apart from bedrock or deepseek, I was running sso role, so initially hit a few blocks there.</p>
<ul>
<li><strong>Invoking DeepSeek via Python (with Boto3)</strong></li>
</ul>
<p>Once you’ve got access to AWS Bedrock, there are two ways to interact with DeepSeek:</p>
<ol>
<li><p>InvokeModel – for simple, one-shot prompts (like asking a question, getting an answer).</p>
</li>
<li><p>Converse – for multi-turn chat-like conversations where the model remembers previous context.</p>
</li>
</ol>
<p>Even though DeepSeek is tuned for dialogue, you can use either. If you're building a chatbot, Converse feels more natural. But if you just want a quick answer or run one-off prompts from your script or terminal, InvokeModel works great too.</p>
<ul>
<li><strong>Using Python (Boto3 SDK)</strong></li>
</ul>
<p>Let’s be real — CLI gets messy fast. For better flexibility and cleaner code, you can use Python with Boto3. Here's a full working script I ran myself:</p>
<p><a target="_blank" href="https://github.com/mkarjun/AWSDeepSeekTest/blob/main/DS.py"><strong>https://github.com/mkarjun/AWSDeepSeekTest/blob/main/DS.py</strong></a></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1745919723089/44c4e533-378a-490a-b9af-de53a4e0a6c7.png" alt class="image--center mx-auto" /></p>
<ul>
<li><strong>Tuning and Guardrails</strong></li>
</ul>
<p>Bedrock also comes with <strong>Guardrails</strong> – basically content filters and controls you can enable for the model. In the Bedrock console, you can define rules to block certain kinds of content. For example, you could create a guardrail to filter out any output that looks like sensitive info or contains specific keywords (like “politics” or others)​. This is really useful if you’re deploying an app in production and want to ensure the model doesn’t say something out-of-line or reveal confidential data. DeepSeek being fully managed on Bedrock means it can take advantage of these enterprise features (monitoring, logging, access control, etc.) that AWS provides​.</p>
<p><em>Alright – we’ve successfully run DeepSeek in the cloud! We saw that it can be done through a nice UI or via code, and noted some tricks (like prompt formatting and using the SDK). But what if you want to run DeepSeek</em> <strong><em>offline, on your own hardware</em></strong>*? Maybe you don’t want to rely on an internet service, or you want to experiment with the model locally for free. That’s where* <strong><em>Ollama</em></strong> <em>comes in.</em></p>
<p>Conclusion – Part 1: From Spinning Up to Taking Control</p>
<p>So far, we’ve tamed the beast in the cloud. DeepSeek runs cleanly through Bedrock — efficient, powerful, wrapped in AWS polish. You typed. It answered. Simple.</p>
<p>But let me tell you something:<br />This... was just the beginning.</p>
<p>What happens when you unplug from the cloud? When you go completely local — no safety nets, no billing dashboards, no external dependencies. Just you… and the raw weight of an 8 billion parameter model pulsing in your machine’s RAM.</p>
<p>In Part 2, we ditch the cloud and go full rogue. We’ll drag DeepSeek down from the heavens and run it where it wasn’t designed to thrive — in the trenches of your laptop, powered by coffee and curiosity.</p>
<p>The revolution won't be deployed — it’ll be downloaded.</p>
<p>See you in Part 2.</p>
]]></content:encoded></item><item><title><![CDATA[DeepSeek Unleashed – Part 2: The Core]]></title><description><![CDATA[In Part 1, we saw DeepSeek in the cloud. Bedrock handled the weight, scaled the compute, and gave us a sleek, managed interface to explore the model’s power — all buttoned up in AWS-grade polish.But now, it’s time to pull the plug — literally.No cons...]]></description><link>https://content.mkarjun.com/deepseek-unleashed-part-2-the-core</link><guid isPermaLink="true">https://content.mkarjun.com/deepseek-unleashed-part-2-the-core</guid><category><![CDATA[Deepseek]]></category><category><![CDATA[llm]]></category><category><![CDATA[AI]]></category><category><![CDATA[Devops]]></category><category><![CDATA[Cloud Computing]]></category><category><![CDATA[ollama]]></category><category><![CDATA[Docker]]></category><dc:creator><![CDATA[Arjun Manoj Kumar]]></dc:creator><pubDate>Sun, 27 Apr 2025 18:30:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1770206849412/b7c0f8ed-c0be-4420-a1d6-b7a7e913e66b.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In Part 1, we saw DeepSeek in the cloud. Bedrock handled the weight, scaled the compute, and gave us a sleek, managed interface to explore the model’s power — all buttoned up in AWS-grade polish.<br />But now, it’s time to pull the plug — literally.<br />No consoles. No surprise costs. No “your session will start shortly.”<br />Just you, a terminal, and a language model quietly sitting in your machine, waiting to be unleashed.</p>
<p>This isn’t just fun — it’s freedom.</p>
<p>In this part, we’re going fully local. We’ll run DeepSeek using a tool called Ollama, turning your laptop (or server) into a private LLM playground. Think of it like strapping a jet engine to your dev environment — minus the cloud bill.<br />And here's the kicker: this isn't limited to laptops. The same setup can be extended to EC2, ECS, or any on-prem rig, giving you a fully private, production-ready LLM — one that you own, control, and can lock behind your own firewalls.<br />If the cloud was convenience, this is sovereignty.  <strong>Let’s light it up !.</strong></p>
<p><strong>Running DeepSeek Locally with Ollama</strong></p>
<p>Now for the DIY enthusiasts: running an LLM on your own machine. This can be intimidating because of the hardware requirements, but it’s getting easier every day thanks to projects like <strong>Ollama</strong>. Ollama is an open-source tool that makes it super simple to download and run large language models on your computer. It handles a lot of the heavy lifting (like managing model files, running a server, and even providing a web UI). Ollama can act as your personal “AI engine” – kind of like having a mini AI, but on your laptop!</p>
<p>Here’s how I got DeepSeek working locally with Ollama:</p>
<p><strong>1. Setting Up Ollama</strong></p>
<p><strong>Install Ollama:</strong> Ollama supports MacOS and Linux natively, and Windows via WSL or a preview build. On Mac, the easiest way is Homebrew: brew install ollama. On Linux, you can use Docker (or there are .deb packages for some distros). I went the Docker route, which was as simple as running:</p>
<p>docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama</p>
<p>This pulls the latest Ollama Docker image, runs it in the background (-d), and opens port 11434 which Ollama uses to serve its API/UI. We also mount a volume for model data (-v ollama:/root/.ollama) so that models you download are persisted on your disk (so you don’t have to re-download every time you restart the container). If you have a GPU and want to use it, add --gpus=all to that command – Ollama can then utilize your NVIDIA GPU to speed up inference​. I didn’t have a beefy GPU on my machine, so I ran on CPU which works but obviously slower.</p>
<p>Ollama also has a simple web interface: if you visit http://localhost:11434 in your browser, you should see a minimal UI where you can select and chat with models. (When no model is loaded, it’ll just be empty or show an example to install one.)</p>
<p><strong>2. Obtaining the DeepSeek Model Weights</strong></p>
<p>Here’s the part where many people get stuck: you need the actual model files to run an LLM locally. These files can be <strong>large</strong>. The full DeepSeek-R1 model is huge (dozens of GB), so as mentioned we’ll use the 8B distilled version. Even 8B can be multi-gigabyte, but it’s manageable.</p>
<p><strong>Quantization:</strong> To make models feasible to run on typical hardware, people often use <em>quantized</em> versions. Quantization means reducing the precision of the model’s numbers (e.g., from 16-bit floats to 4-bit integers), dramatically shrinking the size with only minor loss in accuracy. There’s a popular format called <strong>GGUF</strong> (a variant of the GGML format) which is great for local models. In fact, Ollama works natively with GGUF models. Many community model providers (like <strong>TheBloke</strong> on Hugging Face) release LLMs in GGUF format for easy local usage. I looked for DeepSeek-R1 in GGUF form and found one. You might find it on Hugging Face under a repository like unsloth/DeepSeek-R1-GGUF or similar.</p>
<p><strong>Tip:</strong> If you have ollama CLI installed, you could also try ollama pull deepseek (if someone has published a model with that name in the Ollama library). At the time of writing, DeepSeek isn’t (yet) one of the default library models, so we do a manual import.</p>
<p>For Deepseek Ollama checkout https://ollama.com/library/deepseek-r1</p>
<p><strong>3. Running Inference Locally with Ollama</strong></p>
<p>Now for the exciting part: actually chatting with DeepSeek locally! To start using the model, you simply run:</p>
<p>ollama run deepseek-r1</p>
<p><img alt /></p>
<p>This will initiate the model and drop you into an interactive prompt (a bit like a REPL or a chat interface in your terminal). The first time it loads the model, you’ll see it allocate memory and it might take a few seconds to warm up those billions of parameters. Once it’s ready, you’ll get a prompt where you can type. Try an example: <em>“Hello, what is the capital of France?”</em> and hit enter. DeepSeek (running entirely on your machine now) will think for a moment and then hopefully respond with <em>“The capital of France is Paris.”</em> – or perhaps a slightly longer explanation, depending on how it was configured to respond. Usually if we create a modal on our own at this first test you might find modern art-like sentences which I do not understand much</p>
<p>I was giddy the first time I saw a serious LLM generating text on my humble machine [16 GB RAM without GPU] without any cloud services involved. It truly feels like having a pet genie in your computer.</p>
<p>You can have a multi-turn conversation by continuing to type prompts. Ollama will by default handle the conversation context for you, up to whatever the model’s context length is (often these GGUF quantized models support 2048 or 4096 tokens context by default, though some might go higher). Keep in mind, <em>all</em> the computation is happening on your hardware now, so don’t expect lightning speed unless you’ve got a monster rig. On my test with an 7B model on CPU, simple questions took a few minutes, while complex requests might take more for a few hundred tokens of answer. If you have a decent GPU and enabled it, times will be much better.</p>
<p><img alt /></p>
<p><strong>System Requirements &amp; Limitations:</strong> What kind of system do you need to do this comfortably? There’s no one-size answer – it depends on model size and quantization. Generally, the more RAM the better. For an 8B parameter model, if it’s 4-bit quantized, you might only need ~4-8 GB of RAM free. My HP Pavilion with 16GB RAM could handle it, but it was using a big chunk of memory. If you try a 30B model, you’d likely need 16GB+ RAM and a lot of patience (or ideally a GPU with at least 15-20 GB VRAM if running 4-bit). Always check the model documentation; many community sharers will note recommended RAM. As a rule, start with smaller models (7B, 13B) and work your way up. It’s amazing what even a 7B model can do nowadays.</p>
<p>it’s incredibly empowering to run LLMs locally. No API costs, no rate limits, and you can even <strong>hack</strong> the model if you’re into that (for example, applying fine-tuning or feeding it custom data). But that’s a story for another day!</p>
<p><strong>Cloud vs Local – Which to Choose?</strong></p>
<p>We’ve successfully run DeepSeek on AWS Bedrock <strong>and</strong> our local machine via Ollama. Give yourself a high five!! That was a lot to cover. By now, you’ve seen that there are trade-offs between the two approaches:</p>
<ul>
<li><p><strong>AWS Bedrock (Cloud)</strong>: Huge advantages in ease of use. You get <strong>scalability</strong>, <strong>power</strong> (use large versions of the model with long context lengths and strong performance), and managed <strong>security</strong> (data stays under your control with AWS’s policies, plus guardrails to filter outputs)​. The downside is cost – you pay per request/token, so heavy usage can rack up a bill. Also, you need an internet connection and for some folks, dealing with AWS setup might be a bit of a learning curve (though we hope our steps made it clearer).</p>
</li>
<li><p><strong>Ollama (Local)</strong>: You have <strong>full control</strong> and <strong>privacy</strong> (your data never leaves your machine). It’s essentially free after the upfront hardware investment. It’s great for development, prototyping, or just tinkering with AI for learning. You can even use it offline. The challenges are the <strong>hardware limits</strong> – you can’t easily run gigantic models if your computer can’t handle them. Inference will be slower than on cloud GPUs. And sometimes you have to jump through a hoop (like converting models to the right format) – though projects like Ollama are smoothing that out rapidly, Also you can design an private architecture using Ollama in EC2 or container environments.</p>
</li>
</ul>
<p>Conclusion – Part 2: The Model in the Machine</p>
<p>So there it is. You’ve come full circle — from invoking DeepSeek through a cloud API to summoning it straight from your SSD.<br />No more waiting for tokens to drip in from the internet.<br />No more wondering if you’ve hit your rate limit. Just your local compute, spinning up billions of neurons at your command.<br />It’s not perfect — sure, it might be slower, and your laptop fan may now sound like a mini jet engine. But it’s yours. And it’s powerful.<br />This opens up new ways to build — offline-first apps, privacy-heavy experiments, or even fine-tuned niche models stitched together into your own Frankenstein stack.</p>
<p><strong><em>The cloud was Act One. Local is the twist. And what comes next? That’s entirely up to you. !</em></strong></p>
<p>In reality, you’ll probably use both setups depending on the need: Bedrock for fast, production-grade delivery and Ollama (or EC2-based local deployments) when you want full control, offline capability, or air-gapped privacy.</p>
<p>If you’re building something more secure, spinning up an on-prem rig or EC2 instance with DeepSeek gives you a private LLM pipeline with zero data leaving your infrastructure.</p>
<p>It’s like having your own Jarvis — only quieter, and hopefully not plotting your downfall.</p>
<p><em>“As for me? I keep wondering — do we really need 600B+ parameter models, when we can run smaller, purpose-driven ones and stitch them together like modular AI legos?</em></p>
<p><em>Might sound simpleton, but that’s where my head’s at.”</em></p>
<p>P.S. A huge shoutout to the minds who’ve made my diving into LLMs a whole lot more accessible and inspiring — special thanks to <strong>Chip Huyen</strong> for her clear writing and practical perspectives, and to <a target="_blank" href="https://karpathy.ai/"><strong>Andrej Karpathy</strong></a> for always making the complex feel intuitive.</p>
<p>Thanks for reading! Got stuck or curious? Ping me — happy to help.<br />Now if you’ll excuse me, my laptop's trying to explain quantum physics to my coffee mug.</p>
]]></content:encoded></item><item><title><![CDATA[The Future of Platform Engineering: 2025]]></title><description><![CDATA[Platform engineering in 2025 is no longer a niche domain within IT; it is the cornerstone of digital innovation, operational efficiency, and business agility. With the confluence of AI, hybrid computing, and decentralized teams, platform engineering ...]]></description><link>https://content.mkarjun.com/the-future-of-platform-engineering-2025</link><guid isPermaLink="true">https://content.mkarjun.com/the-future-of-platform-engineering-2025</guid><category><![CDATA[Platform Engineering ]]></category><category><![CDATA[Devops]]></category><category><![CDATA[#IaC]]></category><category><![CDATA[#Iac #terraform #devops #aws]]></category><dc:creator><![CDATA[Arjun Manoj Kumar]]></dc:creator><pubDate>Fri, 20 Dec 2024 07:21:24 GMT</pubDate><content:encoded><![CDATA[<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1734678712738/a7600e00-e593-4b6d-b16f-519be498a524.jpeg" alt class="image--center mx-auto" /></p>
<p>Platform engineering in 2025 is no longer a niche domain within IT; it is the cornerstone of digital innovation, operational efficiency, and business agility. With the confluence of AI, hybrid computing, and decentralized teams, platform engineering has evolved from building support systems to architecting the very fabric of tomorrow’s enterprise.</p>
<p>This blog explores what platform engineering looks like in 2025, focusing on the trends, tools, and principles shaping the field.</p>
<hr />
<h2 id="heading-a-paradigm-shift-from-supportive-to-strategic"><strong>A Paradigm Shift: From Supportive to Strategic</strong></h2>
<p>In the past, platform engineering teams were perceived as back-office facilitators, focused on building infrastructure for developers. By 2025, this perception has radically changed. Platform teams now operate as strategic enablers, directly driving business outcomes. This transition is fueled by the growing importance of composable platforms, which enable rapid assembly and reconfiguration of business capabilities.</p>
<p>Consider an energy company that builds digital twins for its operations. The platform engineering team provides a unified digital infrastructure—including APIs, reusable components, and self-service capabilities—to connect IoT data from sensors, AI for predictive analytics, and blockchain for immutable records. The result? Quicker time-to-market and unparalleled agility.</p>
<p>Platform engineering’s mission is no longer limited to enabling developers; it extends to empowering fusion teams—cross-functional units comprising developers, business analysts, and domain experts—to innovate at speed while adhering to architectural principles.</p>
<hr />
<h2 id="heading-the-core-pillars-of-platform-engineering-in-2025"><strong>The Core Pillars of Platform Engineering in 2025</strong></h2>
<p><strong>1. Self-Service Platforms</strong><br />The hallmark of platform engineering in 2025 is the self-service model. Platforms are designed to reduce friction for developers and other end-users by abstracting away complexity. These self-service capabilities extend beyond traditional developer environments to include no-code and low-code interfaces for business technologists.</p>
<p>For example, a retailer’s platform engineering team might build a self-service portal that allows marketing teams to deploy personalized recommendation engines without needing to write a single line of code. Underneath this simplicity lies a robust architecture powered by Kubernetes, serverless computing, and AI-driven monitoring tools.</p>
<p><strong>2. AI-Infused Operations</strong> Artificial Intelligence plays an indispensable role in 2025. AI augments traditional monitoring and observability tools, enabling proactive incident resolution, resource optimization, and even predictive scalability. Tools like AIOps platforms monitor patterns, identify anomalies, and autonomously implement fixes.</p>
<p>Additionally, AI governance platforms ensure that autonomous systems are ethical, transparent, and aligned with organizational values—a critical need in an era where AI touches every facet of business operations.</p>
<p><strong>3. Composable Architecture</strong> Platform teams adopt a composable approach, where platforms are modular and can be assembled like Lego blocks to suit varying needs. In a composable world, businesses can adapt rapidly to market changes by recombining modular platform services such as APIs, machine learning pipelines, and infrastructure components.</p>
<p>For instance, a financial services company can use its composable platform to quickly launch a new lending product by reusing components for user authentication, credit scoring, and payment processing.</p>
<p><strong>4. DevSecOps by Design</strong> In 2025, security is deeply embedded into every stage of the software delivery lifecycle. Platform engineers leverage tools that integrate security policies as code, enforce zero-trust architectures, and provide automated vulnerability scanning.</p>
<p>Fusion teams, armed with secure-by-default platforms, can focus on innovation without worrying about compliance or cyber risks. Security becomes an enabler rather than a bottleneck.</p>
<p><strong>5. Multi-Cloud and Hybrid Computing</strong> Platform engineering has fully embraced the multi-cloud and hybrid computing paradigms. Enterprises leverage cloud-agnostic platforms to achieve cost efficiency, resilience, and scalability. Infrastructure as Code (IaC) tools are augmented with AI to enable seamless provisioning, management, and scaling across diverse environments.</p>
<p>A hybrid computing approach also allows organizations to run sensitive workloads on-premises while leveraging the cloud for AI training or high-performance analytics.</p>
<hr />
<h2 id="heading-emerging-trends-shaping-platform-engineering"><strong>Emerging Trends Shaping Platform Engineering</strong></h2>
<p>1. Post-Quantum Cryptography With quantum computing advancing rapidly, platform engineers are transitioning to post-quantum cryptography. These new cryptographic standards ensure that sensitive data remains secure even in a world where traditional encryption methods are obsolete.</p>
<p>2. Ambient Intelligence Platforms now leverage ambient intelligence—low-cost, pervasive sensors and tags—to gather real-time data from physical environments. This data feeds into the platform’s analytics and automation systems, enabling smarter decision-making. In logistics, ambient intelligence improves supply chain efficiency by tracking inventory conditions and predicting disruptions.</p>
<p>3. Hyperautomation Platforms incorporate hyperautomation capabilities that extend beyond traditional RPA. By integrating machine learning, AI, and process mining, platforms automate complex workflows across business units, saving costs and improving accuracy.</p>
<p>4. Sustainability as a Metric Energy-efficient computing is a critical focus for platform teams. Platforms are built to minimize carbon footprints through efficient algorithms, optimized hardware, and intelligent workload placement. Sustainability KPIs are tracked alongside traditional metrics like performance and uptime.</p>
<hr />
<h2 id="heading-architecture-workflow-using-a-platform-engineering-approach"><strong>Architecture Workflow Using a Platform Engineering Approach</strong></h2>
<p>Let’s assume a fintech company wants to launch a new digital wallet product. Here is a step-by-step outline of how a platform engineering approach would be applied:</p>
<ol>
<li><p><strong>Requirement Gathering:</strong></p>
<ul>
<li><p>Product team defines features like user authentication, fund transfers, transaction history, and AI-driven fraud detection.</p>
</li>
<li><p>Platform engineering team collaborates with the product team to identify reusable components and APIs.</p>
</li>
</ul>
</li>
<li><p><strong>Designing the Platform:</strong></p>
<ul>
<li><p>The team selects a composable architecture leveraging existing microservices for authentication, payment processing, and notifications.</p>
</li>
<li><p>Kubernetes is used for container orchestration to ensure scalability.</p>
</li>
<li><p>Security policies (e.g., OAuth2 for authentication) are embedded into the design.</p>
</li>
</ul>
</li>
<li><p><strong>Building Self-Service Capabilities:</strong></p>
<ul>
<li><p>A developer portal is created, providing APIs, templates, and deployment scripts for the product team to use.</p>
</li>
<li><p>Low-code interfaces are added for non-technical teams to configure workflows like user onboarding.</p>
</li>
</ul>
</li>
<li><p><strong>Integration and Testing:</strong></p>
<ul>
<li><p>APIs are integrated into the frontend application.</p>
</li>
<li><p>Automated pipelines test the application for performance, security, and compliance.</p>
</li>
</ul>
</li>
<li><p><strong>Deployment and Monitoring:</strong></p>
<ul>
<li><p>The platform uses a CI/CD pipeline to deploy the wallet to a multi-cloud environment.</p>
</li>
<li><p>AI-driven observability tools monitor user behavior and system performance, providing real-time insights and alerts.</p>
</li>
</ul>
</li>
<li><p><strong>Continuous Improvement:</strong></p>
<ul>
<li><p>Feedback loops are established to gather data from end-users and developers.</p>
</li>
<li><p>Updates and new features are rolled out incrementally, leveraging the composable platform’s modularity.</p>
</li>
</ul>
</li>
</ol>
<p><strong>This workflow showcases how platform engineering accelerates product delivery while maintaining security, scalability, and flexibility.</strong></p>
<hr />
<h2 id="heading-skills-and-tools-in-the-platform-engineers-toolbox"><strong>Skills and Tools in the Platform Engineer’s Toolbox</strong></h2>
<p><strong>1. Skills</strong></p>
<ul>
<li><p><strong>System Design:</strong> Expertise in architecting modular, scalable systems.</p>
</li>
<li><p><strong>AI &amp; ML Proficiency:</strong> Understanding AI-driven tools and how to integrate them into platforms.</p>
</li>
<li><p><strong>Security:</strong> Knowledge of zero-trust principles, cryptography, and compliance.</p>
</li>
<li><p><strong>Collaboration:</strong> Ability to work with fusion teams, communicating technical concepts in business terms.</p>
</li>
</ul>
<p><strong>2. Tools</strong></p>
<ul>
<li><p><strong>Platform Orchestration:</strong> Kubernetes, Terraform, and Ansible.</p>
</li>
<li><p><strong>AI Augmentation:</strong> Datadog with machine learning capabilities, OpenAI APIs.</p>
</li>
<li><p><strong>Observability:</strong> Grafana, Prometheus, and distributed tracing tools like Jaeger.</p>
</li>
<li><p><strong>Security:</strong> HashiCorp Vault, Aqua Security, and post-quantum cryptographic libraries.</p>
</li>
</ul>
<hr />
<h2 id="heading-measuring-success-new-kpis-for-platform-engineering"><strong>Measuring Success: New KPIs for Platform Engineering</strong></h2>
<p>In 2025, success metrics for platform engineering go beyond operational indicators like uptime. They include:</p>
<ul>
<li><p><strong>Platform Adoption:</strong> Percentage of fusion teams using the platform.</p>
</li>
<li><p><strong>Time to Market:</strong> Reduction in development cycles for new products.</p>
</li>
<li><p><strong>Self-Service Efficiency:</strong> Number of self-service deployments versus IT-assisted ones.</p>
</li>
<li><p><strong>Sustainability Metrics:</strong> Energy consumption and carbon footprint of platform operations.</p>
</li>
<li><p><strong>Developer Satisfaction:</strong> Feedback scores from fusion teams and developers.</p>
</li>
</ul>
<hr />
<h2 id="heading-real-world-impact-case-studies-referred-from-gartner-paper"><strong>Real-World Impact: Case Studies referred from Gartner paper</strong></h2>
<p><strong>1. Cepsa</strong><br />Cepsa, an energy company, used platform engineering to transition to a decentralized model. Their foundational digital platforms incorporated self-service tools and automated nonfunctional requirements like security and observability. The result? A 67% increase in platform adoption and faster delivery of digital products.</p>
<p><strong>2. ABN AMRO</strong> This financial institution modernized its infrastructure by adopting a self-service platform model. Developers could provision resources, deploy microservices, and manage APIs without needing IT support. The platform reduced operational costs and improved customer satisfaction by enabling faster feature rollouts.</p>
<hr />
<h2 id="heading-the-road-ahead"><strong>The Road Ahead</strong></h2>
<p>As we stand on the precipice of 2025, platform engineering is no longer about keeping the lights on. It is about leading the charge toward a future where technology seamlessly aligns with business objectives, where AI and human intelligence coexist symbiotically, and where platforms are not just enablers but accelerators of innovation.</p>
<p>In this new era, the platform engineer is the unsung hero, blending technical mastery with strategic foresight to build systems that power the enterprise of tomorrow. The opportunities are limitless, but the responsibility is immense.</p>
<p>Welcome to the future of platform engineering. Are you ready to build it?</p>
]]></content:encoded></item><item><title><![CDATA[Elevate Your Container Game: Simplifying Container Development with Finch]]></title><description><![CDATA[Table of Contents

Introduction

The Era of Containers

Introducing Finch: A Solution for Container Development

Components of Finch

Conclusion and FAQ


Introduction
In this blog, we will introduce Finch, based on a session by Akil Mohan on AWS com...]]></description><link>https://content.mkarjun.com/elevate-your-container-game-simplifying-container-development-with-finch</link><guid isPermaLink="true">https://content.mkarjun.com/elevate-your-container-game-simplifying-container-development-with-finch</guid><category><![CDATA[Container Development]]></category><category><![CDATA[Finch]]></category><category><![CDATA[Nerdctl]]></category><category><![CDATA[Lima]]></category><category><![CDATA[Buildkit]]></category><category><![CDATA[Docker]]></category><category><![CDATA[podman]]></category><dc:creator><![CDATA[Arjun Manoj Kumar]]></dc:creator><pubDate>Fri, 29 Dec 2023 10:44:27 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1703662869792/fdc329e6-4c67-49c6-a280-2b0cafd7a76f.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-table-of-contents"><strong>Table of Contents</strong></h2>
<ul>
<li><p><a target="_blank" href="https://file+.vscode-resource.vscode-cdn.net/c%3A/Users/arjun/Documents/Abilytics/Blogs/blog.md#introduction">Introduction</a></p>
</li>
<li><p><a target="_blank" href="https://file+.vscode-resource.vscode-cdn.net/c%3A/Users/arjun/Documents/Abilytics/Blogs/blog.md#the-era-of-containers">The Era of Containers</a></p>
</li>
<li><p><a target="_blank" href="https://file+.vscode-resource.vscode-cdn.net/c%3A/Users/arjun/Documents/Abilytics/Blogs/blog.md#introducing-finch:-a-solution-for-container-development">Introducing Finch: A Solution for Container Development</a></p>
</li>
<li><p><a target="_blank" href="https://file+.vscode-resource.vscode-cdn.net/c%3A/Users/arjun/Documents/Abilytics/Blogs/blog.md#components-of-finch">Components of Finch</a></p>
</li>
<li><p><a target="_blank" href="https://file+.vscode-resource.vscode-cdn.net/c%3A/Users/arjun/Documents/Abilytics/Blogs/blog.md#conclusion-and-faq">Conclusion and FAQ</a></p>
</li>
</ul>
<h2 id="heading-introduction"><strong>Introduction</strong></h2>
<p>In this blog, we will introduce Finch, based on a session by <a target="_blank" href="https://www.linkedin.com/in/akhilerm/">Akil Mohan</a> on <a target="_blank" href="https://communityday.awsugkochi.in/">AWS community day Kochi 2023</a>, a software engineer and maintainer of container D, and discuss Finch, an open-source client for container development. We will explore the challenges faced by developers in container development and how Finch aims to simplify the process. The agenda for this blog includes an overview of container development, the hurdles faced by developers, an introduction to Finch, and a discussion on its architecture and components.</p>
<ul>
<li><p>Akil Mohan: A software engineer and maintainer of container D</p>
</li>
<li><p><a target="_blank" href="https://github.com/runfinch/finch?tab=readme-ov-file">Finch</a>: An open-source client for container development</p>
</li>
<li><p>Challenges in container development: Limited tools for developers on Windows and macOS, the need for Linux VMs, and network setup</p>
</li>
<li><p>Blog agenda: Overview of container development, challenges faced by developers, introduction to Finch, and discussion on its architecture and components</p>
</li>
</ul>
<h2 id="heading-the-era-of-containers"><strong>The Era of Containers</strong></h2>
<p>In today's software development landscape, containers have become increasingly prevalent. Containers are used to deploy code and applications, and even development environments. They offer several advantages that make them a popular choice for developers.</p>
<p>One of the main advantages of using containers is the ease of code deployment. Containers provide a consistent and reliable environment for running applications, ensuring that the code works the same way across different systems. This eliminates the "it works on my machine" problem and streamlines the deployment process.</p>
<p>Containers also offer significant advantages for development environments. Developers can create containerized environments that include all the necessary tools and dependencies, making it easy to set up and reproduce development environments across different machines. This eliminates the need for developers to spend time installing and configuring tools and reduces the chances of compatibility issues.</p>
<p>However, there are compatibility challenges when it comes to different operating systems. While containers work seamlessly on Linux, Windows, and macOS, there may be some differences in how they are implemented. For example, macOS has limited support for containers due to the limitations of the macOS kernel, making proper isolation difficult.</p>
<p>In the case of macOS, developers often need to set up Linux virtual machines (VMs) to test and run containers. Setting up these VMs can be a time-consuming and complex process. Developers need to create a Linux VM, install container runtimes like Docker or Podman, set up file and network sharing, and ensure proper networking for testing web applications. All these steps can add significant overhead to the initial setup process.</p>
<p>The initial setup process for containers on macOS can have time and cost implications. Developers may spend hours or even days configuring the Linux VM and the necessary tools for container development. This setup process can delay the start of development work and increase the overall development time.</p>
<p>Overall, containers have revolutionized software development by simplifying code deployment and development environments. While they offer many benefits, developers need to navigate compatibility challenges, particularly when working with different operating systems. The need for Linux VMs in macOS adds an additional layer of complexity to the setup process, resulting in potential time and cost implications.</p>
<h2 id="heading-introducing-finch-a-solution-for-container-development"><strong>Introducing Finch: A Solution for Container Development</strong></h2>
<p>AWS has developed Finch as a solution to address the challenges faced by their developers in container development. Finch is an open-source client that aims to simplify the container development process and provide a more streamlined experience for developers.</p>
<p>Finch offers several key features that make it a valuable tool for container development. Firstly, it provides a single CLI (Command Line Interface) for interacting with containers. This means that developers can use the Finch CLI for almost 90% of the commands they would typically use with Docker on Linux. This unified CLI makes it easier for developers to work with containers, regardless of the operating system they are using.</p>
<p>Another important feature of Finch is its compatibility with different chip architectures, specifically amd64 and arm64. This means that developers can use Finch to launch and work with containers on both Intel and M series chips. This compatibility ensures that developers have flexibility in their container development, regardless of the chip architecture they are working with.</p>
<p>Finch also integrates with other open-source tools to provide a comprehensive container development experience. It leverages containerd, an industry-standard container runtime, to manage the lifecycle of containers on the host machine. Additionally, Finch utilizes Lima, a tool for launching Linux virtual machines on macOS, to provide the necessary Linux environment for testing and running containers. The integration of these tools ensures that developers have access to the essential components required for container development.</p>
<p>The architecture of Finch consists of multiple components working together to facilitate container development. Containerd is used as the container runtime, handling tasks such as storing container layers, launching containers, and managing their lifecycle. Lima provides the Linux virtual machine on macOS, allowing developers to test and run containers in a Linux environment. Buildkit, another component of Finch, is responsible for building container images. It takes Dockerfiles and converts them into various output formats, including Docker tarballs and Open Container Initiative (OCI) tarballs. Lastly, Finch utilizes the Container Networking Interface (CNI) for setting up networking within containers.</p>
<p>In summary, Finch offers a powerful solution for container development by addressing the challenges faced by developers. With its single CLI, compatibility with different chip architectures, integration with open-source tools, and well-designed architecture, Finch simplifies the container development process and provides a streamlined experience for developers.</p>
<p>Architecture:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1703665607811/eb129405-2980-4338-94a1-e6a3bb3fb792.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-components-of-finch"><strong>Components of Finch</strong></h2>
<p>Finch, the open-source client for container development, is comprised of several key components that work together to simplify the container development process. These components include:</p>
<h3 id="heading-containerd"><strong>Containerd</strong></h3>
<p>Containerd is an industry-standard container runtime that manages the lifecycle of containers on the host machine. It handles tasks such as storing container layers, launching containers, and managing their lifecycle. Containerd is widely used in various platforms, including Kubernetes and AWS services like EKS Fargate and Firecracker. Finch leverages Containerd to ensure efficient and reliable container management.</p>
<h3 id="heading-nerdctl"><strong>Nerdctl</strong></h3>
<p>nerdctl is a command-line interface (CLI) for working with container runtimes that provides compatibility with Docker CLI. It allows developers to interact with Containerd directly, giving them full control over their containers. Nerdctl enables developers on macOS or Windows to use familiar Docker commands and seamlessly integrate with the Finch ecosystem.</p>
<h3 id="heading-lima"><strong>Lima</strong></h3>
<p>Lima is a tool that provides a Linux virtual machine (VM) on macOS. It addresses the challenge of running Linux containers on macOS by creating a Linux environment for testing and running containers. Lima handles the setup of the Linux VM, including file sharing and network configuration. With Lima, developers can easily test and run Linux-based containers on their Mac machines.</p>
<h3 id="heading-buildkit"><strong>Buildkit</strong></h3>
<p>Buildkit is a powerful tool used for building container images. It takes Dockerfiles and converts them into various output formats, such as Docker tarballs and Open Container Initiative (OCI) tarballs. Buildkit offers advanced features and optimizations for faster and more efficient container image builds. Finch utilizes Buildkit to streamline the image building process and improve developer productivity.</p>
<h3 id="heading-installation-and-getting-started"><strong>Installation and Getting Started</strong></h3>
<p>To get started with Finch, you can install it using package managers like Homebrew on macOS. Once installed, you need to initialize the Finch VM using the "fin vm init" command. This will start the Linux virtual machine within your macOS environment. From there, you can use the Finch CLI to interact with containers, just like you would with Docker CLI on Linux.</p>
<p>With Finch, you can easily pull container images, run containers, and leverage the various components seamlessly. Finch provides a unified and efficient experience for container development, regardless of the operating system or chip architecture you're using.</p>
<h2 id="heading-conclusion-and-faq"><strong>Conclusion and FAQ</strong></h2>
<p>In conclusion, Finch is an open-source client that aims to simplify container development by addressing the challenges faced by developers. It provides a single CLI for interacting with containers, making it easier for developers working on different operating systems. With its compatibility with different chip architectures and integration with industry-standard tools like containerd and Lima, Finch offers a streamlined and efficient container development experience.</p>
<p>Key points discussed in this blog include:</p>
<ul>
<li><p>The advantages of using containers for code deployment and development environments</p>
</li>
<li><p>The challenges faced by developers, especially on Windows and macOS</p>
</li>
<li><p>An introduction to Finch as a solution for container development</p>
</li>
<li><p>The components and architecture of Finch, including <a target="_blank" href="https://containerd.io/">containerd</a>, <a target="_blank" href="https://github.com/containerd/nerdctl">nerdctl</a>, <a target="_blank" href="https://github.com/lima-vm/lima">Lima</a>, and buildkit</p>
</li>
</ul>
<p>Frequently Asked Questions:</p>
<h3 id="heading-is-finch-available-for-use"><strong>Is Finch available for use?</strong></h3>
<p>Yes, Finch is available as an open-source tool that can be installed using package managers like Homebrew on macOS.</p>
<h3 id="heading-how-can-i-contribute-or-get-further-assistance"><strong>How can I contribute or get further assistance?</strong></h3>
<p>If you have any inquiries or want to contribute to Finch, you can contact <a target="_blank" href="https://www.linkedin.com/in/akhilerm/">Akhil Mohan</a> or <a target="_blank" href="https://www.linkedin.com/in/arjun-manoj-kumar-k/">Arjun Manoj Kumar</a> on platforms like LinkedIn or Twitter. They will be available to provide assistance and guidance related to open-source projects and contributions.</p>
]]></content:encoded></item></channel></rss>