Tutorial për rregullimin e imët

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.

Para se të filloni

Përpara se të telefononi Gemini API, sigurohuni që keni të instaluar SDK-në tuaj të zgjedhur dhe një çelës Gemini API të konfiguruar dhe gati për t'u përdorur.

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.

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.