Bu eğitim, curl kullanarak Python SDK'sını veya REST API'yi kullanarak Gemini API ayarlama hizmetini kullanmaya başlamanıza yardımcı olacaktır. Örneklerde, Gemini API metin oluşturma hizmetinin arkasındaki metin modelinin nasıl ayarlanacağı gösterilmektedir.
![]() |
![]() |
![]() |
Sınırlamalar
Bir modeli ayarlamadan önce aşağıdaki sınırlamalara dikkat etmeniz gerekir:
Veri kümelerini hassas ayarlama
Gemini 1.5 Flash için veri kümelerinde ince ayar yapmayla ilgili aşağıdaki sınırlamalar vardır:
- Örnek başına maksimum giriş boyutu 40.000 karakterdir.
- Örnek başına maksimum çıkış boyutu 5.000 karakterdir.
- Yalnızca giriş-çıkış çifti örnekleri desteklenir. Sohbet tarzında çoklu turlu görüşmeler desteklenmez.
Ayarlanmış modeller
Ayarlanmış modellerde aşağıdaki sınırlamalar vardır:
- Ayarlanmış bir Gemini 1.5 Flash modelinin giriş sınırı 40.000 karakterdir.
- JSON modu, ayarlanmış modellerde desteklenmez.
- Yalnızca metin girişi desteklenir.
Başlamadan önce: Projenizi ve API anahtarınızı oluşturun
Gemini API'yi çağırmadan önce projenizi oluşturmanız ve API anahtarınızı yapılandırmanız gerekir.
Ayarlanmış modelleri listeleme
Mevcut ayarlanmış modellerinizi tunedModels.list
yöntemiyle kontrol edebilirsiniz.
from google import genai
client = genai.Client() # Get the key from the GOOGLE_API_KEY env variable
for model_info in client.models.list():
print(model_info.name)
Ayarlanmış bir model oluşturma
Ayarlanmış bir model oluşturmak için veri kümenizi tunedModels.create
yönteminde modele iletmeniz gerekir.
Bu örnekte, bir modeli sıradaki sonraki sayıyı oluşturacak şekilde ayarlayacaksınız. Örneğin, giriş 1
ise model 2
değerini döndürmelidir. Giriş one hundred
ise çıkış one hundred one
olmalıdır.
# create tuning model
training_dataset = [
["1", "2"],
["3", "4"],
["-3", "-2"],
["twenty two", "twenty three"],
["two hundred", "two hundred one"],
["ninety nine", "one hundred"],
["8", "9"],
["-98", "-97"],
["1,000", "1,001"],
["10,100,000", "10,100,001"],
["thirteen", "fourteen"],
["eighty", "eighty one"],
["one", "two"],
["three", "four"],
["seven", "eight"],
]
training_dataset=types.TuningDataset(
examples=[
types.TuningExample(
text_input=i,
output=o,
)
for i,o in training_dataset
],
)
tuning_job = client.tunings.tune(
base_model='models/gemini-1.0-pro-001',
training_dataset=training_dataset,
config=types.CreateTuningJobConfig(
epoch_count= 5,
batch_size=4,
learning_rate=0.001,
tuned_model_display_name="test tuned model"
)
)
# generate content with the tuned model
response = client.models.generate_content(
model=tuning_job.tuned_model.model,
contents='III',
)
print(response.text)
Dönem sayısı, toplu boyut ve öğrenme hızı için en uygun değerler, veri kümenize ve kullanım alanınızı diğer kısıtlamalarına bağlıdır. Bu değerler hakkında daha fazla bilgi edinmek için Gelişmiş ayar ayarları ve Hiperparametreler başlıklı makaleleri inceleyin.
Modeli deneyin
tunedModels.generateContent
yöntemini kullanarak performansını test etmek için ayarlanmış modelin adını belirtebilirsiniz.
response = client.models.generate_content(
model=tuning_job.tuned_model.model,
contents='III'
)
Uygulanmadı
Bazı özellikler (ilerleme raporlama, açıklamayı güncelleme ve ayarlanmış modelleri silme) yeni SDK'ya henüz uygulanmamıştır.