Gemma 4 E2B를 활용한 안드로이드용 프라이빗 오프라인 AI 생산성 스위트 구축하기
요약
Gemma 4 E2B 모델을 활용하여 데이터 유출 걱정 없는 안드로이드용 오프라인 AI 생산성 앱 'Krexel'을 구축하는 방법을 소개합니다. 이 앱은 인터넷 연결 없이 기기 내부에서 채팅, 키보드 통합, 노트 요약, 번역 기능을 제공하며, 저사양 모바일 환경에 최적화된 모델 선택과 RAM 계층 감지 기술을 사용합니다.
핵심 포인트
- Gemma 4 E2B 모델은 2-3GB의 낮은 RAM 점유율로 중급형 안드로이드 기기에서 실행 가능함
- Krexel 앱은 데이터 프라이버시를 위해 서버 전송 없이 완전한 온디바이스(On-device) 환경을 제공함
- 기기의 RAM 용량에 따라 적절한 모델을 자동으로 추천하는 스마트 RAM 계층 감지 로직을 구현함
- Gemma 4의 사고 모드(<think> 토큰)를 통해 오프라인에서도 가시적인 추론 체인 확인이 가능함
- 의료 데이터 분석과 같이 보안이 극도로 중요한 분야에서 클라우드 AI의 대안이 될 수 있음
Krishna D (@krishna_apex) 작성
아무도 이야기하지 않는 문제
오늘날 당신이 사용하는 모든 AI 어시스턴트는 당신의 데이터를 서버로 전송합니다. 당신의 메시지, 문서, 의료 보고서, 그리고 사적인 생각들까지 말이죠. 그것이 거래 조건입니다. 당신은 지능을 얻고, 그들은 당신의 데이터를 얻습니다. 저는 그 거래를 깨고 싶었습니다.
내가 만든 것
Krexel은 Android를 위한 완전한 오프라인 AI 생산성 앱으로, 기기 내부에서 완전히 실행되는 Gemma 4 E2B를 기반으로 합니다. 인터넷이 필요 없습니다. API 키도 필요 없습니다. 서버도 없습니다. 당신의 데이터는 절대 휴대폰을 떠나지 않습니다.
하나의 앱에 담긴 네 가지 기능:
- Chat AI — 추론 모드 (reasoning mode)를 갖춘 대화형 AI
- Keyboard AI — 당신이 이미 사용 중인 모든 앱에 포함된 AI 칩 (AI chips)
- Notes AI — 오프라인에서 작성, 다듬기, 요약, 번역
- Translation AI — 70개 이상의 언어, API 비용 제로
왜 다른 모델이 아닌 Gemma 4 E2B인가
이것은 기본 선택이 아니었습니다. 정확한 이유는 다음과 같습니다:
| 모델 | 필요한 RAM | 판결 |
|---|---|---|
| Gemma 4 31B Dense | 24GB+ | 서버 전용 |
| Gemma 4 26B MoE | 18GB+ | 모바일 불가 |
| Gemma 4 E4B | 4GB+ | 가능 |
| Gemma 4 E2B | 2-3GB | ✅ 완벽함 |
Krexel은 수십억 명의 사람들이 실제로 소유하고 있는 6-8GB RAM을 탑 가진 중급형 (mid-range) Android 기기를 타겟으로 합니다. Gemma 4 E2B 모델 (Unsloth를 통한 2.9GB GGUF)은 정확히 이 하드웨어 계층을 위해 특수 제작되었습니다. 31B 및 26B 모델은 서버급 하드웨어가 필요합니다. E2B는 휴대폰을 위해 만들어졌습니다. 그 의도성이 바로 Krexel이 구축된 기반입니다.
스마트 RAM 계층 감지 (Smart RAM Tier Detection)
Krexel은 각 기기에 적합한 모델을 자동으로 추천합니다:
val tier = when {
totalRam < 4096 -> DeviceTier.LOW_RAM // 최대 350MB 모델
totalRam < 6144 -> DeviceTier.FOUR_GB // 최대 550MB 모델
totalRam < 8192 -> DeviceTier.MID_RANGE // 최대 1200MB 모델
else -> DeviceTier.HIGH_END // 최대 2400MB 모델
}
나의 테스트 기기인 Realme RMX5070 (7.2GB RAM, Android 16, arm64-v8a)은 MID_RANGE 계층에 속합니다. Gemma 4 E2B는 이 하드웨어에서 깔끔하게 로드되며 초당 5.74 토큰 (tokens/sec)의 속도로 실행됩니다.
Gemma 4가 해제한 것
- 프라이빗 의료 분석 (Private Medical Analysis)
가장 강력한 사용 사례: 비행기 모드 상태에서 혈액 검사 보고서를 업로드하고, 로컬에서, 프라이빗하게, 즉각적으로 쉬운 영어 설명을 듣는 것입니다.
이것은 클라우드 AI가 결코 가질 수 없는 사용 사례입니다. 그 누구도 자신의 의료 데이터를 서버에 업로드하고 싶어 하지 않습니다. 온디바이스 (On-device) Gemma 4가 있다면, 그럴 필요가 없습니다.
-
온디바이스 추론 (Reasoning On-Device)
Gemma 4는<think>토큰을 통해 설정 가능한 사고 모드 (thinking mode)를 지원합니다. 사용자는 클라우드나 서버 왕복으로 인한 지연 시간 (latency) 없이, 전적으로 자신의 하드웨어에서 실행되는 가시적인 추론 체인 (reasoning chains)을 확인할 수 있습니다. -
오프라인 번역 (Offline Translation)
번역 시스템 프롬프트:
const val TRANSLATION_SYSTEM_PROMPT = """
당신은 전문 번역가입니다.
- 오직 번역된 텍스트만 출력하세요
- 설명이나 서문을 붙이지 마세요
- 서식과 문장 부호를 유지하세요
- 어조를 맞추세요: 격식체는 격식체를 유지합니다
"""
Gemma 4의 다국어 학습 (multilingual training)은 별도의 번역 모델 없이도 70개 이상의 언어를 처리합니다. 즉, 하나의 모델에 모든 것이 포함되어 있습니다.
- 모든 앱 속의 AI (AI in Every App)
키보드 AI 기능은 Gemma 4를 WhatsApp, Gmail 또는 모든 안드로이드 앱에 직접 가져옵니다. 문법 교정, 어조 재작성, 번역 등을 앱을 벗어나지 않고도, 인터넷 연결 없이도 모두 수행할 수 있습니다.
전 세계적으로 이것이 중요한 이유
수십억 명의 사람들이 중급 사양의 안드로이드 스마트폰을 소유하고 있습니다. 대부분은 월 20달러의 클라우드 AI 구독료를 감당할 여유가 없습니다. 또한 많은 이들이 인터넷 연결이 불안정한 지역에 거주합니다. Gemma 4 E2B는 바로 이러한 기기들에서 실행됩니다. Krexel은 빠른 인터넷과 비싼 구독료를 가진 사람들뿐만 아니라, 안드로이드 폰을 가진 누구에게나 프라이빗하고 유능한 AI를 제공합니다. 개인정보 보호 (Privacy)는 사치스러운 기능이 아닙니다. 그것은 기본 요구 사항입니다.
기술 스택 (Technical Stack)
- llama.cpp → 추론 엔진 (inference engine) (JNI 브릿지)
- Gemma 4 E2B GGUF → unsloth/gemma-4-E2B-it-GGUF
- SharedAIManager → 중앙 생성 진입점 (central generation entry point)
- ModelLoadCoordinator → 직렬화된 로딩 (serialized loading), 레이스 컨디션 (race condition) 방지
- MemoryWarningChecker → RAM 계층 탐지 (RAM tier detection)
- FlorisBoard 포크 (fork) → 키보드 AI
- Markor 포크 (fork) → 노트 AI
- Min SDK: 26 | Target: 36 | Kotlin 2.3.0 | arm64-v8a
모델 다운로드는 내장된 HuggingFace 검색을 통해 Krexel 내부에서 직접 이루어집니다. 사용자는 앱을 전혀 벗어나지 않고도 Gemma 4를 찾고, 다운로드하고, 실행할 수 있습니다.
Krexel이 기반으로 하는 오픈 소스 크레딧 (Open Source Credits):
- FlorisBoard (Apache 2.0) — 키보드 기반 (Keyboard foundation)
- Markor (Apache 2.0) — 노트 기반 (Notes foundation)
- llama.cpp (MIT) — 추론 엔진 (Inference engine)
- Unsloth — 최적화된 Gemma 4 E2B GGUF
향후 계획 (What's Next):
Krexel v1이 곧 Google Play에 출시됩니다. v2에서는 알림 AI (Notification AI), 미세 조정된 모델 (fine-tuned models), 그리고 현지화 (localization)가 계획되어 있습니다. 목표는 단순합니다. 모두를 위한 프라이빗 AI를 이미 주머니 속에 있는 기기에서 구현하는 것입니다. Gemma 4 E2B가 그것을 현실로 만들었습니다.
Kotlin · llama.cpp · Gemma 4 E2B · Android 16으로 구축됨
테스트 기기: Realme RMX5070 · 7.2GB RAM · arm64-v8a
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기