Inference Unlimited

Kılavuz: 32GB RAM'lı Bir Bilgisayarda Phi-2 Nasıl Çalıştırılır

Giriş

Phi-2, güçlü bir dil modelidir ve çalıştırılması için yeterli donanım gerektirir. Bu kılavuzda, 32GB RAM'lı bir bilgisayarda Phi-2'yi nasıl yükleyip çalıştırabileceğinizi adım adım anlatacağız. Ortam hazırlamadan modeli çalıştırmana kadar tüm temel adımları kapsayacağız.

Ön Koşullar

Yüklemeye başlamadan önce sistemin aşağıdaki gereksinimleri karşıladığını doğrulayın:

Ortam Kurulumu

1. Python Yükleme

Phi-2, Python 3.8 veya daha yeni bir sürüm gerektirir. Paket yöneticisi kullanarak yükleyebilirsiniz:

sudo apt update
sudo apt install python3.8 python3.8-venv

2. Sanal Ortam Oluşturma

Sanal ortam oluşturmak, diğer paketlerle çatışmaları önlemenize yardımcı olacaktır:

python3.8 -m venv phi2_env
source phi2_env/bin/activate

3. Bağımlılıklar Yükleme

Gerekli paketleri yükleyin:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install transformers accelerate bitsandbytes

Phi-2 Modelinin İndirilmesi

Phi-2 modelini Hugging Face Transformers kütüphanesi kullanarak indirebilirsiniz:

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)

Bellek Yapılandırması

32GB RAM'lı bir bilgisayar için, bellek optimizasyonları önerilir, örneğin 8-bit kuantizasyon:

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    device_map="auto",
    load_in_8bit=True,
    offload_folder="offload",
    offload_state_dict=True,
)

Modelin Çalıştırılması

Şimdi modeli çalıştırabilir ve test edebilirsiniz:

prompt = "Hayatın anlamı nedir?"
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))

Optimizasyonlar

1. DeepSpeed Kullanımı

DeepSpeed, bellek ve performans optimizasyonu için bir araçtır:

pip install deepspeed

2. DeepSpeed Yapılandırması

ds_config.json adlı bir dosya oluşturun:

{
    "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. DeepSpeed ile Çalıştırma

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
)

Özet

32GB RAM'lı bir bilgisayarda Phi-2'yi çalıştırmanın gerektirdiği ortam hazırlığı ve bellek optimizasyonlarını içerir. Bu kılavuzda, Python yükleme, sanal ortam oluşturma, model indirme ve bellek yapılandırması gibi temel adımları ele aldık. Bu adımları takip ederek Phi-2'yi çalıştırabilir ve güçlü yeteneklerinden faydalanabilirsiniz.

Język: TR | Wyświetlenia: 11

← Powrót do listy artykułów