ml-explore/mlx-lm
Run LLMs with MLX
해결하는 문제
mlx-lm는 Apple silicon에서 대규모 언어 모델(LLM)을 쉽게 실행하고, 미세 조정하며, 양자화할 수 있도록 설계되었습니다. Mac 하드웨어에서 LLM을 로컬로 배포하는 데 발생하는 장벽을 제거하기 위해, 텍스트 생성 및 모델 최적화를 위한 통합된 Python 패키지와 명령줄 도구를 제공합니다.
작동 방식
이 프로젝트는 MLX 프레임워크를 활용하여 Apple silicon에서 LLM 성능을 최적화합니다. Hugging Face Hub에서 모델을 로드하고, 텍스트를 생성하며, 모델 가중치를 관리하기 위한 Python API와 CLI를 제공합니다. 주요 기술적 기능은 다음과 같습니다:
- 모델 변환 및 양자화: 모델을 변환하고 (예: 4비트로) 메모리 사용량을 줄인 후 Hugging Face Hub에 다시 업로드할 수 있습니다.
- 메모리 관리: 고정 크기의 회전형 키-값(KV) 캐시와 설정 가능한 프리필 단계 크기를 사용하여 긴 프롬프트를 효율적으로 처리합니다.
- 프롬프트 캐싱: 긴 프롬프트를 캐시하여 여러 쿼리 간에 재계산을 방지할 수 있습니다.
- 미세 조정: 저랭크(LoRA) 및 전체 모델 미세 조정을 지원하며, 양자화된 모델도 지원합니다.
- 분산 컴퓨팅:
mx.distributed를 통해 분산 추론 및 미세 조정을 가능하게 합니다.
대상 사용자
Apple silicon을 탑재한 Mac을 사용하여 LLM을 로컬에서 실행하고 싶거나, 하드웨어에 최적화하거나 특정 작업에 맞게 미세 조정하고 싶은 개발자 및 연구자입니다.
주요 특징
- Hugging Face 통합: Hugging Face Hub에 직접 통합되어 모델 접근 및 업로드가 간편합니다.
- Apple silicon 최적화: Mac 하드웨어에 특화되어 있으며, macOS 15 이상에서 대규모 모델을 위한 메모리 연결도 지원합니다.
- 로컬 챗 REPL: 모델과 즉시 상호작용할 수 있는 내장 챗 인터페이스를 포함합니다.
- 효율적인 긴 컨텍스트 처리: 프롬프트 캐싱과 회전형 KV 캐시와 같은 도구를 통해 긴 생성에 스케일링할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트