1<!DOCTYPE html><html dir="ltr" lang="ko" class="false"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width"><link rel="icon" type="image/x-icon" href="/favicon.ico"><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="manifest" href="/manifest.json"><link rel="canonical" href="https://pebpung.github.io/"><meta name="generator" content="Astro v7.1.1"><!-- Warm up connections to external origins used below --><link rel="preconnect" href="https://spoqa.github.io" crossorigin><link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin><link rel="dns-prefetch" href="https://pagead2.googlesyndication.com"><link rel="dns-prefetch" href="https://www.googletagmanager.com"><!-- Load Font (non-render-blocking: preload then swap to stylesheet) --><link rel="preload" as="style" href="https://spoqa.github.io/spoqa-han-sans/css/SpoqaHanSansNeo.css" onload="this.onload=null;this.rel='stylesheet'"><noscript><link rel="stylesheet" href="https://spoqa.github.io/spoqa-han-sans/css/SpoqaHanSansNeo.css"></noscript><!-- KaTeX Math Rendering (non-render-blocking) --><link rel="preload" as="style" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css" onload="this.onload=null;this.rel='stylesheet'"><noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css"></noscript><!-- General Meta Tags --><title>MLê°ì</title><meta name="title" content="MLê°ì"><meta name="description" content="MLê°ì - AI Engineer Blog"><meta name="author" content="pebpung"><link rel="sitemap" type="application/xml" href="/sitemap.xml"><meta name="google-adsense-account" content="ca-pub-2853897577129853">
1<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2853897577129853" crossorigin="anonymous"></script>
1<!-- Open Graph / Facebook --><meta property="og:title" content="MLê°ì"><meta property="og:description" content="MLê°ì - AI Engineer Blog"><meta property="og:url" content="https://pebpung.github.io/"><meta property="og:image" content="https://pebpung.github.io/astropaper-og.jpg"><!-- Article Published/Modified time --><!-- Twitter --><meta property="twitter:card" content="summary_large_image"><meta property="twitter:url" content="https://pebpung.github.io/"><meta property="twitter:title" content="MLê°ì"><meta property="twitter:description" content="MLê°ì - AI Engineer Blog"><meta property="twitter:image" content="https://pebpung.github.io/astropaper-og.jpg"><!-- Google JSON-LD Structured data -->
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"BlogPosting","headline":"MLê°ì","image":"https://pebpung.github.io/astropaper-og.jpg","datePublished":"undefined","author":[{"@type":"Person","name":"pebpung","url":"https://github.com/PEBpung"}]}</script>
1<!-- Enable RSS feed auto-discovery --><!-- https://docs.astro.build/en/recipes/rss/#enabling-rss-feed-auto-discovery --><link rel="alternate" type="application/rss+xml" title="MLê°ì" href="https://pebpung.github.io/rss.xml"><meta name="theme-color" content=""><meta name="google-site-verification" content="jhz_ZekXaLWItUeQ0yjvYwGFHR9A9oD6lqOCbJVZhZ4">
vendor: 63 bytes, line 1
1<script async src="https://www.googletagmanager.com/gtag/js?id=
1G-Z39NHBJGVV
vendor: 11 bytes, line 1
1"></script>
1<script>(function(){const gaId = "G-Z39NHBJGVV"; 2 3 window.dataLayer = window.dataLayer || []; 4 function gtag() { 5 dataLayer.push(arguments); 6 } 7 gtag("js", new Date()); 8 gtag("config", gaId, { send_page_view: false }); 9 document.addEventListener("astro:page-load", () => { 10 gtag("event", "page_view", { 11 page_title: document.title, 12 page_location: location.href, 13 page_path: location.pathname + location.search, 14 }); 15 }); 16 })();</script>
16<meta name="astro-view-transitions-enabled" content="true"><meta name="astro-view-transitions-fallback" content="animate">
16<script type="module" src="/_astro/ClientRouter.astro_astro_type_script_index_0_lang.6Spq5I16.js"></script>
16<!-- Minimal inline script to prevent FOUC - sets theme immediately -->
16<script> 17 (function () { 18 const initialColorScheme = ""; // "light" | "dark" 19 const currentTheme = localStorage.getItem("theme"); 20 21 function getPreferTheme() { 22 if (currentTheme) return currentTheme; 23 if (initialColorScheme) return initialColorScheme; 24 return window.matchMedia("(prefers-color-scheme: dark)").matches 25 ? "dark" 26 : "light"; 27 } 28 29 const themeValue = getPreferTheme(); 30 31 // Set theme immediately to prevent flash 32 document.firstElementChild?.setAttribute("data-theme", themeValue); 33 34 // Export minimal API for external script 35 window.theme = { 36 themeValue: themeValue, 37 getTheme: () => window.theme.themeValue, 38 setTheme: val => { 39 window.theme.themeValue = val; 40 }, 41 }; 42 })(); 43 </script>
43<link rel="stylesheet" href="/_astro/Footer.Cn4hK9De.css"></head><body><a id="skip-to-content" href="#main-content" class="absolute start-16 -top-full z-50 bg-background px-3 py-2 text-accent backdrop-blur-lg transition-all focus:top-4">Skip to content</a><header class="app-layout flex flex-col items-center justify-between sm:flex-row"><div id="top-nav-wrap" class="py-4 sm:py-6 border-b border-border relative w-full bg-background flex items-baseline justify-between sm:items-center"><a href="/" class="absolute py-1 text-xl leading-8 font-semibold whitespace-nowrap sm:static sm:my-auto sm:text-2xl sm:leading-none">MLê°ì</a><nav id="nav-menu" class="flex w-full flex-col items-center sm:ms-2 sm:flex-row sm:justify-end sm:space-x-4 sm:py-0"><button id="menu-btn" class="focus-outline self-end p-2 sm:hidden" aria-label="Open Menu" aria-expanded="false" aria-controls="menu-items"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="hidden" id="close-icon"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M18 6l-12 12" /><path d="M6 6l12 12" /></svg><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-menu-deep" id="menu-icon"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 6h16" /><path d="M7 12h13" /><path d="M10 18h10" /></svg></button><ul id="menu-items" class="mt-4 grid w-44 grid-cols-2 place-content-center gap-2 [&>li>a]:block [&>li>a]:px-4 [&>li>a]:py-3 [&>li>a]:text-center [&>li>a]:font-medium [&>li>a]:hover:text-accent sm:[&>li>a]:px-2 sm:[&>li>a]:py-1 hidden sm:mt-0 sm:flex sm:w-auto sm:gap-x-5 sm:gap-y-0"><li class="col-span-2"><a href="/posts" class="nav-link">Posts</a></li><li class="col-span-2"><a href="/tags" class="nav-link">Tags</a></li><li class="col-span-2"><a href="/about" class="nav-link">About</a></li><li class="col-span-2"><a href="/archives" title="Archives" aria-label="archives" class="group inline-flex items-center gap-1 hover:text-accent focus-outline flex justify-center p-3 sm:p-1"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="hidden sm:inline-block"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M3 4m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z" /><path d="M5 8v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-10" /><path d="M10 12l4 0" /></svg><span class="sm:sr-only">Archives</span></a></li><li class="col-span-1 flex items-center justify-center"><a href="/search" title="Search" aria-label="search" class="group inline-flex items-center gap-1 hover:text-accent focus-outline flex p-3 sm:p-1"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-search"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0" /><path d="M21 21l-6 -6" /></svg><span class="sr-only">Search</span></a></li><li class="col-span-1 flex items-center justify-center"><button id="theme-btn" class="focus-outline relative size-12 p-4 sm:size-8 hover:[&>svg]:stroke-accent" title="Toggles light & dark" aria-label="auto" aria-live="polite"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="absolute top-[50%] left-[50%] -translate-[50%] scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" /></svg><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="absolute top-[50%] left-[50%] -translate-[50%] scale-0 rotate-90 transition-all dark:scale-100 dar
43k:rotate-0"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M14.828 14.828a4 4 0 1 0 -5.656 -5.656a4 4 0 0 0 5.656 5.656z" /><path d="M6.343 17.657l-1.414 1.414" /><path d="M6.343 6.343l-1.414 -1.414" /><path d="M17.657 6.343l1.414 -1.414" /><path d="M17.657 17.657l1.414 1.414" /><path d="M4 12h-2" /><path d="M12 4v-2" /><path d="M20 12h2" /><path d="M12 20v2" /></svg></button></li></ul></nav></div></header>
43<script type="module">function e(){let e=document.querySelector(`#menu-btn`),t=document.querySelector(`#menu-items`),n=document.querySelector(`#menu-icon`),r=document.querySelector(`#close-icon`);!e||!t||!n||!r||(e.onclick=()=>{let i=e.getAttribute(`aria-expanded`)===`true`;e.setAttribute(`aria-expanded`,i?`false`:`true`),e.setAttribute(`aria-label`,i?`Open Menu`:`Close Menu`),t.classList.toggle(`hidden`),n.classList.toggle(`hidden`),r.classList.toggle(`hidden`)})}e(),window.__headerNavBound||(document.addEventListener(`astro:after-swap`,e),window.__headerNavBound=!0);</script>
43<main id="main-content" data-layout="index" class="mx-auto w-full max-w-5xl px-4"><div class="grid gap-6 py-6 lg:gap-12 lg:py-12 lg:grid-cols-[260px_1fr]"><!-- Sidebar --><div class="border-b border-border pb-6 lg:sticky lg:top-12 lg:self-start lg:border-b-0 lg:pb-0"><!-- Vertical centered layout on all viewports --><aside class="flex flex-col items-center text-center"><img src="/assets/img/profile/ocean.jpeg" alt="pebpung" class="mb-4 size-28 rounded-full object-cover ring-4 ring-accent/20 lg:size-36"><h1 class="text-xl font-bold lg:text-2xl">MLê°ì</h1><p class="mt-1 text-sm text-foreground/60">@pebpung</p><p class="mt-2 text-sm leading-relaxed text-foreground/80">AI Engineer at BHSN</p><div class="mt-4 flex gap-2 lg:mt-5"><a href="https://github.com/PEBpung" title="MLê°ì on GitHub" class="group inline-flex items-center gap-1 hover:text-accent rounded-full bg-muted p-2.5 transition-colors hover:bg-accent/20 hover:rotate-6"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-5 fill-transparent stroke-current stroke-2 opacity-80"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5" /></svg><span class="sr-only">MLê°ì on GitHub</span></a></div></aside><!-- Tags --><div class="mt-5 flex flex-wrap justify-center gap-2.5 lg:mt-8"><a href="/tags/ai/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#AI</a><a href="/tags/anomaly-detection/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#Anomaly Detection</a><a href="/tags/api/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#API</a><a href="/tags/autoencoder/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#AutoEncoder</a><a href="/tags/chatbot/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#ChatBot</a><a href="/tags/data/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#Data</a><a href="/tags/devops/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#DevOps</a><a href="/tags/docker/" class="rounded-full bg-accent/10 px-3 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent/25">#Docker</a></div></div><!-- Posts --><div class="pt-2"><section id="recent-posts" class="pb-6"><h2 class="text-2xl font-semibold tracking-wide">Recent Posts</h2><ul><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2025-08-16-vllm-1" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:v-llmì´ë-ë¹ ë¥´ê³ -í¨ì¨ì ì¸-ai-ì¶ë¡ ì-ìí-ì¤íìì¤-ë¼ì´ë¸ë¬ë¦¬">vLLMì´ë? ë¹ ë¥´ê³ í¨ì¨ì ì¸ AI ì¶ë¡ ì ìí ì¤íìì¤ ë¼ì´ë¸ë¬ë¦¬</h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" />
43<path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2025-08-16T09:00:00.000Z">16 Aug, 2025</time></div><p class="mt-1 leading-relaxed">OS ê°ì ë©ëª¨ë¦¬ 기ë²ì LLM ìë¹ì íì©í PagedAttention ë°©ì</p></div></div></li><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2025-08-10-long-context-llm-1" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:long-context-llm-1-pre-trainingë¶í°-post-trainingê¹ì§-data-ì ëµ">Long Context LLM (1): Pre-trainingë¶í° Post-trainingê¹ì§ data ì ëµ</h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" /><path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2025-08-10T09:00:00.000Z">10 Aug, 2025</time></div><p class="mt-1 leading-relaxed">lost-in-the-middle 문ì 를 í´ê²°íë ë°©ë²</p></div></div></li><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2025-03-16-llama-factory-1" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:l-la-ma-factory-ì´ë³´ì-ê°ì´ë-ì½ê²-ììíë-llm-íì¸íë">LLaMA-Factory ì´ë³´ì ê°ì´ë: ì½ê² ììíë LLM íì¸íë</h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" /><path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2025-03-16T09:00:00.000Z">16 Mar, 2025</time></div><p class="mt-1 leading-relaxed">ì
문ìë ë°ë¼íë GUIë¡ LLM íì¸íë í기</p></div></div></li><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2023-04-30-chatbot-1" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:ëë§ì-chatbot-app-ë§ë¤ì´ë³´ê¸°-opls-íì©">ëë§ì Chatbot APP ë§ë¤ì´ë³´ê¸°: OPLS íì© </h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" />
43<path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" /><path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2023-04-30T09:00:00.000Z">30 Apr, 2023</time></div><p class="mt-1 leading-relaxed">OPLS stackì íì©íì¬ ëë§ì Chatbot APP ë§ë¤ê¸°</p></div></div></li><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2022-12-31-retrospect" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:2022-ë
-íê³ -ë°ëìë-ì±ì¥">2022ë
íê³ : ë°ëìë ì±ì¥</h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" /><path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2022-12-31T09:00:00.000Z">31 Dec, 2022</time></div><p class="mt-1 leading-relaxed">í í´ë¥¼ ë§ë¬´ë¦¬íë©° ìì±í ê¸ì
ëë¤.</p></div></div></li><li class="group relative my-8 pl-5 before:absolute before:left-0 before:top-0 before:h-full before:w-1 before:rounded before:bg-accent/25 before:transition-colors hover:before:bg-accent"><div class="flex items-start justify-between gap-4"><div class="min-w-0 flex-1"><a href="/posts/2022-12-24-bentoml" class="inline-block text-lg font-medium text-accent decoration-dashed underline-offset-4 hover:underline focus-visible:no-underline focus-visible:underline-offset-0"><h3 style="view-transition-name:bento-mlì-ì´ì©í-ë¹ ë¥¸-ml-모ë¸-ë°°í¬">BentoMLì ì´ì©í ë¹ ë¥¸ ML ëª¨ë¸ ë°°í¬</h3></a><div class="flex items-center gap-x-2 opacity-80"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 min-w-5.5 scale-90"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M4 7a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12z" /><path d="M16 3v4" /><path d="M8 3v4" /><path d="M4 11h16" /><path d="M7 14h.013" /><path d="M10.01 14h.005" /><path d="M13.01 14h.005" /><path d="M16.015 14h.005" /><path d="M13.015 17h.005" /><path d="M7.01 17h.005" /><path d="M10.01 17h.005" /></svg><time class="text-sm" datetime="2022-12-24T09:00:00.000Z">24 Dec, 2022</time></div><p class="mt-1 leading-relaxed">ML 모ë¸ì ìë¹ì¤í ë ì¬ì©ëë ê°ë ¥í ì¤í ìì¤ í´í·</p></div></div></li></ul></section><div class="my-8 text-center"><a href="/posts/" class="group inline-flex items-center gap-1 hover:text-accent">All Posts<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block rtl:-rotate-180"><path stroke="none" d="M0 0h24v24H0z" fill="none" /><path d="M5 12l14 0" /><path d="M13 18l6 -6" /><path d="M13 6l6 6" /></svg></a></div></div></div></main><footer class="app-layout mt-auto"><div class="py-6 sm:py-4 border-t border-border flex flex-col items-center justify-between sm:flex-row-reverse"><div class="flex flex-wrap items-center gap-1"><a href="https://github.com/PEBpung" title="MLê°ì on GitHub" class="group inline-flex items-center gap-1 hover:text-accent p-2 hover:rotate-6 sm:p-1"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="inline-block size-6 scale-125 fill-transparent stroke-current stroke-2 opacity-90 group-hover:fill-transparent sm:scale-110"><path stroke="none" d="M0 0h24v24H0z" fill="none" />
43<path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5" /></svg><span class="sr-only">MLê°ì on GitHub</span></a></div><div class="my-2 flex flex-col items-center whitespace-nowrap sm:flex-row"><span>Copyright © 2026</span><span class="hidden sm:inline"> | </span><span>All rights reserved.</span></div></div></footer><!-- Load full theme logic -->
43<script type="module">var e=`theme`,t=`light`,n=`dark`;function r(){return localStorage.getItem(e)||(window.matchMedia(`(prefers-color-scheme: dark)`).matches?n:t)}var i=window.theme?.themeValue??r();function a(){localStorage.setItem(e,i),o()}function o(){document.firstElementChild?.setAttribute(`data-theme`,i),document.querySelector(`#theme-btn`)?.setAttribute(`aria-label`,i);let e=document.body;if(e){let t=window.getComputedStyle(e).backgroundColor;document.querySelector(`meta[name='theme-color']`)?.setAttribute(`content`,t)}}window.theme?(window.theme.setPreference=a,window.theme.reflectPreference=o):window.theme={themeValue:i,setPreference:a,reflectPreference:o,getTheme:()=>i,setTheme:e=>{i=e}},o();function s(){o();let e=document.querySelector(`#theme-btn`);e&&(e.onclick=()=>{i=i===t?n:t,window.theme?.setTheme(i),a()})}s(),document.addEventListener(`astro:after-swap`,s),document.addEventListener(`astro:before-swap`,e=>{let t=e,n=document.querySelector(`meta[name='theme-color']`)?.getAttribute(`content`);n&&t.newDocument.querySelector(`meta[name='theme-color']`)?.setAttribute(`content`,n)}),window.matchMedia(`(prefers-color-scheme: dark)`).addEventListener(`change`,({matches:e})=>{i=e?n:t,window.theme?.setTheme(i),a()});</script>
43</body></html>
43<script type="module">function e(){document.querySelector(`#main-content`)?.dataset?.layout&&sessionStorage.setItem(`backUrl`,`/`)}window.__indexBackUrlBound||(document.addEventListener(`astro:page-load`,e),window.__indexBackUrlBound=!0),e();</script>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.