Gemma gibi üretken yapay zeka (AI) modellerinde ince ayar yapmak, modelin davranışını değiştirir. Genellikle Gemma'da ince ayar yapmanın amacı, belirli bir görev veya alandaki performansını iyileştirmek ya da müşteri hizmetleri gibi bir rolü daha iyi yerine getirmektir. Gemma modelleri açık ağırlıklarla yayınlanır. Bu, bu ağırlıkları değiştirebileceğiniz ve bu sayede modelin davranışını değiştirebileceğiniz anlamına gelir. Gemma modelinde ince ayar yapmak için genel adımlar şunlardır:
Çerçeve seçin
Gemma modelleri, çeşitli yapay zeka ayarlama çerçeveleriyle uyumludur. Her çerçeve çeşitli avantajlar sunar ve genellikle belirli bir model biçimiyle sınırlıdır. Gemma modellerini çeşitli çerçevelerle ayarlamayla ilgili kılavuzları aşağıda bulabilirsiniz:
- LoRA kullanan Keras
- JAX için Gemma kitaplığı
- Kucak açan yüz
- Google Cloud GKE (HF Transformers ile çoklu GPU)
- Unsloth
- Axolotl
- Dağıtılmış ayarlama kullanan Keras
Keras biçimi, Safetensors veya GGUF gibi dağıtım modeli biçiminizin, seçtiğiniz çerçeve tarafından çıkış olarak desteklendiğinden emin olun.
Veri toplama
Model ayarlama işlemi için veri gerekir. Ayarlama verileri genellikle beklenen yanıtla birlikte giriş verisi çiftlerinden oluşur. Çeşitli görevler veya çıktılar için eğitim amacıyla internette birçok herkese açık veri kümesi mevcuttur. Örneğin, araba parçası açıklamalarını parça numaralarına çevirecek bir Gemma modeli eğitmek istiyorsanız veri kümeniz aşağıdakileri içerebilir:
training_data = [
{"input_text": "Part number for A4 brake caliper", "output_text": "4M0615107BS"},
{"input_text": "Part number for Beetle fuel pump", "output_text": "6A127026H"},
{"input_text": "Part number for Camaro cylinder head", "output_text": "12711770"},
]
Bir Gemma modelinin belirli bir görev grubunu veya rolü gerçekleştirmesini istiyorsanız genellikle bu görevin birden fazla varyasyonunu gösteren bir veri kümesi derlemeniz gerekir. Bir modeli ayarlamak için ne kadar veriye ihtiyacınız olduğu, hedeflerinize, özellikle de modelden ne kadar davranış değişikliği istediğinize ve modelin, tamamlanacak göreve ve giriş verilerindeki varyasyon düzeyine göre ne kadar iyi performans göstermesini istediğinize bağlıdır.
Genel olarak, görev ayarlama için küçük bir veri kümesiyle başlamalı, eğitim parametrelerini ayarlamalı ve ihtiyaçlarınızı karşılayan görev performansına ulaşana kadar veri eklemelisiniz. Örnek uygulamalarımızdan bazıları, 20 istem ve yanıt çiftiyle bir Gemma modelinin davranışını etkileyebileceğinizi gösterir. Daha fazla bilgi için Gemma ile iş e-postası için yapay zeka asistanı oluşturma ve Gemma ile konuşulan dillerde görevler başlıklı makaleleri inceleyin.
Modeli ayarlama ve test etme
Ayarlama çerçeveniz ve ayarlama verileriniz hazır olduğunda Gemma model ayarlama sürecine başlayabilirsiniz. Ayarlama yaparken, ayarlama şeklinizle ilgili bazı seçenekleriniz vardır. Bu seçenekler, ayarlama işlemini tamamlamak için ihtiyaç duyduğunuz kaynakları etkiler. Ayrıca, ayarlama işleminden sonra istediğiniz şekilde performans gösterip göstermediğini değerlendirmek için ayarlanmış modeliniz için bir test planınız olmalıdır.
Parametreleri verimli şekilde kullanma
Gemma gibi açık ağırlıklar modelinde ince ayar yaparken modelin tüm parametrelerini ayarlayabilir veya bunların bir alt kümesini güncelleyen, daha az kaynak yoğun bir parametre verimli ayarlama tekniği kullanabilirsiniz. Tam ayarlama yaklaşımı, ayarlama verilerinizi uygularken modelin tüm parametreleri için yeni ağırlıklar hesapladığınız anlamına gelir. Bu hesaplamaları milyarlarca parametre için gerçekleştirdiğinizden bu yaklaşım, yoğun bilgi işlem ve yoğun bellek kullanımı gerektirir. Düşük Sıralı Adaptör (LoRA) ayarlama gibi teknikler de dahil olmak üzere parametre verimli hassas ayarlama (PEFT) adı verilen, daha az kaynak yoğun ayarlama yaklaşımları kullanmak, daha az bilgi işlem kaynağıyla benzer sonuçlar elde etmenizi sağlayabilir. LoRA'yı kullanarak daha az kaynakla ayarlama yapma hakkında ayrıntılı bilgi için LoRA'yı kullanarak Keras'ta Gemma modellerinde hassas ayarlama yapma ve Hugging Face'ta Gemma modellerinde hassas ayarlama yapma başlıklı makaleleri inceleyin.
Ayarlanmış modelleri test etme
Bir modeli belirli bir görev için ayarladıktan sonra, performansını gerçekleştirmesini istediğiniz görev grubuna göre test etmeniz gerekir. Modelinizi, özel olarak eğitilmediği görevler veya isteklerle test etmeniz gerekir. Ayarlanmış modelinizi nasıl test ettiğiniz, gerçekleştirmesini istediğiniz göreve ve modelin giriş ve çıkışlarını ne kadar dikkatli bir şekilde yönettiğinize bağlıdır. Üretken model testini yönetmenin yaygın bir yolu, başarı, başarısızlık ve sınırda olan örnekleri kullanmaktır:
- Başarı testleri: Ayarlanmış modelin her zaman başarılı bir şekilde performans göstermesini isteyen istekler.
- Başarısızlık testleri: Ayarlanmış modelin her zaman performans gösterememesi veya istenirse performans göstermeyi açıkça reddetmesi istenir.
- Sınır testleri: Ayarlanmış modelin, kabul edilebilir çıkış davranışının tanımlanmış bir sınırı veya sınır kümesi içinde olması durumunda performans gösterebilmesini isteyen istekler.
Üretken yapay zeka uygulamanız için hata veya sınır koşullarını test ederken Sorumlu Üretken Yapay Zeka Araç Seti'nde açıklanan üretken yapay zeka güvenlik yaklaşımlarını, tekniklerini ve araçlarını da uygulamanız gerekir.
Modeli dağıtma
Tuning'u tamamladıktan ve testinizi başarıyla tamamladıktan sonra modelinizi dağıtma zamanı gelmiştir. Ayarlanmış bir modeli dağıtma hakkında bilgi edinmek için genellikle seçtiğiniz çerçevenin belgelerine bakabilirsiniz.
LoRA ayarlanmış ağırlıklara sahip bir model dağıtıyorsanız bu teknikle genellikle hem orijinal modeli hem de ağırlıklarını, model için ek bir hesaplama katmanı olarak LoRA ağırlıklarıyla dağıttığınızı unutmayın.