Kurs
Büyük dil modellerinin (LLM’ler) yükselişi, Doğal Dil İşleme (NLP) alanında belirleyici bir eğilim oldu ve çeşitli uygulamalarda genisçe benimsenmelerine yol açtı. Ancak bu ilerleme çoğu zaman dışlayıcıydı; kaynak açısından zengin kuruluşlar tarafından geliştirilen çoğu LLM kamuya erişilemez durumda kaldı.
Bu dışlayıcılık önemli bir soruyu gündeme getiriyor: Bu güçlü dil modellerine erişimi demokratikleştirmenin bir yolu olsaydı ne olurdu? Tam da burada BLOOM devreye giriyor.
Bu makale, BLOOM’un ne olduğuna ilişkin tam bir genel bakış sunuyor; önce ortaya çıkışına dair daha fazla ayrıntı sağlıyor. Ardından BLOOM’un teknik özelliklerini ve nasıl kullanılacağını ele alıp sınırlamalarını ve etik boyutlarını vurguluyor.
BLOOM nedir?
BigScience Large Open-science Open-access Multilingual Language Model (kısaca BLOOM), dil modeli teknolojisinin demokratikleştirilmesinde önemli bir ilerlemeyi temsil eder.
ABD’den de önemli sayıda katılımcının yer aldığı 39 ülkeden 1200’den fazla kişinin işbirliğiyle geliştirilen BLOOM, küresel bir çabanın ürünüdür. Hugging Face ve Fransız NLP topluluğuyla işbirliği içinde BigScience tarafından koordine edilen bu proje, coğrafi ve kurumsal sınırları aşar.
Açık kaynaklı ve yalnızca çözücü (decoder-only) bir dönüştürücü (transformer) modelidir; 176 milyar parametreli bu model, 59 dilde yüzlerce kaynaktan oluşan ROOTS derlemi üzerinde eğitilmiştir: 46 konuşma dili ve 13 programlama dili.
Aşağıda eğitim dillerinin dağılımına ilişkin pasta grafiği yer almaktadır.

Eğitim dillerinin dağılımı (kaynak)
Modelin çeşitli karşılaştırma testlerinde kayda değer bir performans sergilediği ve çok görevli istemle (prompt) ince ayardan sonra daha iyi sonuçlara ulaştığı gözlendi.
Proje, CNRS ve GENCI gibi Fransız araştırma kurumlarının sağladığı büyük bir hesaplama hibesiyle desteklenen ve Paris’teki Jean Zay süper bilgisayarında 117 günlük (11 Mart - 6 Temmuz) bir eğitim süreciyle sonuçlandı.
BLOOM yalnızca bir teknoloji harikası değil, aynı zamanda uluslararası işbirliğinin ve kolektif bilimsel çabanın gücünün bir sembolüdür.
BLOOM model mimarisi
Şimdi, birden fazla bileşeni içeren BLOOM’un mimarisini daha ayrıntılı bir biçimde açıklayalım.

Bloom mimarisi (kaynak)
Makaledeki ayrıntılara göre BLOOM modelinin mimarisi birkaç dikkat çekici unsuru içerir:
- Tasarım Yöntemi: Ekip, herkese açık araçlar ve kod tabanları tarafından desteklenen ölçeklenebilir model ailelerine odaklandı ve bileşenleri ile hiperparametreleri optimize etmek için daha küçük modeller üzerinde ablasyon deneyleri gerçekleştirdi. Sıfır-atım (zero-shot) genelleme, mimari kararları değerlendirmek için temel bir metriktir.
- Mimari ve Öne Eğitim Amacı: BLOOM, özellikle nedensel, yalnızca çözücü bir Transformer mimaresine dayanır. Bu yaklaşım, kodlayıcı-çözücü ve diğer yalnızca çözücü mimarilere kıyasla sıfır-atım genelleme yetenekleri için en etkili seçenek olarak doğrulandı.
- Modelleme Ayrıntıları:
- ALiBi Konumsal Gömülemeler: ALiBi, geleneksel konumsal gömülemeler yerine tercih edildi; çünkü anahtarlarla sorgular arasındaki mesafeye bağlı olarak dikkat puanlarını doğrudan zayıflatır. Bu da daha pürüzsüz eğitime ve daha iyi performansa yol açtı.
- Gömme Katmanında Katman Normalleştirme: Gömme katmanının hemen ardından ek bir katman normalleştirme dahil edilerek eğitim kararlılığı artırıldı. Bu karar, nihai eğitimde float16’dan daha dengeli olan bfloat16 kullanımından da kısmen etkilenmiştir.
Bu bileşenler, ekibin modeli performans ve kararlılık için optimize ederken yenilikle kanıtlanmış teknikler arasında denge kurma odağını yansıtır.
BLOOM’un mimari bileşenlerine ek olarak, iki ilişkili bileşeni daha anlayalım: veri önişleme ve istemli veri kümele ri.
- Veri önişleme: Özellikle daha yüksek mahremiyet riskine sahip kaynaklar için yinelenenlerin kaldırılması ve gizlilik içeriklerinin ayıklanması gibi kritik adımları içeriyordu.
- İstemli veri kümele ri: BLOOM, güçlü sıfır-atım görev genelleme yetenekleri gösteren çok görevli istemle ince ayar yaklaşımını kullanır.
BLOOM Nasıl Kullanılır
Bu örnekte BLOOM’u yaratıcı bir hikâye oluşturmak için kullanacağız. Sağlanan kod, ortamı kurmak, modeli hazırlamak ve verilen bir isteme dayalı olarak metin üretmek üzerine yapılandırılmıştır. İlgili kaynak kodu GitHub’da mevcuttur ve amrrs’in eğiticisinden büyük ölçüde esinlenilmiştir.
Çalışma alanını yapılandırma
BLOOM modeli kaynak açısından yoğun olduğundan, çalışma alanının doğru yapılandırılması kritik önem taşır; temel adımlar aşağıda açıklanmıştır.
Öncelikle, transformer kütüphanesi BLOOM modeli ve genel olarak dönüştürücü tabanlı diğer modellerle çalışmak için arayüzler sağlamak için kullanılır.
!pip install transformers -q
nvidia-smi kullanarak, modeli çalıştırmak için gerekli hesaplama kaynaklarına sahip olduğumuzu doğrulamak üzere mevcut GPU’nun özelliklerini kontrol ederiz
!nvidia-smi

transformers ve torch’tan gerekli modülleri içe aktarırız. torch, GPU hızlandırmasından yararlanmak için varsayılan tensör türünü ayarlamakta kullanılır.
Ardından, bir GPU kullandığımız için, torch kütüphanesi GPU kullanımını sağlamak üzere set_default_tensor_type işleviyle yapılandırılır.
from transformers import AutoModelForCausalLM, AutoTokenizer, set_seed
import torch
torch.set_default_tensor_type(torch.cuda.FloatTensor)
BLOOM modelini kullanma
Kullanılan hedef model, 7 milyar parametreli BLOOM modelidir ve BigScience’ın Hubbing Face deposunda modelin benzersiz tanımlayıcısı olan bigscience/bloom-1b7 altında erişilebilirdir.
model_ID = "bigscience/bloom-1b7"
Sıradan, Hazır Eğitimli BLOOM modelini ve belirteçleyicisini Hugging Face’ten yükler ve set_seed işlevini herhangi bir sayıyla kullanarak tekrarlanabilirlik için tohum değerini ayarlarız. Sayının değeri önemli değil, ancak kesirli olmayan bir değer kullanmak önemlidir.
Gelişmiş yapay zekâ uygulamaları oluşturmaya yönelik açık kaynaklı bir Python çatısı olan LangChain ile Büyük Dil Modellerinin keşfedilmemiş potansiyelleri hakkında daha fazla bilgi edinmek için, LangChain ile LLM Uygulamaları Nasıl Oluşturulur eğiticimiz doğru rehberdir.
Ayrıca, bir veri mühendisiyseniz ve veri uygulamaları için LangChain kullanımına ilgi duyuyorsanız, Veri Mühendisliği ve Veri Uygulamaları için LangChain’e Giriş başlıklı makalemiz, LangChain ile neler yapabileceğinize genel bir bakış sağlar; LangChain’in çözdüğü sorunlar ve veri kullanım örnekleri dâhil.
model = AutoModelForCausalLM.from_pretrained(model_ID, use_cache=True)
tokenizer = AutoTokenizer.from_pretrained(model_ID)
set_seed(2024)
Artık, oluşturulacak hikâyenin başlığını ve istemi tanımlayabiliriz.
story_title = 'An Unexpected Journey Through Time'
prompt = f'This is a creative story about {story_title}.\n'
Son olarak, istemi belirteçleyip uygun model aygıtına eşleyerek çözümlemeden sonra modelin sonucunu üretiriz.
input_ids = tokenizer(prompt, return_tensors="pt").to(0)
sample = model.generate(**input_ids,
max_length=200, top_k=1,
temperature=0, repetition_penalty=2.0)
generated_story = tokenizer.decode(sample[0], skip_special_tokens=True)
Nihai sonuç, daha iyi okunabilirlik için satır başına en fazla 80 karakter olacak şekilde textwrap modülü kullanılarak biçimlendirilir.
import textwrap
wrapper = textwrap.TextWrapper(width=80)
formated_story = wrapper.fill(text=generated_story)
print(formated_story)
Nihai sonuç aşağıda verilmiştir:

BLOOM modeli kullanılarak oluşturulan hikâye
Birkaç satır kodla, BLOOM modelini kullanarak anlamlı içerik üretebildik.
PyTorch kullanarak büyük dil modellerini eğitme sürecini kurulumdan son uygulamaya kadar ustalıkla öğrenmek istiyorsanız, PyTorch ile Bir LLM Nasıl Eğitilir eğiticimiz bu hedefe ulaşmanız için kapsamlı bir rehber sunar.
Amaçlanan ve Kapsam Dışı Kullanmalar
Tüm teknolojik ilerlemelerde olduğu gibi, BLOOM’un da uygun ve uygunsuz uygulama alanları vardır. Bu bölüm, yeteneklerinin en iyi nasıl değerlendirileceğini ve nerelerde dikkatli olunması gerektiğini vurgulayarak uygun ve uygun olmayan kullanım senaryolarını ele alır. Bu sınırları anlamak, BLOOM’un potansiyelinden sorumlu ve etkin şekilde yararlanmak için kritik önem taşır.
BLOOM’un Amaçlanan Kullanımları
BLOOM, dil işleme ve üretim sınırlarını zorlamak için tasarlanmış çok yönlü bir araçtır. Amaçlanan kullanımları, geniş dil yeteneklerinden yararlanan çeşitli alanlara yayılır.
- Çok Dilli İçerik Üretimi: 59 dilde yetkin olan BLOOM, çeşitli ve kapsayıcı içerikler oluşturmada öne çıkar. Bu yetenek, dil kapsayıcılığının kritik olduğu küresel iletişim, eğitim ve medyada özellikle değerlidir.
- Kodlama ve Yazılım Geliştirme: BLOOM’un programlama dilleri üzerine eğitimi, onu yazılım geliştirmede değerli bir varlık kılar. Kod üretimi, hata ayıklama gibi görevlerde yardımcı olabilir ve yeni programcılar için eğitici bir araç görebilir.
- Araştırma ve Akademi: Akademik çevrelerde BLOOM, dil kalıpları, yapay zekâ davranışları ve fazlasına dair içgörüler sunan güçlü bir kaynak olarak hizmet eder.
BLOOM’un kapsam dışı kullanımları
BLOOM’un sınırlarını anlamak, etik ve pratik uygulamasını sağlamak için çok önemlidir. Bazı kullanım senaryoları, öncelikle etik hususlar veya teknik kısıtlar nedeniyle BLOOM LLM’in amacının dışında kalır.
- Hassas Veri İşleme: BLOOM, hassas kişisel veriler veya gizli bilgiler işlemek için tasarlanmamıştır. Gizlilik ihlalleri ya da bu tür verilerin kötüye kullanım potansiyeli, bu amaçlar için uygun olmadığını gösterir.
- Çok Kritik Karar Alma: BLOOM’un tıbbi tanı veya hukuki kararlar gibi kritik doğruluk gerektiren senaryolarda kullanılması tavsiye edilmez. Modelin, çoğu büyük dil modelinde olduğu gibi, sınırları bu hassas alanlarda hatalı veya yanıltıcı sonuçlara yol açabilir.
- İnsan Etkileşiminin Yerine Geçme: BLOOM, özellikle danışmanlık, diplomasi veya kişiselleştirilmiş öğretim gibi duygusal zekâ gerektiren alanlarda insan etkileşiminin yerine geçecek bir araç olarak görülmemelidir. Model, insan etkileşiminin sağladığı incelikli anlayış ve empatiye sahip değildir.
Doğrudan ve Dolaylı Kullanıcılar
Gelişmiş bir Büyük Dil Modeli (LLM) olan BLOOM, çeşitli kullanıcı gruplarına uzanan geniş bir fayda yelpazesi sunar. Yetenekleri yalnızca belirli profesyonelleri ve sektörleri doğrudan etkilemekle kalmaz, aynı zamanda daha geniş bir paydaş kitlesini dolaylı olarak etkiler.
BLOOM’un kullanıcılarına dair bu inceleme, farklı grupların bu yenilikçi aracı nasıl kullandığını ve ondan nasıl etkilendiğini vurgulamayı amaçlar.
BLOOM’un doğrudan ve dolaylı kullanıcılarını anlarsak, modelin geniş etkisini ve teknolojiyi ve toplumu ilerletmeye nasıl farklı şekillerde katki sağladığını takdir edebiliriz.
BLOOM’un Doğrudan Kullanıcıları
- Geliştiriciler ve Veri Bilimciler: Yazılım geliştirme ve veri bilimi profesyonelleri temel kullanıcılardır. BLOOM’u kodlama yardımı, hata ayıklama ve veri analizi gibi görevlerde kullanırlar.
- Araştırmacılar ve Akademisyenler: Bu grup; dilbilimciler, yapay zekâ araştırmacıları ve BLOOM’u dil çalışmaları, yapay zekâ davranış analizi ve NLP araştırmalarını ilerletme için kullanan akademisyenleri kapsar.
- İçerik Üreticileri ve Çevirmenler: Yazarlar, gazeteciler ve çevirmenler BLOOM’u farklı dillerde içerik üretmek ve çevirmek için kullanarak verimliliklerini ve erişimlerini artırır.
BLOOM’un Dolaylı Kullanıcıları
- İşletmeler ve Organizasyonlar: Çeşitli sektörlerdeki şirketler, gelişmiş yapay zekâ destekli hizmetler, iyileştirilmiş müşteri etkileşimi ve verimli veri işleme yoluyla BLOOM’dan dolaylı olarak faydalanır.
- Eğitim Kurumları: Öğrenciler ve eğitmenler, öğrenme ve öğretim için dil işleme yeteneklerini içeren eğitim araçları ve kaynaklar aracılığıyla BLOOM’un faydalarını dolaylı olarak deneyimler.
- Genel Kamuoyu: Daha iyi teknoloji deneyimleri, çok dilli içeriğe erişim ve gelişmiş yazılım uygulamaları yoluyla daha geniş topluluk BLOOM’un dolaylı faydalanıcısıdır.
Etik Hususlar ve Sınırlamalar
BLOOM’un yaygınlaştırılması, diğer tüm Büyük Dil Modellerinde (LLM) olduğu gibi, bir dizi etik hususu ve sınırı beraberinde getirir. Bu yönleri anlamak, sorumlu kullanım için ve teknolojinin daha genis etkisini öngörmek için çok önemlidir. Bu bölüm, BLOOM kullanımıyla ilişkili etik çıkarımları, riskleri ve doğası gereği mevcut sınırları ele alır.
Etik hususlar
- Veri Önyargısı ve Adalet: Birincil etik endişelerden biri, BLOOM’un eğitim verilerinde bulunan önyargıları sürdürme veya artırma potansiyelidir. Bu durum, çıktıların adaletini ve tarafsızlığını etkileyebilir ve özellikle tarafsız işlemenin kritik olduğu senaryolarda etik zorluklar yaratabilir.
- Gizlilik Endişeleri: BLOOM, açıkça hassas kişisel bilgileri işlemek üzerine tasarlanmamış olsa da, eğitim verilerinin genişliği, bu tür bilgilerin farkında olmadan dahil edilmiş olabileceğini gösterir. BLOOM’un hassas verileri temel alan veya açığa çıkaran çıktılar üretmesi halinde gizlilik ihlali riski vardır.
Kullanımla ilgili riskler
- Yanlış Bilgi ve Manipülasyon: BLOOM’un gelişmiş yetenekleri, yanıltıcı bilgi veya manipülatif içerik üretmek için kötüye kullanılabilir; bu da medya, siyaset ve kamuoyu gibi alanlarda önemli bir risk oluşturur.
- Bağımlılık ve Beceride Aşınma: İçerik üretimi veya çeviri gibi görevlerde BLOOM’a aşırı güvenmek, insanlarda bu becerilerin aşınmasına ve yaraticılık ile dil yeteneklerinin zarar görmesine yol açabilir.
BLOOM’un sınırları
- Bağlamsal Anlayış: Tüm sofistikeliğine rağmen BLOOM, bazı görevler için gerekli derin bağlamsal ve kültürel anlayıştan yoksun kalabilir; bu da ince ayar gerektiren durumlarda doğruluğu düşük veya uygunsuz çıktılara yol açabilir.
- Dilin Evrimsel Doğası: BLOOM’un durağan bir veri kümesi üzerinde eğitilmiş olması, yeni argo, terimler veya kültürel referanslar dâhil dilin evrimine ayak uyduramayabileceği anlamına gelir.
Gerçek dünya etkisi ve tartışmalar
BLOOM’un geliştirilmesi ve yayınlanması, etkisi ve yol açtığı tartışmalar açısından gerçek dünyada önemli yansımalara sahiptir. Bu bölüm, BLOOM araştırma makalesinden elde edilen bulgulara dayanarak bu yönleri tartışır.
BLOOM’un gerçek dünya etkisi
- Yapay Zekâ Teknolojisinin Demokratikleşmesi: BLOOM, yapay zekâ teknolojisinin demokratikleşmesine doğru bir adımı temsil eder. 38 ülkeden 1200’den fazla kişinin işbirliğiyle yürütülen BigScience tarafından geliştirilen BLOOM, 59 dili kapsayan çeşitli bir derlem üzerinde eğitilmiş, açık erişimli bir modeldir. Bu geniş katılım ve erişilebilirlik, büyük dil modeli gelişiminde genellikle görülen dışlayıcılıktan bir sapmayı işaret eder.
- Çeşitlilik ve Kapsayıcılık: Projenin dilsel, coğrafi ve bilimsel çeşitlilik konusundaki taahhüdü dikkat çekicidir. BLOOM’u eğitmek için kullanılan ROOTS derlemi, çok sayıda dili ve programlama dilini kapsar; bu da yapay zekâ gelişiminde kapsayıcılık ve temsiliyet vurgusunu yansıtır
Tartışmalar ve zorluklar
- Toplumsal ve Etik Endişeler: BLOOM’un geliştirilmesi, büyük dil modeli gelişimindeki toplumsal sınırlamaları ve etik zorlukları kabul eder. BigScience çalıştayı, projeyi yönlendirmek için kapsayıcılık, çeşitlilik, açıklık, tekrarlanabilirlik ve sorumluluğu vurgulayan bir Etik Şart kullanmıştır. Bu ilkeler, veri kümesi seçiminden model değerlendirmesine kadar projenin çeşitli yönlerine entegre edilmiştir.
- Çevresel ve Kaynak Endişeleri: BLOOM gibi büyük dil modellerinin geliştirilmesi, gerekli önemli hesaplama kaynakları nedeniyle çevresel endişelere yol açmıştır. Genellikle yalnızca iyi kaynaklara sahip kuruluşların karşılayabildiği bu modellerin eğitimi, enerji tüketimi ve karbon ayak izi açısından etkiler taşır
BLOOM Bugün Hâlâ Geçerli mi?
Hızlı ilerleyen Yapay Zekâ (AI) dünyasında, BLOOM gibi Büyük Dil Modellerinin (LLM) güncelliği sürekli tartışılan bir konudur.
Uluslararası bir araştırmacılar ekibi tarafından geliştirilen BLOOM, dil işlemede kayda değer bir sıçramaydı. Ancak yapay zekâ ortamı sürekli evriliyor; yeni modeller ortaya çıkıyor ve odağı değiştiriyor.
Bakalım BLOOM bu rekabetçi alanda hâlâ yerini koruyor mu.
- Odak Kayması: Başlangıçta büyük bir atılım olan BLOOM, şimdi daha yeni modellerin gölgesinde kalmaktadır. ChatGPT gibi sohbet odaklı yapay zekâlardan farklı olarak BLOOM, etkileşimli iletişimden ziyade içerik tamamlama için özelleştirilmiştir.
- Donanım Kısıtları: BLOOM’un yüsek donanım gereksinimleri, çeşitli uygulamalara daha kolay entegre edilebilen GPT-3.5 ve GPT-4 gibi daha kullanıcı dostu LLM’lere kıyasla erişilebilirliğini sınırlıyor.
- Artan Rekabet: LLaMA gibi modellerin ve Alpaca gibi araçların ortaya çıkışı, kaynak gereksinimlerini azaltarak LLM’lere erişimi demokratikleştirdi; böylece çekiciliğini ve kullanım alanlarını genişletti.
- Çok Dilli Yetenek: BLOOM’un ayırt edici özelliği, birden çok dilde yoğun eğitimidir; bu da onu çeviri ve çok dilli içerik oluşturma için değerli bir kaynak kılar.
Sonuç
Bu makale, Büyük Dil Modellerinin gelişen alanına önemli bir katki olan BLOOM projesine genel bir bakış sundu.
BLOOM’un gelişimini inceledik; teknik özelliklerini ve oluşumunun arkasındaki işbirliğini vurguladık. Makale ayrıca BLOOM’a erişim ve onu etkin kullanma konusunda bir rehber işlevi gördü; uygun kullanımlarını ve sınırlarını öne çıkardı.
Ayrıca, BLOOM AI projesinin etik yansımalarını ve gerçek dünya etkisini ele aldı; günümüz yapay zekâ manzarasındaki karşılanışını ve güncelliğini değerlendirdi. İster yapay zekâyla doğrudan ilgileniyor olun ister bir meraklı olun, BLOOM’a dair bu inceleme, büyük dil modellerinin karmaşık dünyasında yolunuzu bulmanıza yardımcı olacak temel bakış açıları sunar.
Gelişmiş dil modelleriyle daha derin bir etkileşim kurmak isteyenler için, Large Language Models (LLMs) Concepts başlıklı ek kursumuz, LLM uygulamaları, eğitim yöntemleri, etik hususlar ve en güncel araştırmaları kapsayan kavramsal içerikle LLM’lerin tam potansiyelini keşfetmeye yönelik bir yol sunar.
Bilgisini paylaşmaktan ve başkalarına katkı sunmaktan keyif alan, çok yönlü bir veri bilimci olan Zoumana, YouTube’da içerik üretiyor ve Medium’da önde gelen teknoloji yazarları arasında yer alıyor. Konuşmaktan, kod yazmaktan ve öğretmekten büyük zevk alıyor. Zoumana’nın iki yüksek lisans derecesi bulunuyor: İlki Fransa, Paris’te Makine Öğrenmesi odaklı Bilgisayar Bilimleri; ikincisi ise ABD’de Texas Tech University’den Veri Bilimi. Kariyerine Fransa’da Groupe OPEN’da Yazılım Geliştirici olarak başladı; ardından IBM’de Makine Öğrenmesi Danışmanı olarak çalıştı ve sigorta şirketleri için uçtan uca yapay zeka çözümleri geliştirdi. Paris ve Montreal merkezli ilk Sürdürülebilir YZ girişimi olan Axionable’a katıldı. Burada Veri Bilimci olarak görev yaptı ve çoğunlukla NLP kullanım örnekleri olmak üzere, Fransa, Montreal, Singapur ve İsviçre’den müşteriler için YZ ürünleri hayata geçirdi. Ayrıca zamanının %5’ini Araştırma ve Geliştirme’ye ayırdı. Hâlihazırda IFC – Dünya Bankası Grubu’nda Kıdemli Veri Bilimci olarak çalışmaktadır.
