Google Chrome silently installs a 4 GB AI model on your device without consent
TL;DR Highlight
Google Chrome이 사용자 동의 없이 Gemini Nano 4GB 모델 파일을 자동 다운로드하고, 삭제해도 재다운로드되는 문제가 발견됐다. GDPR 위반 가능성과 수십억 대 기기에 적용될 때의 환경 비용 문제가 제기되고 있다.
Who Should Read
Chrome을 기업 환경이나 NFS 공유 스토리지에서 관리하는 시스템 관리자, 또는 개인 정보 보호와 디스크 용량 관리에 민감한 개발자.
Core Mechanics
- Chrome의 사용자 프로필 디렉토리 내 'OptGuideOnDeviceModel' 폴더 안에 'weights.bin'이라는 약 4GB 파일이 생성된다. 이 파일은 Google의 온디바이스 LLM인 Gemini Nano의 가중치(모델 파라미터) 파일이다.
- 이 다운로드는 사용자에게 별도 동의 팝업이나 설정 체크박스 없이 이루어진다. Chrome의 AI 기능('Help me write', 온디바이스 사기 탐지 등)이 최신 Chrome 버전에서 기본 활성화되어 있어 하드웨어 요건만 충족하면 자동으로 내려받는다.
- 사용자가 해당 파일을 직접 삭제해도 Chrome이 실행될 때 다시 다운로드된다. 이 삭제-재다운로드 사이클이 Windows 환경에서 다수의 독립적인 보고를 통해 확인됐다.
- Chrome 148 버전부터는 'Prompt API for Gemini Nano'가 기본 활성화되어, 웹 페이지에서 `LanguageModel.create()` API를 호출하면 모델 다운로드가 트리거될 수 있다. CPU 모델은 약 2.7GB, GPU 모델은 약 4.0GB 크기이며, 다운로드 전 22GB 이상의 여유 디스크 공간을 확인한다.
- 재다운로드를 막으려면 `chrome://flags`에서 'Enables optimization guide on device', 'Prompt API for Gemini Nano', 'AI Mode' 세 가지 플래그를 비활성화하거나, 기업용 정책 도구를 사용해야 한다. 일반 가정 사용자는 사실상 기업용 관리 도구에 접근하기 어렵다.
- 저자(Alexander Hanff)는 이 행위가 EU ePrivacy Directive Article 5(3), GDPR Article 5(1)의 적법성·공정성·투명성 원칙, GDPR Article 25의 설계 단계의 개인정보 보호 의무를 위반한다고 주장한다.
- 전 세계 Chrome 설치 기기 규모(수십억 대)를 고려할 때, 이 모델 배포 한 번에 드는 환경 비용이 6,000~60,000톤의 CO2 환산 배출량에 달할 수 있다고 저자는 추산했다. 이는 CSRD(기업 지속가능성 보고 지침) 대상 기업이라면 신고해야 할 수준이라고 주장한다.
- 커뮤니티 댓글에서는 Gemini Nano(Gemma 4 E2B)의 실제 성능이 추가 파인튜닝 없이는 실용적이지 않다는 의견도 있었다. Gemma 4 E4B가 더 나은 모델이지만 모든 기기에 배포하기에는 너무 크다는 지적도 나왔다.
Evidence
- '소프트웨어를 설치하고 자동 업데이트에 동의했으면 모델 파일도 포함된 것'이라는 반론이 있었다. Microsoft Word의 영어 맞춤법 사전을 자동 설치하는 것과 다를 바 없다는 비유가 나왔고, 동의 프레임 자체가 논점을 흐린다는 의견이 있었다.
- 기업/대학 환경 관리자 입장에서 심각한 문제라는 경험담이 공유됐다. 수천 명의 학생이 NFS 공유 홈 디렉토리를 쓰는 환경에서는 사용자당 4GB가 추가되면 최소 수 TB의 추가 부하가 생기고, Windows 랩실에서는 프로필 초기화 때마다 재다운로드가 반복된다는 지적이 있었다.
- 저자의 환경 비용 계산에 사용된 데이터(2018년 기준, GB당 0.06 kWh)가 8년이나 지난 추정치라 최소 10배 이상 오차가 날 수 있다는 비판이 있었다. 또한 법적 논거가 법률 전문가가 아닌 사람이 작성한 것처럼 보이고, 글 전체가 LLM이 쓴 것 같은 스타일이라는 냉소적 댓글도 달렸다.
- Linux 환경에서 재다운로드를 막는 실용적인 해결책이 공유됐다. `chrome://flags`에서 세 가지 플래그를 끄고, 해당 디렉토리를 삭제한 뒤 root 소유의 읽기 전용 더미 파일을 같은 경로에 생성해두면 Chrome이 덮어쓰지 못하게 막을 수 있다는 방법이 실제로 동작한다고 전해졌다.
- 전 온디바이스 AI 개발자라고 밝힌 사람이 이 행위의 전략적 의도를 분석했다. Google이 자체 OS 없이 노트북에 LLM을 배포하는 방법으로 Chrome을 활용하는 것이며, Meta가 모바일에서 비슷한 전략을 쓴다면 앱 회사들에게 온디바이스 LLM API를 제공할 수 있다는 맥락에서 이해할 수 있다고 설명했다.
How to Apply
- Linux에서 Chrome의 Gemini Nano 모델이 계속 재다운로드되는 걸 막고 싶다면, `chrome://flags`에서 'Enables optimization guide on device', 'Prompt API for Gemini Nano', 'AI Mode'를 Disabled로 설정한 뒤, 기존 파일을 삭제하고 root 소유 읽기 전용 더미 파일을 같은 경로에 생성해두면 Chrome이 덮어쓰지 못하게 막을 수 있다.
- NFS 공유 홈 디렉토리나 Windows 도메인 환경처럼 수백~수천 명이 공유 스토리지를 쓰는 기업/교육 환경에서는, 신규 기기나 신규 사용자에게 Chrome을 기본 브라우저로 배포하지 않는 정책을 지금부터 적용하면 향후 수 TB 단위의 불필요한 스토리지 부하와 네트워크 트래픽을 예방할 수 있다.
- Chrome 148 이후 웹 서비스를 운영하는 개발자라면 브라우저의 `LanguageModel.create()` Prompt API를 통해 온디바이스 Gemini Nano를 호출하는 기능을 실험해볼 수 있다. 다만 현 모델(Gemma 4 E2B 수준)의 성능이 실용적이지 않다는 현장 의견이 있으므로, 서비스에 적용하기 전에 충분히 테스트해볼 필요가 있다.
- 기업 Chrome 정책을 관리하는 경우 Google의 엔터프라이즈 정책 도구를 통해 `OptimizationGuideOnDeviceModel` 관련 정책을 비활성화하면, 개별 사용자가 플래그를 수동으로 조작하지 않아도 조직 전체에서 모델 다운로드를 차단할 수 있다.
Code Example
# Linux에서 Gemini Nano 재다운로드 영구 차단하는 방법
# 1. chrome://flags 에서 아래 항목을 Disabled로 설정
# - Enables optimization guide on device
# - Prompt API for Gemini Nano
# - AI Mode
# 2. DevTools(F12) > Settings(톱니) > AI Innovations > Enable AI assistance 체크 해제
# 3. 기존 모델 파일/디렉토리 삭제
sudo rm -rf ~/.config/google-chrome/OptGuideOnDeviceModel
sudo rm -rf ~/.config/googlechrome/Default/OptGuideOnDeviceModel
# 4. root 소유 읽기 전용 더미 파일 생성 (Chrome이 덮어쓰지 못하게)
sudo touch ~/.config/google-chrome/OptGuideOnDeviceModel
sudo chmod 400 ~/.config/google-chrome/OptGuideOnDeviceModel
sudo touch ~/.config/google-chrome/Default/OptGuideOnDeviceModel
sudo chmod 400 ~/.config/google-chrome/Default/OptGuideOnDeviceModel
# 5. root 소유권 확인
sudo chown root:root ~/.config/google-chrome/OptGuideOnDeviceModel
sudo chown root:root ~/.config/google-chrome/Default/OptGuideOnDeviceModel
# 6. 확인
ls -l ~/.config/google-chrome/OptGuideOnDeviceModel
ls -l ~/.config/google-chrome/Default/OptGuideOnDeviceModelTerminology
Related Papers
Claude Code sends 33k tokens before reading the prompt; OpenCode sends 7k
동일한 모델과 작업 환경에서 Claude Code와 OpenCode의 실제 토큰 사용량을 API 레벨에서 측정한 결과, Claude Code가 시스템 프롬프트 오버헤드만으로 OpenCode 대비 4.7배 더 많은 토큰을 소비한다는 것을 확인했다.
Mesh LLM: distributed AI computing on iroh
사무실, 집, 클라우드에 흩어진 GPU들을 하나의 OpenAI 호환 API로 묶어주는 분산 LLM 실행 시스템으로, 비싼 API 비용 없이 큰 모델을 직접 운영할 수 있다.
Show HN: Frugon – Find which LLM calls a cheaper model could handle (local, MIT)
내 LLM API 비용이 어디서 새는지 로컬에서 분석해주는 오픈소스 CLI 도구로, 비싼 모델 대신 저렴한 모델로 전환 가능한 호출을 골라낸다.
Jamesob's guide to running SOTA LLMs locally
2천 달러짜리 RTX 3090 한 장부터 4만 달러짜리 RTX PRO 6000 4장 셋업까지, 로컬에서 최신 LLM을 직접 돌리는 방법을 하드웨어 선택·구성·실행 설정까지 통째로 정리한 실전 가이드다.
Faster embeddings: how we rebuilt the ONNX path in Manticore
Manticore Search가 기존 SentenceTransformers/Candle 백엔드를 ONNX Runtime으로 교체해 텍스트 임베딩 생성 속도를 평균 14배 향상시켰다. 별도 모델 서비스 없이 DB 내부에서 직접 임베딩을 처리하는 구조에서 INSERT 속도가 곧 임베딩 속도이기 때문에 이 개선은 실질적인 ingest 처리량 향상으로 직결된다.
Asymmetric Quantization: Near-Lossless Retrieval with 97% Storage Reduction
멀티벡터 검색 모델의 문서 벡터를 1비트 이진값으로 압축하고 쿼리 벡터만 int8로 유지하는 비대칭 양자화 기법으로, 스토리지를 97% 줄이면서 검색 품질 손실을 0.61점(NDCG@10 기준)에 그치게 만든 실제 프로덕션 적용 사례다.