brunch

You can make anything
by writing

C.S.Lewis

by delight Jul 13. 2024

애플 인텔리전스는 어떻게 엣지AI의 한계를 뛰어넘었나

학습 차원에서 틈틈이 해외 전문가들이 블로그나 미디어 그리고 책에서 쓴 글을 번역 또는 요약 정리하고 있습니다. 이번 포스팅도 그중 하나고요. 거칠고 오역된 부분이 있을 수 있습니다. 제대로 번역되지 않은 부분은 확인 주시면 반영토록 하겠습니다. 의미 전달이 애매한 일부 문장은 삭제했습니다. 이번 글은 Ignacio de Gregorio가 미디엄에 올린 글을 정리한 것입니다.


애플은 마침내 자사 제품 라인업인 애플 인텔리전스를 위한 GenAI 기능 제품군을 공개했다. 여기에는 이모티콘 생성기, 글쓰기 및 이미지 도구, 그리고 많은 사람들이 요구했던 Siri 업데이트와 같은 다양한 기능들이 포함돼 있다. 하지만 여기서 중요한 것은 Apple Intelligence가 곧 수억 명이 세계에서 가장 강력한 모델을 손에 넣을 수 있는 '엣지'를 향한 GenAI 배포 혁명의 시작이라는 점이다. 다행스럽게도 애플은 이를 어떻게 실현하고 있는지에 대한 흥미로운 세부 정보를 공개했고, 우리는 여기에서 세부내용을 공개한다.


엣지를 위한 위대한 도약

Apple은 '엣지의 AI'로 자리매김한 첫 대기업이다. 즉, 프라이버시 문제를 피하기 위해 가능한 한 기기 내부에서 최대한 많은 연산을 수행하는 데 중점을 두고 Apple 인텔리전스를 개발해 왔다.


데이터가 기기를 떠나 '개방형' 인터넷에 들어가는 순간, 데이터는 훨씬 더 취약해진다. 이에 대한 애플의 노력은 칭찬할 만하지만, 사실 부분적으로만 달성한 것이 사실이다. 그럼에도 애플은 꽤 발전된 GenAI 구현 파이프라인을 제시했다.


온디바이스 및 서버 모델 제품군

Apple GenAI 기능은 하나가 아닌 다양한 AI 모델에 의존하다. '온디바이스' 측면에서는 2024년 4월 발표한 30억개 파라미터 모델인 OpenELM과 작업별 모델셋이 기본 모델이 될 가능성이 높다. 서버 측면에서는 애플이 4월에 발표한 또 다른 모델인 Ferret-UI와 같이 더 크고 성능이 뛰어난 모델이 프라이빗 클라우드 컴퓨팅이라고 부르는 고도로 보호되는 Apple 클라우드에 다른 어댑터셋들(set of adapters)과 함께 저장된다. 그러나 사용자 요청이 너무 복잡할 경우 애플 기기는 이를 ChatGPT-4o로 전송할 수 있도록 허용한다.


프로세스 휠(The Process Wheel)

모든 요청에 대해 오케스트레이션 기능(알고리즘)이 가장 적합한 모델을 평가한다. 이상적으로는 '온디바이스' 모델이 이를 처리할 수 있는 경우 해당 모델이 기본으로 선택된다. 그렇지 않은 경우 알고리즘은 Apple 서버 모델이 가능한지 여부를 확인한다. 그렇지 않으면 ChatGPT로 보내라는 메시지가 표시되며, 사용자는 원치 않을 경우 쓰지 제거할 수 있다.


오케스트레이션 알고리즘

하지만 Apple 인텔리전스가 어떻게 작동하는지에 대한 질문에는 아직 답하지 못했다.


모든 기법들

엣지에서 AI를 실행할 때, 즉 클라우드에 연결되지 않고 기기에 완전히 로드된 AI를 실행할 때는 지금은  한 가지 현실, 즉 덜 강력한 모델에 만족해야 한다.


LLM은 이름이 말하듯 크다. 프론티어 모델들인 ChatGPT, 클로드, 제미니는 1.5조개 매개변수를 넘어선다.

참고로 이 정도 크기 모델을 저장하는 데 필요한 RAM은 약 3TB에 달한다. 이는 모델을 호스팅하는 데만 거의 38개 최신 GPU(NVIDIA H100)가 필요한 규모다. 단일 대규모 요청만으로도 TB KV 캐시를 생성할 수 있기 때문에 이러한 모델이 대규모로 작동하려면 수천 개 GPU 클러스터가 필요한 것이 당연하다.


따라서 최대 30억 개 매개변수를 가진 모델은 복잡한 작업에는 전혀 적합하지 않다. 하지만 이 경우에도 30억개 파라미터 모델은 여전히 6GB를 차지하며, LLM KV 캐시를 고려하지 않고 스마트폰에서 실행되는 나머지 프로세스에는 2GB만 남는다. Apple은 이 모든 문제를 해결하기 위해 몇 가지 최적화 트릭을 사용했다.


정량화 및 파인튜닝( Quantize and Fine-tune)

애플은 우선, 기본 모델을 학습시킨 후 정량화했다. 즉, 각 매개변수가 메모리에서 2바이트를 차지하는 대신 그 값을 평균 3.5비트로 줄였다. 가중치는 모델 지식을 저장하는 매개변수다. 모델을 학습시킬 때 모델 예측 오차를 최소화하기 위해 이러한 가중치 값을 업데이트한다. 가중치 값을 정량화하면 기본적으로 학습된 지식을 이끌어내는 능력에 어느 정도 영향을 미친다.


그럼에도 특정 정량화를 통해 RAM 요구량을 6GB에서 약 1.5GB로 줄여 다른 프로그램을 위한 충분한 공간을 확보할 수 있다. 그러나 다시 말하지만, 점심은 공짜가 아니며 가중치를 정량화하면 모델 성능이 저하된다는 점을 잊어서는 안 된다.(가중치가 힘들게 얻은 정밀도를 잃기 때문에) 이러한 모델은 이미 상당히 제한적이라는 점을 고려할 때 문제가 된다.


훈련 후 정량화는 일반 크기 농구 골대로 농구를 하도록 모델을 훈련시킨 다음 실제 경기가 시작되면 예기치 않게 골대의 림을 훨씬 작게 만드는 것과 같다. 일부 슛은 여전히 들어가지만 모델이 해당 조건에서 훈련되지 않았기 때문에 품질이 저하된다. 이런 가운데 Apple은 여러 특수 모델을 함께 사용하면 더 나은 성능을 제공할 수 있는데 왜 하나의 모델만 사용하는지 의문을 제기했다.


우리는 이미  모델 하나에 대해서도 메모리 문제로 어려움을 겪고 있는데 도대체 어떻게 여러 모델을 사용할 생각을 할까? 이 '다른 모델'들은 모두 외부 어댑터(exogenous adapters.)를 사용해 동일한 모델을 파인튜닝한 버전들이다. 특히 Apple은 LoRA라는 파인튜닝 기술을 사용해 각 작업에 대한 기본 모델을 파인튜닝해 작업별 모델 제품군을 만들기로 결정했다.


LoRA를 이해하려면 한 가지를 이해해야 한다:

LLM은 본질적으로 특정 다운스트림 작업은 순위가 낮다.  간단히 말해, 특정 작업에 대해 모델 일부만 '중요'하다는 뜻이다. 따라서 이메일 요약에 대한 기본 모델(base model)을 파인튜닝 할떄 전체 기본 모델을 파인튜닝해 사실상 원래 모델과 별도 모델을 만드는 대신 어댑터라고 하는 별도 가중치 집합을 학습시켜 해당 작업에 참여하는 가중치를 파인튜닝한다.


이것이 바로 LoRA에 대한 간단한 설명이다. 의문이 풀리지 않았을 테니 좀 더 자세히 살펴보자. 쉽게 설명하자면 기본 모델에 보조 어댑터를 만드는 것이다. 이를 위해 기본 모델에서 서로 다른 가중치 행렬을 두 개 낮은 순위 행렬(matrices)로 나누고 전체 가중치 집합 대신 해당 행렬을 파인튜닝한다.


전통적인 파인튜닝에는 모델 전체 가중치 집합을 업데이트하는 작업이 포함된다.  예를 들어 매개변수가 25개에 불과한 소규모 네트워크의 경우 가중치 열 두 개 1등급 행렬(행 하나 또는 열 하나)로 세분화할 수 있다.


하지만 이것이 왜 효과가 있을까? 행렬 순위(The rank of a matrix)는 선형적으로 독립적인 행(rows)과 열(columns)의 수를 정의한다. 즉, 행렬 순위가 2라면 2개 행을 사용해 나머지 행을 생성할 수 있다. 쉽게 말해,행렬 크기는 훨씬 더 크지만 실제로 특정 작업에 대해 고유한 정보를 제공하는 행은 두 개뿐이며 ,나머지 행은 중복된다는 뜻이다. 따라서 LoRA는 정말 중요한 매개변수만 최적화하고 나머지는 변경하지 않는 방식으로 작동해 막대한 비용을 절감할 수 있다.


파인튜닝할 매개변수 수를 25개에서 10개로 효과적으로 줄일 수 있다. 그런 다음 어댑터가 학습되면 기본 모델은 그대로 둔 채 필요에 따라 기본 모델에 추가해 파인튜닝된 모델로 변환할 수있다. 15개 파라미터를 저장하는 것은 그리 많지 않아 보이지만,  모델 매개변수 크기가 수십억  개에 달한다는 점을 고려하면 LoRA 어댑터는 수억개 가중치를 업데이트하지 않고도 활성 학습 파라미터 수를 98% 이상 줄일 수 있다.


하지만 '별도 행렬'을 훈련하는 경우 실제로 모델 동작을 어떻게 변경할 수 있을까? 이를 위해 분해된 행렬에 곱셈을 통해 행렬을 재구성한다. 이렇게 하면 원래 기본 모델 행렬(어댑터)과 같은 크기 행렬이 출력되며, 이를 기본 모델에 추가해 파인튜닝된 모델을 만들 수 있다.


요약하면, LoRA 파인튜닝은 원래 모델을 변경하지 않고 다른 가중치들에 대한 변경 사항을 추적하는 일련의 대리 모델을 만드는 것으로 생각할 수 있지만, 이를 모델에 추가해 해당 다운스트림 작업에 대한 동작을 효과적으로 모델링할 수 있다. 매우 독창적인 이런 파인튜닝 방법을 통해 Apple은 하나의 거대한 모델과 그에 비해 훨씬 작은 여러 어댑터셋만 저장하고 필요에 따라 각 작업에 맞게 기본 모델을 조정할 수 있다. 따라서 기기에 30억개에 달하는 매개변수를 가진 10개 모델들을 한번에 저장하는 대신 하나 큰 모델과 동적으로 할당 가능한 10개 작은 '애드인'(add-ins.)들이 있다.


이 모든 것을 고려하면 전체 Apple 인텔리전스는  어떤 모습일까?


Apple 제품의 새로운 시대

아래에서 설명하는 바와 같이 Apple 인텔리전스는 온디바이스 모델과 서버 측 모델을 구분하는 다이어그램을 제시한다. 그렇다면 퍼즐의 모든 조각들은 무엇일까?


온디바이스 모델: 각각의 LoRA 어댑터셋이 포함된 OpenELM 및 이미지 모델

서버 모델: 프라이빗 클라우드 컴퓨팅 Apple 모델 스택. LoRA 어댑터 접근 방식은 서버 측에서도 사용된다는 점에 유의해야 한다

오케스트레이션: 사용자 요청이 기기 내에서 해결될지 아니면 Apple 서버 모델 또는 최종적으로 ChatGPT로 전달될지 결정하는 알고리즘이다.

앱 인텐트 툴박스(App Intents ToolBox): 이 도구를 사용하면 Siri와 모델이 다양한 앱과 상호 작용할 수 있다.


앱이 Apple 인텔리전스로 강화되려면 개발자는 앱 인텐트 SDK를 사용해 Siri와 같은 시스템이 앱에서 작업을 수행할 수 있도록 허용해야 한다.


시맨틱 인덱스: 이것은 아마도 Apple Intelligence가 데이터와 상호 작용할 수 있도록 하는 벡터 데이터베이스일 것이다. 예를 들어 남편과 함께 찍은 최신 사진을 검색하려면 시맨틱 인덱스를 사용한다. 시맨틱 인덱스는 아마도 RAG 패턴으로, 현재 논란이 되고 있는 Microsoft 리콜 기능과 매우 유사할 것이다. 흥미롭게도 애플은 이 기능이 동일함에도 불구하고 (적어도 명분상으로는) 그다지 큰 반발에 부딪히지 않았으며 ,이는 사용자 데이터를 처리하는 데 있어 마이크로소프트가 애플에 비해 얼마나 신뢰받지 못하고 있는지를 증명한다.Microsoft는  사용자 안전에 대한 피드백을 바탕으로 기능을 개선하기 리콜 기능 출시를 연기했다.


그렇다면 이 모든 것이 Apple에게는 어떤 의미일까?


하드웨어 업그레이드를 장려하기 위한 역학 모델

쉽다: 온디맨드 동적 모델 적용. 예를 들어 사용자가 최근 10개 이메일 요약을 요청한다고 가정해 보자. 


Apple Intelligence 알고리즘은 이를 '온디바이스'가 처리할 수 있는 작업으로 인식하고 어댑터를 식별한 다음 GPU와 기본 모델에 로드한다.

파인튜닝된 모델(기본 모델 + 어댑터)이 명령을 실행한다.

다른 어댑터를 가져올 수 있도록 어댑터가 오프로드된다


확인되지는 않았지만, Apple은 일종의 계층형 캐시를 사용해  필요한 경우 빠른 로딩을 위해 '최근에 사용한' 어댑터를 캐시하는 것으로 추정된다. 이렇게 하면 Apple은 단일 기기에서 매우 효율적인 강력한 LLM 제품군을 실행해 자체적으로 해결할 수 없는 부분은 서버로 오프로드하고, 항상 뛰어난 성능과 효율적인 메모리 사용을 보장할 수 있다. 하지만 이것이 Apple에게 큰 승리인 이유는 AI와는 전혀 상관이 없다.


Apple의 커다란 승리

사용자 프라이버시를 배려한다는 이야기는 칭찬할 만하지만, Apple도 다른 기업과 마찬가지로 영리를 추구하는 기업이기 때문에 이 모든 것의 매력은 어디에 있을까? 간단히 말해, Apple 인텔리전스에 액세스하려면 iPhone 15 Pro 또는 Pro Max 또는 최소 M1 칩이 탑재된 iPad 및 Mac으로 업그레이드해야 한다. 이는 매우 중요한데, 수년 동안 Apple이 새로운 세대가 나올 때마다 미미한 개선만 하면서 많은 사람들이 몇 세대를 건너뛰게 만든 후, 이제 고객들은 오랜만에 업그레이드해야 할 강력한 이유를 갖게 되었기 때문이다. 마지막으로, Apple이 오픈소스를 지속적으로 지원하는 방식은 칭찬할 만하다. Apple 모든 모델들은 가중치와 데이터셋이 모두 공개돼 있다. 메타를 능가하는 AI 분야에서 가장 개방적인 대기업일 테니, 다른 기업들도 이를 따르도록 장려하는 계기가 됐으면 하는 바람이다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari