로컬에서 LLM을 실행할 수 있는 llama.cpp

nebchi·2024년 4월 18일
0

LLM

목록 보기
7/11
post-thumbnail

llama.cpp

  • 로컬에서 LLM 모델을 구동할 수 있도록 c++로 구현이 된 라이브러리
  • 오늘은 파인튜닝 한 모델을 GGUF 형식으로 변환하여 모델 크기를 줄여 로컬에서 실행할 수 있도록 진행해보겠습니다.

llama.cpp 설치하기

  • 우선 github의 소스코드를 다운로드 하신 후, 리눅스의 경우, make 빌드를 진행하셔야 합니다.
  • 만약 윈도우로 진행하신다면 따로 깃허브의 가이드라인에 맞게 진행하시면 됩니다.
git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp
make LLAMA_OPENBLAS=1

파인튜닝한 모델 GGUF 변환

 python3 convert.py [model_path] #파인튜닝한 모델이 있는 경로
  • 최근에 llama.cpp이 업데이트가 되어 convert.py -> convert-hf-to-gguf.py를 사용해야 합니다.

모델 양자화 진행

 ./quantize ./기존모델경로/ggml-model-f16.gguf ./기존모델경로/저장할 모델명.gguf q5_K_M
  • 모델의 정확도를 고려하려면 q5_k_m을, 어느 정도 모델의 정확도는 확보하면서 모델의 크기를 효율적으로 줄이고 싶다면 q4_k_m을 선택하면 됩니다.
  • 그 결과 28.95GB 였던 모델이, 8.81GB로 약1/3 수준으로 줄어들게 되었고, 이제 로컬에서도 부담없이 실행이 가능합니다.

허깅페이스에 업로드하기

huggingface-cli upload 유저이름/업로드할 모델이름 ./업로드 할 모델의 경로
  • 위와 같이 진행하면 나의 허깅 페이스 계정에 설정한 모델이름으로 모델이 잘 저장이 되었음을 볼 수 있습니다.
profile
NLP Developer

0개의 댓글