앱 개발

앱 AI 기능, 기기 안에서 돌릴까 서버에서 돌릴까

앱 AI 기능, 기기 안에서 돌릴까 서버에서 돌릴까

앱 AI 기능, 기기 안에서 돌릴까 서버에서 돌릴까

앱에 AI 기능을 넣을 때 온디바이스 AI와 서버 AI를 개인정보, 오프라인, 속도, 모델 성능, 지원 기기, 운영비 구조, 업데이트 방식으로 비교하고 둘을 섞어 쓰는 구성과 고르는 순서를 정리했습니다.

앱에 AI 기능을 넣을 때 온디바이스 AI와 서버 AI를 개인정보, 오프라인, 속도, 모델 성능, 지원 기기, 운영비 구조, 업데이트 방식으로 비교하고 둘을 섞어 쓰는 구성과 고르는 순서를 정리했습니다.

9분 소요

9분 소요

앱에 넣을 AI 기능이 짧은 글 요약, 문장 다듬기, 사진 설명처럼 가볍고 개인 데이터가 많이 오가는 일이라면 기기 안에서 돌리는 쪽(온디바이스)을 먼저 검토할 만합니다. 긴 문서를 다루거나 깊은 추론이 필요하거나, 모든 사용자 기기에서 똑같이 동작해야 한다면 서버의 AI 모델을 쓰는 편이 맞습니다. 실제로는 둘 중 하나만 고르기보다 기기에서 먼저 처리하고 어려운 요청만 서버로 넘기는 구성이 늘고 있습니다. 이 글에서는 두 방식이 어디서 갈리는지, 그리고 저희가 기능을 설계할 때 어떤 순서로 정하는지를 적었습니다.

앱 AI 기능, 기기 안에서 돌릴까 서버에서 돌릴까 대표 이미지

온디바이스 AI와 서버 AI는 무엇이 다른가요

온디바이스 AI는 사용자의 휴대폰 안에 있는 모델이 직접 답을 만드는 방식입니다. 입력한 글이나 사진이 기기 밖으로 나가지 않고, 인터넷이 끊겨 있어도 동작합니다. 서버 AI는 앱이 요청을 인터넷 너머의 모델로 보내고 결과를 받아 오는 방식입니다. ChatGPT나 Gemini 같은 클라우드 LLM(대규모 언어 모델) API를 부르는 경우가 여기에 해당합니다.

차이는 결국 계산을 어디서 하느냐입니다. 계산 장소가 바뀌면 개인정보 처리, 속도, 비용 구조, 기기 조건이 줄줄이 따라 바뀝니다. 챗봇을 붙일 때의 서버 구조나 API 키 관리는 앱에 AI 챗봇 넣기 글에, AI가 앱 기능을 직접 실행하게 만드는 구조는 AI 에이전트 앱 개발 글에 따로 정리해 두었으니, 여기서는 계산 위치를 고르는 문제에만 집중하겠습니다.

iOS와 Android에서 지금 쓸 수 있는 온디바이스 AI

예전에는 직접 학습시킨 작은 모델을 앱에 넣는 방식이 전부였지만, 지금은 운영체제가 언어 모델을 기본으로 갖추고 있어 앱은 불러 쓰기만 하면 됩니다.

플랫폼 이름 하는 일 쓰기 위한 조건
iOS Foundation Models 프레임워크 운영체제에 들어 있는 애플 언어 모델 호출 iOS 26 이상, Apple Intelligence 지원 기기
iOS Core ML 직접 준비한 모델을 앱에 넣어 실행 모델 파일을 앱에 포함
Android ML Kit GenAI API(Gemini Nano) 요약, 교정, 다시 쓰기, 이미지 설명, 자유 프롬프트 Gemini Nano를 지원하는 기기
Android, iOS 등 LiteRT 직접 준비한 모델을 여러 플랫폼에서 실행 모델 파일을 앱에 포함

애플의 Foundation Models 문서를 보면 이 프레임워크는 iOS 26부터 쓸 수 있고, 기기 안의 모델은 요약, 정보 추출, 글과 이미지 이해, 문장 다듬기 같은 작업에 강하다고 설명합니다. 원하는 형태의 데이터 구조로 답을 받는 기능(guided generation)과 앱 기능을 호출하게 하는 도구(Tool)도 지원합니다. 다만 사용자가 Apple Intelligence를 지원하는 기기를 갖고 있어야 합니다.

Core ML 문서에 따르면 Core ML은 CPU, GPU, 뉴럴 엔진을 활용해 모델을 기기에서 실행하고, 네트워크 연결이 필요 없어 사용자 데이터를 기기 안에 둘 수 있습니다. 사진 분류나 특정 물체 찾기처럼 목적이 분명한 모델을 쓸 때 맞습니다.

안드로이드 쪽은 Gemini Nano 안내 문서에 나와 있듯이 AICore라는 시스템 서비스 안에서 Gemini Nano가 돌아가고, 앱은 ML Kit GenAI API로 접근합니다. LiteRT는 구글이 TensorFlow Lite를 이어 만든 기기용 실행 엔진으로, PyTorch나 TensorFlow로 만든 모델을 변환해 안드로이드와 iOS 등 여러 플랫폼에서 돌릴 수 있습니다.

개인정보, 오프라인, 응답 속도는 어떻게 다른가요

개인정보 측면에서는 온디바이스가 확실히 유리합니다. 일기, 상담 메모, 건강 기록처럼 민감한 글을 요약하는 기능이라면, 데이터가 기기를 떠나지 않는다는 점만으로 설명할 거리가 크게 줄어듭니다. 애플의 App Privacy 안내와 구글 플레이의 Data safety 기준 모두 기기 안에서만 처리하고 밖으로 보내지 않는 데이터는 수집한 것으로 보지 않습니다. 반대로 서버 AI를 쓰면 어떤 정보를 외부 AI 회사로 보내는지 개인정보처리방침과 스토어 신고에 반영해야 합니다.

온디바이스와 서버 AI
온디바이스
  • 데이터가 기기 밖으로 안 나감
  • 인터넷 없이도 동작
  • 속도는 기기 성능에 좌우
  • 요청당 서버 비용 없음
서버 AI
  • 외부로 보내는 정보 신고 필요
  • 네트워크 연결 필요
  • 기기와 상관없이 비슷한 속도
  • 사용량만큼 비용 증가
계산 위치가 바뀌면 조건이 함께 바뀝니다

오프라인 동작도 온디바이스의 장점입니다. 지하 매장, 비행기 안, 산간 지역에서 쓰는 앱이라면 네트워크가 없을 때 기능이 아예 사라지는 것보다 조금 단순하더라도 동작하는 편이 낫습니다.

응답 속도는 단순하지 않습니다. 온디바이스는 네트워크 왕복이 없어서 첫 반응이 빠른 편이지만, 생성 속도는 기기 성능에 따라 달라진다고 구글 문서에도 적혀 있습니다. 서버 AI는 네트워크 상태에 따라 지연이 생기지만 기기 성능과 상관없이 비슷한 속도를 냅니다. 최신 플래그십 폰에서 빠르게 돌던 기능이 사양이 낮은 기기에서는 답답하게 느껴질 수 있으니, 테스트는 반드시 여러 등급의 실물 기기로 해야 합니다.

모델 성능과 지원 기기에서 가장 크게 갈립니다

온디바이스 모델은 휴대폰 메모리와 배터리 안에서 돌아가야 하니 작을 수밖에 없습니다. 애플의 Private Cloud Compute 안내 문서를 보면 기기 안 모델의 컨텍스트(한 번에 다룰 수 있는 입력과 출력의 길이)는 4K 토큰, 애플 서버 모델은 32K 토큰으로 비교되어 있습니다. 긴 계약서를 통째로 넣고 질문하거나 여러 단계를 따져야 하는 일은 기기 안 모델에 맡기기 어렵습니다.

지원 기기 문제는 기획 단계에서 꼭 따져야 합니다. Foundation Models는 Apple Intelligence 지원 기기에서만 동작하고, 기기와 지역이 Apple Intelligence를 지원하는지에 따라서도 쓸 수 없는 경우가 있습니다. ML Kit GenAI 문서를 보면 안드로이드도 Gemini Nano를 지원하는 일부 기기에서만 동작하고, 요약이나 교정 같은 기능별로 지원 기기 목록이 따로 있습니다. 모델 버전은 기기의 메모리, OS 버전, AICore 업데이트 상태에 따라 달라지고, 버전이 다르면 같은 질문에도 다른 답이 나올 수 있다고 되어 있습니다.

놓치기 쉬운 제약도 있습니다. ML Kit GenAI 문서에 따르면 Gemini Nano 추론은 앱이 화면 맨 앞에 떠 있을 때만 가능하고, 백그라운드에서 부르면 오류가 납니다. 앱마다 사용량 한도도 있습니다. 밤사이 쌓인 메시지를 백그라운드에서 미리 요약해 두는 식의 기획은 이 조건에 걸립니다.

앱 용량, 운영비, 업데이트 방식도 따져야 합니다

앱 용량은 어떤 도구를 쓰느냐에 따라 다릅니다. Foundation Models나 Gemini Nano처럼 운영체제가 제공하는 모델은 앱에 모델 파일을 넣지 않습니다. 구글 문서도 AICore가 Gemini Nano의 배포와 업데이트를 맡기 때문에 앱의 저장 공간과 메모리 예산에 영향을 주지 않는다고 설명합니다. 반면 Core ML이나 LiteRT로 직접 준비한 모델을 넣으면 그만큼 앱 설치 용량이 늘어납니다. 모델을 압축하거나, 처음 실행할 때 내려받게 하는 방법을 함께 검토합니다.

운영비 구조도 다릅니다. 온디바이스는 계산을 사용자 기기가 하므로 요청할 때마다 드는 서버 비용이 없습니다. 대신 개발과 기기별 테스트에 시간이 더 듭니다. 서버 AI는 사용량에 비례해 비용이 늘어나는 구조라서 사용자가 늘수록, 한 번에 보내는 글이 길수록 청구액이 커집니다. 사용자당 한도와 지출 상한을 처음부터 걸어 두는 이유입니다.

업데이트 방식은 반대 방향으로 다릅니다. 서버 AI는 서버 쪽에서 모델을 바꾸면 모든 사용자에게 바로 적용됩니다. 앱에 넣은 모델은 앱 업데이트를 내야 바뀝니다. 운영체제가 관리하는 모델은 앱 개발사가 버전을 정할 수 없고 OS나 시스템 서비스 업데이트에 따라 바뀌므로, 큰 OS 업데이트가 나오면 결과 품질을 다시 확인하는 일정을 잡아 두는 편이 안전합니다.

기기에서 먼저 처리하고 어려운 일은 서버로 넘기는 구성

두 방식의 장단점이 뚜렷하다 보니 플랫폼 회사들도 섞어 쓰는 구성을 공식적으로 안내하고 있습니다.

섞어 쓰는 구성의 흐름
요청 받기사용자가 앱에서 기능 실행
기기에서 처리짧고 민감한 일은 기기 모델로
개인정보 가리기넘기기 전 이름, 번호 가림
서버로 넘기기긴 입력과 깊은 추론은 서버
미지원 기기도 서버로 대신 처리합니다

애플은 Foundation Models에 Private Cloud Compute라는 애플 서버 모델을 연결할 수 있게 했습니다. 문서에 따르면 iOS 27부터 세션을 만들 때 모델 하나만 바꾸면 같은 코드로 서버 모델을 쓸 수 있고, 별도 API 키 관리가 필요 없습니다. 다만 사용자별 하루 요청 한도가 있고, 이 기능을 쓰려면 애플의 자격 요건을 갖춰 별도 권한을 신청해야 합니다. 문서는 먼저 기기 안 모델로 기능을 평가해 보고, 추론 능력이나 입력 길이가 부족할 때 서버 모델을 쓰라고 권합니다.

안드로이드 문서는 Gemini Nano를 쓸 수 없는 기기에서는 클라우드의 Gemini 모델로 자동으로 넘기는 Firebase AI Logic의 하이브리드 기능을 소개합니다. 이 경우에도 클라우드 쪽 호출은 App Check 같은 장치로 진짜 앱에서 온 요청만 받도록 막아 두라고 안내합니다.

저희가 실제로 설계할 때는 대략 이렇게 나눕니다. 짧은 메모 요약, 입력한 주소에서 이름과 연락처 뽑기, 문장 다듬기처럼 입력이 짧고 개인정보가 섞인 일은 기기에서 먼저 처리합니다. 기기가 지원하지 않거나, 입력이 길거나, 회사 문서를 찾아 답해야 하는 일은 서버로 보냅니다. 이때 서버로 넘기기 전에 기기에서 이름이나 전화번호를 가려 두면 개인정보 부담도 줄일 수 있습니다.

어떤 순서로 고르면 되나요

기능 하나를 놓고 저희가 따지는 순서는 이렇습니다.

AI 실행 위치 고르는 순서
  1. 민감 정보 확인들어가면 온디바이스 우선 검토
  2. 오프라인 여부인터넷 없이 동작해야 하는지
  3. 입력 길이와 추론길고 복잡하면 서버가 맞음
  4. 사용자 기기 분포지원 기기 비율이 충분한지
  5. 서버 비용 점검사용량이 늘어도 감당되는지
  6. 방식과 대체 화면미지원 기기에 보여 줄 화면 정하기
기기 분포는 개발 전에 정해 둡니다
  1. 기능이 다루는 데이터에 민감한 개인정보가 들어가는지 봅니다. 들어간다면 온디바이스를 우선 검토합니다.
  2. 인터넷이 없을 때도 동작해야 하는지 정합니다.
  3. 입력 길이와 필요한 추론 수준을 봅니다. 긴 문서나 여러 단계 판단이 필요하면 서버가 맞습니다.
  4. 실제 사용자 기기 분포를 확인합니다. 지원 기기 비율이 낮으면 온디바이스만으로는 기능이 반쪽이 됩니다.
  5. 사용량이 늘었을 때 서버 비용이 감당되는지 따져 봅니다.
  6. 위 결과에 따라 온디바이스, 서버, 혼합 중 하나를 고르고, 지원하지 않는 기기에서 보여 줄 화면을 정합니다.

4번에서 기획이 자주 흔들립니다. 지원 기기 사용자에게만 기능을 줄지는 서비스 정책의 문제라서 개발 전에 정해 두어야 합니다.

자주 묻는 질문

온디바이스 AI를 쓰면 개인정보 동의를 받지 않아도 되나요?

기기 안에서만 처리하고 밖으로 보내지 않는 데이터는 앱스토어와 구글 플레이 기준으로 수집에 해당하지 않습니다. 다만 같은 앱의 다른 기능에서 데이터를 서버로 보낸다면 그 부분은 그대로 신고하고 동의를 받아야 합니다. 서버로 넘기는 혼합 구성이라면 넘어가는 경우를 기준으로 정리해야 합니다.

Flutter나 React Native 앱에서도 온디바이스 AI를 쓸 수 있나요?

쓸 수 있지만 대부분 각 플랫폼의 네이티브 코드를 거쳐야 합니다. Foundation Models는 Swift, ML Kit GenAI는 안드로이드 API라서 이를 연결하는 브리지 코드를 직접 만들거나 플러그인을 써야 합니다. iOS와 안드로이드의 모델이 서로 달라 같은 입력에도 결과가 다를 수 있다는 점도 감안해야 합니다.

지원하지 않는 기기 사용자에게는 무엇을 보여 주나요?

기능 버튼을 숨기거나, 서버 AI로 대신 처리하거나, 지원 기기에서만 쓸 수 있다고 안내하는 방법이 있습니다. 두 플랫폼 모두 모델을 쓸 수 있는지 미리 확인하는 방법을 제공하니, 화면에 들어가기 전에 확인하고 분기하면 됩니다.

우리 회사 데이터로 온디바이스 모델을 학습시킬 수 있나요?

Core ML이나 LiteRT처럼 직접 모델을 넣는 방식이라면 학습시킨 모델을 변환해서 쓸 수 있습니다. 운영체제가 제공하는 언어 모델은 앱이 다시 학습시키는 대상이 아니므로, 지시문과 예시를 잘 설계하거나 필요한 정보를 그때그때 함께 넘기는 방식으로 접근합니다.

넣으려는 AI 기능이 기기에서 돌릴 만한지, 서버가 필요한지 판단이 서지 않으시면 기능 설명과 주 사용자 기기 현황을 정리해 상담으로 보내 주세요. 저희가 AI 기능을 개발하는 방식은 AI 앱 개발 페이지에도 정리해 두었습니다.

앱 개발이 고민되시나요?
앱 개발이 고민되시나요?

기획부터 출시까지, 모바일파트너스가 함께합니다