브라우저에서 AI가 돌아간다 — Gemini Nano와 Web AI의 현재
General

브라우저에서 AI가 돌아간다 — Gemini Nano와 Web AI의 현재


3줄 요약
  • Chrome 138부터 Summarizer, Translator, Language Detector API가 Stable로 탑재됐습니다. Prompt API는 확장 프로그램에서 Stable, 웹에서는 Origin Trial 단계입니다.
  • Gemini Nano는 1.5 ~ 2.4GB 크기의 온디바이스 LLM으로, API 키 없이 무료로, 오프라인에서도 동작합니다. 사용자 데이터가 서버로 전송되지 않습니다.
  • 프론트엔드 개발자는 점진적 향상(Progressive Enhancement) 패턴으로 내장 AI를 먼저 시도하고 클라우드 API로 폴백하는 구조를 지금부터 설계해야 합니다.

ChatGPT API를 호출하면 토큰당 비용이 발생하고, 사용자의 입력 데이터가 외부 서버를 거칩니다. Gemini Pro를 쓰든 Claude를 쓰든 이 구조는 동일합니다 — 네트워크가 끊기면 AI 기능도 멈춥니다.

2025년 하반기부터 Chrome은 이 전제를 뒤집고 있습니다. Gemini Nano라는 경량 LLM을 브라우저에 직접 내장해서, API 키도 서버도 없이 AI를 실행합니다. 이 글에서는 현재 사용 가능한 API, 모델 스펙, 실전 코드, 그리고 한계까지 정리합니다.

Chrome 내장 AI API — 지금 쓸 수 있는 것과 아직인 것

브라우저 생태계를 구성하는 다양한 3D 퍼즐 큐브 형태의 AI API 모델들 (Translator, Summarizer 등)

Google은 Web AI를 한 번에 공개하지 않고, API별로 단계적으로 출시하고 있습니다. 2026년 3월 기준 현황입니다.

API상태Chrome 버전용도
Translator APIStable138+다국어 번역
Language Detector APIStable138+언어 감지
Summarizer APIStable138+텍스트 요약
Prompt APIStable (확장 프로그램) / Origin Trial (웹)138+ / 139~144범용 LLM 프롬프트
Writer APIOrigin Trial-텍스트 생성
Rewriter APIOrigin Trial-텍스트 재작성
Proofreader APIOrigin Trial-문법 교정

Prompt API의 웹 플랫폼용 Origin Trial은 2026년 3월 24일까지 유효합니다. Chrome 확장 프로그램에서는 이미 Stable이므로, 지금 당장 프로덕션에 배포할 수 있습니다.

Gemini Nano 모델 스펙 — 무엇을 할 수 있고, 무엇을 못 하는가

오프라인 환경 기기 내부에서 강력하게 가동되는 3D 실리콘 칩셋 형태의 온디바이스 AI

Gemini Nano는 Google의 Gemini 모델 패밀리 중 가장 작은 모델로, 온디바이스 실행에 최적화되어 있습니다.

항목수치
다운로드 크기1.5 ~ 2.4 GB
추정 파라미터 수4 ~ 6B (양자화 적용)
컨텍스트 윈도우6,144 토큰
지원 언어영어, 일본어, 스페인어 (Chrome 140부터)
maxTopK128
maxTemperature2.0

하드웨어 요구사항

GPU 추론: VRAM 4GB 이상, 저장공간 22GB 여유 필요

CPU 추론 (Chrome 140+): RAM 16GB 이상 + 4코어 이상 CPU. GPU가 없는 노트북에서도 동작하도록 Chrome 140에서 추가됐습니다.

두 경우 모두 최초 1회에만 네트워크 연결이 필요합니다 (모델 다운로드). 이후에는 완전 오프라인으로 실행됩니다.

잘하는 것

  • 텍스트 요약, 감정 분석, 분류, 재작성 등 집중된 단일 태스크
  • JSON 스키마 기반 구조화된 출력
  • 이미지/오디오 입력 멀티모달 처리 (선택적 활성화)

못하는 것

  • 사실 확인이 중요한 작업 — 환각(hallucination)이 발생할 수 있음
  • 2,000 토큰 이상의 긴 입력에서 성능 저하가 눈에 띔
  • 복잡한 다단계 추론이나 코드 생성
  • 한국어 지원 미포함 (현재 영어/일본어/스페인어만)

한국어 개발자에게 중요한 점: Gemini Nano는 현재 한국어를 공식 지원하지 않습니다. 한국어 입력에 대해 영어로 응답하거나, 품질이 불안정합니다. 한국어 서비스에 적용하려면 영어로 프롬프트를 구성하고 결과를 후처리하는 방식을 고려해야 합니다.

Prompt API 코드 예제 — 바로 붙여 넣고 테스트할 수 있는 수준으로

기본 사용법

// 1. 사용 가능 여부 확인
const availability = await LanguageModel.availability();
// "available" | "downloadable" | "downloading" | "unavailable"

if (availability === "unavailable") {
  // 클라우드 API 폴백
  return await fallbackToCloudAPI(text);
}

// 2. 세션 생성
const session = await LanguageModel.create({
  initialPrompts: [
    { role: "system", content: "You are a helpful assistant." }
  ]
});

// 3. 프롬프트 실행
const result = await session.prompt("Summarize this in 2 sentences: " + text);
console.log(result);

스트리밍 응답

const stream = session.promptStreaming("Explain quantum computing briefly.");

for await (const chunk of stream) {
  // chunk는 누적된 전체 텍스트 (delta가 아님에 주의)
  document.getElementById("output").textContent = chunk;
}

구조화된 출력 (JSON Schema)

감정 분석처럼 정형화된 결과가 필요할 때 유용합니다.

const schema = {
  type: "object",
  properties: {
    sentiment: { type: "string", enum: ["positive", "negative", "neutral"] },
    confidence: { type: "number" }
  }
};

const result = await session.prompt(
  'Analyze the sentiment: "This product is amazing!"',
  { responseConstraint: schema }
);

const parsed = JSON.parse(result);
// { sentiment: "positive", confidence: 0.95 }

멀티모달 입력 (이미지)

const session = await LanguageModel.create({
  expectedInputs: [{ type: "image" }]
});

const img = document.querySelector("img");
const result = await session.prompt([
  { type: "text", value: "What objects are in this image?" },
  { type: "image", value: img }
]);

토큰 관리

// 남은 컨텍스트 확인
console.log(`${session.contextUsage} / ${session.contextWindow} tokens`);

// 전송 전 토큰 수 예측
const tokens = await session.countPromptTokens(longText);
if (tokens > 4000) {
  // 텍스트 분할 처리
}

// 세션 복제 (컨텍스트 유지한 채 분기)
const branch = await session.clone();

// 세션 종료 (메모리 해제)
session.destroy();

클라우드 AI vs 온디바이스 AI — 무엇이 다른가

네트워크가 끊어져도 데이터 유출 염려 없이 보호되는 로컬 스토리지의 자물쇠 형태 데이터 보안

GPT-5.3이나 GPT-5.4 같은 클라우드 모델과 비교하면, Gemini Nano는 완전히 다른 설계 철학을 가지고 있습니다.

항목클라우드 AI (GPT, Claude 등)Chrome 내장 AI (Gemini Nano)
지연 시간네트워크 왕복 필요 (200ms ~ 2s)로컬 추론 (수십ms)
비용API 호출당 과금무료
프라이버시데이터가 서버로 전송됨데이터가 기기에 잔류
오프라인불가가능
모델 능력수백B 파라미터, 고성능4 ~ 6B 파라미터, 제한적
한국어지원미지원 (2026년 3월 기준)

이것은 “어느 쪽이 더 좋은가”의 문제가 아닙니다. 민감한 데이터를 다루는 간단한 태스크에는 온디바이스 AI가 맞고, 복잡한 추론이 필요한 작업에는 클라우드 AI가 맞습니다. 실제 프로덕션에서는 둘을 조합합니다.

프론트엔드 개발자가 지금 해야 할 3가지

브릭을 차곡차곡 쌓아올린 계층형 아키텍처 점진적 향상(Progressive Enhancement)을 묘사하는 3D 블록

1. 점진적 향상(Progressive Enhancement) 패턴 적용

내장 AI가 있으면 사용하고, 없으면 클라우드 API로 폴백하는 구조입니다. Claude Code 같은 AI 도구 생태계와 함께 계층적 AI 전략을 설계할 수 있습니다.

async function summarize(text) {
  // 1차: 브라우저 내장 AI
  if ("LanguageModel" in self) {
    const availability = await LanguageModel.availability();
    if (availability !== "unavailable") {
      const session = await LanguageModel.create();
      return await session.prompt(`Summarize in 2 sentences: ${text}`);
    }
  }

  // 2차: 클라우드 API 폴백
  const res = await fetch("/api/summarize", {
    method: "POST",
    body: JSON.stringify({ text })
  });
  return (await res.json()).summary;
}

2. 토큰 예산 설계

6,144 토큰은 영어 기준 약 4,500단어입니다. 긴 문서를 처리하려면 분할 전략이 필수입니다.

async function summarizeLongDocument(text, session) {
  const chunks = splitByTokenLimit(text, 3000); // 입력 3k + 출력 3k
  const summaries = [];

  for (const chunk of chunks) {
    summaries.push(await session.prompt(`Summarize: ${chunk}`));
  }

  // 요약본을 다시 요약
  return await session.prompt(`Combine these summaries: ${summaries.join("\n")}`);
}

3. 모델 로딩 UX 처리

최초 방문 시 1.5 ~ 2.4GB 모델 다운로드가 필요합니다. 다운로드 진행 상황을 사용자에게 보여줘야 합니다.

const session = await LanguageModel.create({
  monitor(m) {
    m.addEventListener("downloadprogress", (e) => {
      const percent = Math.round((e.loaded / e.total) * 100);
      updateProgressBar(percent);
    });
  }
});

적합한 사용 사례 vs 부적합한 사용 사례

적합
  • 폼 입력 자동 완성, 문법 교정
  • 사용자 리뷰 감정 분석
  • 실시간 텍스트 요약
  • 콘텐츠 분류 및 태깅
  • 개인정보가 포함된 문서 분석 (의료, 법률, 금융)
  • PWA 기반 오프라인 AI 앱
부적합
  • 팩트 체크가 중요한 작업 (환각 위험)
  • 5,000자 이상의 문서 처리 (컨텍스트 제한)
  • 복잡한 코드 생성, 다단계 추론
  • 한국어/중국어 등 미지원 언어 중심 서비스
  • 실시간 검색 결과가 필요한 작업

Origin Trial 등록 방법

웹 플랫폼에서 Prompt API를 테스트하려면 Origin Trial 토큰이 필요합니다.

  1. Chrome Origin Trials 페이지에서 “Prompt API” 항목을 찾아 등록
  2. 발급받은 토큰을 HTML <meta> 태그에 삽입:
<meta http-equiv="origin-trial" content="발급받은_토큰_문자열">
  1. Chrome 139 이상에서 테스트 가능. Origin Trial 만료일은 2026년 3월 24일

Chrome 확장 프로그램으로 개발할 경우 Origin Trial 없이 바로 사용할 수 있습니다. 확장 프로그램에서의 Prompt API는 이미 Stable입니다.

참고할 만한 데모와 리소스

  • Chrome Web AI 데모 모음 — chrome.dev/web-ai-demos/ 에서 다양한 내장 AI 데모를 직접 테스트할 수 있습니다
  • Google I/O 2025 Web AI 세션 — Gemini Nano의 실제 활용 사례와 로드맵이 공개됐습니다
  • Built-in AI Challenge 2025 수상작 — 내장 AI로 만든 실제 프로덕트의 수준을 확인할 수 있습니다
  • TypeScript 지원npm install @types/dom-chromium-ai로 타입 정의를 설치하면 자동완성이 동작합니다

정리

Chrome 내장 AI는 아직 모든 웹사이트에 적용할 단계는 아닙니다. 한국어 미지원, 6,144 토큰 컨텍스트 제한, 22GB 저장공간 요구 등 현실적인 제약이 있습니다.

그러나 방향은 분명합니다. AI 추론이 클라우드에서 엣지로, 다시 브라우저로 내려오고 있습니다. Summarizer, Translator, Language Detector는 이미 Stable이고, Prompt API도 2026년 상반기 중 Stable 출시가 예상됩니다.

지금 할 일은 두 가지입니다. 점진적 향상 패턴으로 코드를 설계해서 내장 AI가 Stable로 전환되는 순간 바로 적용할 수 있도록 준비하는 것. 그리고 Chrome 확장 프로그램에서 먼저 프로토타입을 만들어 실제 성능을 검증하는 것입니다.

자주 묻는 질문 (FAQ)

Gemini Nano는 무료인가요?

네. Chrome에 내장된 모델이므로 API 키도 구독도 필요 없습니다. 비용은 0원입니다.

오프라인에서도 동작하나요?

최초 1회 모델 다운로드(1.5 ~ 2.4GB)에만 네트워크가 필요합니다. 이후에는 비행기 모드에서도 동작합니다.

한국어를 지원하나요?

2026년 3월 기준, 공식 지원 언어는 영어, 일본어, 스페인어입니다. 한국어는 아직 포함되지 않았으며, 영어 프롬프트로 우회하는 방식을 권장합니다.

GPT-4나 Claude 대신 쓸 수 있나요?

용도가 다릅니다. Gemini Nano는 요약, 분류, 감정 분석 같은 간단한 태스크에 특화돼 있습니다. 복잡한 추론, 긴 문서 처리, 코드 생성에는 클라우드 모델이 필요합니다.

어떤 브라우저에서 사용 가능한가요?

Chrome 138 이상에서만 사용 가능합니다. Firefox, Safari, Edge에서는 지원되지 않습니다. 데스크톱 전용이며 모바일 Chrome에서는 아직 지원되지 않습니다.

사용자의 데이터가 Google 서버로 전송되나요?

아닙니다. 모든 추론이 사용자의 기기에서 실행됩니다. 입력 데이터와 출력 결과 모두 브라우저 밖으로 나가지 않습니다.