아래와 같이 제 M1 mac mini에서 설치한 결과입니다.
0단계. 설치 및 gemma.cpp
Clone
- CMake 설치:
brew install --cask cmake
- (clang과 tar는 이미 설치되어 있습니다)
- gemma.cpp 저장소 복제:
git clone https://github.com/google/gemma.cpp
- (저의 경우
/Users/reserve/Workspace/gemma.cpp
에 복제해두었습니다)
1단계. 모델 다운로드 및 압축 해제
- Google | Gemma | Kaggle 방문 및 Term of Use 동의
- 스크롤을 내리다가, 아래와 같은
Model Variations
섹션에서 Gemma C++ 선택 후 모델 다운로드
- (README에서 추천한대로,
2b-it-sfp
를 다운로드 받았습니다.)
2단계. 압축 해제
- 1단계에서 내려받은 파일:
~/Downloads/archive.tar.gz
- 압축 해제:
tar -xf ~/Downloads/archive.tar.gz
- (복제한 gemma.cpp 저장소 디렉토리 내에서)
mv ~/Downloads/archive ./build/2b-it-sfp
- 현재까지 진행하면, 아래와 같은 구조로 보여야 합니다.
.
├── build
│ └── 2b-it-sfp
│ ├── 2b-it-sfp.sbs. # 모델 가중치 파일
│ └── tokenizer.spm # Tokenizer 파일
├── compression
├── docs
└── util
3단계. gemma 바이너리 빌드
- (복제한 gemma.cpp 저장소 디렉토리 내에서)
cd build
- (
build/
디렉토리 내에서)cmake ..
- (동일 디렉토리 내에서)
make -j 16 gemma
- 빌드 완료 후, 실행 가능한
gemma
파일이 생성됩니다.
실행
다음과 같이 실행하였습니다.
./gemma \
--tokenizer ./2b-it-sfp/tokenizer.spm \
--compressed_weights ./2b-it-sfp/2b-it-sfp.sbs
--model 2b-it