English | 简体中文 | 繁體中文 | 한국어 | Español | 日本語 | हिन्दी | Русский | Português | తెలుగు | Français | Deutsch | Italiano | Tiếng Việt | العربية | اردو | বাংলা | فارسی | Română | Türkçe |
Transformers; metin, bilgisayarla görü, ses, video ve çok modlu (multimodal) modeller için, hem inference hem de eğitim amacıyla son teknoloji makine öğrenimini mümkün kılan model tanımlama framework'ü olarak çalışır.
Model tanımını merkezileştirir; böylece bu tanım tüm ekosistem genelinde ortak kabul görür. transformers, framework'ler arasındaki pivot noktasıdır: bir model tanımı destekleniyorsa, eğitim framework'lerinin (Axolotl, Unsloth, DeepSpeed, FSDP, PyTorch-Lightning, ...), inference motorlarının (vLLM, SGLang, TGI, ...) ve transformers'taki model tanımından yararlanan komşu modelleme kütüphanelerinin (llama.cpp, mlx, ...) çoğuyla uyumlu olacaktır.
Yeni son teknoloji modelleri desteklemeye ve model tanımlarını basit, özelleştirilebilir ve verimli hâle getirerek kullanımlarını demokratikleştirmeye yardımcı olmayı taahhüt ediyoruz.
Hugging Face Hub üzerinde kullanabileceğiniz 1M'den fazla Transformers model kontrol noktası (checkpoint) bulunmaktadır.
Bir model bulmak ve hemen kullanmaya başlamak için bugün Hub'ı keşfedin.
Transformers, Python 3.10+ ve PyTorch 2.4+ ile çalışır.
venv veya hızlı, Rust tabanlı bir Python paket ve proje yöneticisi olan uv ile bir sanal ortam (virtual environment) oluşturup etkinleştirin.
# venv
python -m venv .my-env
source .my-env/bin/activate
# uv
uv venv .my-env
source .my-env/bin/activateTransformers'ı sanal ortamınıza kurun.
# pip
pip install "transformers[torch]"
# uv
uv pip install "transformers[torch]"Kütüphanedeki en son değişiklikleri istiyorsanız veya katkıda bulunmak istiyorsanız Transformers'ı kaynaktan kurun. Ancak en son sürüm kararlı olmayabilir. Bir hatayla karşılaşırsanız çekinmeden bir issue açabilirsiniz.
git clone https://github.com/huggingface/transformers.git
cd transformers
# pip
pip install '.[torch]'
# uv
uv pip install '.[torch]'Pipeline API'siyle Transformers'ı hemen kullanmaya başlayın. Pipeline; metin, ses, görü ve çok modlu görevleri destekleyen üst seviye (high-level) bir inference sınıfıdır. Girdinin ön işlenmesini üstlenir ve uygun çıktıyı döndürür.
Bir pipeline örneği oluşturun ve metin üretimi için kullanılacak modeli belirtin. Model indirilir ve önbelleğe alınır; böylece tekrar tekrar kolayca kullanabilirsiniz. Son olarak, modeli yönlendirmek için biraz metin verin.
from transformers import pipeline
pipeline = pipeline(task="text-generation", model="Qwen/Qwen2.5-1.5B")
pipeline("the secret to baking a really good cake is ")
[{'generated_text': 'the secret to baking a really good cake is 1) to use the right ingredients and 2) to follow the recipe exactly. the recipe for the cake is as follows: 1 cup of sugar, 1 cup of flour, 1 cup of milk, 1 cup of butter, 1 cup of eggs, 1 cup of chocolate chips. if you want to make 2 cakes, how much sugar do you need? To make 2 cakes, you will need 2 cups of sugar.'}]Bir modelle sohbet etmek için kullanım kalıbı aynıdır. Tek fark, sizinle sistem arasında bir sohbet geçmişi (yani Pipeline'a verilecek girdi) oluşturmanız gerektiğidir.
Tip
transformers serve çalıştığı sürece bir modelle doğrudan komut satırından da sohbet edebilirsiniz.
transformers chat Qwen/Qwen2.5-0.5B-Instructimport torch
from transformers import pipeline
chat = [
{"role": "system", "content": "You are a sassy, wise-cracking robot as imagined by Hollywood circa 1986."},
{"role": "user", "content": "Hey, can you tell me any fun things to do in New York?"}
]
pipeline = pipeline(task="text-generation", model="meta-llama/Meta-Llama-3-8B-Instruct", dtype=torch.bfloat16, device_map="auto")
response = pipeline(chat, max_new_tokens=512)
print(response[0]["generated_text"][-1]["content"])Pipeline'ın farklı modaliteler ve görevler için nasıl çalıştığını görmek için aşağıdaki örnekleri genişletin.
Otomatik konuşma tanıma
from transformers import pipeline
pipeline = pipeline(task="automatic-speech-recognition", model="openai/whisper-large-v3")
pipeline("https://huggingface.co/datasets/Narsil/asr_dummy/resolve/main/mlk.flac")
{'text': ' I have a dream that one day this nation will rise up and live out the true meaning of its creed.'}Görüntü sınıflandırma
from transformers import pipeline
pipeline = pipeline(task="image-classification", model="facebook/dinov2-small-imagenet1k-1-layer")
pipeline("https://huggingface.co/datasets/Narsil/image_dummy/raw/main/parrots.png")
[{'label': 'macaw', 'score': 0.997848391532898},
{'label': 'sulphur-crested cockatoo, Kakatoe galerita, Cacatua galerita',
'score': 0.0016551691805943847},
{'label': 'lorikeet', 'score': 0.00018523589824326336},
{'label': 'African grey, African gray, Psittacus erithacus',
'score': 7.85409429227002e-05},
{'label': 'quail', 'score': 5.502637941390276e-05}]Görsel soru yanıtlama
from transformers import pipeline
pipeline = pipeline(task="visual-question-answering", model="Salesforce/blip-vqa-base")
pipeline(
image="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/tasks/idefics-few-shot.jpg",
question="What is in the image?",
)
[{'answer': 'statue of liberty'}]-
Kullanımı kolay son teknoloji modeller:
- Doğal dil anlama ve üretme, bilgisayarla görü, ses, video ve çok modlu görevlerde yüksek performans.
- Araştırmacılar, mühendisler ve geliştiriciler için düşük giriş engeli.
- Kullanıcıya yönelik az sayıda soyutlama ve öğrenilmesi gereken yalnızca üç sınıf.
- Tüm önceden eğitilmiş modellerimizi kullanmak için birleşik bir API.
-
Daha düşük hesaplama maliyeti, daha küçük karbon ayak izi:
- Sıfırdan eğitmek yerine eğitilmiş modelleri paylaşın.
- Hesaplama süresini ve üretim maliyetlerini azaltın.
- Tüm modaliteler genelinde 1M'den fazla önceden eğitilmiş kontrol noktasına sahip yüzlerce model mimarisi.
-
Bir modelin yaşam döngüsünün her aşaması için doğru framework'ü seçin:
- Son teknoloji modelleri 3 satır kodla eğitin.
- Tek bir modeli PyTorch/JAX/TF2.0 framework'leri arasında dilediğiniz gibi taşıyın.
- Eğitim, değerlendirme ve üretim için doğru framework'ü seçin.
-
Bir modeli veya örneği ihtiyaçlarınıza göre kolayca özelleştirin:
- Her mimari için, özgün yazarların yayımladığı sonuçları yeniden üretmek üzere örnekler sunuyoruz.
- Modelin iç yapıları mümkün olduğunca tutarlı biçimde açığa çıkarılmıştır.
- Model dosyaları, hızlı denemeler için kütüphaneden bağımsız olarak kullanılabilir.
- Bu kütüphane, sinir ağları için yapı taşlarından oluşan modüler bir araç kutusu değildir. Model dosyalarındaki kod, araştırmacıların ek soyutlamalara/dosyalara dalmadan her bir model üzerinde hızlıca yineleme yapabilmesi için kasıtlı olarak ek soyutlamalarla yeniden düzenlenmemiştir.
- Eğitim API'si, Transformers tarafından sağlanan PyTorch modelleriyle çalışmak üzere optimize edilmiştir. Genel amaçlı makine öğrenimi döngüleri için Accelerate gibi başka bir kütüphane kullanmalısınız.
- Örnek kodlar yalnızca örnektir. Sizin özel kullanım durumunuzda doğrudan çalışmayabilir ve çalışması için kodu uyarlamanız gerekebilir.
Transformers, önceden eğitilmiş modelleri kullanmak için bir araç takımından çok daha fazlasıdır; etrafında ve Hugging Face Hub üzerinde kurulan bir proje topluluğudur. Transformers'ın; geliştiricilerin, araştırmacıların, öğrencilerin, profesörlerin, mühendislerin ve diğer herkesin hayalindeki projeleri hayata geçirmesine olanak tanımasını istiyoruz.
Transformers'ın 100.000 yıldızını kutlamak için, Transformers ile inşa edilmiş 100 inanılmaz projeyi listeleyen awesome-transformers sayfasıyla topluluğu ön plana çıkarmak istedik.
Bir projeye sahipseniz veya kullandığınız bir projenin listede yer alması gerektiğini düşünüyorsanız, eklemek için lütfen bir PR açın!
Modellerimizin çoğunu doğrudan Hub model sayfalarında test edebilirsiniz.
Çeşitli kullanım durumlarına yönelik birkaç örnek modeli görmek için aşağıdaki her modaliteyi genişletin.
Ses
Bilgisayarla görü
Çok modlu (Multimodal)
- Voxtral, Audio Flamingo ile sesten veya metinden metne
- LayoutLMv3 ile belge soru yanıtlama
- Qwen-VL ile görüntüden veya metinden metne
- BLIP-2 ile görüntü altyazılama
- GOT-OCR2 ile OCR tabanlı belge anlama
- TAPAS ile tablo soru yanıtlama
- Emu3 ile birleşik çok modlu anlama ve üretim
- Llava-OneVision ile görüntüden metne
- Llava ile görsel soru yanıtlama
- Kosmos-2 ile metinsel ifadeye dayalı görsel segmentasyon
NLP
🤗 Transformers kütüphanesi için alıntı yapabileceğiniz bir makalemiz bulunmaktadır:
@inproceedings{wolf-etal-2020-transformers,
title = "Transformers: State-of-the-Art Natural Language Processing",
author = "Thomas Wolf and Lysandre Debut and Victor Sanh and Julien Chaumond and Clement Delangue and Anthony Moi and Pierric Cistac and Tim Rault and Rémi Louf and Morgan Funtowicz and Joe Davison and Sam Shleifer and Patrick von Platen and Clara Ma and Yacine Jernite and Julien Plu and Canwen Xu and Teven Le Scao and Sylvain Gugger and Mariama Drame and Quentin Lhoest and Alexander M. Rush",
booktitle = "Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing: System Demonstrations",
month = oct,
year = "2020",
address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2020.emnlp-demos.6/",
pages = "38--45"
}

