Google: Gemini 3 Flash Preview (batch)
Gemini 3 Flash Preview kombinerer multimodal forståelse og ræsonnement med tekstoutput. Den understøtter analyse af kode, dokumenter og billeder, strukturerede resultater og arbejdsgange med værktøjer samt fire dokumenterede tænkeniveauer til valg af analysens dybde.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Gemini 3 Flash Preview er Googles ræsonnementsmodel til multimodal forståelse, programmering og agentopgaver. Den accepterer tekst, billeder, video, lyd og PDF og returnerer tekst. En anmodning kan dermed samle skriftlige instruktioner, kildefiler, visuelle observationer og samtalehistorik om ét problem. Resultatet kan være en forklaring, et kodeforslag, udtrukne data eller en plan baseret på materialet frem for et genereret billede eller et talt svar.
Det modelspecifikke kort angiver en inputgrænse på 1.048.576 tokens og en outputgrænse på 65.536 tokens. Planlæg kildemateriale og resultat hver for sig: et langt uddrag fra et repository, en dokumentsamling eller en optagelse kan kun være der, hvis den behandlede repræsentation og instruktionerne passer inden for inputbudgettet, mens svaret stadig har brug for sin egen tildelte længde. Mærk sammenhørende kilder, og angiv, hvilket materiale der har forrang. Ved en lang prompt anbefaler udviklervejledningen at placere det konkrete spørgsmål efter dataene og knytte det udtrykkeligt til de foregående oplysninger.
Tænkningen er dynamisk, og high er modellens dokumenterede standard. De understøttede niveauer er minimal, low, medium og high. De er relative rammer for ræsonnement frem for garanterede tokenantal. Minimal kan stadig indebære noget ræsonnement ved et vanskeligt programmeringsproblem. Vælg et niveau efter opgaven: en kort omformning og en fejlsøgning med flere betingelser kræver forskellig behandling. Brug direkte og klare instruktioner frem for at tvinge omfattende ræsonnementsritualer ind i prompten; bed om det færdige resultat og de kontroller, der gør det anvendeligt.
Producentens kort angiver strukturerede output, function calling, kodeudførelse, computerbrug, filsøgning, search grounding, Google Maps grounding, URL-kontekst og caching. Indbyggede værktøjer kan kombineres med brugerdefineret function calling i den dokumenterede Gemini 3-arbejdsgang. En applikation definerer funktionerne, kontrollerer deres argumenter, udfører godkendte handlinger og sender resultaterne tilbage. Til en kodeassistent kan et værktøj til fillæsning eller en kontrolleret testkører levere konkret dokumentation til næste trin. En foreslået handling og et observeret værktøjsresultat bør holdes adskilt i den afsluttende rapport.
Ved programmering skal du levere de relevante filer, sproget, den forventede adfærd og et input, der viser problemet. Afgræns ændringen, og angiv den grænseflade eller adfærd, der skal bevares. Bed om en revideret implementering og de tilfælde, der bør kontrolleres. Ved en analytisk dokumentopgave skal du definere spørgsmålet, de påkrævede felter og kildehenvisningerne. Hvis der bruges struktureret output, skal du levere et skema med tydelige feltbetydninger og regler for manglende værdier. Valider både syntaksen, og om hver værdi følger af det oprindelige materiale.
Ved multimodal analyse skal du angive, hvad der er vigtigt i hver kilde. Et skærmbillede kan understøtte en forklaring af en grænseflade, en PDF kan levere en tabel eller graf, og en optagelse kan indeholde talte eller synlige hændelser. Udviklervejledningen gennemgår indstillinger for medieopløsning, fordi detaljegraden påvirker den behandlede repræsentation og tokenforbruget. Producentens arbejdsgang til kodeudførelse kan beskære eller zoome ind på indsendte billeder, foretage beregninger ud fra visuelle data og tilføje anmærkninger, før modellen udarbejder sit svar. Læsbar lille tekst kan kræve en anden indstilling end en overordnet scenebeskrivelse. Bevar den relevante side, det relevante billede eller klip, så observationer kan kontrolleres, frem for at behandle en flydende sammenfatning som dokumentation for, at hver detalje er læst korrekt.
Samtale- og værktøjstilstand skal bevares i den valgte grænseflade. Gemini 3 bruger thought signatures til at føre ræsonnementskontekst videre mellem kald; udviklervejledningen skelner mellem administreret historik med tilstand og manuelt administreret historik uden tilstand. Bevar den nødvendige kontekst, når du fortsætter en værktøjsopgave eller reviderer et resultat. Google anbefaler også at beholde standardtemperaturen på 1.0 frem for at overføre en fremgangsmåde med lav temperatur, der kan medføre løkker eller ringere adfærd ved komplekse opgaver. Det er producentens integrationspraksis, ikke nye påstande om en bestemt applikations transport.
Tekstmodellen annoncerer ikke billed- eller lydgenerering eller Live API. Vejledningen skelner også mellem visuel forståelse og billedsegmentering på pixelniveau, som Gemini 3 Flash ikke understøtter. Brug et slutresultat, der passer til den faktiske opgave: observationer med kildehenvisninger, en struktureret post, en kodeændring eller en beslutning med angivne antagelser. Kontroller regnestykker, verificer kode i det tilsigtede miljø, og gennemgå returnerede værktøjsoplysninger. Når aktuelle fakta er vigtige, skal du bruge de konfigurerede grounding-kilder eller indsendte aktuelle data frem for at antage, at modellens viden er en live database.
Ailoot Ultra · Batch POST /v1/batches google/gemini-3-flash-preview:batch
google/gemini-3-flash-preview:batch
google/gemini-3-flash-preview:batchStart
Gemini 3 Flash Preview kombinerer multimodal forståelse og ræsonnement med tekstoutput. Den understøtter analyse af kode, dokumenter og billeder, strukturerede resultater og arbejdsgange med værktøjer samt fire dokumenterede tænkeniveauer til valg af analysens dybde.
- Accepterede input
- Tekst
- Resultater
- Tekst
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Batch POST /v1/batches
- Inputtyper
text- Outputtyper
text- Outputformat
- JSON direkte i results[].response.body
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltendpoint | Typestring | KravPåkrævet | Værdier og grænser /v1/chat/completions | Standard— |
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser google/gemini-3-flash-preview:batch | Standard— |
Feltrequests | Typebatch_item[] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 | Standard— |
Feltrequests[].custom_id | Typestring | KravPåkrævet | Værdier og grænser | Standard— |
Feltrequests[].body.messages | Typemessage[] | KravPåkrævet | Værdier og grænser | Standard— |
Feltcompletion_window | Typestring | KravValgfrit | Værdier og grænser 24h | Standard— |
Feltprovider | Typeobject|null | KravValgfrit | Værdier og grænser | Standard— |
Feltrequests[].body.model | Typestring | KravValgfrit | Værdier og grænser google/gemini-3-flash-preview:batch, google/gemini-3-flash-preview | Standard— |
Feltprovider.only | Typestring[] | KravValgfrit | Værdier og grænser google-vertex/global | Standard— |
Feltprovider.allow_fallbacks | Typeboolean|null | KravValgfrit | Værdier og grænser false, null | Standard— |
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktendpoint, model, requests |
Parametermaterial_types | Kontrakttext |
Parameterrepresentation | Kontraktrequests[] direkte i anmodningen; hvert element har custom_id og body |
Parameterrequest_endpoint_profile | Kontrakt/v1/chat/completions |
Parameterfile_material | KontraktDen kaldende part kan læse det faktiske JSONL-indhold i UTF-8 lokalt ind i requests[]. Der angives hverken purpose til upload, input_file_id eller en filreference. Hvis kundematerialet mangler eller er tomt, stoppes forberedelsen før POST. |
Parameterserialization_order | Kontraktendpoint, model, provider (hvis angivet), completion_window (hvis angivet), requests til sidst |
Parameteroptional_controls | Kontraktprovider.only, provider.allow_fallbacks, completion_window |
Parameterschema_scope | KontraktAnmodningsindhold for Chat Completions med tekst i den dokumenterede inline Batch-struktur. |
Livscyklus: asynchronous
GET /v1/batches/{operation_id} · det faktiske response.id fra den oprindelige oprettelse; samme bruger/nøgle/gruppe
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
- Priser for eksplicit caching
- Ikke aktiveret Når der anmodes om eksplicit caching
Ailoot-takster
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Konteksttokens, mere end | Konteksttokens, op til og med | Beløb |
|---|---|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Konteksttokens, mere end— | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0005 / 1K tokens Output · Outputtokens $0.003 / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
| KonfigurationAnmodningslængde · niveau 1 | Takstplan— | Konteksttokens, mere end0 | Konteksttokens, op til og medIngen øvre grænse | Beløb Input · Inputtokens $0.0005 / 1K tokens Output · Outputtokens $0.003 / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
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-flash-preview: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-flash-preview:batch', 'google/gemini-3-flash-preview']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"google/gemini-3-flash-preview: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.
Hent og gem resultater
Ailoot Ultra · Batch
JSON direkte i results[].response.body
GET /v1/batches/{operation_id}
Kontrollér opgavestatus
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
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hele den oprindelige status i JSON, hvert resultat/custom_id og det fulde svar- eller fejlindhold. Gem færdige results[] som JSONL uden filtrering.
Hvis det oprindelige svar skal kontrolleres
Gem det oprindelige operations-ID. 503 result_pending_check har X-Should-Retry:false; send aldrig en oprindelig batch igen, hvis dens udfald er ukendt.
Svarfelter
| Felt | Type |
|---|---|
Feltresults[].custom_id | Typestring |
Feltresults[].response.body.choices[].message.content | Typestring|null |
Feltresults[].error | Typeobject|null |
Feltusage | Typeobject|null |
Feltid | Typestring |
Feltmodel | Typestring |
Feltendpoint | Typestring |
Feltstatus | Typestring |
Feltrequest_counts | Typeobject |
Feltresults[].id | Typestring |
Feltresults[].response.status_code | Typeinteger |
Feltresults[].response.request_id | Typestring |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldig dokumenteret inline-struktur, dublerede nøgler, ugyldig elementidentitet eller konflikt med modellens konfigurerede funktioner. | Næste trinRet de angivne felter, før du sender en ny anmodning. |
Svar401 · authentication_error | BetingelseUgyldig API-nøgle. | Næste trinBrug den godkendte Ailoot-nøgle. |
Svar403 · permission_error | BetingelseBatch-gruppen er ikke tilgængelig. | Næste trinKontrollér nøglens/gruppens adgangsrettigheder. |
Svar422 · invalid_request_error | BetingelseBatch afregnes via saldoen; oprettelse via et abonnement afvises. | Næste trinBrug den godkendte gruppe med saldoafregning. |
Svar422 · price_unavailable | BetingelseDer kan ikke beregnes en pris for Batch-inputtet. | Næste trinGem svaret; brug det dokumenterede input for API-familien. |
Svar402 · billing_error | BetingelseReservationen til Batch er ikke tilgængelig. | Næste trinAfklar adgangen, før du sender en ny anmodning. |
Svar503 · price_unavailable | BetingelsePrisen for Batch-metoden eller de native satser er ikke tilgængelige. | Næste trinGem svaret; erstat ikke priserne med andre priser. |
Svar503 · api_error | BetingelseDen præcise leverandørrute er ikke tilgængelig. | Næste trinGem svaret, så ruten kan repareres. |
Svar503 · result_pending_check | BetingelseDet oprindelige resultat skal kontrolleres; X-Should-Retry:false. | Næste trinGem det oprindelige operation_id/id, og læs dets status; gentag aldrig den oprindelige POST. |
Svar404 · not_found | BetingelseOperationen til Batch-status findes ikke eller tilhører en anden identitet. | Næste trinBrug det nøjagtige oprindelige id og samme bruger/nøgle/gruppe. |
Aliaser
Modelaliaser
Ailoot Ultra google/gemini-3-flash-preview:batch
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · Google: Gemini 3 Flash Preview (batch)
- Hvilke input og resultater er tilgængelige?
POST /v1/batches·google/gemini-3-flash-preview:batch:text→text- Hvilke felter bruger anmodningen?
POST /v1/batches·google/gemini-3-flash-preview:batch:endpoint,model,requests,completion_window,provider- Hvilke grænser gælder?
POST /v1/batches·google/gemini-3-flash-preview:batch:requests.min_items:1