게시일: 2024년 12월 12일, 최종 업데이트: 2025년 5월 20일
기본 제공 AI API를 사용하면 웹 애플리케이션이 자체 AI 모델을 배포하거나 관리할 필요 없이 AI 기반 작업을 실행할 수 있습니다. Google은 이러한 API를 브라우저 전반에서 표준화하기 위해 노력하고 있습니다.
요구사항
기본 제공 AI를 사용하려면 모델 및 하드웨어 요구사항이 있습니다.
모델
Translator 및 Language Detector API는 전문가 모델을 사용합니다. 다른 모든 API는 데스크톱과 노트북에서 로컬로 실행되도록 설계된 언어 모델을 사용합니다.
Summarizer API, Writer API, Rewriter API, Proofreader API는 텍스트-텍스트 모드만 지원합니다. Prompt API에는 멀티모달 기능이 있습니다.
Chrome의 Gemini Nano
Chrome은 Gemini Nano 언어 모델을 사용합니다. Gemini Nano는 휴대기기에서 사용할 수 없습니다.
Chrome 140부터 Gemini Nano는 입력 및 출력 텍스트에 영어, 스페인어, 일본어를 지원합니다.
기본 제공 AI API를 사용하기 전에 Google의 생성형 AI에 관한 금지된 사용 정책을 확인하세요.
하드웨어
Chrome에서 이러한 API를 사용하여 기능을 운영하는 개발자와 사용자에게는 다음과 같은 요구사항이 있습니다. 브라우저마다 운영 요구사항이 다를 수 있습니다.
Language Detector 및 Translator API 는 데스크톱의 Chrome에서 작동합니다. 이러한 API는 휴대기기에서 작동하지 않습니다.
Prompt API, Summarizer API, Writer API, Rewriter API, Proofreader API는 다음 조건을 충족하는 경우 Chrome에서 작동합니다.
- 운영체제: Windows 10 또는 11, macOS 13+ (Ventura 이상), Linux 또는 Chromebook Plus 기기의 ChromeOS (플랫폼 16389.0.0 이상) Gemini Nano를 사용하는 API는 아직 Chromebook Plus 기기가 아닌 기기의 Android용 Chrome, iOS, ChromeOS를 지원하지 않습니다.
- 저장용량: Chrome 프로필이 포함된 볼륨에 최소 22GB의 여유 공간
- GPU 또는 CPU: 기본 제공 모델은 GPU 또는 CPU로 실행할 수 있습니다.
- GPU: 4GB 이상의 VRAM
- CPU: 16GB 이상의 RAM 및 4개 이상의 CPU 코어
- 네트워크: 무제한 데이터 또는 종량제 연결이 아닌 연결
Gemini Nano의 정확한 크기는 브라우저에서 모델을 업데이트할 때 다를 수 있습니다. 현재 크기를 확인하려면 chrome://on-device-internals를 방문하세요.
빌드 시작
개발의 여러 단계에서 사용할 수 있는 기본 제공 AI API가 여러 개 있습니다. 일부는 Chrome 안정화 버전에서 제공되고, 일부는 오리진 트라이얼의 참여자가 사용할 수 있으며, 일부는 얼리 프리뷰 프로그램 참여자만 사용할 수 있습니다.
각 API에는 로컬 프로토타입 제작과 오리진 트라이얼이 있는 프로덕션 환경 모두에서 시작하고 모델을 다운로드하기 위한 자체 안내가 있습니다.
- Translator API
- Language Detector API
- Summarizer API
- Writer API 및 Rewriter API
- Proofreader API
- Prompt API
이러한 API는 모두 Chrome 확장 프로그램을 빌드할 때 사용할 수 있습니다.
모델 다운로드
API는 모델과 마찬가지로 Chrome에 기본 제공됩니다. 사용자가 이러한 API와 처음 상호작용할 때 모델을 브라우저에 다운로드해야 합니다.
API를 사용하고 준비되었는지 확인하려면 다음 값 중 하나가 포함된 프로미스를 반환하는 비동기
availability() 함수를 호출합니다.
"unavailable": 사용자 기기 또는 요청된 세션 옵션이 지원되지 않습니다. 기기의 전원 또는 디스크 공간이 부족할 수 있습니다."downloadable": 세션을 만드는 데 추가 다운로드가 필요합니다. 여기에는 전문가 모델, 언어 모델 또는 미세 조정이 포함될 수 있습니다. 사용자 활성화가create()를 호출하는 데 필요할 수 있습니다."downloading": 다운로드가 진행 중이며 세션을 사용하기 전에 세션을 사용하기 전에 완료해야 합니다."available": 세션을 즉시 만들 수 있습니다.
일부 API는 가용성을 호출할 때 추가 옵션이 필요합니다. 예를 들어, Prompt API 는 언어 지원을 선언해야 합니다.
// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });
사용자 활성화
기기가 기본 제공 AI API를 지원할 수 있지만 모델이 아직
다운로드되지 않은 경우 사용자가 페이지와 의미 있게 상호작용해야 애플리케이션이
create()로 세션을 시작할 수 있습니다.
UserActivation.isActive
속성을 사용하여 페이지 로드가 완료된 후 사용자가 페이지와 직접 상호작용한 것을 확인합니다. 여기에는 탭, 클릭, 키 누르기, mousedown 또는
기타 고정 활성화 이벤트가 포함될 수 있습니다.
// Check for user activation.
if (navigator.userActivation.isActive) {
// Create an instance of a built-in API
}
예를 들어 Summarizer API를 사용하면 사용자에게 '요약' 버튼과 상호작용하여
활성화하도록 요청하거나 사용자가 입력을 시작한 후
입력, keydown 이벤트가 발생하면 요약 도구를 만들 수 있습니다.Summarizer.create()
localhost에서 API 사용
모든 API는 Chrome의 localhost에서 사용할 수 있습니다.
chrome://flags/#optimization-guide-on-device-model로 이동합니다.- 사용 설정됨을 선택합니다.
- 다시 시작 을 클릭하거나 Chrome을 다시 시작합니다.
Gemini Nano를 사용하는 API의 경우
chrome://flags/#prompt-api-for-gemini-nano을 사용 설정됨 또는
다국어 사용 설정됨으로 설정해야 합니다. DevTools 콘솔에서 모델이 다운로드되었고 의도한 대로 작동하는지 확인할 수 있습니다.
콘솔에서 await LanguageModel.availability();를 실행합니다.
localhost 문제 해결
플래그가 chrome://flags에 표시되지 않으면 최신 버전의 Chrome을 다운로드했는지 확인하세요.
모델이 예상대로 작동하지 않으면 다음 단계를 따르세요.
- Chrome을 다시 시작합니다.
chrome://on-device-internals로 이동합니다.- 모델 상태 탭을 선택하고 오류가 없는지 확인합니다.
- DevTools를 열고 콘솔에
LanguageModel.availability();을(를) 입력합니다. 그러면available이 반환됩니다.
필요한 경우 잠시 기다렸다가 이 단계를 반복합니다.
표준 프로세스
Google은 모든 브라우저에서 작동하도록 이러한 API를 표준화하기 위해 노력하고 있습니다. 즉, Google은 웹 플랫폼 커뮤니티에 API를 제안하고 추가 논의를 위해 W3C 웹 인큐베이터 커뮤니티 그룹으로 이동했습니다.
Google은 각 API에 대해 W3C, Mozilla, WebKit의 의견을 요청하고 있습니다.
참여 및 의견 공유
기본 제공 AI를 사용해 보고 의견이 있다면 언제든지 알려주세요.
- 모든 기본 제공 AI API를 알아보세요.
- 얼리 프리뷰 프로그램에 가입 하여 새로운 API를 미리 살펴보고 메일링 리스트에 액세스하세요.
- Chrome의 구현에 관한 의견이 있으면 Chromium 버그를 신고하세요.
- 웹 표준에 대해 알아보세요.