Transformers documentation
Kurulum
Kurulum
Transformers, PyTorch ile çalışır. Python 3.11+ ve PyTorch 2.6+ üzerinde test edilmiştir.
Sanal ortam
uv, son derece hızlı, Rust tabanlı bir Python paket ve proje yöneticisidir ve farklı projeleri yönetmek için varsayılan olarak bir sanal ortam gerektirir; bu sayede bağımlılıklar arasındaki uyumluluk sorunlarını önler.
pip yerine doğrudan kullanılabilir, ancak pip kullanmayı tercih ediyorsanız aşağıdaki komutlardan uv öğesini kaldırın.
uv'yi yüklemek için uv kurulum belgelerine başvurun.
Transformers'ı yüklemek için sanal bir ortam oluşturun.
uv venv .env
source .env/bin/activatePython
Transformers'ı aşağıdaki komutla yükleyin.
uv, hızlı bir Rust tabanlı Python paket ve proje yöneticisidir.
NVIDIA GPU (CUDA) için PyTorch ile Transformers'ı yüklemek için PyTorch için uygun CUDA sürücülerini yükleyin.
Sisteminizin bir NVIDIA GPU algılayıp algılamadığını kontrol etmek için aşağıdaki komutu çalıştırın.
nvidia-smi
uv pip install "transformers[torch]"NVIDIA Spark cihazlarında (RTX Spark dizüstü bilgisayarı gibi) ARM64 üzerinde çalışan Transformers'ı PyTorch ile yüklemek için PyTorch'u NVIDIA PyPI dizininden yükleyin. Bu cihazlar, varsayılan PyPI dizininde veya standart PyTorch tekerlek dizininde bulunmayan NVIDIA'nın ARM64 PyTorch derlemelerini gerektirir.
Sisteminizin bir NVIDIA GPU algılayıp algılamadığını kontrol etmek için aşağıdaki komutu çalıştırın.
nvidia-smi
NVIDIA PyPI dizininden PyTorch'u yükleyin, ardından Transformers'ı yükleyin.
uv pip install torch --index-url https://pypi.nvidia.com uv pip install transformers
Transformers'ın yalnızca CPU içeren sürümünü yüklemek için aşağıdaki komutu çalıştırın.
uv pip install torch --index-url https://download.pytorch.org/whl/cpu uv pip install transformers
Intel GPU (XPU) için PyTorch ile Transformers'ı yüklemek için uygun Intel GPU (XPU) sürücülerini PyTorch için yükleyin ve Intel GPU (XPU) PyTorch index URL'sini ekleyin.
Sürücüleri yükledikten sonra, sisteminizin bir Intel GPU algılayıp algılamadığını kontrol etmek için aşağıdaki komutu çalıştırın.
xpu-smi
uv pip install "transformers[torch]" --extra-index-url https://download.pytorch.org/whl/xpuKurulumun başarılı olup olmadığını aşağıdaki komutla test edin. Sağlanan metin için bir etiket ve puan döndürmelidir.
python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('hugging face is the best'))"
[{'label': 'POSITIVE', 'score': 0.9998704791069031}]Kaynaktan kurulum
Kaynaktan kurulum, kütüphanenin kararlı sürümü yerine en son sürümünü yükler. Bu, Transformers'taki en güncel değişikliklere sahip olduğunuzdan emin olmanızı sağlar ve en yeni özelliklerle deney yapmak veya kararlı sürümde henüz resmi olarak yayınlanmamış bir hatayı düzeltmek için faydalıdır.
Dezavantajı, en son sürümün her zaman kararlı olmayabileceğidir. Herhangi bir sorunla karşılaşırsanız, mümkün olan en kısa sürede düzeltebilmemiz için lütfen bir GitHub Sorunu açın.
Aşağıdaki komutla kaynak kodundan yükleyin.
uv pip install git+https://github.com/huggingface/transformers
Yukarıdaki komutla kurulumun başarılı olup olmadığını kontrol edin. Sağlanan metin için bir etiket ve puan döndürmelidir.
python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('hugging face is the best'))"
[{'label': 'POSITIVE', 'score': 0.9998704791069031}]Düzenlenebilir kurulum
Değiştirilebilir kurulum, Transformers ile yerel geliştirme yapıyorsanız faydalıdır. Dosyaları kopyalamak yerine yerel Transformers kopyanızı Transformers deposuna bağlar. Dosyalar Python’ın içe aktarma yoluna eklenir.
git clone https://github.com/huggingface/transformers.git
cd transformers
uv pip install -e .Kullanmaya devam edebilmek için yerel Transformers klasörünü korumanız gerekir.
Aşağıdaki komutla, ana depodaki en son değişikliklerle birlikte yerel Transformers sürümünüzü güncelleyin.
cd ~/transformers/
git pullconda
conda, dil bağımsız bir paket yöneticisidir. Transformers'ı, yeni oluşturduğunuz sanal ortamda conda-forge kanalından yükleyin.
conda install conda-forge::transformers
Kurulum
Kurulumdan sonra, Transformers önbellek konumunu yapılandırabilir veya kütüphaneyi çevrimdışı kullanım için ayarlayabilirsiniz.
Önbellek dizini
from_pretrained() ile önceden eğitilmiş bir model yüklediğinizde, model Hub'dan indirilir ve yerel olarak önbelleğe alınır.
Bir commit hash'i geçirirseniz, Transformers, o commit'in dosyaları için yerel önbelleği kullanır ve her biri için (bilinen eksik dosyalar dahil) Hub'a yeniden bakmaz. Revizyon belirtilmediğinde varsayılan davranış budur.
Bir dal veya etiket geçirirseniz, Transformers, yükleme başlangıcında commit'i seçmek için Hub ile bir kez iletişim kurar ve ardından o commit'in dosyaları için önbelleği aynı şekilde kullanır.
Kabuk ortam değişkeni HF_HUB_CACHE tarafından verilen varsayılan dizin ~/.cache/huggingface/hub'dir. Windows'ta varsayılan dizin C:\Users\username\.cache\huggingface\hub'dir.
Aşağıdaki kabuk ortam değişkenlerindeki (önceliğe göre sıralanmıştır) yolu değiştirerek modeli farklı bir dizinde önbelleğe alın.
- HF_HUB_CACHE (varsayılan)
- HF_HOME
- XDG_CACHE_HOME +
/huggingface(yalnızcaHF_HOMEayarlanmamışsa)
Çevrimdışı mod
Çevrimdışı veya güvenlik duvarlı bir ortamda Transformers kullanmak için indirilen ve önbelleğe alınan dosyaların önceden hazır olması gerekir. Hub'dan bir model deposunu snapshot_download yöntemiyle indirin.
Hub'dan dosya indirme için daha fazla seçenek hakkında bilgi almak için Hub'dan dosya indirme kılavuzuna bakın. Belirli revizyonlardan dosya indirebilir, CLI üzerinden indirebilir ve bir depodan hangi dosyaların indirileceğini filtreleyebilirsiniz.
from huggingface_hub import snapshot_download
snapshot_download(repo_id="meta-llama/Llama-2-7b-hf", repo_type="model")Bir model yüklerken Hub'a HTTP çağrılarını önlemek için HF_HUB_OFFLINE=1 ortam değişkenini ayarlayın.
Yalnızca önbellekteki dosyaları yüklemek için başka bir seçenek, from_pretrained() içinde local_files_only=True değerini ayarlamaktır.
from transformers import LlamaForCausalLM
model = LlamaForCausalLM.from_pretrained("./path/to/local/directory", local_files_only=True)Çevrimdışı mod (veya local_files_only=True), daha önceki bir çevrimiçi yükleme bu eşlemeyi önbelleğe kaydettiysse, bir dalı veya etiketi yine de bir commit'e dönüştürebilir. Eşleme hiç kaydedilmediyse Transformers, istediğiniz dalı veya etiketi korur ve normal çevrimdışı yüklemeyle devam eder. Normal bir çevrimdışı yüklemeye benzer şekilde aynı önbellek isabetlerini veya eksik dosya hatalarını alırsınız.