Pedoman: Cara Menjalankan Phi-2 di Komputer dengan 32GB RAM
Pengantar
Phi-2 adalah model bahasa yang kuat yang memerlukan perangkat keras yang cukup kuat untuk dijalankan. Dalam panduan ini, kita akan menunjukkan cara menginstal dan menjalankan Phi-2 di komputer dengan 32GB RAM. Kita akan mencoba menutupi semua langkah kunci, dari persiapan lingkungan hingga menjalankan model.
Persyaratan Awal
Sebelum memulai instalasi, pastikan sistem Anda memenuhi persyaratan berikut:
- Sistem operasi: Linux (disarankan Ubuntu 20.04/22.04) atau Windows 10/11
- Prosesor: Intel i7 atau lebih baru, AMD Ryzen 7 atau lebih baru
- Memori RAM: 32GB (disarankan 64GB untuk kinerja yang lebih baik)
- Kartu grafik: NVIDIA RTX 3060 atau lebih baru (disarankan RTX 4090 untuk kinerja yang lebih baik)
- Ruang di disk: setidaknya 50GB ruang bebas
Instalasi Lingkungan
1. Instalasi Python
Phi-2 memerlukan Python 3.8 atau versi yang lebih baru. Anda dapat menginstalnya menggunakan manajer paket:
sudo apt update
sudo apt install python3.8 python3.8-venv
2. Pembuatan Lingkungan Virtual
Pembuatan lingkungan virtual akan membantu menghindari konflik dengan paket lain:
python3.8 -m venv phi2_env
source phi2_env/bin/activate
3. Instalasi Dependensi
Instal paket yang diperlukan:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install transformers accelerate bitsandbytes
Unduh Model Phi-2
Anda dapat mengunduh model Phi-2 menggunakan library Hugging Face Transformers:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "microsoft/phi-2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", load_in_8bit=True)
Konfigurasi Memori
Untuk komputer dengan 32GB RAM, disarankan menggunakan optimasi memori seperti kwantisasi 8-bit:
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map="auto",
load_in_8bit=True,
offload_folder="offload",
offload_state_dict=True,
)
Menjalankan Model
Sekarang Anda dapat menjalankan model dan menguji:
prompt = "Apa arti hidup?"
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=100)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Optimasi
1. Penggunaan DeepSpeed
DeepSpeed adalah alat untuk optimasi memori dan kinerja:
pip install deepspeed
2. Konfigurasi DeepSpeed
Buat file ds_config.json:
{
"train_batch_size": "auto",
"gradient_accumulation_steps": "auto",
"optimizer": {
"type": "AdamW",
"params": {
"lr": "auto",
"betas": "auto",
"eps": 1e-8,
"weight_decay": 0.01
}
},
"fp16": {
"enabled": "auto"
},
"zero_optimization": {
"stage": 3,
"offload_optimizer": {
"device": "cpu",
"pin_memory": true
},
"offload_param": {
"device": "cpu",
"pin_memory": true
}
}
}
3. Menjalankan dengan DeepSpeed
from transformers import AutoModelForCausalLM, AutoTokenizer
import deepspeed
model_name = "microsoft/phi-2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, export=False)
ds_config = {
"train_batch_size": "auto",
"gradient_accumulation_steps": "auto",
"optimizer": {
"type": "AdamW",
"params": {
"lr": "auto",
"betas": "auto",
"eps": 1e-8,
"weight_decay": 0.01
}
},
"fp16": {
"enabled": "auto"
},
"zero_optimization": {
"stage": 3,
"offload_optimizer": {
"device": "cpu",
"pin_memory": true
},
"offload_param": {
"device": "cpu",
"pin_memory": true
}
}
}
model_engine, optimizer, _, _ = deepspeed.initialize(
model=model,
config=ds_config
)
Ringkasan
Menjalankan Phi-2 di komputer dengan 32GB RAM memerlukan persiapan lingkungan yang tepat dan penerapan optimasi memori. Dalam panduan ini, kita telah membahas langkah-langkah kunci seperti instalasi Python, pembuatan lingkungan virtual, unduhan model, dan konfigurasi memori. Dengan langkah-langkah ini, Anda seharusnya dapat menjalankan Phi-2 dan menikmati kemampuannya yang kuat.