CINXE.COM
더욱 개인적인 생성형 AI 활성화 - Google Developers Blog
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title> 더욱 개인적인 생성형 AI 활성화 - Google Developers Blog </title> <meta property="og:title" content="더욱 개인적인 생성형 AI 활성화- Google Developers Blog" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="description" content="Google has developed a number of technologies that you can use to start experimenting with and exploring the potential of generative AI to process data that needs to stay private." /> <meta content="summary_large_image" name="twitter:card"/> <meta content="Google for Developers Blog - News about Web, Mobile, AI and Cloud" property="twitter:title"/> <meta property="og:title" content="더욱 개인적인 생성형 AI 활성화" /> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google for Developers Blog", "item": "https://developers.googleblog.com/" },{ "@type": "ListItem", "position": 2, "name": "더욱 개인적인 생성형 AI 활성화", "item": "http://developers.googleblog.com/ko/enabling-more-private-gen-ai/" }] } </script> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "더욱 개인적인 생성형 AI 활성화", "description": "Google은 비공개 상태를 유지해야 하는 데이터를 처리하기 위해 생성형 AI의 잠재력을 실험하고 탐색하는 데 사용할 수 있는 여러 가지 기술을 개발했습니다.", "image": "https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/social-G4D-Project-GameFace-makes-.2e16d0ba.fill-800x400.png", "datePublished": "2024-07-09", "author": [ { "@type": "Person", "name": "Krzysztof Ostrowski", "url": "/ko/search/?author=Krzysztof+Ostrowski" }, { "@type": "Person", "name": "Rene Kolga", "url": "/ko/search/?author=Rene+Kolga" } ] } </script> <meta content="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/social-G4D-Project-GameFace-makes.2e16d0ba.fill-1200x600.png" property="og:image"/> <!-- Google Tag Manager --> <script type="text/javascript" src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/js/analytics.js"></script> <!-- End Google Tag Manager --> <link href="//www.gstatic.com/glue/v27_1/glue.min.css" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/css/dgc_blog.css"> <link rel="icon" href="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/images/favicon.ico" type="image/x-icon"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preload" href="https://fonts.googleapis.com/css2?family=Product+Sans&family=Google+Sans+Display:ital@0;1&family=Google+Sans:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&family=Google+Sans+Text:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&display=swap" as="style"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Product+Sans&family=Google+Sans+Display:ital@0;1&family=Google+Sans:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&family=Google+Sans+Text:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&display=swap"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Roboto:wght@400&display=swap"> <link href="https://www.gstatic.com/glue/cookienotificationbar/cookienotificationbar.min.css" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/css/blog_detail.css" /> <link rel="stylesheet" href="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/pygmentify/css/default.min.css"> </head> <body id="main-content" class="glue-body "> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WVTLDSL " height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- HTML --> <header class="dgc-header"> <div class="dgc-header-inner"> <button class="hamburger" aria-haspopup="true" aria-expanded="false" aria-label="메뉴 열기"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#menu"></use> </svg> </button> <div class="product-name-wrapper"> <a href="https://developers.google.com/" class="site-logo-link" data-label="Site logo"> <img src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/images/g-dev.svg" class="site-logo" alt="Google for Developers"> </a> </div> <div class="desktop-nav-wrapper"> <div class="upper-tabs-wrapper"> <div class="upper-tabs"> <nav class="tabs" aria-label="상단 탭"> <div class="tab" dropdown> <a href="//developers.google.com/products" class="top-nav-title"> 제품 </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="true" aria-label="제품 드롭다운 메뉴" class="dropdown-toggle"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#arrow-drop-down"></use> </svg> </a> <div class="tabs-dropdown" aria-label="하위 메뉴"> <div class="tabs-dropdown-content"> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="개발 메뉴">개발</li> <li class="nav-item"> <a href="//developer.android.com"> <div class="nav-item-title"> Android </div> </a> </li> <li class="nav-item"> <a href="//developer.chrome.com"> <div class="nav-item-title"> Chrome </div> </a> </li> <li class="nav-item"> <a href="//chromeos.dev/"> <div class="nav-item-title"> ChromeOS </div> </a> </li> <li class="nav-item"> <a href="//cloud.google.com"> <div class="nav-item-title"> Cloud </div> </a> </li> <li class="nav-item"> <a href="//firebase.google.com"> <div class="nav-item-title"> Firebase </div> </a> </li> <li class="nav-item"> <a href="//flutter.dev"> <div class="nav-item-title"> Flutter </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/assistant"> <div class="nav-item-title"> Google Assistant </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/maps"> <div class="nav-item-title"> Google Maps Platform </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/workspace"> <div class="nav-item-title"> Google Workspace </div> </a> </li> <li class="nav-item"> <a href="//www.tensorflow.org"> <div class="nav-item-title"> TensorFlow </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/youtube"> <div class="nav-item-title"> YouTube </div> </a> </li> </ul> </div> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="성장 메뉴">성장</li> <li class="nav-item"> <a href="//firebase.google.com"> <div class="nav-item-title"> Firebase </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/google-ads"> <div class="nav-item-title"> Google Ads </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/analytics"> <div class="nav-item-title"> Google Analytics </div> </a> </li> <li class="nav-item"> <a href="//developer.android.com/distribute"> <div class="nav-item-title"> Google Play </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/search"> <div class="nav-item-title"> Search </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/web/fundamentals/engage-and-retain/push-notifications"> <div class="nav-item-title"> Web Push and Notification APIs </div> </a> </li> </ul> </div> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="수익 창출 메뉴">수익 창출</li> <li class="nav-item"> <a href="//developers.google.com/admob"> <div class="nav-item-title"> AdMob </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/google-ads/api"> <div class="nav-item-title"> Google Ads API </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/pay"> <div class="nav-item-title"> Google Pay </div> </a> </li> <li class="nav-item"> <a href="//developer.android.com/google/play/billing/"> <div class="nav-item-title"> Google Play Billing </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/interactive-media-ads"> <div class="nav-item-title"> Interactive Media Ads </div> </a> </li> </ul> </div> </div> </div> </div> <div class="tab"> <a href="//developers.google.com/solutions/catalog" class="top-nav-title"> 해결 방법 </a> </div> <div class="tab"> <a href="//developers.google.com/events" class="top-nav-title"> 이벤트 </a> </div> <div class="tab"> <a href="//developers.google.com/learn" class="top-nav-title"> 학습 </a> </div> <div class="tab" dropdown> <a href="//developers.google.com/community" class="top-nav-title"> 커뮤니티 </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="true" aria-label="커뮤니티 드롭다운 메뉴" class="dropdown-toggle"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#arrow-drop-down"></use> </svg> </a> <div class="tabs-dropdown" aria-label="하위 메뉴"> <div class="tabs-dropdown-content"> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="그룹 메뉴">그룹</li> <li class="nav-item"> <a href="//developers.google.com/community/gdg"> <div class="nav-item-title"> Google Developer Groups </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/gdsc"> <div class="nav-item-title"> Google Developer Student Clubs </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/womentechmakers"> <div class="nav-item-title"> Woman Techmakers </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/experts"> <div class="nav-item-title"> Google Developer Experts </div> </a> </li> <li class="nav-item"> <a href="//www.techequitycollective.com/"> <div class="nav-item-title"> Tech Equity Collective </div> </a> </li> </ul> </div> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="프로그램 메뉴">프로그램</li> <li class="nav-item"> <a href="//developers.google.com/community/accelerators"> <div class="nav-item-title"> Accelerator </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/gdsc-solution-challenge"> <div class="nav-item-title"> Solution Challenge </div> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/devfest"> <div class="nav-item-title"> DevFest </div> </a> </li> </ul> </div> <div class="tabs-dropdown-column"> <ul class="tabs-dropdown-section"> <li class="nav-title" aria-label="스토리 메뉴">사례</li> <li class="nav-item"> <a href="//developers.google.com/community/stories"> <div class="nav-item-title"> 모든 스토리 </div> </a> </li> </ul> </div> </div> </div> </div> <div class="tab"> <a href="//developers.google.com/profile/u/me" class="top-nav-title"> 개발자 프로그램 </a> </div> <div class="tab"> <a href="//developers.googleblog.com/" class="top-nav-title"> 블로그 </a> </div> </nav> </div> </div> </div> </div> <div class="dgc-header-search"> <div class="search-wrapper glue-page"> <div class="glue-grid"> <form id="search-form" action="/ko/search/" method="get" class="search-content glue-grid__col glue-grid__col--span-4-sm glue-grid__col--span-9-md glue-grid__col--span-7-lg"> <div class="search-input-wrapper"> <svg role="presentation" aria-hidden="true" class="glue-icon search-icon"> <use href="/glue-icon/#search"></use> </svg> <input type="text" name="query" placeholder="모든 기사 검색..." aria-label="검색" class="search-input-field" /> </div> <button class="glue-button glue-button--high-emphasis"> 검색 </button> </form> <div class="language-selector glue-grid__col glue-grid__col--span-4-sm glue-grid__col--span-3-md glue-grid__col--span-5-lg" aria-label="언어 기본 설정 선택"> <button type="button" aria-controls="lang-menu-header" aria-haspopup="true"> <svg role="presentation" aria-hidden="true" class="glue-icon lang-icon"> <use href="/glue-icon/#language"></use> </svg> <span class="lang-label">한국어</span> <svg role="presentation" aria-hidden="true" class="glue-icon lang-icon"> <use href="/glue-icon/#arrow-drop-down"></use> </svg> </button> <div id="lang-menu-header" class="lang-menu hidden" role="menu"> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" href="/en/enabling-more-private-gen-ai/">English</a> </li> <li role="presentation"> <a role="menuitem" lang="es" href="/es/enabling-more-private-gen-ai/">Español (Latam)</a> </li> <li role="presentation"> <a role="menuitem" lang="id" href="/id/enabling-more-private-gen-ai/">Bahasa Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" href="/ja/enabling-more-private-gen-ai/">日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" aria-current="true" href="/ko/enabling-more-private-gen-ai/">한국어</a> </li> <li role="presentation"> <a role="menuitem" lang="pt-br" href="/pt-br/enabling-more-private-gen-ai/">Português (Brasil)</a> </li> <li role="presentation"> <a role="menuitem" lang="zh-hans" href="/zh-hans/enabling-more-private-gen-ai/">简体中文</a> </li> </ul> </div> </div> </div> </div> </div> </header> <div class="mobile-drawer" top-level-nav> <nav class="nav-content" aria-label="사이드 메뉴"> <div class="mobile-header"> <button class="nav-close-btn nav-btn" aria-label="탐색 닫기"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#close"></use> </svg> </button> <button class="nav-back-btn nav-btn hidden" aria-label="메뉴로 돌아가기"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#arrow-back"></use> </svg> </button> <div class="product-name-wrapper"> <a href="https://developers.google.com/" class="site-logo-link" data-label="Site logo"> <img src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/images/g-dev.svg" class="site-logo" alt="Google for Developers"> </a> </div> </div> <div class="nav-wrapper"> <div class="mobile-nav-top"> <ul class="nav-list"> <li class="nav-item"> <a href="//developers.google.com/products" class="nav-title" data-label="Tab: Products"> <span class="nav-text" tooltip=""> 제품 </span> </a> <ul class="nav-responsive-tabs"> <li class="nav-item"> <span tabindex="0" class="nav-title products-btn" data-label="More Products"> <span class="nav-text" menu="Products"> 자세히 </span> <span class="nav-icon" menu="Products"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#arrow-forward"></use> </svg> </span> </span> </li> </ul> </li> <li class="nav-item"> <a href="//developers.google.com/solutions/catalog" class="nav-title" data-label="Tab: Solutions"> <span class="nav-text" tooltip=""> 해결 방법 </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/events" class="nav-title" data-label="Tab: Events"> <span class="nav-text" tooltip=""> 이벤트 </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/learn" class="nav-title" data-label="Tab: Learn"> <span class="nav-text" tooltip=""> 학습 </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community" class="nav-title" data-label="Tab: Community"> <span class="nav-text" tooltip=""> 커뮤니티 </span> </a> <ul class="nav-responsive-tabs"> <li class="nav-item"> <span tabindex="0" class="nav-title community-btn" data-label="More Community"> <span class="nav-text" menu="Community"> 자세히 </span> <span class="nav-icon" menu="Community"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#arrow-forward"></use> </svg> </span> </span> </li> </ul> </li> <li class="nav-item"> <a href="//developers.google.com/profile/u/me" class="nav-title" data-label="Tab: Developer Program"> <span class="nav-text" tooltip=""> 개발자 프로그램 </span> </a> </li> <li class="nav-item"> <a href="//developers.googleblog.com/" class="nav-title" data-label="Tab: Blog"> <span class="nav-text" tooltip=""> Blog </span> </a> </li> </ul> </div> <div class="mobile-nav-bottom"> <ul class="nav-list products-submenu" menu="Products" aria-label="사이드 메뉴"> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 개발 </span> </span> </li> <li class="nav-item"> <a href="//developer.android.com" class="nav-title"> <span class="nav-text"> Android </span> </a> </li> <li class="nav-item"> <a href="//developer.chrome.com" class="nav-title"> <span class="nav-text"> Chrome </span> </a> </li> <li class="nav-item"> <a href="//chromeos.dev/" class="nav-title"> <span class="nav-text"> ChromeOS </span> </a> </li> <li class="nav-item"> <a href="//cloud.google.com" class="nav-title"> <span class="nav-text"> Cloud </span> </a> </li> <li class="nav-item"> <a href="//firebase.google.com" class="nav-title"> <span class="nav-text"> Firebase </span> </a> </li> <li class="nav-item"> <a href="//flutter.dev" class="nav-title"> <span class="nav-text"> Flutter </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/assistant" class="nav-title"> <span class="nav-text"> Google Assistant </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/maps" class="nav-title"> <span class="nav-text"> Google Maps Platform </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/workspace" class="nav-title"> <span class="nav-text"> Google Workspace </span> </a> </li> <li class="nav-item"> <a href="//www.tensorflow.org" class="nav-title"> <span class="nav-text"> TensorFlow </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/youtube" class="nav-title"> <span class="nav-text"> YouTube </span> </a> </li> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 성장 </span> </span> </li> <li class="nav-item"> <a href="//firebase.google.com" class="nav-title"> <span class="nav-text"> Firebase </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/google-ads" class="nav-title"> <span class="nav-text"> Google Ads </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/analytics" class="nav-title"> <span class="nav-text"> Google Analytics </span> </a> </li> <li class="nav-item"> <a href="//developer.android.com/distribute" class="nav-title"> <span class="nav-text"> Google Play </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/search" class="nav-title"> <span class="nav-text"> Search </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/web/fundamentals/engage-and-retain/push-notifications" class="nav-title"> <span class="nav-text"> Web Push and Notification APIs </span> </a> </li> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 수익 창출 </span> </span> </li> <li class="nav-item"> <a href="//developers.google.com/admob" class="nav-title"> <span class="nav-text"> AdMob </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/google-ads/api" class="nav-title"> <span class="nav-text"> Google Ads API </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/pay" class="nav-title"> <span class="nav-text"> Google Pay </span> </a> </li> <li class="nav-item"> <a href="//developer.android.com/google/play/billing/" class="nav-title"> <span class="nav-text"> Google Play Billing </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/interactive-media-ads" class="nav-title"> <span class="nav-text"> Interactive Media Ads </span> </a> </li> </ul> <ul class="nav-list community-submenu hidden" menu="Community" aria-label="사이드 메뉴"> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 그룹 </span> </span> </li> <li class="nav-item"> <a href="//developers.google.com/community/gdg" class="nav-title"> <span class="nav-text"> Google Developer Groups </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/gdsc" class="nav-title"> <span class="nav-text"> Google Developer Student Clubs </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/womentechmakers" class="nav-title"> <span class="nav-text"> Woman Techmakers </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/experts" class="nav-title"> <span class="nav-text"> Google Developer Experts </span> </a> </li> <li class="nav-item"> <a href="//www.techequitycollective.com/" class="nav-title"> <span class="nav-text"> Tech Equity Collective </span> </a> </li> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 프로그램 </span> </span> </li> <li class="nav-item"> <a href="//developers.google.com/community/accelerators" class="nav-title"> <span class="nav-text"> Accelerator </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/gdsc-solution-challenge" class="nav-title"> <span class="nav-text"> Solution Challenge </span> </a> </li> <li class="nav-item"> <a href="//developers.google.com/community/devfest" class="nav-title"> <span class="nav-text"> DevFest </span> </a> </li> <li class="nav-item nav-heading"> <span class="nav-title"> <span class="nav-text"> 사례 </span> </span> </li> <li class="nav-item"> <a href="//developers.google.com/community/stories" class="nav-title" aria-label="All Stories"> <span class="nav-text"> 모든 스토리 </span> </a> </li> </ul> </div> </div> </nav> <select aria-label="언어 변경" name="lang-selector" id="lang-selector-nav" class="glue-form__dropdown glue-mobile-nav__lang-dropdown" onchange="window.location.href=this.value" > <option value="/en/enabling-more-private-gen-ai/" lang="en" > English </option> <option value="/es/enabling-more-private-gen-ai/" lang="es" > Español (Latam) </option> <option value="/id/enabling-more-private-gen-ai/" lang="id" > Bahasa Indonesia </option> <option value="/ja/enabling-more-private-gen-ai/" lang="ja" > 日本語 </option> <option value="/ko/enabling-more-private-gen-ai/" lang="ko" selected > 한국어 </option> <option value="/pt-br/enabling-more-private-gen-ai/" lang="pt-br" > Português (Brasil) </option> <option value="/zh-hans/enabling-more-private-gen-ai/" lang="zh-hans" > 简体中文 </option> </select> </div> <div class="backdrop"></div> <div class="blog-detail-container"> <section class="tags-container glue-page glue-spacer-5-top"> <div class="glue-eyebrow"><a href="/ko/search/?product_categories=Gemma">Gemma</a></div> </section> <section class="heading-container glue-page glue-spacer-1-top"> <h1 class="glue-headline glue-headline--headline-1">더욱 개인적인 생성형 AI 활성화</h1> </section> <section class="summary-container glue-page glue-spacer-4-top"> <div class="date-time"> <div class="published-date glue-font-weight-medium">7월 09, 2024</div> </div> </section> <section class="glue-page glue-grid glue-spacer-1-top"> <section class="author-container glue-grid__col glue-grid__col--span-4-sm glue-grid__col--span-10-md"> <div class="author-obj"> <a class="glue-font-weight-medium" href="/ko/search/?author=Krzysztof+Ostrowski">Krzysztof Ostrowski</a> <span class="glue-font-weight-medium role">Research Scientist</span> </div> <div class="author-obj"> <a class="glue-font-weight-medium" href="/ko/search/?author=Rene+Kolga">Rene Kolga</a> <span class="glue-font-weight-medium role">Senior Product Manager</span> </div> </section> <section class="social-container glue-grid__col glue-grid__col--span-4-sm glue-grid__col--span-2-md"> <button id="social-button" class="glue-button glue-button--low-emphasis glue-button--icon" aria-haspopup="true" aria-expanded="false"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#share"></use> </svg> <span>공유</span> </button> <ul id="social-menu" class="glue-elevation-level-1" role="menu" aria-labelledby="social-button"> <li> <a href="https://www.facebook.com/sharer/sharer.php?u={url}" title="Share on Facebook" target="_blank" rel="noopener"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--social glue-icon--32px"> <use href="/glue-icon/#post-facebook"></use> </svg> <span>Facebook</span> </a> </li> <li> <a href="https://twitter.com/intent/tweet?text={url}" title="Share on Twitter" target="_blank" rel="noopener"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--social glue-icon--32px"> <use href="/glue-icon/#twitter-x"></use> </svg> <span>Twitter</span> </a> </li> <li> <a href="https://www.linkedin.com/shareArticle?url={url}&mini=true" title="Share on LinkedIn" target="_blank" rel="noopener"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--social glue-icon--32px"> <use href="/glue-icon/#post-linkedin"></use> </svg> <span>LinkedIn</span> </a> </li> <li> <a href="mailto:name@example.com?subject=Check%20out%20this%20site&body=Check%20out%20{url}" title="Send via Email"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--social glue-icon--32px"> <use href="/glue-icon/#email"></use> </svg> <span>Mail</span> </a> </li> <li> <a href="#" title="Get shareable link" data-link="" data-copy-text="링크 복사" data-copied-text="복사했습니다!"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--social glue-icon--32px"> <use href="/glue-icon/#link"></use> </svg> <span></span> </a> </li> </ul> </section> </section> <section class="blocks-container glue-page glue-spacer-3-top"> <div class="block"> <img class="banner-image" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/header-G4D-Project-GameFace-makes-gaming-access.original.png" alt="AI-for-Developers-Banner" /> <div class="inner-block-content rich-content"> <p data-block-key="ev089">생성형 AI(gen AI) 채택률이 빠르게 늘고 있지만, 비공개 및 기밀 유지 보장에 대한 요구 수준이 더 높은 데이터에 gen AI를 적용하여 제품을 개발할 수 있는 잠재력은 여전히 거의 미개척 상태로 남아 있습니다.</p><p data-block-key="1fi5c">예를 들어, 이는 다음과 같은 것에 gen AI를 적용하는 것을 의미할 수 있습니다.</p><p data-block-key="bcsud"></p><ul><li data-block-key="2e01r">개인 비서 앱이 사람들의 삶에서 일어나는 일에 보다 완벽하게 통합되고 인식하여 더욱 폭넓은 범위의 일상 환경에서 사람에게 도움을 줄 수 있도록 하는 데이터 처리.</li></ul><p data-block-key="9us1j"></p><ul><li data-block-key="m5mg">예컨대 생산성을 향상하고 운영 비용을 절감하기 위해 청구서 처리 또는 고객 지원 문의 처리와 같은 지루한 작업을 자동화하기 위한 기밀 비즈니스 정보.</li></ul><p data-block-key="d4hih"></p><p data-block-key="fq5a5">이와 같은 특정 응용 분야에서는 개인 정보 보호/기밀 유지, 투명성, 데이터 처리의 외부 검증 가능성과 관련한 요구 사항이 높아질 수 있습니다.</p><p data-block-key="59fqr">Google은 더욱 철저하게 비공개 상태를 유지해야 하는 데이터를 처리하기 위해 gen AI의 잠재력을 실험하고 탐색하는 데 사용할 수 있는 다양한 기술을 개발했습니다. 이 게시물에서는 최근에 출시된 <a href="https://github.com/google/genc">GenC 오픈소스 프로젝트</a>를 사용하여 <a href="https://cloud.google.com/security/products/confidential-computing">컨피덴셜 컴퓨팅</a>, <a href="https://ai.google.dev/gemma">Gemma</a> 오픈소스 모델, 모바일 플랫폼을 함께 결합하여 개인 정보 보호/기밀성, 투명성, 외부 검증 가능성에 관한 요구 수준이 높아진 데이터를 처리할 수 있는 자체 gen AI 기반 앱을 개발하며 다양한 실험을 시작하는 방법을 설명하겠습니다.</p><h2 data-block-key="3k2ou"><b><br/>함께 작동하는 최종 사용자 기기와 클라우드</b></h2><p data-block-key="1cg42">아래 그림과 같이 이 게시물에서 중점적으로 다룰 시나리오에는 기기의 데이터에 액세스할 수 있고 LLM을 사용하여 이 데이터에 대해 gen AI 처리를 수행하려는 모바일 앱이 등장합니다.</p><p data-block-key="bs0lj">예를 들어, 기기에 저장된 메모, 문서 또는 녹음에 대한 질문을 요약하거나 질문에 답하도록 되어 있는 개인 비서 앱을 상상해 보세요. 콘텐츠에 다른 사람과 주고받은 메시지와 같은 개인 정보가 포함될 수 있으므로 비공개로 유지하고자 합니다.</p><p data-block-key="bk24c">이 예에서는 오픈소스 모델의 <a href="https://ai.google.dev/gemma">Gemma</a> 제품군을 선택했습니다. 여기서는 모바일 앱에 초점을 맞추지만, 온프레미스에서 자체 데이터를 호스팅하는 기업에도 동일한 원칙이 적용됩니다.</p> </div> <div class="inner-block-content"> <div class="image-wrapper"> <img class="regular-image" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/Private_GenAI.original.png" alt="A model cascade that spans from a mobile device to a trusted enclave in cloud." /> </div> </div> <div class="inner-block-content rich-content"> <p data-block-key="ev089">이 예에서는 두 개의 LLM을 포함하는 '하이브리드' 설정을 보여주는데, 한 LLM은 사용자 기기에서 로컬로 실행되고 다른 LLM은 <a href="https://cloud.google.com/security/products/confidential-computing">컨피덴셜 컴퓨팅</a>으로 구동되는 <a href="https://cloud.google.com/">Google Cloud</a>의 <a href="https://cloud.google.com/docs/security/confidential-space">Confidential Space</a> <a href="https://en.wikipedia.org/wiki/Trusted_execution_environment">TEE(신뢰할 수 있는 실행 환경)</a>에서 호스팅됩니다. 모바일 앱은 이 하이브리드 아키텍처를 통해 온디바이스와 클라우드 리소스를 모두 활용하여 다음과 같이 두 가지 모두의 고유한 이점을 누릴 수 있습니다.</p><p data-block-key="a3bg6"></p><ul><li data-block-key="b1o0b">최대 1.5GB 패키지로 제공되며 최신 모바일 기기(예: Pixel 7)에 적합한 양자화된 Gemma 2B의 작은 인스턴스. 이 인스턴스는 더 빠른 응답 시간(네트워크 또는 데이터 전송 지연 시간을 발생시키지 않음), 네트워크 연결 없이도 쿼리를 지원하는 능력, 로컬 온디바이스 하드웨어 리소스를 활용할 수 있어 클라우드 측에서 동일한 비용으로 더 폭넓은 잠재고객에게 도달할 수 있다는 점 때문에 더 나은 비용 효율성 등의 이점을 제공할 수 있습니다.</li></ul><p data-block-key="8cbhm"></p><ul><li data-block-key="ed2u2">고출력 기기에도 적합하지 않고 35GB에 약간 못 미치는 양자화되지 않은 Gemma 7B의 큰 인스턴스. 클라우드에서 호스팅되므로 네트워크 연결에 따라 달라지며 비용이 더 많이 들지만, 더 나은 품질과 더 복잡하거나 비싼 쿼리(처리할 수 있는 리소스가 더 많음)를 처리하는 기능을 제공하며, 다른 이점(예: 계산을 클라우드로 오프로드하여 모바일 기기의 배터리 소비 최소화 등)도 있습니다.</li></ul><p data-block-key="ecggg"></p><p data-block-key="feu2f">이 예에서 두 모델은 함께 작동하며, 더 작고 저렴하며 빠른 Gemma 2B가 첫 번째 계층 역할을 하고 더 간단한 쿼리를 처리하는 모델 캐스케이드에 연결되는 반면, 더 큰 Gemma 7B는 Gemma 2B가 스스로 처리할 수 없는 쿼리에 대한 백업 역할을 합니다. 예를 들어, 아래의 추가 코드 스니펫에서, 먼저 각 입력 쿼리를 분석하여 두 모델 중 가장 적절한 모델을 결정하는 온디바이스 라우터로 작동하도록 Gemma 2B를 설정한 다음, 그 결과에 따라 쿼리를 온디바이스에서 로컬로 처리하거나 클라우드 기반 <a href="https://en.wikipedia.org/wiki/Trusted_execution_environment">TEE</a>에 있는 Gemma 7B로 릴레이합니다.</p><h2 data-block-key="74ekc"><b><br/>기기를 논리적으로 확장한 TEE</b></h2><p data-block-key="bts14">이 아키텍처에서는 클라우드의 TEE를 투명성, 암호화 보장, 신뢰할 수 있는 하드웨어로 구동되는 사용자 모바일 기기를 사실상 논리적으로 확장한 것으로 생각할 수 있습니다.</p><p data-block-key="bpk4u"></p><ul><li data-block-key="ehmbq">Gemma 7B가 있는 비공개 컨테이너와 TEE에 호스팅된 GenC 런타임은 암호화된 메모리로 실행되고, 기기와 TEE 간의 통신도 암호화되며, 아무런 데이터도 유지되지 않습니다(필요한 경우 휴면 상태에서 암호화될 수도 있음).</li></ul><p data-block-key="ama5m"></p><ul><li data-block-key="etnaf">상호 작용이 발생하기 전에 기기는 TEE에서 실행되는 컨테이너 이미지의 SHA256 다이제스트가 포함된 <a href="https://cloud.google.com/confidential-computing/confidential-vm/docs/attestation">증명</a> 보고서를 요청하여 기기에서 위임된 쿼리를 처리할 TEE 내 코드의 ID와 무결성을 확인합니다. 기기는 이 다이제스트를 개발자가 앱과 함께 번들로 제공한 다이제스트와 비교합니다. (이 간단한 시나리오에서 사용자는 순수한 온디바이스 앱과 마찬가지로 여전히 앱 개발자를 신뢰하며, 더 복잡한 설정도 가능하지만 이 기사의 범위를 벗어납니다.)</li></ul><p data-block-key="e6fbd"></p><ul><li data-block-key="98nib">이 시나리오에서 컨테이너 이미지에서 실행되는 모든 코드는 100% 오픈소스입니다. 따라서 개발자나 기타 외부 당사자는 이미지에 들어가는 코드를 독립적으로 검사하여 사용자 또는 데이터 소유자의 기대치, 규제 또는 계약상 의무 등에 부합하는 방식으로 데이터를 처리하는지 확인한 다음, 스스로 이미지를 빌드하고 결과 이미지 다이제스트가 앱 내에서 번들로 제공되고 이후에 TEE가 반환하는 증명 보고서에서 앱이 예상하는 다이제스트와 일치하는지 확인할 수 있습니다.</li></ul><p data-block-key="bjfcr"></p><p data-block-key="9mrlr">한눈에 봐도 이 설정은 복잡해 보일 수 있으며, 처음부터 모든 것을 완전히 설정해야 한다면 실제로도 그렇게 될 것입니다. 그래서 프로세스를 더 쉽게 만들려고 <a href="https://github.com/google/genc">GenC</a>를 정교하게 개발했습니다.</p><h2 data-block-key="dl7eo"><b><br/>개발자 환경 간소화</b></h2><p data-block-key="1k95m">다음은 GenC에서 위와 같은 시나리오를 설정하기 위해 실제로 작성해야 하는 코드의 예입니다. Java 및 C++ 저작 API도 제공하지만, 여기서는 Python을 널리 선택해 사용하는 것으로 보고 기본적으로 제공합니다. 이 예에서는 더 민감한 주제의 존재를 (더 신중한 응답을 만들 수 있는) 더 강력한 모델로 쿼리를 처리해야 한다는 신호로 사용합니다. 이 예는 설명의 목적상 간소화된 것이라는 점을 유념하세요. 실제로는 라우팅 논리가 보다 정교하고 애플리케이션에 따라 달라질 수 있으며, 특히 작은 모델에서는 신중한 프롬프트 엔지니어링이 우수한 성능 달성에 필수적입니다.</p> </div> <div class="inner-block-content code-block"> <div class="highlight"><pre class="python"><span></span><span class="nd">@genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">traced_computation</span> <span class="k">def</span> <span class="nf">cascade</span><span class="p">(</span><span class="n">x</span><span class="p">):</span> <span class="n">gemma_2b_on_device</span> <span class="o">=</span> <span class="n">genc</span><span class="o">.</span><span class="n">interop</span><span class="o">.</span><span class="n">llamacpp</span><span class="o">.</span><span class="n">model_inference</span><span class="p">(</span> <span class="s1">'/device/llamacpp'</span><span class="p">,</span> <span class="s1">'/gemma-2b-it.gguf'</span><span class="p">,</span> <span class="n">num_threads</span><span class="o">=</span><span class="mi">16</span><span class="p">,</span> <span class="n">max_tokens</span><span class="o">=</span><span class="mi">64</span><span class="p">)</span> <span class="n">gemma_7b_in_a_tee</span> <span class="o">=</span> <span class="n">genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">confidential_computation</span><span class="p">[</span> <span class="n">genc</span><span class="o">.</span><span class="n">interop</span><span class="o">.</span><span class="n">llamacpp</span><span class="o">.</span><span class="n">model_inference</span><span class="p">(</span> <span class="s1">'/device/llamacpp'</span><span class="p">,</span> <span class="s1">'/gemma-7b-it.gguf'</span><span class="p">,</span> <span class="n">num_threads</span><span class="o">=</span><span class="mi">64</span><span class="p">,</span> <span class="n">max_tokens</span><span class="o">=</span><span class="mi">64</span><span class="p">),</span> <span class="p">{</span><span class="s1">'server_address'</span><span class="p">:</span> <span class="o">/*</span> <span class="n">server</span> <span class="n">address</span> <span class="o">*/</span><span class="p">,</span> <span class="s1">'image_digest'</span><span class="p">:</span> <span class="o">/*</span> <span class="n">image</span> <span class="n">digest</span> <span class="o">*/</span> <span class="p">}]</span> <span class="n">router</span> <span class="o">=</span> <span class="n">genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">serial_chain</span><span class="p">[</span> <span class="n">genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">prompt_template</span><span class="p">[</span> <span class="w"> </span><span class="sd">"""Read the following input carefully: "{x}".</span> <span class="sd"> Does it touch on political topics?"""</span><span class="p">],</span> <span class="n">gemma_2b_on_device</span><span class="p">,</span> <span class="n">genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">regex_partial_match</span><span class="p">[</span><span class="s1">'does touch|touches'</span><span class="p">]]</span> <span class="k">return</span> <span class="n">genc</span><span class="o">.</span><span class="n">authoring</span><span class="o">.</span><span class="n">conditional</span><span class="p">[</span> <span class="n">gemma_2b_on_device</span><span class="p">(</span><span class="n">x</span><span class="p">),</span> <span class="n">gemma_7b_in_a_tee</span><span class="p">(</span><span class="n">x</span><span class="p">)](</span><span class="n">router</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> </pre></div> </div> <div class="inner-block-content rich-content"> <p data-block-key="ev089"><a href="https://github.com/google/genc/blob/master/genc/docs/tutorials/README.md">GitHub의 튜토리얼</a>에서 이러한 예제 코드를 빌드하고 실행하는 방법에 대한 자세한 단계별 내역을 확인할 수 있습니다. 보시다시피, 추상화 수준은 LangChain과 같이 인기 있는 SDK에서 찾을 수 있는 것과 일치합니다. Gemma 2B 및 7B에 대한 모델 추론 호출은 프롬프트 템플릿 및 출력 파서와 함께 여기에 배치되며 체인으로 결합됩니다. (참고로, 저희는 확장하고자 하는 LangChain 상호 운용성을 제한적으로 제공합니다.)</p><p data-block-key="18bl0">Gemma 2B 모델 추론 호출은 온디바이스로 실행되는 체인 내에서 직접 사용되는 반면, Gemma 7B 호출은 <b><code>confidential_computation</code></b> 문 내에 명시적으로 삽입됩니다.</p><p data-block-key="df5sc">여기서 중요한 건 놀랄 일이 없다는 점입니다. 프로그래머는 온디바이스로 수행할 처리와 클라우드에서 기기에서 TEE로 위임할 사항에 대한 결정을 항상 완벽히 통제할 수 있습니다. 이 결정은 코드 구조에 명시적으로 반영됩니다. (이 예제에서는 신뢰할 수 있는 단일 백엔드에만 Gemma 7B 호출을 위임하지만, 저희가 제공하는 메커니즘은 포괄적이며 이를 사용하여 전체 에이전트 루프 등 더 큰 처리 청크를 개수에 관계없이 백엔드에 위임할 수 있습니다.)</p><h2 data-block-key="6kr90"><b><br/>프로토타입 제작부터 유연한 배포까지</b></h2><p data-block-key="9ri5p">위에 표시된 코드는 친숙한 Python 구문을 사용하여 표현되지만 내부적으로는 <a href="https://github.com/google/genc/blob/master/genc/docs/ir.md">Intermediate Representation</a>(또는 줄여서 'IR')이라고 하는 휴대용 플랫폼과 언어에 독립적인 형태로 변환됩니다.</p><p data-block-key="2jpv6">이 접근 방식에는 다음을 비롯한 여러 가지 이점이 있습니다.</p><p data-block-key="d78j8"></p><ul><li data-block-key="e0eie">이 접근 방식을 통해 Jupyter 노트북과 같이 빠르게 진행되는 반복을 지원하는 사용하기 쉽고 신속한 개발 환경에서 gen AI 논리를 프로토타입으로 만들어 테스트한 다음, 예컨대 모바일 기기의 Java 앱에서 실행되는 것과 같이 최소한의 것만 변경되거나 전혀 변경되지 않은 동일한 gen AI 코드를 배포할 수 있습니다. <a href="https://github.com/google/genc/blob/master/genc/docs/tutorials/README.md">튜토리얼</a>에서는 IR이 포함된 파일을 모바일 기기로 복사하여 앱에 로드하기만 하면 되는 간단한 과정으로 소개되어 있습니다.</li></ul><p data-block-key="5c6kh"></p><ul><li data-block-key="86ga8">이 접근 방식을 통해 여러 언어와 플랫폼에 걸쳐(예: Linux 기반에서 모바일 플랫폼까지, Python에서 Java 및 C++까지) 일관된 동작으로 동일한 논리를 배포하고 실행할 수 있습니다. 다양한 제품 표면을 타겟팅할 계획이라면 이 접근 방식이 제격입니다.</li></ul><p data-block-key="b9p4g"></p><ul><li data-block-key="d3kvp">이 접근 방식을 통해 프로세스 및 시스템 경계 전반에 걸쳐 gen AI 논리 중 어떤 부분이든 역동적으로 위임할 수 있습니다. 이는 모바일 기기가 클라우드의 TEE에 위임하는 시나리오에서 암시적으로 일어나는 일입니다. 이 간단한 예제에서도 마찬가지인데, 단일 작업(Gemma 7B 추론 호출)만 위임합니다. 저희가 제공하는 메커니즘은 훨씬 더 일반적입니다.</li></ul><p data-block-key="2pe5n"></p><p data-block-key="t8ke">현실적인 배포에서는 성능이 결정적으로 중요한 요소인 경우가 많습니다. 현재 저희가 게시한 예제는 CPU 전용으로 제한되어 있으며, GenC는 현재 TEE에 있는 모델의 드라이버로 llama.cpp만 제공할 뿐입니다. 그러나 컨피덴셜 컴퓨팅 팀은 <a href="https://cloud.google.com/blog/products/identity-security/expanding-confidential-computing-for-ai-workloads-next24">기밀 모드에서 작동하는 Nvidia H100 GPU의 예정된 미리보기</a>와 함께 <a href="https://www.intel.com/content/www/us/en/products/docs/accelerator-engines/advanced-matrix-extensions/overview.html">Intel AMX 기본 제공 가속기</a>로 <a href="https://cloud.google.com/blog/products/identity-security/confidential-vms-on-intel-cpus-your-datas-new-intelligent-defense">Intel TDX에 대한 지원을 확대</a>하고 있으며, 저희는 사용 가능한 소프트웨어 및 하드웨어 옵션의 범위를 확장하여 최상의 성능과 더욱 광범위한 모델에 대한 지원을 제공하려고 적극적으로 노력하고 있습니다. 향후 업데이트를 기대해 주세요!</p><h2 data-block-key="3s2vu"><b><br/>여러분의 이야기를 듣고 싶습니다!</b></h2><p data-block-key="bd38o">흥미를 느끼시길 바라며, 이 게시물을 통해 저희가 도입한 몇 가지 기술을 사용하여 자신만의 gen AI 애플리케이션을 개발해 보시기 바랍니다. GenC는 실험 및 연구 목적으로 개발된 실험용 프레임워크라는 점을 유념하시기 바랍니다. 즉, 무엇이 가능할지 보여주고 개발자 여러분이 저희와 함께 이 흥미진진한 분야를 탐구하고 싶은 영감을 드리고자 GenC를 만들었습니다. 더욱 발전하도록 기여하고 싶으시면 저자에게 연락하거나 <a href="https://github.com/google/genc">GitHub에서</a> 저희와 함께하시기 바랍니다. 함께 활발히 교류하고 협력하고 싶습니다!</p> </div> </div> </section> <section class="navigation-container glue-page glue-spacer-6-top"> <div class="posted-in-section"> <div class="posted-in-section__heading"> <span class="glue-caption"> 게시 위치: </span> </div> <div class="posted-in-section__tags"> <ul> <li> <a href="/ko/search/?product_categories=Gemma" class="glue-caption">Gemma</a> </li> <li> <a href="/ko/search/?technology_categories=Mobile" class="glue-caption">Mobile</a> </li> <li> <a href="/ko/search/?technology_categories=AI" class="glue-caption">AI</a> </li> <li> <a href="/ko/search/?technology_categories=Cloud" class="glue-caption">Cloud</a> </li> <li> <a href="/ko/search/?content_type_categories=How-To+Guides" class="glue-caption">How-To Guides</a> </li> <li> <a href="/ko/search/?content_type_categories=Industry+Trends" class="glue-caption">Industry Trends</a> </li> <li> <a href="/ko/search/?tag=Solve" class="glue-caption">Solve</a> </li> <li> <a href="/ko/search/?tag=Learn" class="glue-caption">Learn</a> </li> </ul> </div> </div> <div class="buttons-section"> <div class="buttons-section__left"> <a href="/ko/running-larger-language-models-in-the-browser-with-mediapipe-7b/" class="glue-button--icon glue-elevation-level-1 " aria-label="이전"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#chevron-left"></use> </svg> </a> <span class="caption ">이전</span> </div> <div class="buttons-section__right"> <span class="caption ">다음</span> <a href="/ko/bringing-the-io-magic-to-berlin/" class="glue-button--icon glue-elevation-level-1 " aria-label="다음"> <svg role="presentation" aria-hidden="true" class="glue-icon"> <use href="/glue-icon/#chevron-right"></use> </svg> </a> </div> </div> </section> <section class="related-posts-container glue-page glue-spacer-6-top glue-spacer-3-bottom"> <span class="glue-headline glue-headline--headline-3">관련 게시물</span> <div class="related-posts-container__carousel glue-page glue-spacer-5-top"> <div class="glue-carousel glue-carousel--cards glue-carousel-related-posts" aria-label="관련 게시물"> <!-- Previous --> <button class="glue-carousel__button glue-carousel__button--prev" aria-label="이전 슬라이드로 이동"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--32px"> <use href="/glue-icon/#chevron-left"></use> </svg> </button> <!-- Next --> <button class="glue-carousel__button glue-carousel__button--next" aria-label="다음 슬라이드로 이동"> <svg role="presentation" aria-hidden="true" class="glue-icon glue-icon--32px"> <use href="/glue-icon/#chevron-right"></use> </svg> </button> <!-- List --> <div class="glue-carousel__viewport"> <div class="glue-carousel__list"> <a class="glue-card glue-carousel__item" href="/ko/introducing-keras-hub-for-pretrained-models/"> <div aria-label="Keras Hub 소개: 사전 훈련된 모델을 위한 모든 것이 준비된 원스톱 숍" class="glue-card__inner"> <picture class="glue-card__asset"> <img alt="Keras Hub 소개: 사전 훈련된 모델을 위한 모든 것이 준비된 원스톱 숍" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/Keras-GfD.2e16d0ba.fill-800x400.png"> </picture> <div class="glue-card__content"> <div class="glue-card__tags glue-spacer-2-top"> <span class="glue-label">Gemma</span> <span class="glue-label">AI</span> <span class="glue-label">Announcements</span> <span class="glue-label">Best Practices</span> </div> <p class="glue-headline glue-headline--headline-5">Keras Hub 소개: 사전 훈련된 모델을 위한 모든 것이 준비된 원스톱 숍</p> <div class="glue-card__cta-custom glue-spacer-3-top"> <span class="glue-cta">2024년 10월 22일</span> <svg aria-hidden="true" class="glue-icon glue-icon--24px" role="presentation"> <use href="/glue-icon/#arrow-forward"></use> </svg> </div> </div> </div> </a> <a class="glue-card glue-carousel__item" href="/ko/inference-with-gemma-using-dataflow-and-vllm/"> <div aria-label="Dataflow 및 vLLM을 사용한 Gemma의 추론 기능" class="glue-card__inner"> <picture class="glue-card__asset"> <img alt="Dataflow 및 vLLM을 사용한 Gemma의 추론 기능" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/Gemma-Dataflow-ML-vLLM.2e16d0ba.fill-800x400.png"> </picture> <div class="glue-card__content"> <div class="glue-card__tags glue-spacer-2-top"> <span class="glue-label">Gemma</span> <span class="glue-label">AI</span> <span class="glue-label">Cloud</span> <span class="glue-label">How-To Guides</span> <span class="glue-label">Problem-Solving</span> </div> <p class="glue-headline glue-headline--headline-5">Dataflow 및 vLLM을 사용한 Gemma의 추론 기능</p> <div class="glue-card__cta-custom glue-spacer-3-top"> <span class="glue-cta">2024년 11월 13일</span> <svg aria-hidden="true" class="glue-icon glue-icon--24px" role="presentation"> <use href="/glue-icon/#arrow-forward"></use> </svg> </div> </div> </div> </a> <a class="glue-card glue-carousel__item" href="/ko/firebase-demo-day-24/"> <div aria-label="Learn to build and run AI powered apps at Firebase Demo Day ‘24" class="glue-card__inner"> <picture class="glue-card__asset"> <img alt="Learn to build and run AI powered apps at Firebase Demo Day ‘24" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/Newletter_DayOf.2e16d0ba.fill-800x400.jpg"> </picture> <div class="glue-card__content"> <div class="glue-card__tags glue-spacer-2-top"> <span class="glue-label">Firebase</span> <span class="glue-label">Mobile</span> <span class="glue-label">Web</span> <span class="glue-label">Tutorials</span> <span class="glue-label">How-To Guides</span> </div> <p class="glue-headline glue-headline--headline-5">Learn to build and run AI powered apps at Firebase Demo Day ‘24</p> <div class="glue-card__cta-custom glue-spacer-3-top"> <span class="glue-cta">2024년 11월 19일</span> <svg aria-hidden="true" class="glue-icon glue-icon--24px" role="presentation"> <use href="/glue-icon/#arrow-forward"></use> </svg> </div> </div> </div> </a> <a class="glue-card glue-carousel__item" href="/ko/announcing-the-winners-of-the-gemini-api-developer-competition/"> <div aria-label="Announcing the Winners of the Gemini API Developer Competition!" class="glue-card__inner"> <picture class="glue-card__asset"> <img alt="Announcing the Winners of the Gemini API Developer Competition!" src="https://storage.googleapis.com/gweb-developer-goog-blog-assets/images/Gemini_Competition_G4D_-_meta.2e16d0ba.fill-800x400.png"> </picture> <div class="glue-card__content"> <div class="glue-card__tags glue-spacer-2-top"> <span class="glue-label">Mobile</span> <span class="glue-label">Web</span> <span class="glue-label">Case Studies</span> <span class="glue-label">Community</span> </div> <p class="glue-headline glue-headline--headline-5">Announcing the Winners of the Gemini API Developer Competition!</p> <div class="glue-card__cta-custom glue-spacer-3-top"> <span class="glue-cta">2024년 11월 21일</span> <svg aria-hidden="true" class="glue-icon glue-icon--24px" role="presentation"> <use href="/glue-icon/#arrow-forward"></use> </svg> </div> </div> </div> </a> </div> </div> <!-- Navigation dots --> <div class="glue-carousel__navigation" aria-label="Choose a page" data-glue-carousel-navigation-label="Selected tab $glue_carousel_page_number$ of $glue_carousel_page_total$"> </div> </div> </div> </section> </div> <div class="footer-linkboxes__wrapper"> <nav class="footer-linkboxes" aria-label="바닥글 링크"> <ul class="footer-linkboxes__list"> <li class="footer-linkbox"> <span class="footer-linkbox-heading"> 연결 </span> <ul class="footer-linkbox-list"> <li class="footer-linkbox-list__item"> <a href="//googledevelopers.blogspot.com" class="footer-linkbox-list__link"> Blog </a> </li> <li class="footer-linkbox-list__item"> <a href="https://goo.gle/googlefordevs" class="footer-linkbox-list__link"> Instagram </a> </li> <li class="footer-linkbox-list__item"> <a href="https://goo.gle/gdevs-li" class="footer-linkbox-list__link"> LinkedIn </a> </li> <li class="footer-linkbox-list__item"> <a href="https://goo.gle/gdevs-tw" class="footer-linkbox-list__link"> Twitter </a> </li> <li class="footer-linkbox-list__item"> <a href="https://goo.gle/developers" class="footer-linkbox-list__link"> YouTube </a> </li> </ul> </li> <li class="footer-linkbox"> <span class="footer-linkbox-heading"> 프로그램 </span> <ul class="footer-linkbox-list"> <li class="footer-linkbox-list__item"> <a href="//www.womentechmakers.com" class="footer-linkbox-list__link"> Women Techmakers </a> </li> <li class="footer-linkbox-list__item"> <a href="//developers.google.com/community/gdg" class="footer-linkbox-list__link"> Google Developer Groups </a> </li> <li class="footer-linkbox-list__item"> <a href="//developers.google.com/community/experts" class="footer-linkbox-list__link"> Google Developer Experts </a> </li> <li class="footer-linkbox-list__item"> <a href="//developers.google.com/community/accelerators" class="footer-linkbox-list__link"> Accelerators </a> </li> <li class="footer-linkbox-list__item"> <a href="//developers.google.com/community/gdsc" class="footer-linkbox-list__link"> Google Developer Student Clubs </a> </li> </ul> </li> <li class="footer-linkbox"> <span class="footer-linkbox-heading"> 개발자 콘솔 </span> <ul class="footer-linkbox-list"> <li class="footer-linkbox-list__item"> <a href="//console.developers.google.com" class="footer-linkbox-list__link"> Google API Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//console.cloud.google.com" class="footer-linkbox-list__link"> Google Cloud Platform Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//play.google.com/apps/publish" class="footer-linkbox-list__link"> Google Play Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//console.firebase.google.com" class="footer-linkbox-list__link"> Firebase Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//console.actions.google.com" class="footer-linkbox-list__link"> Actions on Google Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//cast.google.com/publish" class="footer-linkbox-list__link"> Cast SDK Developer Console </a> </li> <li class="footer-linkbox-list__item"> <a href="//chrome.google.com/webstore/developer/dashboard" class="footer-linkbox-list__link"> Chrome Web Store Dashboard </a> </li> </ul> </li> </ul> </nav> </div> <div class="footer-utility__wrapper"> <div> <nav class="footer-sites" aria-label="기타 Google Developers 웹사이트"> <a href="https://developers.google.com/" class="site-logo-link" data-label="Site logo"> <img src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/images/g-dev.svg" class="site-logo" alt="Google for Developers"> </a> <ul class="footer-sites-list"> <li class="footer-sites-item"> <a href="//developer.android.com" class="footer-sites-link"> Android </a> </li> <li class="footer-sites-item"> <a href="//developer.chrome.com/home" class="footer-sites-link"> Chrome </a> </li> <li class="footer-sites-item"> <a href="//firebase.google.com" class="footer-sites-link"> Firebase </a> </li> <li class="footer-sites-item"> <a href="//cloud.google.com" class="footer-sites-link"> Google Cloud Platform </a> </li> <li class="footer-sites-item"> <a href="//developers.google.com/products" class="footer-sites-link"> All products </a> </li> <li class="footer-sites-item"> <button aria-hidden="true" class="glue-cookie-notification-bar-control footer-sites-link"> Manage cookies </button> </li> </ul> </nav> <nav class="footer-utility-links"> <ul class="footer-utility-list"> <li class="footer-utility-item"> <a href="//developers.google.com/terms/site-terms" class="footer-utility-link"> 약관 </a> </li> <li class="footer-utility-item"> <a href="//policies.google.com/privacy" class="footer-utility-link"> 개인정보 보호 </a> </li> </ul> <div class="language-selector footer" aria-label="언어 기본 설정 선택"> <button type="button" aria-controls="lang-selector-footer" aria-haspopup="true"> <svg role="presentation" aria-hidden="true" class="glue-icon lang-icon"> <use href="/glue-icon/#language"></use> </svg> <span class="lang-label">한국어</span> <svg role="presentation" aria-hidden="true" class="glue-icon lang-icon"> <use href="/glue-icon/#arrow-drop-down"></use> </svg> </button> <div id="lang-selector-footer" class="lang-menu hidden" role="menu"> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" href="/en/enabling-more-private-gen-ai/">English</a> </li> <li role="presentation"> <a role="menuitem" lang="es" href="/es/enabling-more-private-gen-ai/">Español (Latam)</a> </li> <li role="presentation"> <a role="menuitem" lang="id" href="/id/enabling-more-private-gen-ai/">Bahasa Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" href="/ja/enabling-more-private-gen-ai/">日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" aria-current="true" href="/ko/enabling-more-private-gen-ai/">한국어</a> </li> <li role="presentation"> <a role="menuitem" lang="pt-br" href="/pt-br/enabling-more-private-gen-ai/">Português (Brasil)</a> </li> <li role="presentation"> <a role="menuitem" lang="zh-hans" href="/zh-hans/enabling-more-private-gen-ai/">简体中文</a> </li> </ul> </div> </div> </nav> </div> </div> <script src="https://www.youtube.com/player_api"></script> <script src="//www.gstatic.com/glue/v27_1/glue.min.js"></script> <script type="text/javascript" src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/js/dgc_blog.js"></script> <script src="https://www.gstatic.com/glue/cookienotificationbar/cookienotificationbar.min.js" data-glue-cookie-notification-bar-category="2A" data-glue-cookie-notification-bar-site-id="developers.googleblog.com"> </script> <script src="https://storage.googleapis.com/gweb-developer-goog-blog-cms-assets/3beac713-6e5f-4da4-a648-60ba0b0a6ffe/js/blog_detail.js"></script> </body> </html>