Gemma içerik üretme ve çıkarımlarını çalıştırma

Bir Gemma modeli çalıştırmak istediğinizde vermeniz gereken iki önemli karar vardır: 1) Hangi Gemma varyantını çalıştırmak istediğiniz ve 2) Bunu çalıştırmak için hangi yapay zeka yürütme çerçevesini kullanacağınız. Bu iki kararı verirken karşılaşılan temel sorunlardan biri, modeli çalıştırmak için sizin ve kullanıcılarınızın hangi donanımlara sahip olduğudur.

Bu genel bakış, bu kararları vermenize ve Gemma modelleriyle çalışmaya başlamanıza yardımcı olur. Gemma modelini çalıştırmak için genel adımlar şunlardır:

Bir çerçeve seçin

Gemma modelleri, çok çeşitli ekosistem araçlarıyla uyumludur. Doğru seçimi yapmak, mevcut donanımınıza (Cloud GPU'lar ve yerel dizüstü bilgisayar) ve arayüz tercihinize (Python kodu ve masaüstü uygulaması) bağlıdır.

İhtiyaçlarınıza en uygun aracı hızlıca belirlemek için aşağıdaki tabloyu kullanın:

Şunu yapmak istiyorsanız... Önerilen Çerçeve Desteklendiği Cihazlar
Chat kullanıcı arayüzüyle yerel olarak çalıştırma - LM Studio
- Ollama
Yeni başlayanlar veya dizüstü bilgisayarlarında "Gemini benzeri" bir deneyim yaşamak isteyen kullanıcılar
Edge'de verimli bir şekilde çalıştırın - Gemma.cpp
- LiteRT-LM
- llama.cpp
- MediaPipe LLM Inference API
- MLX
En az kaynakla yüksek performanslı yerel çıkarım.
Python'da oluşturma/eğitme - JAX için Gemma kitaplığı
- Hugging Face Transformers
- Keras
- PyTorch
- Unsloth
Özel uygulamalar geliştiren veya modelleri hassaslaştıran araştırmacılar ve geliştiriciler.
Üretim / Enterprise'a dağıtma - Google Cloud Kubernetes Engine (GKE)
- Google Cloud Run
- Vertex AI
- vLLM
kurumsal güvenlik ve MLOps desteğiyle ölçeklenebilir, yönetilen bulut dağıtımı.

Çerçeve Ayrıntıları

Aşağıda, dağıtım ortamınıza göre kategorize edilmiş Gemma modellerini çalıştırmaya yönelik kılavuzlar yer almaktadır.

1. Masaüstü ve Yerel Çıkarım (Yüksek Verimlilik)

Bu araçlar, optimize edilmiş biçimler (ör. GGUF) veya belirli donanım hızlandırıcılar kullanarak Gemma'yı tüketici donanımında (dizüstü bilgisayarlar, masaüstü bilgisayarlar) çalıştırmanıza olanak tanır.

  • LM Studio: Kullanıcı dostu bir arayüzde Gemma modellerini indirip onlarla sohbet etmenizi sağlayan bir masaüstü uygulaması. Kodlama gerekmez.
  • llama.cpp: Llama'nın (ve Gemma'nın) popüler bir açık kaynaklı C++ bağlantı noktasıdır. CPU'larda ve Apple Silicon'da inanılmaz derecede hızlı çalışır.
  • LiteRT-LM: LiteRT (eski adıyla TFLite) tarafından desteklenen, masaüstünde (Windows, Linux, macOS) optimize edilmiş .litertlm Gemma modellerini çalıştırmak için bir komut satırı arayüzü (CLI) sunar.
  • MLX: Apple Silicon'da makine öğrenimi için özel olarak tasarlanmış bir çerçeve. Yerleşik performans isteyen Mac kullanıcıları için idealdir.
  • Gemma.cpp: Google'a özel, hafif ve bağımsız bir C++ çıkarım motoru.
  • Ollama: Açık LLM'leri yerel olarak çalıştırmak için kullanılan bir araçtır ve genellikle diğer uygulamalara güç sağlamak için kullanılır.

2. Python Geliştirme (Araştırma ve İnce Ayar)

Uygulama, ardışık düzen veya eğitim modeli oluşturan yapay zeka geliştiriciler için standart çerçeveler.

  • Hugging Face Transformers: Modeller ve ardışık düzenlere hızlı erişim için endüstri standardı.
  • Unsloth: Büyük dil modellerini ince ayar yapmak için optimize edilmiş bir kitaplık. Gemma modellerini önemli ölçüde daha az bellek kullanarak 2-5 kat daha hızlı eğitmenize olanak tanır.Bu sayede, tüketici GPU'larında (ör. ücretsiz Google Colab katmanları) ince ayar yapabilirsiniz.
  • Keras / JAX / PyTorch: Derin öğrenme araştırmaları ve özel mimari uygulamaları için temel kitaplıklar.

3. Mobil ve Edge Dağıtımı (Cihaz Üzerinde)

Büyük dil modellerini doğrudan kullanıcı cihazlarında (Android, iOS, Web) internet bağlantısı olmadan çalıştırmak için tasarlanmış, genellikle NPU'ları (Sinirsel İşleme Birimleri) kullanan çerçeveler.

  • LiteRT-LM: Android ve iOS'te CPU, GPU ve NPU hızlandırması için doğrudan destek sunan, maksimum performans ve ayrıntılı kontrol sağlayan, cihaz üzerinde LLM geliştirme için tamamen açık kaynaklı çerçeve.
  • MediaPipe LLM Inference API: Gemma'yı platformlar arası uygulamalara entegre etmenin en kolay yolu. Android, iOS ve web'de çalışan üst düzey bir API sunar.

4. Bulut ve Üretim Dağıtımı

Uygulamanızı binlerce kullanıcıya ölçeklendirmek veya büyük bir işlem gücüne erişmek için yönetilen hizmetler.

  • Vertex AI: Google Cloud'un tam olarak yönetilen yapay zeka platformu. Hizmet düzeyi sözleşmeleri ve ölçeklendirme gerektiren kurumsal uygulamalar için idealdir.
  • Google Cloud Kubernetes Engine (GKE): Kendi yayın kümelerinizi düzenlemek için.
  • vLLM: Genellikle bulut dağıtımlarında kullanılan, yüksek işleme kapasitesine ve bellek açısından verimli çıkarım ve sunum motoru.

Hedeflenen dağıtım Gemma modeli biçiminizin (ör. Keras yerleşik biçimi, Safetensors veya GGUF) seçtiğiniz çerçeve tarafından desteklendiğinden emin olun.

Bir Gemma varyantı seçin

Gemma modelleri; temel veya çekirdek Gemma modelleri, PaliGemma ve DataGemma gibi daha uzmanlaşmış model varyantları ve Kaggle ve Hugging Face gibi sitelerde yapay zeka geliştirici topluluğu tarafından oluşturulan birçok varyant dahil olmak üzere çeşitli varyant ve boyutlarda sunulur. Hangi varyantla başlayacağınızdan emin değilseniz en düşük parametre sayısına sahip, en yeni Gemma çekirdek talimatlara göre ayarlanmış (IT) modeli seçin. Bu tür Gemma modelleri düşük işlem gücü gerektirir ve ek geliştirme gerektirmeden çok çeşitli istemlere yanıt verebilir.

Gemma varyantı seçerken aşağıdaki faktörleri göz önünde bulundurun:

  • Gemma çekirdeği ve PaliGemma, CodeGemma gibi diğer varyant aileleri: Gemma'yı (çekirdek) önerin. Temel sürümün ötesindeki Gemma varyantları, temel modelle aynı mimariye sahiptir ve belirli görevlerde daha iyi performans gösterecek şekilde eğitilmiştir. Uygulamanız veya hedefleriniz belirli bir Gemma varyantının uzmanlık alanıyla uyumlu değilse Gemma Core veya temel modeliyle başlamanız önerilir.
  • Talimatlara göre ayarlanmış (IT), önceden eğitilmiş (PT), ince ayar yapılmış (FT), karma (mix): IT önerilir.
    • Talimatlara göre ayarlanmış (IT) Gemma varyantları, insan dilinde çeşitli talimatlara veya isteklere yanıt verecek şekilde eğitilmiş modellerdir. Bu model varyantları, daha fazla model eğitimi gerektirmeden istemlere yanıt verebildikleri için başlamak için en iyi yerdir.
    • Önceden eğitilmiş (PT) Gemma varyantları, dil veya diğer veriler hakkında çıkarımlar yapmak üzere eğitilmiş ancak insan talimatlarını uygulamak üzere eğitilmemiş modellerdir. Bu modellerin görevleri etkili bir şekilde yerine getirebilmesi için ek eğitim veya ayarlama yapılması gerekir. Bu modeller, modelin ve mimarisinin özelliklerini incelemek ya da geliştirmek isteyen araştırmacılar veya geliştiriciler için tasarlanmıştır.
    • İnce ayar yapılmış (FT) Gemma varyantları BT varyantları olarak kabul edilebilir ancak genellikle belirli bir görevi yerine getirmek veya belirli bir üretken yapay zeka karşılaştırmasında iyi performans göstermek üzere eğitilir. PaliGemma varyant ailesi bir dizi FT varyantı içerir.
    • Karma (mix) Gemma varyantları, çeşitli talimatlarla talimat ayarı yapılmış ve genel kullanıma uygun PaliGemma modellerinin sürümleridir.
  • Parametreler: Mümkün olan en küçük sayıyı önerin. Genel olarak, bir modelin parametre sayısı ne kadar fazlaysa o kadar yeteneklidir. Ancak daha büyük modellerin çalıştırılması için daha büyük ve daha karmaşık işlem kaynakları gerekir ve bu durum genellikle yapay zeka uygulamasının geliştirilmesini yavaşlatır. Daha küçük bir Gemma modelinin ihtiyaçlarınızı karşılayamayacağını belirlemediyseniz az sayıda parametreye sahip bir model seçin.
  • Kuantizasyon seviyeleri: Ayarlama hariç olmak üzere yarı duyarlılık (16 bit) önerilir. Nicemleme, verilerin boyutu ve hassasiyeti ile sonuç olarak üretken yapay zeka modelinin hesaplamalar ve yanıt oluşturma için ne kadar bellek kullandığıyla ilgili karmaşık bir konudur. Bir model genellikle 32 bit kayan nokta verileri olan yüksek hassasiyetli verilerle eğitildikten sonra Gemma gibi modeller, 16, 8 veya 4 bit boyutları gibi daha düşük hassasiyetli verileri kullanacak şekilde değiştirilebilir. Bu nicelenmiş Gemma modelleri, görevlerin karmaşıklığına bağlı olarak önemli ölçüde daha az işlem ve bellek kaynağı kullanırken yine de iyi performans gösterebilir. Ancak, nicelenmiş modelleri ayarlamaya yönelik araçlar sınırlıdır ve seçtiğiniz yapay zeka geliştirme çerçevesinde kullanılamayabilir. Genellikle Gemma gibi bir modeli tam duyarlılıkta ince ayarlamanız ve ardından ortaya çıkan modeli nicelleştirmeniz gerekir.

Google tarafından yayınlanan temel Gemma modellerinin listesi için Gemma modellerini kullanmaya başlama başlıklı makalenin Gemma model listesi bölümüne bakın.

Üretim ve çıkarım isteklerini çalıştırma

Bir yapay zeka yürütme çerçevesi ve Gemma varyantı seçtikten sonra modeli çalıştırmaya başlayabilir ve içerik oluşturması ya da görevleri tamamlaması için istemde bulunabilirsiniz. Gemma'yı belirli bir çerçeveyle çalıştırma hakkında daha fazla bilgi için Çerçeve seçme bölümünde bağlantısı verilen kılavuzlara bakın.

İstem biçimlendirmesi

Tüm talimatlara göre ayarlanmış Gemma varyantlarının belirli istem biçimlendirme koşulları vardır. Bu biçimlendirme şartlarından bazıları, Gemma modellerini çalıştırmak için kullandığınız çerçeve tarafından otomatik olarak işlenir. Ancak istem verilerini doğrudan bir belirteç oluşturucuya gönderdiğinizde belirli etiketler eklemeniz gerekir ve etiketleme şartları, kullandığınız Gemma varyantına bağlı olarak değişebilir. Gemma varyantı istem biçimlendirmesi ve sistem talimatları hakkında bilgi edinmek için aşağıdaki kılavuzlara bakın: