![RBPT](https://meeco.kr/files/member_extra_info/profile_image/111/130/024/24130111.png?20200329202742)
미니 Apple Intelligence는 어떻게 작동하는가?
- RBPT
- 조회 수 549
- 2024.08.17. 17:59
원래는 학습 쪽까지 다 쓰려 했는데 귀찮아서 추론만 씁니다.
![ltFwRuY0CvMWILnYDv8Pn.jpeg](http://img.meeco.kr/files/attach/images/132/773/122/039/2f12db833df3c5cf377645b8c0b49647.jpeg)
Apple Intelligence는 기반 모델 (Foundation Model) 과 LoRA (Low-Rank Adapter) 로 나뉘게 됩니다.
LoRA는 기반 모델을 특정 상황에 맞추어 사용할 수 있도록 추가로 트레이닝 후 어댑터 형식으로 분리하는 기법입니다. 기반 모델을 처음부터 학습시키는 것에 비해 훨씬 낮은 학습 비용이 소모된다는 장점이 있습니다. Apple Intelligence는 추론 상항 (Proofreading, 글무리 요약, 메일 답장, ...) 에 맞춘 다양한 LoRA들을 보유하고 있습니다. 이러한 LoRA들의 파일 크기는 몇십 메가바아트 수준 (Apple Intelligence Foundation
Language Models, Section 5.1) 으로, 이러한 작은 파일 사이즈 덕분에 LoRA들을 향시 주 저장장치에 상주시키지 않고도 빠른 추론을 이루어 낼 수 있습니다.
On-device 모델
On-device 모델은 사용자 개개인의 장치에서 작동하는 모델입니다. 파라미터 사이즈는 대략 3B (30억), 토크나이저의 Vocab 크기는 49K (4.9만) 정도입니다 (Apple Intelligence Foundation
Language Models, Section 3.1.6) (*1). 모바일 장치의 적은 RAM 사이즈에 타협하기 위해, Apple Intelligence의 On-device 모델은 평균 3.7-bit 양자화 처리가 되어 있습니다. Apple 연구진들은 Transformer 아키텍처의 구조 상 모든 레이어가 같은 종류의 Precision Size를 유지할 필요가 없다는 것을 알아냈고, 이러한 바탕으로 일부 레이어들은 4-bit에서 한단계 더 압축된 2-bit로 압축 처리됩니다 (Apple Intelligence Foundation
Language Models, Section 5.2, Mixed-precision quantization).
이러한 최적화 덕에 Apple Intelligence의 On-device 모델은 최대 초당 30개의 토큰을 처리할 수 있게 되었습니다.
Online 모델
On-device에서 해당 추론 요청을 처리할 수 없다고 판단되는 경우 공은 Apple의 Private Compute Cloud (PCC) 로 넘어갑니다. PCC의 장비들은 애플의 Apple Silicon 칩과 macOS 및 iOS의 AI 기술들을 따온 추론 전용 OS를 기반으로 작동하게 됩니다. 이러한 추론 요청은 사용자의 민감한 정보를 포함할 확률이 아주 높으며, 사용자의 정보가 탈취되는 것을 방지하기 위해 PCC 노드들은 다양한 보안 조치들을 적용받습니다.
- 모든 PCC 서버들은 Secure Enclave와 Secure Boot가 활성화 되어 있으며, 애플의 신뢰 체인에서 검증되지 않은 프로그램의 실행이 원천 차단됩니다. 서버 관리를 위한 원격 쉘, 원격 수치 수집 등의 기능도 전부 제공되지 않으며, 대신 퍼포먼스 모니터링을 위한 제한된 수준의 수치만 확인할 수 있습니다. JIT 코드 컴파일 또한 불가합니다.
- 사용자의 단말에서 PCC 서버에 전송되는 모든 요청은 추론이 끝나는 즉시 삭제됩니다. 데이터 유출을 방지하기 위해, PCC와 사용자 간의 모든 트래픽은 쌍방향 암호화됩니다. PCC 노드는 사용자의 인퍼런스 요청 데이터가 적재되는 메모리의 주소 공간을 잦은 주기로 재사용합니다. 이렇게 하면 만약의 버그로 인해 사용자의 요청이 지워지지 않고 남아있게 되더라도 강제로 다른 데이터로 덮어씌울 수 있습니다.
- 물리적인 침입에 의한 공격을 막기 위해, PCC 장비는 매 부팅 시마다 시스템 볼륨의 암호화 키를 재생성합니다. 이 키는 메모리에만 저장되며, 플래시 드라이브에 남지 않습니다. 이러한 조치를 통해 PCC 장비는 매 재부팅 시마다 모든 데이터가 삭제되는 효과를 얻습니다.
출처:
https://security.apple.com/blog/private-cloud-compute/
https://arxiv.org/pdf/2407.21075
![RBPT](https://meeco.kr/files/member_extra_info/profile_image/111/130/024/24130111.png?20200329202742)
2141 / 1260 / 2217 / 1864 / 2014 / 2093 / 1842 / 2190 / 2093 / 2094 / 1998
댓글