Google: Gemini 3.5 Flash (batch)
Gemini 3.5 Flash sujungia daugiarūšį supratimą ir samprotavimą programavimo bei kelių etapų agentų užduotims. Jis priima tekstą, vaizdus, vaizdo įrašus, garsą ir PDF bei pateikia tekstą; dokumentuotame profilyje palaikoma struktūrizuota išvestis, įrankiai ir 1,048,576 žetonų įvesties riba.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
Gemini 3.5 Flash – Google daugiarūšio Flash modelio profilis, skirtas tęstiniam programavimui ir agentiniam darbui. Dokumentuotos jo įvestys yra tekstas, vaizdai, vaizdo įrašai, garsas ir PDF, o išvestis – tekstas. Pagrindinės modelio užduotys apima iteracinį programavimą, alternatyvių sprendimų nagrinėjimą ir ilgesnes instrukcijų vykdymo bei įrankių naudojimo sekas. 3.5 versijoje pateikiami dokumentuoti samprotavimo valdikliai, daugiarūšės įvestys ir darbo su įrankiais eigos.
Programavimo užduotyje galima sujungti rašytinį reikalavimą, susijusius šaltinio failus ir numatomo rezultato ekrano kopiją. Pateikite pastebėtą elgseną, laukiamą elgseną ir apribojimus, kurie turi likti nepakitę. Užduoties pavyzdys: „Palygink ekrano kopiją su komponento tekstu, nustatyk formos darbo eigos neatitikimą ir pasiūlyk vieną tikslingą pataisą. Paaiškink, kurios šaltinio detalės pagrindžia pakeitimą.“ Dokumento užduočiai pateikite reikiamus puslapius ir paprašykite palyginti su aiškiais reikalavimais, nurodant kiekvienos išvados šaltinius.
Šiai versijai dokumentuoti minimal, low, medium ir high samprotavimo lygiai. Numatytasis lygis yra medium; jis pakeistas iš Gemini 3 Flash Preview numatytojo high. Minimal tinka paprastiems atsakymams ir nesudėtingiems sprendimams dėl įrankių, tačiau negarantuoja visiško samprotavimo išjungimo; low skirtas mažiau žingsnių reikalaujančioms užduotims; high leidžia giliau samprotauti sprendžiant sudėtingas matematikos, programavimo ir agentų problemas. Google rekomenduoja pastangas valdyti parametru thinking_level ir palikti numatytuosius atrankos parametrus, o ne mėginti išgauti samprotavimą keičiant temperature, top-p ar top-k.
Viena esminių elgsenų – samprotavimo konteksto išsaugojimas kelių ėjimų užduotyje. Google Interactions darbo eiga šį kontekstą perduoda automatiškai; GenerateContent eigai būtina visa nepakeista pokalbio istorija, įskaitant samprotavimo parašus. Tai padeda tęsti derinimo ar refaktorizavimo užduotį, kurioje ankstesnis samprotavimas lemia kitą žingsnį. Išsaugokite tikrąją pokalbio struktūrą, užuot kiekvieną papildomą kreipimąsi pavertę atskira nesusijusia užklausa, ir darbo metu aiškiai išlaikykite galutinį prašomą artefaktą.
Dokumentuotas įrankių rinkinys apima Google Search, atsakymų pagrindimą Google Maps duomenimis, File Search, Code Execution, URL Context ir įprastą Function Calling; bendras kelių įrankių naudojimas ir Computer Use pažymėti kaip bandomosios galimybės. Structured Outputs gali pateikti apibrėžtą duomenų įrašą. Funkcijoms suteikite aiškią paskirtį ir parametrų apibrėžimus: modelis pasirenka funkciją, o prijungta programa atlieka jos veiksmą ir grąžina rezultatą. Google reikalauja, kad funkcijų rezultatai atitiktų ankstesnius iškvietimus pagal tapatybę, pavadinimą ir skaičių; daugiarūšiai rezultatai turi būti funkcijos atsakymo viduje.
Tikslioje API modelio lentelėje nurodyta didžiausia 1,048,576 žetonų įvestis ir didžiausia 65,536 žetonų išvestis. Pokalbio istorija ir pateikta medija įskaičiuojamos į įvesties biudžetą. Šiam profiliui dokumentuoti podėlis ir paketinis apdorojimas, o Google lentelėje taip pat pateiktos Flex ir Priority apdorojimo parinktys. Šios ribos ir galimybės aprašo gamintojo versiją; jos nereikalauja užpildyti viso išvesties lango ar kiekvienoje užduotyje naudoti visus įrankius.
Šis profilis generuoja tekstą, o ne vaizdus ar garsą, ir nenaudoja Live API. Jo kūrėjo vadove taip pat nepalaikomas vaizdų segmentavimas. Vizualiniam klausimui prašykite pateiktos medžiagos aprašymo, duomenų ištraukimo ar interpretavimo; kalbos įrašui – tekstinio rezultato. Kai atsakymas priklauso nuo naujesnės informacijos, dokumentuota atsakymų pagrindimo paieška eiga gali pridėti šaltinių už mokymo žinių ribų. Nurodykite, ar reikia išorinės informacijos ir kokius įrodymus galutinis atsakymas turi išsaugoti.
Naudingai ilgesnei užduočiai prieš pirmą žingsnį apibrėžkite galutinį rezultatą ir užbaigimo kriterijų. Pagalbos užklausų analizės užduotyje galima prašyti pastebėtų problemų, jas pagrindžiančių ištraukų ir siūlomo atsakymo lentelės; programavimo užduotyje – tikslingo pakeitimo ir susijusio patikros rezultato. Pridėkite reikšmingą šaltinio kontekstą, apibrėžkite leidžiamus įrankių veiksmus ir prašykite aiškaus galutinio atsakymo, kuriame užbaigtas darbas atskiriamas nuo klausimų, kuriems dar trūksta informacijos. Taip tęstinė modelio darbo eiga virsta konkrečiu tekstiniu, kodo ar struktūrizuotu artefaktu.
Ailoot Ultra · Paketinis apdorojimas POST /v1/batches google/gemini-3.5-flash:batch
google/gemini-3.5-flash:batchPradžia
Gemini 3.5 Flash sujungia daugiarūšį supratimą ir samprotavimą programavimo bei kelių etapų agentų užduotims. Jis priima tekstą, vaizdus, vaizdo įrašus, garsą ir PDF bei pateikia tekstą; dokumentuotame profilyje palaikoma struktūrizuota išvestis, įrankiai ir 1,048,576 žetonų įvesties riba.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- Tekstas
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Paketinis apdorojimas POST /v1/batches
- Įvestis
text- Išvestis
text- Išvesties formatas
- tiesiogiai įterptas results[].response.body JSON
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasendpoint | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos /v1/chat/completions | Numatyta— |
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos google/gemini-3.5-flash:batch | Numatyta— |
Laukasrequests | Tipasbatch_item[] | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias elementų skaičius: 1 | Numatyta— |
Laukasrequests[].custom_id | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatyta— |
Laukasrequests[].body.messages | Tipasmessage[] | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatyta— |
Laukascompletion_window | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 24h | Numatyta— |
Laukasprovider | Tipasobject|null | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Laukasrequests[].body.model | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos google/gemini-3.5-flash:batch, google/gemini-3.5-flash | Numatyta— |
Laukasprovider.only | Tipasstring[] | ReikalavimasNeprivaloma | Reikšmės ir ribos google-vertex/global | Numatyta— |
Laukasprovider.allow_fallbacks | Tipasboolean|null | ReikalavimasNeprivaloma | Reikšmės ir ribos false, null | Numatyta— |
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijaendpoint, model, requests |
Parametrasmaterial_types | Specifikacijatext |
Parametrasrepresentation | Specifikacijatiesiogiai įterptas requests[] masyvas; kiekvienas elementas turi custom_id ir body laukus |
Parametrasrequest_endpoint_profile | Specifikacija/v1/chat/completions |
Parametrasfile_material | SpecifikacijaKlientas gali vietoje perskaityti faktinį UTF-8 JSONL turinį į requests[] masyvą. Įkėlimo purpose, input_file_id ar failo nuoroda nenaudojami. Jei kliento medžiagos nėra arba ji tuščia, parengimas sustabdomas prieš POST. |
Parametrasserialization_order | Specifikacijaendpoint, model, provider (jei pateiktas), completion_window (jei pateiktas), requests pateikite paskiausiai |
Parametrasoptional_controls | Specifikacijaprovider.only, provider.allow_fallbacks, completion_window |
Parametrasschema_scope | SpecifikacijaTekstinių Chat Completions užklausų turiniai dokumentuotoje Batch paketo struktūroje, pateikiamoje pačioje užklausoje. |
Gyvavimo ciklas: asynchronous
GET /v1/batches/{operation_id} · faktinė pradinės kūrimo užklausos atsakymo response.id reikšmė; tas pats naudotojas, raktas ir grupė
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Nenurodyta Pasirinkus spartųjį režimą
- Flex režimas
- Nenurodyta Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Nenurodyta Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
- Išreikštinio podėlio kainodara
- Neįjungta Kai prašoma išreikštinio podėlio
Ailoot įkainiai
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Konteksto tokenų daugiau nei | Konteksto tokenų iki imtinai | Mokestis |
|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Konteksto tokenų daugiau nei— | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0015 / 1K tokenų Išvestis · Išvesties tokenai $0.009 / 1K tokenų Įvestis · Talpyklos skaitymas $0.00015 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
| KonfigūracijaUžklausos ilgio pakopa 1 | Įkainių lentelė— | Konteksto tokenų daugiau nei0 | Konteksto tokenų iki imtinaiBe viršutinės ribos | Mokestis Įvestis · Įvesties tokenai $0.0015 / 1K tokenų Išvestis · Išvesties tokenai $0.009 / 1K tokenų Įvestis · Talpyklos skaitymas $0.00015 / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Paketinis apdorojimas
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"google/gemini-3.5-flash:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen
def prepare_requests(customer_path):
path = Path(customer_path)
if not path.is_file(): raise ValueError("Customer JSONL file is missing")
items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
if not items: raise ValueError("Customer JSONL contains no requests")
ids = set()
for item in items:
if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
cid = item["custom_id"]
if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
ids.add(cid)
if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
supplied_model = item["body"].get("model")
if supplied_model is not None and supplied_model not in ['google/gemini-3.5-flash:batch', 'google/gemini-3.5-flash']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"google/gemini-3.5-flash:batch", "requests":items}
if __name__ == "__main__":
material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
body = prepare_requests(material)
key = os.environ.get("AILOOT_API_KEY", "")
if not key: raise SystemExit("Set AILOOT_API_KEY")
request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
with urlopen(request) as response:
raw = response.read()
Path("batch-create-response.json").write_bytes(raw)
print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Paketinis apdorojimas
tiesiogiai įterptas results[].response.body JSON
GET /v1/batches/{operation_id}
Tikrinti užduoties būseną
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite visą pradinės būsenos JSON, kiekvieną rezultatą ir custom_id bei visą atsakymo arba klaidos turinį. Užbaigtus results[] išsaugokite JSONL formatu nieko nefiltruodami.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite pradinį operacijos ID. Atsakyme 503 result_pending_check pateikiama X-Should-Retry:false; niekada pakartotinai neteikite pradinio paketo, kurio baigtis nežinoma.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasresults[].custom_id | Tipasstring |
Laukasresults[].response.body.choices[].message.content | Tipasstring|null |
Laukasresults[].error | Tipasobject|null |
Laukasusage | Tipasobject|null |
Laukasid | Tipasstring |
Laukasmodel | Tipasstring |
Laukasendpoint | Tipasstring |
Laukasstatus | Tipasstring |
Laukasrequest_counts | Tipasobject |
Laukasresults[].id | Tipasstring |
Laukasresults[].response.status_code | Tipasinteger |
Laukasresults[].response.request_id | Tipasstring |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNeteisinga dokumentuota tiesiogiai įterpto paketo struktūra, pasikartojantys raktai, netinkama elemento tapatybė arba konfliktas su sukonfigūruotomis modelio galimybėmis. | Kitas žingsnisPrieš bet kokį naują pateikimą pataisykite nurodytus laukus. |
Atsakymas401 · authentication_error | SąlygaNegaliojantis API raktas. | Kitas žingsnisNaudokite leistiną Ailoot raktą. |
Atsakymas403 · permission_error | SąlygaPaketinio apdorojimo grupė neprieinama. | Kitas žingsnisPatikrinkite rakto ir grupės prieigos teises. |
Atsakymas422 · invalid_request_error | SąlygaPaketinis apdorojimas apmokamas iš balanso; kūrimo užklausos su prenumeratos apmokėjimu atmetamos. | Kitas žingsnisNaudokite leistiną grupę, kurios užklausos apmokamos iš balanso. |
Atsakymas422 · price_unavailable | SąlygaNepavyksta apskaičiuoti paketinio apdorojimo įvesties kainos. | Kitas žingsnisIšsaugokite atsakymą; naudokite dokumentuotą šios API šeimos įvestį. |
Atsakymas402 · billing_error | SąlygaPaketiniam apdorojimui reikalingas rezervas neprieinamas. | Kitas žingsnisPrieš teikdami naują užklausą išspręskite užklausos priėmimo problemą. |
Atsakymas503 · price_unavailable | SąlygaPaketinio apdorojimo metodo kaina arba savieji sistemos įkainiai neprieinami. | Kitas žingsnisIšsaugokite atsakymą; nekeiskite kainų kitomis. |
Atsakymas503 · api_error | SąlygaKonkretus tiekėjo maršrutas neprieinamas. | Kitas žingsnisIšsaugokite atsakymą maršrutui pataisyti. |
Atsakymas503 · result_pending_check | SąlygaPradinį rezultatą reikia patikrinti; X-Should-Retry:false. | Kitas žingsnisIšsaugokite pradinę operation_id/id reikšmę ir tikrinkite operacijos būseną; niekada nekartokite pradinės POST užklausos. |
Atsakymas404 · not_found | SąlygaPaketinio apdorojimo būsenos operacijos nėra arba ji susieta su kita tapatybe. | Kitas žingsnisNaudokite tikslią pradinę id reikšmę ir tą patį naudotoją, raktą bei grupę. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra google/gemini-3.5-flash:batch
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · Google: Gemini 3.5 Flash (batch)
- Kokios įvestys ir rezultatai prieinami?
POST /v1/batches·google/gemini-3.5-flash:batch:text→text- Kokius laukus naudoja užklausa?
POST /v1/batches·google/gemini-3.5-flash:batch:endpoint,model,requests,completion_window,provider- Kokie apribojimai taikomi?
POST /v1/batches·google/gemini-3.5-flash:batch:requests.min_items:1