Connect with us

NVIDIA GPU’ları ve CUDA ile LLM’lerin Eğitimini, İyileştirmesini ve Tahmin Edilmesini Ayarlamak

Yapay Zekâ Araçları 101

NVIDIA GPU’ları ve CUDA ile LLM’lerin Eğitimini, İyileştirmesini ve Tahmin Edilmesini Ayarlamak

mm
Nvidia GPU in Ubuntu Basics of GPU Parallel Computing GPU Based LLM Training Machine

Yapay zeka (AI) alanı son yıllarda önemli ilerlemeler kaydetmiştir ve bunun merkezinde güçlü bir şekilde grafik işlem birimleri (GPU’lar) ve paralel hesaplama platformu bulunmaktadır.

GPT, BERT ve daha yakın zamanda Llama, Mistral gibi modeller, insan gibi metinleri anlamak ve üretmek için chưa önce görülmemiş bir akıcılık ve tutarlılıkla donatılmıştır. Ancak, bu modelleri eğitmek için büyük miktarda veri ve hesaplama kaynağı gerektirir, bu nedenle GPU’lar ve CUDA bu girişimde vazgeçilmez araçlardır.

Bu kapsamlı rehber, Ubuntu’da bir NVIDIA GPU’sunu kurma sürecini, NVIDIA sürücüsü, CUDA Toolkit, cuDNN, PyTorch gibi temel yazılım bileşenlerinin kurulumunu kapsayacak şekilde size yol gösterecektir.

CUDA Hızlandırmalı AI Çerçevelerinin Yükselişi

GPU hızlandırmalı derin öğrenme, CUDA için verimli hesaplamayı sağlayan popüler AI çerçevelerinin geliştirilmesiyle teşvik edilmiştir. TensorFlow, PyTorch ve MXNet gibi çerçeveler, CUDA için yerleşik desteğe sahiptir, böylece GPU hızlandırmasının derin öğrenme boru hatlarına sorunsuz bir şekilde entegrasyonunu sağlar.

NVIDIA Veri Merkezi Derin Öğrenme Ürün Performans Çalışmasına göre, CUDA hızlandırmalı derin öğrenme modelleri, CPU tabanlı uygulamalara kıyasla 100 kat daha hızlı performans sağlayabilir.

NVIDIA’nın Çoklu Örnek GPU (MIG) teknolojisi, Ampere mimarisiyle tanıtılmıştır ve tek bir GPU’nun birden fazla güvenli örneğe bölünmesine olanak tanır, her biri kendi ayrılmış kaynaklarına sahiptir. Bu özellik, GPU kaynaklarının birden fazla kullanıcı veya iş yükü arasında verimli bir şekilde paylaşılmasını sağlar, böylece kullanımını en üst düzeye çıkarır ve genel maliyeti azaltır.

NVIDIA TensorRT ile LLM Tahmin Edilmesini Hızlandırmak

GPU’lar LLM’leri eğitmekte etkili olmuştur, ancak verimli tahmin edilmesi de üretim ortamlarında bu modelleri dağıtmak için eşit derecede önemlidir. NVIDIA TensorRT, bir CUDA etkin GPU上的 yüksek performanslı derin öğrenme tahmin optimizatörü ve çalışma zamanı, LLM tahmin edilmesini hızlandırmada önemli bir rol oynamaktadır.

NVIDIA’nın benchmark’lerine göre, TensorRT, büyük dil modelleri için CPU tabanlı tahminlere kıyasla 8 kata kadar daha hızlı tahmin performansı ve 5 kata kadar daha düşük toplam sahip olma maliyeti sağlayabilir.

Kurulum

AI geliştirme için, en son sürücüler ve kütüphaneleri kullanmak her zaman en iyi seçim olmayabilir. Örneğin, en son NVIDIA sürücüsü (545.xx) CUDA 12.3’ü destekler, ancak PyTorch ve diğer kütüphaneler bu sürümü henüz desteklemiyor olabilir. Bu nedenle, uyumluluğu sağlamak için sürücü sürümü 535.146.02 ile CUDA 12.2’yi kullanacağız.

Kurulum Adımları

1. NVIDIA Sürücüsünü Kurun

İlk olarak, GPU modelinizi belirleyin. Bu rehber için, NVIDIA GPU’sunu kullanacağız. NVIDIA Sürücü İndirme sayfasını ziyaret edin, GPU’nuz için uygun sürücüyü seçin ve sürücü sürümünü not edin.

Ubuntu’da önceden derlenmiş GPU paketlerini kontrol etmek için:

[kod dil=”BASH”]

sudo ubuntu-drivers list –gpgpu

[/kod]

Bilgisayarınızı yeniden başlatın ve kurulumu doğrulayın:

[kod dil=”BASH”]

nvidia-smi

[/kod]

2. CUDA Toolkit’i Kurun

CUDA Toolkit, yüksek performanslı GPU hızlandırmalı uygulamalar oluşturmak için geliştirme ortamını sağlar.

Derin öğrenme kurulumu olmayan bir ayar için:

[kod dil=”BASH”]

sudo apt install nvidia-cuda-toolkit

Ancak, BitsAndBytes ile uyumluluğu sağlamak için aşağıdaki adımları takip edeceğiz:

[kod dil=”BASH”]

git clone https://github.com/TimDettmers/bitsandbytes.git
cd bitsandbytes/
bash install_cuda.sh 122 ~/local 1

[/kod]

Kurulumu doğrulayın:

[kod dil=”BASH”]

~/local/cuda-12.2/bin/nvcc –version

[/kod]

Çevre değişkenlerini ayarlayın:

[kod dil=”BASH”]

export CUDA_HOME=/home/roguser/local/cuda-12.2/
export LD_LIBRARY_PATH=/home/roguser/local/cuda-12.2/lib64
export BNB_CUDA_VERSION=122
export CUDA_VERSION=122

[/kod]

3. cuDNN’i Kurun

cuDNN paketini NVIDIA Geliştirici web sitesinden indirin. Aşağıdaki komutla kurun:

[kod dil=”BASH”]

sudo apt install ./cudnn-local-repo-ubuntu2204-8.9.7.29_1.0-1_amd64.deb

[/kod]

Anahtar halkasını eklemek için talimatları takip edin:

[kod dil=”BASH”]

sudo cp /var/cudnn-local-repo-ubuntu2204-8.9.7.29/cudnn-local-08A7D361-keyring.gpg /usr/share/keyrings/

[/kod]

cuDNN kütüphanelerini kurun:

[kod dil=”BASH”]

sudo apt update
sudo apt install libcudnn8 libcudnn8-dev libcudnn8-samples

[/kod]

4. Python Sanal Ortamını Ayarlayın

Ubuntu 22.04, Python 3.10 ile gelir. venv’yi kurun:

[kod dil=”BASH”]

sudo apt-get install python3-pip
sudo apt install python3.10-venv

[/kod]

Sanal ortamı oluşturun ve etkinleştirin:

[kod dil=”BASH”]

cd
mkdir test-gpu
cd test-gpu
python3 -m venv venv
source venv/bin/activate

[/kod]

5. BitsAndBytes’i Kaynak Kodundan Kurun

BitsAndBytes dizinine gidin ve kaynak kodundan derleyin:

[kod dil=”BASH”]

cd ~/bitsandbytes
CUDA_HOME=/home/roguser/local/cuda-12.2/ \
LD_LIBRARY_PATH=/home/roguser/local/cuda-12.2/lib64 \
BNB_CUDA_VERSION=122 \
CUDA_VERSION=122 \
make cuda12x

CUDA_HOME=/home/roguser/local/cuda-12.2/ \
LD_LIBRARY_PATH=/home/roguser/local/cuda-12.2/lib64 \
BNB_CUDA_VERSION=122 \
CUDA_VERSION=122 \
python setup.py install

[/kod]

6. PyTorch’u Kurun

PyTorch’u aşağıdaki komutla kurun:

[kod dil=”BASH”]

pip install torch torchvision torchaudio –index-url https://download.pytorch.org/whl/cu121

[/kod]

7. Hugging Face ve Transformers’ı Kurun

Transformers ve hızlandırıcı kütüphanelerini kurun:

[kod dil=”BASH”]

pip install transformers
pip install accelerate

[/kod]

Son beş yıldır Makine Öğrenimi ve Derin Öğrenme dünyasına kendimi daldırmış bulunuyorum. Tutkum ve uzmanlığım, özellikle AI/ML odaklı 50'den fazla çeşitli yazılım mühendisliği projesine katkıda bulunmama yol açtı. Süregelen meraklılığım ayrıca beni Doğal Dil İşleme'ye doğru çekti, bu alanda daha fazla keşfetmeye hevesliyim.