Google: Gemini 3.6 Flash (batch)
Gemini 3.6 Flash is Googles multimodale tekstmodel voor programmeren, ruimtelijke analyse en agenten met meerdere stappen. Het benadrukt diagnostische inspectie, gerichte bewerkingen en minder onnodige uitvoeringslussen. Het accepteert tekst, beelden, audio, video en PDF, met hulpmiddelen, gestructureerde uitvoer en een invoerlimiet van 1.048.576 tokens.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
Gemini 3.6 Flash is Googles veelzijdige multimodale profiel voor programmeren, kenniswerk en uitvoering door agenten. Het bouwt voort op Gemini 3.5 Flash met nadruk op betere multimodale prestaties en tokenefficiëntie. Het model accepteert tekst, beelden, audio, video en PDF en geeft tekst terug. Een bruikbare opdracht kan code, een schermafbeelding en een eis combineren of een grafiek of visueel plan met schriftelijke voorwaarden vergelijken om een gecontroleerde uitleg of gerichte revisie te produceren.
De ontwikkelaarshandleiding benadrukt minder onnodige redeneerstappen, beurten en hulpmiddelaanroepen bij werk met meerdere stappen, naast gerichtere bewerkingen. Geef voor diagnose de waargenomen fout, de relevante bron en het gedrag dat ongewijzigd moet blijven. Vraag het model bij foutopsporing in een grafiek te onderzoeken waarom de verkeerde reeks wordt weergegeven, de betrokken gegevensomzetting te identificeren en één correctie voor te stellen met behoud van de omringende indeling. Het resultaat kan vervolgens worden vergeleken met de werkelijke invoergegevens en het vereiste grafiekgedrag.
Voorafgaande programmatische inspectie is een onderscheidend gedrag dat voor 3.6 wordt beschreven. De maker zegt dat het model een probleem vaker met diagnostische code onderzoekt voordat het wijzigingen aanbrengt. Dit kan een complex onderzoek helpen, maar de handleiding merkt op dat het extra verkennende stappen aan gewoon frontendwerk kan toevoegen. Geef aan of de taak onderzoek, een eenvoudige bewerking of een ontwerpvergelijking vereist. Lever de informatie die dat onderscheid duidelijk maakt en specificeer de toegestane acties voor de hulpmiddelen van de gekoppelde toepassing.
Ook ruimtelijk en multimodaal redeneren worden benadrukt: grafiekinterpretatie, omzetting van visuele bouwtekeningen en weblay-outs met meerdere elementen. Lever de relevante weergave of pagina’s aan, benoem wat geïnterpreteerd moet worden en vraag om het bewijs achter de conclusie. Voeg voor een ontwerptaak concrete indelings- en stijlrichtlijnen toe. De maker noemt een nadruk op functionele code en dat beoordelaars soms de visuele vormgeving van eerdere modellen verkozen, waardoor een expliciete visuele briefing nuttig is. Toets het resultaat aan het werkelijke diagram of de ontwerpeisen.
medium is het gedocumenteerde standaarddenkniveau. Googles modelspecifieke denktabel vermeldt minimal, low, medium en high; de migratiehandleiding voor 3.6 gebruikt medium of high in de inspanningsvoorbeelden. De exacte pagina vermeldt functieaanroepen, code-uitvoering, zoeken in bestanden, zoekgrounding, Maps-grounding, URL-context en gestructureerde uitvoer, met Computer Use als previewmogelijkheid. Definieer functie-invoer en het vereiste resultaat duidelijk. Een functie die door het model wordt geselecteerd, vereist een werkelijk toepassingsresultaat voordat een later antwoord op de uitkomst kan vertrouwen. Definieer voor een gestructureerde analyse het schema en het bronbewijs dat voor elke bevinding nodig is.
De 3.6-handleiding verandert de voorbereiding ten opzichte van eerdere Gemini-aanvragen. Ze verklaart de samplinginstellingen temperature, top-p en top-k verouderd, weigert een vooraf ingevulde laatste beurt met model-rol en beveelt systeeminstructies of gestructureerde uitvoer aan om het antwoord te sturen. De regels voor functieantwoorden koppelen een antwoord op identiteit en naam aan zijn aanroep en de Gemini 3-basis behoudt gedachtehandtekeningen bij gebruik over meerdere beurten. Een praktische voortzetting moet de ongewijzigde relevante geschiedenis en het hulpmiddelresultaat meenemen in plaats van een eerder antwoordvoorvoegsel na te bootsen.
De native kaart specificeert maximaal 1M invoercontext en 64K tekstuitvoer; de exacte API-tabel geeft 1.048.576 invoertokens en 65.536 uitvoertokens. Neem instructies, geschiedenis en media mee in het invoerbudget en vraag om uitvoer die bij de taak past. De producentpagina vermeldt ook caching, batch-, Flex- en Priority-verwerking. Houd bij het verwerken van onafhankelijke records de recordidentificatie en het resultaatformaat expliciet. De uitvoer is een tekstresultaat, ook wanneer het bewijs foto’s, audio of video omvat.
Mogelijke beperkingen omvatten hallucinaties en incidentele traagheid of time-outs. De kennisgrens van maart 2026 omvat domeinen waarvan de kennis tot januari 2025 beperkt blijft; voeg daarom nieuwer materiaal toe of gebruik een gedocumenteerde groundingwerkstroom wanneer actuele feiten belangrijk zijn. Controleer berekeningen, bronverwijzingen, visuele interpretaties en voorgestelde wijzigingen. De onderscheidende voorbereiding voor deze editie is een gerichte diagnostische briefing, een duidelijke afbakening van hulpmiddelen en expliciete ontwerpvoorwaarden, gevolgd door inspectie van het concrete resultaat.
Ailoot Ultra · Batch POST /v1/batches google/gemini-3.6-flash:batch
google/gemini-3.6-flash:batchAan de slag
Gemini 3.6 Flash is Googles multimodale tekstmodel voor programmeren, ruimtelijke analyse en agenten met meerdere stappen. Het benadrukt diagnostische inspectie, gerichte bewerkingen en minder onnodige uitvoeringslussen. Het accepteert tekst, beelden, audio, video en PDF, met hulpmiddelen, gestructureerde uitvoer en een invoerlimiet van 1.048.576 tokens.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Batch POST /v1/batches
- Invoertypen
text- Uitvoertypen
text- Uitvoerformaat
- inline results[].response.body JSON
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldendpoint | Typestring | VereisteVereist | Waarden en limieten /v1/chat/completions | Standaard— |
Veldmodel | Typestring | VereisteVereist | Waarden en limieten google/gemini-3.6-flash:batch | Standaard— |
Veldrequests | Typebatch_item[] | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
Veldrequests[].custom_id | Typestring | VereisteVereist | Waarden en limieten | Standaard— |
Veldrequests[].body.messages | Typemessage[] | VereisteVereist | Waarden en limieten | Standaard— |
Veldcompletion_window | Typestring | VereisteOptioneel | Waarden en limieten 24h | Standaard— |
Veldprovider | Typeobject|null | VereisteOptioneel | Waarden en limieten | Standaard— |
Veldrequests[].body.model | Typestring | VereisteOptioneel | Waarden en limieten google/gemini-3.6-flash:batch, google/gemini-3.6-flash | Standaard— |
Veldprovider.only | Typestring[] | VereisteOptioneel | Waarden en limieten google-vertex/global | Standaard— |
Veldprovider.allow_fallbacks | Typeboolean|null | VereisteOptioneel | Waarden en limieten false, null | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractendpoint, model, requests |
Parametermaterial_types | Contracttext |
Parameterrepresentation | Contractinline requests[]; elk item bevat custom_id en body |
Parameterrequest_endpoint_profile | Contract/v1/chat/completions |
Parameterfile_material | ContractDe aanroeper mag daadwerkelijke JSONL-inhoud in UTF-8 lokaal in requests[] inlezen. Er wordt geen uploaddoel (purpose), input_file_id of bestandsverwijzing gebruikt. Ontbrekend of leeg klantmateriaal stopt de voorbereiding vóór POST. |
Parameterserialization_order | Contractendpoint, model, provider (indien opgegeven), completion_window (indien opgegeven), requests als laatste |
Parameteroptional_controls | Contractprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | ContractBody’s voor tekstaanvragen via Chat Completions in de gedocumenteerde inline Batch-envelop. |
Levenscyclus: asynchronous
GET /v1/batches/{operation_id} · de daadwerkelijke response.id uit het oorspronkelijke aanmaakantwoord; dezelfde gebruiker/sleutel/groep
Tarieven
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
- Tarieven voor expliciete caching
- Niet ingeschakeld Wanneer expliciete caching wordt aangevraagd
Ailoot-tarieven
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Contexttokens, meer dan | Contexttokens, tot en met | Kosten |
|---|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Contexttokens, meer dan— | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.00075 / 1K tokens Uitvoer · Uitvoertokens $0.00375 / 1K tokens Invoer · Cache lezen $0.000075 / 1K tokens Invoer · Cache schrijven $0.0000833333333333334 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| ConfiguratieNiveau 1 voor aanvraaglengte | Tariefstaffel— | Contexttokens, meer dan0 | Contexttokens, tot en metGeen bovengrens | Kosten Invoer · Invoertokens $0.00075 / 1K tokens Uitvoer · Uitvoertokens $0.00375 / 1K tokens Invoer · Cache lezen $0.000075 / 1K tokens Invoer · Cache schrijven $0.0000833333333333334 / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
Ailoot Ultra · Batch
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.6-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.6-flash:batch', 'google/gemini-3.6-flash']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"google/gemini-3.6-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.
Resultaten ophalen en opslaan
Ailoot Ultra · Batch
inline results[].response.body JSON
GET /v1/batches/{operation_id}
Taakstatus controleren
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
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar de volledige oorspronkelijke status-JSON, elk resultaat/custom_id en de volledige antwoord- of foutbody. Sla voltooide results[] zonder filtering op als JSONL.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de oorspronkelijke bewerkings-ID. Bij 503 result_pending_check hoort X-Should-Retry:false; dien een oorspronkelijke batch met onbekende uitkomst nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldresults[].custom_id | Typestring |
Veldresults[].response.body.choices[].message.content | Typestring|null |
Veldresults[].error | Typeobject|null |
Veldusage | Typeobject|null |
Veldid | Typestring |
Veldmodel | Typestring |
Veldendpoint | Typestring |
Veldstatus | Typestring |
Veldrequest_counts | Typeobject |
Veldresults[].id | Typestring |
Veldresults[].response.status_code | Typeinteger |
Veldresults[].response.request_id | Typestring |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeOngeldige gedocumenteerde inline envelop, dubbele sleutels, ongeldige itemidentiteit of een conflict met de geconfigureerde modelmogelijkheden. | Volgende stapCorrigeer de aangegeven velden voordat u een nieuwe aanvraag indient. |
Antwoord401 · authentication_error | VoorwaardeOngeldige API-sleutel. | Volgende stapGebruik de geautoriseerde Ailoot-sleutel. |
Antwoord403 · permission_error | VoorwaardeBatch-groep niet beschikbaar. | Volgende stapControleer de toegangsrechten van de sleutel/groep. |
Antwoord422 · invalid_request_error | VoorwaardeBij Batch worden kosten van het saldo afgeschreven; aanmaken via een abonnement wordt geweigerd. | Volgende stapGebruik de geautoriseerde groep waarvoor kosten van het saldo worden afgeschreven. |
Antwoord422 · price_unavailable | VoorwaardeVoor de Batch-invoer kan geen prijsopgave worden berekend. | Volgende stapBewaar het antwoord; gebruik de gedocumenteerde invoer voor deze familie. |
Antwoord402 · billing_error | VoorwaardeBatch-reservering niet beschikbaar. | Volgende stapLos het toelatingsprobleem op voordat u een nieuwe aanvraag indient. |
Antwoord503 · price_unavailable | VoorwaardePrijs voor de Batch-methode/native tarieven niet beschikbaar. | Volgende stapBewaar het antwoord; vervang de prijzen niet. |
Antwoord503 · api_error | VoorwaardeDe exacte leveranciersroute is niet beschikbaar. | Volgende stapBewaar het antwoord voor herstel van de route. |
Antwoord503 · result_pending_check | VoorwaardeHet oorspronkelijke resultaat moet worden gecontroleerd; X-Should-Retry:false. | Volgende stapBewaar de oorspronkelijke operation_id/id en lees de status ervan uit; herhaal de oorspronkelijke POST nooit. |
Antwoord404 · not_found | VoorwaardeDe bewerking voor de Batch-status ontbreekt of is eigendom van een andere identiteit. | Volgende stapGebruik exact de oorspronkelijke id en dezelfde gebruiker/sleutel/groep. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra google/gemini-3.6-flash:batch
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · Google: Gemini 3.6 Flash (batch)
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/batches·google/gemini-3.6-flash:batch:text→text- Welke velden gebruikt het verzoek?
POST /v1/batches·google/gemini-3.6-flash:batch:endpoint,model,requests,completion_window,provider- Welke limieten gelden?
POST /v1/batches·google/gemini-3.6-flash:batch:requests.min_items:1