<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>AI on</title><link>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/tags/ai/</link><description>Recent content in AI on</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>Copyright (c) 2023 Chainguard</copyright><lastBuildDate>Mon, 30 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/tags/ai/index.xml" rel="self" type="application/rss+xml"/><item><title>The Guardener</title><link>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/migration/the-guardener/</link><pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate><guid>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/migration/the-guardener/</guid><description>&lt;p&gt;The Guardener migrates your Dockerfiles to use Chainguard Containers. It uses AI to iteratively convert instructions, build images, compare results, and fix issues until the Dockerfile works as expected.&lt;/p&gt;
&lt;p&gt;You interact with it through &lt;code&gt;chainctl agent dockerfile&lt;/code&gt; commands. The AI runs server-side and scans your workspace to perform its analysis. Docker builds and file access remain local to your machine, and only the data necessary for analysis is processed.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: The Guardener is in beta.&lt;/p&gt;</description></item><item><title>Beyond Zero: Eliminating Vulnerabilities in PyTorch Container Images (PyTorch 2024)</title><link>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/chainguard-images/about/beyond_zero_pytorch_2024/</link><pubDate>Sat, 07 Sep 2024 01:21:01 +0000</pubDate><guid>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/chainguard-images/about/beyond_zero_pytorch_2024/</guid><description>&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/1klynk1dxYA?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;p&gt;Recording of &lt;a href="https://pytorch2024.sched.com/event/1fHmE/lightning-talk-beyond-zero-eliminating-vulnerabilities-in-pytorch-container-images-patrick-smyth-dan-fernandez-srishti-hegde-chainguard"&gt;Beyond Zero: Eliminating Vulnerabilities in PyTorch Container Images&lt;/a&gt; presented by Dan Fernandez, Srishti Hegde, and Patrick Smyth at &lt;a href="https://pytorch.org/blog/pytorch-conference-2024-recap/"&gt;PyTorch 2024&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="session-description" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Session Description&lt;/span&gt;
&lt;a href="#session-description" class="anchor" aria-label="Link to Session Description" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Container images are increasingly the future of production applications at scale, providing reproducibility, robustness, and transparency. As PyTorch images get deployed to production, however, security becomes a major concern. PyTorch has a large attack surface, and building secure PyTorch images can be a challenge. Currently, the official PyTorch runtime container image has 1 CVE (known vulnerabilities) rated critical and 5 CVEs rated high. Improving this situation could secure many deployments that incorporate PyTorch for cloud-based inference or training. In this fast-paced session, we took a deep dive on the official PyTorch image from a vulnerability mitigation perspective, looking hard at included packages, executables, and active CVEs. We identify low-hanging fruit for increasing security, including stripping bloat and building fresh. We also talk about the next level of security practiced in Chainguard&amp;rsquo;s PyTorch image builds, such as including SBOMs and going distroless. Finally, we consider emerging tools and approaches for analyzing AI artifacts such as models and how these systems can benefit PyTorch in production.&lt;/p&gt;</description></item><item><title>Getting Started with the PyTorch Chainguard Container</title><link>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/chainguard-images/getting-started/pytorch/</link><pubDate>Thu, 25 Apr 2024 08:00:00 +0200</pubDate><guid>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/chainguard/chainguard-images/getting-started/pytorch/</guid><description>&lt;p&gt;Chainguard&amp;rsquo;s &lt;a href="https://images.chainguard.dev/directory/image/pytorch/overview?utm_source=cg-academy&amp;amp;utm_medium=referral&amp;amp;utm_campaign=dev-enablement&amp;amp;utm_content=edu-content-chainguard-chainguard-images-getting-started-pytorch"&gt;PyTorch container image&lt;/a&gt; provides a security-hardened foundation for deep learning workloads with significantly fewer vulnerabilities than traditional PyTorch containers. Built with &lt;a href="https://pytorch.org/"&gt;PyTorch&lt;/a&gt; and &lt;a href="https://developer.nvidia.com/about-cuda"&gt;CUDA&lt;/a&gt; support for GPU acceleration, this minimal image maintains full deep learning capabilities while dramatically reducing attack surface. This guide demonstrates fine-tuning models, secure inference deployment, and compares the enhanced security posture to official PyTorch images.&lt;/p&gt;
&lt;details&gt;
&lt;summary&gt;What is Deep Learning?&lt;/summary&gt;
&lt;p&gt;Deep learning is a subset of machine learning that leverages a flexible computational architecture, the neural network, to address a wide variety of tasks. Neural networks emulate the structure of the brain and consist of interconnected nodes (neurons) that each contain an associated weight and threshold. In concert with an activation function, these values determine whether data is propagated within the network, producing an output layer corresponding to a classification, regression, or other result.&lt;/p&gt;</description></item><item><title>AI with Hardened Container Images</title><link>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/software-security/learning-labs/ll202507/</link><pubDate>Thu, 24 Jul 2025 17:00:00 +0000</pubDate><guid>https://deploy-preview-3421--ornate-narwhal-088216.netlify.app/software-security/learning-labs/ll202507/</guid><description>&lt;p&gt;The July 2025 Learning Lab with Patrick Smyth covers AI with Hardened Container Images. In this session, learn how to secure AI workloads by reducing vulnerabilities in container images by over 90%. Patrick demonstrates hands-on techniques for training an animal detection model using PyTorch with hardened container images, creating minimal and secure deployments, and running AI frameworks with zero CVEs.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/JGSc6BwjbRI?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;h2 id="sections" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Sections&lt;/span&gt;
&lt;a href="#sections" class="anchor" aria-label="Link to Sections" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI"&gt;0:00&lt;/a&gt; Introduction and updates&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=122s"&gt;2:02&lt;/a&gt; Preparation: Docker pull instructions for demo&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=219s"&gt;3:39&lt;/a&gt; Chainguard! Who are we?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=274s"&gt;4:34&lt;/a&gt; CVE system fundamentals&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=408s"&gt;6:48&lt;/a&gt; &amp;ldquo;Boss assigned me to fix Ubuntu&amp;rdquo; problem&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=461s"&gt;7:41&lt;/a&gt; Introduction to Chainguard Containers&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=534s"&gt;8:54&lt;/a&gt; Zero CVE containers: Real results and comparisons&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=670s"&gt;11:10&lt;/a&gt; How we achieve zero CVEs: Minimal, Fresh, Advisory, Patch&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=804s"&gt;13:24&lt;/a&gt; AI container challenges: Size and complexity&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=899s"&gt;14:59&lt;/a&gt; PyTorch container analysis: CVEs, packages, and executables&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=981s"&gt;16:21&lt;/a&gt; Demo introduction: Image classification with PyTorch&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1079s"&gt;17:59&lt;/a&gt; Demo walkthrough and repository overview&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1168s"&gt;19:28&lt;/a&gt; Demo: Running the training command&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1321s"&gt;22:01&lt;/a&gt; Demo: Downloading test image and running inference&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1400s"&gt;23:20&lt;/a&gt; Recent developments in Chainguard AI containers&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1509s"&gt;25:09&lt;/a&gt; Other AI containers: TensorFlow, KServe, Triton backends&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=1606s"&gt;26:46&lt;/a&gt; Q&amp;amp;A&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=JGSc6BwjbRI&amp;amp;t=2118s"&gt;35:18&lt;/a&gt; Chainguard AI course and additional resources&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="demo" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Demo&lt;/span&gt;
&lt;a href="#demo" class="anchor" aria-label="Link to Demo" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;In the demo, Patrick trains and runs inference on an image classification model using PyTorch and Chainguard&amp;rsquo;s hardened container image. The model classifies images of octopuses, whales, and penguins, demonstrating how to work with AI workloads securely.&lt;/p&gt;</description></item></channel></rss>