Tutorial llama.cpp Seri 5 - Konversi Model ke GGUF dan Kuantisasinya
Sekarang, kita akan belajar mengonversi file .safetensors ke .gguf.
Beberapa model di HuggingFace belum memiliki format .gguf.
Padahal, mungkin saja model tersebut bagus untuk keperluan tertentu.
Jika demikian, kita harus bisa mengonversinya ke .gguf sendiri.
Tidak hanya itu, kita juga akan melakukan kuantisasi pada model dengan format .gguf yang merupakan output dari konversi .safetensors ke .gguf.
Untuk itulah artikel ini ditulis.
Pada artikel ni, saya akan memberi contoh cara mengonversi file .safetensors dari model openhands.
Namun, kita harus mempersiapkan software-nya dulu.
Selain itu, saya menganggap Anda telah membaca seri Tutorial llama.cpp dari awal.
Jika belum, baca dulu...
Menginstall git lfs
git lfs diperlukan nantinya untuk mendukung proses clone dari model yang saya bahas.
Cara menginstall git lfs adalah dengan perintah ini:
sudo apt update
sudo apt install git-lfs -y
git lfs install
# untuk memverifikasinya
git lfs version
Menginstall Dependencies dari .gguf Converter
Jalankan perintah ini dengan Python 3.11.13, bisa dengan pyenv jika Anda mau:
cd llama.cpp
pip install -r requirements.txt
Kemudian, buat alias di ~/.bashrc agar nanti kita tidak repot menjalankannya dari folder manapun:
nano ~/.bashrc
Tambahkan baris ini di bagian paling bawah:
alias llama-cpp-convert='python /path/ke/llama.cpp/convert_hf_to_gguf.py'
Tutup terminal Anda lalu buka lagi.
Sekarang, pindah ke folder lain di luar folder llama.cpp, lalu clone openhands dengan perintah ini:
git clone https://huggingface.co/all-hands/openhands-lm-1.5b-v0.1
Kemudian masuk ke dalamnya:
cd openhands-lm-1.5b-v0.1
Lalu konversi ke .gguf:
llama-cpp-convert . --outfile openhands.gguf
Parameter . di sebelah kanan llama-cpp-convert tadi artinya folder saat ini. Setahu saya, saat kita mengonversi safetensors ke gguf, inputnya adalah folder repository dari model tersebut.
Setelah konversi tadi selesai, file openhands.gguf masih dalam keadaan belum dikuantisasi.
Sekarang lakukan kuantisasi:
llama-quantize ./openhands.gguf openhands-lm-1.5b-v0.1.gguf Q4_K_M
Silakan tunggu sampai selesai.
Hasilnya ada di folder yang sama saat Anda menjalankan perintah barusan.
Penutup
Bersambung ke Seri 6