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.
Zgjero për të parë se si të konfigurosh projektin dhe çelësin API
Merr dhe siguro çelësin tënd API
Ju duhet një çelës API për të thirrur Gemini API. Nëse nuk e keni tashmë një të tillë, krijoni një çelës në Google AI Studio.
Rekomandohet fuqimisht që të mos kontrolloni një çelës API në sistemin tuaj të kontrollit të versionit.
Ju duhet të ruani çelësin tuaj API në një dyqan sekretesh si Google Cloud Secret Manager .
Ky udhëzues supozon se ju po përdorni çelësin tuaj API si një variabël mjedisi.
Instaloni paketën SDK dhe konfiguroni çelësin tuaj API
Python SDK për API-në Gemini gjendet në paketën google-genai
.
Instaloni varësinë duke përdorur pip:
pip install -U google-genai
Vendosni çelësin tuaj API në variablin e mjedisit
GOOGLE_API_KEY
:export GOOGLE_API_KEY="YOUR_KEY_HERE"
Krijoni një
Client
API, ai do të marrë çelësin nga mjedisi:from google import genai client = genai.Client()
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.