Android On-Device AI: Gemini Nano와 ML Kit로 만든 2025 해커톤 프로젝트
Android 에서도 On-Device AI(온 디바이스 AI) 를 사용 할 수 있다는 사실을 알고 계셨나요? 지난해 여기 어때 해커톤 대회에 참여하여 직접 프로젝트에 적용해 볼 기회가 있었습니다. 당시 개발 과정에서 미리 경험해 볼 수 있었던 온…
Android On-Device AI: Gemini Nano와 ML Kit로 만든 2025 해커톤 프로젝트

Android 에서도 On-Device AI(온 디바이스 AI) 를 사용 할 수 있다는 사실을 알고 계셨나요? 지난해 여기 어때 해커톤 대회에 참여하여 직접 프로젝트에 적용해 볼 기회가 있었습니다. 당시 개발 과정에서 미리 경험해 볼 수 있었던 온 디바이스 AI의 기능들을 이번 글을 통해 간단히 공유해 드리고자 합니다.
GenAI API
구글에서 제공하는 온 디바이스 AI 기술 중 가장 접근하기 쉬운 방법은 바로 GenAI API를 활용하는 것입니다. AICore 라이브러리를 통해 제공되기 때문에 복잡한 설정 없이 간단하게 구현할 수 있고, 이미 완성된 기능들을 로컬 환경에서 즉시 사용할 수 있다는 큰 장점이 있습니다.
그 외에도 다음 과 같은 이점이 있습니다.
입력, 추론, 출력 데이터가 로컬에서 처리됨
안정적인 인터넷 연결이 없어도 기능은 동일하게 유지됨
API 호출당 추가 서버 비용이 발생하지 않음
GenAI API는 현재 다음과 같은 핵심 기능을 제공합니다.
요약: 기사 또는 채팅 대화를 글머리기호 목록으로 요약합니다
교정: 문법을 다듬고 맞춤법 오류를 수정하여 짧은 콘텐츠를 다듬습니다
재작성: 짧은 메시지를 다양한 어조나 스타일로 다시 작성합니다
이미지 설명: 주어진 이미지에 대한 간단한 설명을 생성합니다
프롬프트: 맞춤 텍스트 전용 또는 멀티모달 프롬프트를 기반으로 텍스트 콘텐츠를 생성합니다
다만 현시점에서 해당 기능을 사용하기 위해선 기기 제약 사항이 있습니다.
- Google: Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
- 삼성: 갤럭시 S25, 갤럭시 S25+, 갤럭시 S25 울트라, 갤럭시 Z 폴드7
- 등등…
GenAI AICore를 구동하기 위해서는 비교적 최신 고성능 기기가 필요하다는 아쉬움이 있지만, 지원 기기는 점차 확대될 예정이라고 합니다. 더 자세한 내용은 아래 공식 문서에서 확인하실 수 있습니다.
참고: https://developers.google.com/ml-kit/genai?hl=ko
ML Kit 번역
다음은 앱 내에서 다국어 번역을 지원하기 위해 활용했던 ML Kit 번역 API입니다. GenAI API와 마찬가지로 로컬에서 동작하며, 가벼운 번역 기능을 구현하기에 매우 적합했습니다.
주요 기능은 다음과 같습니다.
광범위한 언어 지원 50개 이상의 언어로 번역할 수 있습니다. 전체 목록을 참고하세요.
검증된 번역 모델: Google 번역 앱의 오프라인 모드에서 사용되는 것과 동일한 모델을 기반으로 합니다.
동적 모델 관리 언어 팩을 동적으로 다운로드하고 관리하여 기기 내 저장소 요구사항을 낮게 유지합니다.
기기에서 실행: 변환이 빠르게 수행되며 사용자의 텍스트를 원격 서버로 전송할 필요가 없습니다.
특히 번역 기능의 경우 앞서 소개한 GenAI API와 달리 기기 제약이 거의 없어, 더 폭넓은 환경에서 활용할 수 있다는 장점이 있습니다.
참고: https://developers.google.com/ml-kit/language/translation?hl=ko
여기 어때에서 사용기
우선 해커톤 기술 검토를 위해 여기 어때 앱에서 먼저 몇 가지 기능을 사용해 보았습니다. 해당 기능들의 공통점은 AICore에서 기능을 제공해 주기 때문에 API 호출 중 각 기능에 맞는 모델을 다운로드하는 과정을 거치게 되니 이점 참고하시면 도움이 될 것 같습니다.
이미지 설명 (Image Description)
이미지를 분석하여 시각장애인을 위한 대체 텍스트(alt text)를 생성하거나, 사진 검색을 위한 메타데이터를 생성합니다.
여기 어때 숙소 상세 화면의 이미지 Bitmap을 사용하여 다음과 같이 구현해 보았습니다. 이미지에 맞게 적절한 Description이 생성된 것을 볼 수 있습니다.

참고: https://developers.google.com/ml-kit/genai/image-description/android?hl=ko
재작성 (Rewriting)
생성형 AI를 활용하여 입력된 텍스트의 어조나 스타일을 변경하거나, 길이를 조절해 주는 기능입니다. Emojify(이모티콘 추가), Professional(격식 있게), Friendly(친근하게), Shorten(축약) 등 다양한 옵션을 제공합니다.
여기 어때 숙소의 리뷰 내용을 가져와 이모지 기능을 추가해 보았습니다. 문장에 맞는 이모지가 추가가 되어 좀 더 부드러운 리뷰로 변한 것을 볼 수 있습니다.

참고: https://developers.google.com/ml-kit/genai/rewriting/android?hl=ko
요약 (Summarization)
긴 기사나 채팅 대화를 1~3개의 글머리 기호(Bullet points)로 요약합니다.
참고로 실제 적용 시 옵션 중 한글을 지원한다고 되어있지만 실제 호출 시 AICore 오류가 발생을 하고 있어 영어 모드를 설정 후 ML Kit로 번역 처리하였습니다. 4,000 글자 미만의 제약 사항을 가지며 글자 수가 많을수록 Summary 결과가 나올 때까지 시간이 어느 정도 발생하였습니다. (대략 3 ~ 15초 사이)
여기 어때 숙소 상세의 리뷰 내용을 요약해 보았습니다. 3개의 요약 문장이 나오는 것을 볼 수 있습니다.

참고: https://developers.google.com/ml-kit/genai/summarization/android?hl=ko
번역(Translator)
50개 이상의 언어로 번역이 가능하며 비교적 빠른 시간 내에 결과를 가져올 수 있습니다.
서버에서 받은 응답 값 중 몇 가지 문자열을 한글에서 일본어로 번역을 해 보았습니다.

참고: https://developers.google.com/ml-kit/language/translation/android?hl=ko
해커톤 결과
해커톤에 참여하면서 제가 맡은 역할은 자연어 및 키워드를 서버에 전달하고 AI 추천 검색 결과를 받고 Summarization 을 처리 후 리스트를 제공하는 화면을 구현하고, 번역까지 실시간으로 처리될 수 있도록 기능을 제공하였습니다.
중간 AI 처리로 인해 지연되는 부분은 팀원이 AI Agent로 간단하게 만들어준 웹게임 페이지를 넣어 지루하지 않게 기다릴 수 있도록 퀴즈 게임을 넣어보기도 했습니다. 😃

Summary
앞서 제공된 GenAI API, ML Kit는 웹사이트에서 제공된 가이드에 맞춰 구현한다면 어렵지 않게 사용이 가능합니다. 그만큼 간단한 구조로 API를 제공해 주고 있기 때문에 기회가 된다면 본인의 프로젝트에 적용하여 온 디바이스 AI 경험을 해보시는 것을 추천드립니다.
긴 글 읽어 주셔서 감사합니다.
메타데이터
- post_id
- d3e1eabd48c5
- slug
- android-on-device-ai-gemini-nano와-ml-kit로-만든-2025-해커톤-프로젝트-d3e1eabd48c5
- url
- https://techblog.gccompany.co.kr/android-on-device-ai-gemini-nano%EC%99%80-ml-kit%EB%A1%9C-%EB%A7%8C%EB%93%A0-2025-%ED%95%B4%EC%BB%A4%ED%86%A4-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-d3e1eabd48c5
- canonical_url
- https://techblog.gccompany.co.kr/android-on-device-ai-gemini-nano%EC%99%80-ml-kit%EB%A1%9C-%EB%A7%8C%EB%93%A0-2025-%ED%95%B4%EC%BB%A4%ED%86%A4-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-d3e1eabd48c5
- author_url
- https://medium.com/@jonas_yeogi
- status
- ok
- fetched_at
- 2026-06-28 10:39:35