- ANEMLL은 대형 언어 모델(LLM)을 Apple Neural Engine(ANE)으로 포팅하는 오픈 소스 프로젝트임
- ANEMLL은 모델 변환부터 추론까지의 파이프라인을 제공하여, 엣지 디바이스에서의 저전력 애플리케이션을 위한 온디바이스 추론을 가능하게 함
- ANEMLL 0.3.0 알파 버전은 LLAMA 모델을 포함한 다양한 모델을 지원하며, Swift 및 Python 샘플 코드와 iOS/macOS 애플리케이션 예제를 제공함
- ANEMLL은 Apple Neural Engine의 성능을 테스트하고 비교할 수 있는 벤치마킹 도구를 포함함
- ANEMLL은 MIT 라이선스를 따르며, 기여를 환영함
ANEMLL 소개
-
ANEMLL은 대형 언어 모델(LLM)을 **Apple Neural Engine(ANE)**으로 포팅하는 오픈 소스 프로젝트임
- 모델 변환부터 추론까지의 파이프라인을 제공하여, 엣지 디바이스에서의 저전력 애플리케이션을 위한 온디바이스 추론을 가능하게 함
-
Hugging Face 모델을 ANE로 직접 포팅할 수 있는 유연하고 사용하기 쉬운 라이브러리/프레임워크 제공
- iOS 및 macOS의 Swift 또는 C/C++ 애플리케이션을 위한 온디바이스 예제 제공
0.3.0 알파 릴리스의 주요 구성 요소
-
LLM 변환 도구: Hugging Face 가중치에서 직접 모델을 변환하는 스크립트와 코드 제공
-
Swift 참조 구현: Swift 애플리케이션을 위한 최적화된 추론 코드
-
Python 샘플 코드: 기본 채팅 인터페이스 및 고급 대화 관리 도구
-
iOS/macOS 샘플 애플리케이션: 사용 가능한 예제 애플리케이션
-
ANEMLL-BENCH: Apple Neural Engine 벤치마킹 도구
사전 변환된 모델
- LLAMA 3.1 (1B 및 8B 변형) 포함
- DeepSeek 및 DeepHermes 증류 모델 제공
- Apple Neural Engine의 블록 양자화 부족으로 LUT4 품질이 낮음
0.3.0의 새로운 기능
-
Swift UI 샘플 코드: iOS/macOS 추론 챗봇 앱
- 모델 변환 및 업로드 스크립트 업데이트
- Swift 패키지 및 CLI 앱 업데이트
Swift CLI 참조 구현
- Apple Neural Engine에서 모델을 실행하기 위한 참조 구현 제공
- Hugging Face에서 모델 다운로드 후 단일 변환 스크립트로 변환 가능
Python을 사용한 테스트
-
chat.py: 빠른 테스트를 위한 기본 채팅 인터페이스
-
chat_full.py: 대화 기록 관리 기능 포함
설치 및 시스템 요구 사항
- macOS Sequoia 및 Apple Neural Engine 필요
- 최소 16GB RAM 및 Python 3.9 필요
- Xcode 명령줄 도구 설치 필요
모델 지원
- Meta의 LLaMA 3.2 1B 및 8B 모델 최적화
- DeepSeek R1 8B 증류 모델 및 DeepHermes 3B 및 8B 모델 포함
기여 및 연락처
- 기여를 환영하며, 기여 지침을 읽고 PR 제출 가능
- ANEMLL을 사용하는 프로젝트는 목록에 추가 가능
- 질문이나 지원이 필요하면 realanemll@gmail.com으로 연락 가능
라이선스