Ky udhëzues do t'ju ndihmojë të filloni me shërbimin e akordimit të Gemini API duke përdorur ose Python SDK ose REST API duke përdorur curl . Shembujt tregojnë se si të akordohet modeli i tekstit pas shërbimit të gjenerimit të tekstit API Gemini.
![]() | ![]() | ![]() |
Kufizimet
Para se të akordoni një model, duhet të jeni të vetëdijshëm për kufizimet e mëposhtme:
Rregullimi i imët i të dhënave
Rregullimi i saktë i grupeve të të dhënave për Gemini 1.5 Flash kanë kufizimet e mëposhtme:
- Madhësia maksimale e hyrjes për shembull është 40,000 karaktere.
- Madhësia maksimale e daljes për shembull është 5000 karaktere.
- Mbështeten vetëm shembujt e çifteve hyrje-dalje. Bisedat me shumë kthesa të stilit të bisedës nuk mbështeten.
Modele të akorduara
Modelet e akorduara kanë kufizimet e mëposhtme:
- Kufiri i hyrjes së një modeli të akorduar Gemini 1.5 Flash është 40,000 karaktere.
- Modaliteti JSON nuk mbështetet me modelet e sintonizuara.
- Mbështetet vetëm futja e tekstit.
Përpara se të filloni: Vendosni projektin tuaj dhe çelësin API
Përpara se të telefononi Gemini API, duhet të konfiguroni projektin tuaj dhe të konfiguroni çelësin tuaj API.
Listoni modelet e akorduara
Ju mund të kontrolloni modelet tuaja ekzistuese të akorduara me metodën tunedModels.list
.
from google import genai
from google.genai import types
client = genai.Client() # Get the key from the GOOGLE_API_KEY env variable
for model_info in client.models.list():
print(model_info.name)
Krijo një model të akorduar
Për të krijuar një model të sintonizuar, duhet t'i kaloni të dhënat tuaja modelit në metodën tunedModels.create
.
Për këtë shembull, ju do të sintonizoni një model për të gjeneruar numrin tjetër në sekuencë. Për shembull, nëse hyrja është 1
, modeli duhet të nxjerrë 2
. Nëse hyrja është one hundred
, dalja duhet të jetë one hundred one
.
# 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.5-flash-001-tuning',
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)
Vlerat optimale për numërimin e epokave, madhësinë e grupit dhe shkallën e të mësuarit varen nga grupi juaj i të dhënave dhe kufizimet e tjera të rastit tuaj të përdorimit. Për të mësuar më shumë rreth këtyre vlerave, shihni Cilësimet e akordimit të avancuar dhe Hiperparametrat .
Provoni modelin
Ju mund të përdorni metodën tunedModels.generateContent
dhe të specifikoni emrin e modelit të sintonizuar për të testuar performancën e tij.
response = client.models.generate_content(
model=tuning_job.tuned_model.model,
contents='III'
)
Nuk zbatohet
Disa veçori (raportimi i progresit, përditësimi i përshkrimit dhe fshirja e modeleve të sintonizuara) nuk janë zbatuar ende në SDK-në e re.