Source: https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/
Canonical: https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/
Language: nb

# Google: Gemini 3.5 Flash

[Markdown](https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/index.md) · [JSON](https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/facts.json)

## [Google: Gemini 3.5 Flash](https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/)

Gemini 3.5 Flash kombinerer multimodal forståelse med resonnering for koding og agentoppgaver i flere trinn. Den tar imot tekst, bilder, video, lyd og PDF og produserer tekst, med strukturerte utdata, verktøy og en inndatagrense på 1048576 tokener i den dokumenterte profilen.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/gemini-3-5-flash-thinking/#method-1)

Om modellen

Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.

Gemini 3.5 Flash er Googles multimodale Flash-modellprofil for vedvarende koding og agentarbeid. De dokumenterte inndataene er tekst, bilder, video, lyd og PDF, med tekst som utdata. Modellens oppgavefokus omfatter iterativ koding, utforsking av alternative løsninger og lengre sekvenser av instruksjoner og verktøybruk. 3.5-utgaven tilbyr dokumenterte kontroller for resonnering, multimodale inndata og verktøyarbeidsflyter.

En kodeoppgave kan kombinere et skriftlig krav, relevante kildefiler og et skjermbilde av det tiltenkte resultatet. Oppgi den observerte atferden, forventet atferd og begrensningene som må bevares. Et illustrerende oppdrag er: «Sammenlign skjermbildet med komponentteksten, identifiser avviket i skjemaets arbeidsflyt, og foreslå én målrettet rettelse. Forklar hvilke detaljer i kilden som begrunner endringen.» Ved en dokumentoppgave oppgir du de relevante sidene og ber om en sammenligning mot eksplisitte krav, med kildereferanser for hvert funn.

Utgaven dokumenterer resonneringsnivåene minimal, low, medium og high. Medium er standard, endret fra standardnivået high i Gemini 3 Flash Preview. Minimal passer til enkle svar og ukompliserte verktøyvalg uten å garantere at resonnering er helt deaktivert; low retter seg mot oppgaver som trenger færre trinn; high gir dypere resonnering for vanskelige problemer innen matematikk, koding og agenter. Google anbefaler å bruke thinking\_level til å styre innsatsen og å beholde standardinnstillingene for sampling fremfor å forsøke å tvinge frem resonnering ved å endre temperature, top-p eller top-k.

En definerende atferd er bevaring av resonneringskontekst gjennom en oppgave med flere samtalerunder. Googles Interactions-arbeidsflyt viderefører denne konteksten automatisk; GenerateContent-arbeidsflyten krever hele den uendrede samtalehistorikken, inkludert resonneringssignaturer. Dette støtter en pågående oppgave med feilsøking eller refaktorering der tidligere resonnering informerer neste trinn. Behold den faktiske samtalestrukturen fremfor å gjøre hver oppfølging til en urelatert instruks, og hold den endelige leveransen tydelig etter hvert som arbeidet går fremover.

Det dokumenterte verktøysettet inkluderer Google Search, forankring med Google Maps, filsøk, kodekjøring, URL-kontekst og vanlige funksjonskall, med kombinert verktøybruk og Computer Use merket som en forhåndsversjon. Strukturerte utdata kan gi en definert datapost. Gi funksjoner et tydelig formål og en parameterdefinisjon: modellen velger en funksjon, mens den tilkoblede applikasjonen utfører operasjonen og returnerer resultatet. Google krever at funksjonsresultater samsvarer med de foregående kallene etter identitet, navn og antall; multimodale resultater hører hjemme i funksjonssvaret.

Den konkrete API-modelltabellen oppgir maksimalt 1048576 inndatatokener og 65536 utdatatokener. Samtalehistorikken og tilførte medier inngår i inndatabudsjettet. Hurtigbufring og batchbehandling er dokumentert for profilen, med ytterligere Flex- og Priority-behandlingsalternativer i Googles tabell. Disse grensene og egenskapene beskriver produsentutgaven; de krever ikke at et svar fyller hele utdatavinduet eller at alle verktøy er nødvendige for en oppgave.

Denne profilen genererer tekst fremfor bilder eller lyd og bruker ikke Live API. Utviklerveiledningen utelukker også bildesegmentering. Ved et visuelt spørsmål ber du om en beskrivelse, et uttrekk eller en tolkning av det oppgitte materialet; ved et taleopptak ber du om et tekstresultat. Når svaret avhenger av nyere informasjon, kan den dokumenterte arbeidsflyten for forankring i søk tilføre kilder utover treningskunnskapen. Angi om ekstern informasjon trengs, og hvilket belegg det endelige svaret skal beholde.

For en nyttig lengre oppgave definerer du sluttresultatet og fullføringskriteriet før første trinn. En støtteanalyse kan be om en tabell med observerte problemer, støttende passasjer og et foreslått svar; en kodeoppgave kan kreve den målrettede endringen og det relevante valideringsresultatet. Legg ved kildekonteksten som er viktig, spesifiser tillatte verktøyhandlinger, og be om et eksplisitt sluttsvar som skiller fullført arbeid fra spørsmål som fortsatt trenger informasjon. Dette gjør modellens vedvarende arbeidsflyt til en konkret tekst-, kode- eller strukturert leveranse.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-3.5-flash-thinking`

[`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=chat)

Google /`gemini-3.5-flash-thinking`

### Start

Gemini 3.5 Flash kombinerer multimodal forståelse med resonnering for koding og agentoppgaver i flere trinn. Den tar imot tekst, bilder, video, lyd og PDF og produserer tekst, med strukturerte utdata, verktøy og en inndatagrense på 1048576 tokener i den dokumenterte profilen.

Godkjente inndata

Tekst

Resultater

Tekst

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Inndatatyper

`text`

Utdatatyper

`text`

Utdataformat

json eller SSE

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser gemini-3.5-flash-thinking | Standard— |
| Felt`messages` | Type`message[]` | KravPåkrevd | Verdier & grenser Minste antall elementer: 1 | Standard— |
| Felt`messages[].role` | Type`string` | KravPåkrevd | Verdier & grenser Avhenger av modellen | Standard— |
| Felt`messages[].content` | Type`string` | KravValgfritt | Verdier & grenser Gjelder når: Tekstsamtale | Standard— |
| Felt`stream` | Type`boolean` | KravValgfritt | Verdier & grenser | Standardfalse |

Kombinasjoner av inngående materialer

**Tekst** · UTF8-tekst

`messages[].content`

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, messages |
| Parameter`material_types` | Avtaletext |
| Parameter`messages` | Avtalemeldingstabell med role/content-struktur |
| Parameter`file_material` | Avtalefaktisk UTF-8-dokument satt inn som bokstavelig tekst; ingen fil-ID utledes |
| Parameter`optional_controls` | Avtalestream |
| Parameter`control_scope` | AvtaleTekstsamtale; stream er en boolsk verdi med false som standard. |
| Parameter`output_modalities` | Avtaletext |
| Parameter`hosted_operations` | Avtalefalse |
| Parameter`multimodal_input_binding` | Avtalenull |

Metodealiaser: `/chat/completions`

Livssyklus: `synchronous_or_streamed`

Send eksakt modell-ID sammen med messages.

Kontekstlengde er ikke en outputgrense.

En tekstfil kan levere bokstavelig tekst; bilde-, lyd- og filobjektinput trenger eksakt binding.

### Priser

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Ikke angitt Når hurtigmodus er valgt

Flex-modus

Ikke angitt Når flex-modus er valgt

Maksimal resonneringsinnsats

Ikke angitt Når justeringen «default» brukes for maksimal resonneringsinnsats

Priser for eksplisitt mellomlagring

Ikke aktivert Når eksplisitt mellomlagring forespørres

#### Ailoot-satser

#### Priser etter konfigurasjon

| Konfigurasjon | Prisplan | Kostnad |
| --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Kostnad Inndata · Inngående tokener **$0.003** / 1K tokener Utdata · Utgående tokener **$0.018** / 1K tokener Inndata · Lesing fra hurtigbuffer **$0** / 1K tokener Inndata · Skriving til hurtigbuffer **$0** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · OpenAI Chat

curlPython SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"gemini-3.5-flash-thinking","messages":[{"role":"user","content":"hello"}],"stream":false}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="gemini-3.5-flash-thinking", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

### Motta og lagre resultater

#### Ailoot Ultra · OpenAI Chat

json eller SSE

##### Behold alle ferdige resultater

Behold alle fullstendige returnerte svar, filer og innholdsdeler.

Behold hvert svaralternativ med innhold, verktøykall og resonnering. Sett sammen endringer i SSE etter svaralternativets/verktøyets indeks, og behold endelig avslutningsgrunn og bruksdata.

##### Hvis det opprinnelige svaret må kontrolleres

Behold forespørsels-/svar-ID-er og headere. Ingen generell URL for henting av tekstjobber oppgis.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`choices[].index` | Typeinteger |
| Felt`choices[].message.content` | Typestring\|null |
| Felt`choices[].message.tool_calls` | Typetool\_call\[\] |
| Felt`choices[].message.reasoning_content` | Typestring |
| Felt`choices[].message.reasoning_details` | Typeobject\|array |
| Felt`choices[].finish_reason` | Typestring\|null |
| Felt`usage` | Typeobject |

Feil og neste trinn

| Svar | Vilkår | Neste trinn |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |

### Aliaser

#### Modellaliaser

**Ailoot Ultra** [`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=chat)

#### Aliaser for metodestier

`/chat/completions`

#### Tilknyttede anroper-ID-er

[`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-3.5-flash-thinking`

[`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=messages)

Google /`gemini-3.5-flash-thinking`

### Start

Gemini 3.5 Flash kombinerer multimodal forståelse med resonnering for koding og agentoppgaver i flere trinn. Den tar imot tekst, bilder, video, lyd og PDF og produserer tekst, med strukturerte utdata, verktøy og en inndatagrense på 1048576 tokener i den dokumenterte profilen.

Godkjente inndata

Tekst

Resultater

json · sse

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Inndatatyper

`text`

Utdatatyper

`json`, `sse`

Utdataformat

JSON eller SSE

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser gemini-3.5-flash-thinking | Standard— |
| Felt`messages` | Type`message[]` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`messages[].role` | Type`string` | KravPåkrevd | Verdier & grenser user, assistant | Standard— |
| Felt`messages[].content` | Type`string` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`max_tokens` | Type`integer` | KravPåkrevd | Verdier & grenser | Standard— |
| Felt`stream` | Type`boolean` | KravValgfritt | Verdier & grenser | Standardfalse |

Kombinasjoner av inngående materialer

**Tekst** · UTF-8-tekst

`messages[].content-streng`

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, messages, max\_tokens |
| Parameter`optional_controls` | Avtalestream |
| Parameter`material_types` | Avtaletext |
| Parameter`text_file_material` | AvtaleLes det faktiske UTF-8-dokumentet og legg teksten i den angitte input- eller meldingsinnholdsstrengen. |

Livssyklus: `synchronous_or_streamed`

### Priser

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Ikke angitt Når hurtigmodus er valgt

Flex-modus

Ikke angitt Når flex-modus er valgt

Maksimal resonneringsinnsats

Ikke angitt Når justeringen «default» brukes for maksimal resonneringsinnsats

Priser for eksplisitt mellomlagring

Ikke aktivert Når eksplisitt mellomlagring forespørres

#### Ailoot-satser

#### Priser etter konfigurasjon

| Konfigurasjon | Prisplan | Kostnad |
| --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Kostnad Inndata · Inngående tokener **$0.003** / 1K tokener Utdata · Utgående tokener **$0.018** / 1K tokener Inndata · Lesing fra hurtigbuffer **$0** / 1K tokener Inndata · Skriving til hurtigbuffer **$0** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · Anthropic Messages

Komplett, minimal JSON-kroppcurl · bruk UTF-8-dokumentet dittPython · lagre hele resultatet

```json
{
  "model": "gemini-3.5-flash-thinking",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3.5-flash-thinking', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3.5-flash-thinking', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Motta og lagre resultater

#### Ailoot Ultra · Anthropic Messages

JSON eller SSE

##### Behold alle ferdige resultater

Behold alle fullstendige returnerte svar, filer og innholdsdeler.

Behold alle innholdsblokker, resonneringssignaturer og faktiske ID-er for verktøybruk. Sett sammen alle SSE-blokkendringer; den første tekstblokken er ikke hele resultatet.

##### Hvis det opprinnelige svaret må kontrolleres

Behold forespørsels-/svar-ID-er og headere. Ingen generell URL for henting av tekstjobber oppgis.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`id` | Typestring |
| Felt`model` | Typestring |
| Felt`content[]` | Typetext\|thinking\|tool\_use\|other content block |
| Felt`stop_reason` | Typestring\|null |
| Felt`usage` | Typeobject |

Feil og neste trinn

| Svar | Vilkår | Neste trinn |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |

### Aliaser

#### Modellaliaser

**Ailoot Ultra** [`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=messages)

#### Aliaser for metodestier

`/chat/completions`

#### Tilknyttede anroper-ID-er

[`gemini-3.5-flash-thinking`](https://ailoot.ai/models/nb/#m=gemini-3.5-flash-thinking&route=Ultra&caller=gemini-3.5-flash-thinking&fmt=messages)

FAQ · Google: Gemini 3.5 Flash

Hvilke inndata og resultater er tilgjengelige?

`POST /v1/chat/completions` · `gemini-3.5-flash-thinking`: `text` → `text` `POST /v1/messages` · `gemini-3.5-flash-thinking`: `text` → `json`, `sse`

Hvilke felt bruker forespørselen?

`POST /v1/chat/completions` · `gemini-3.5-flash-thinking`: `model`, `messages`, `stream` `POST /v1/messages` · `gemini-3.5-flash-thinking`: `model`, `messages`, `max_tokens`, `stream`

Hvilke grenser gjelder?

`POST /v1/chat/completions` · `gemini-3.5-flash-thinking`: `messages.min_items`: `1`

Koble Ailoot til Claude Code, OpenCode, Hermes eller egen applikasjon.

## Selskapet og dets prosjektportefølje

Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.

## Kjøp tokener med rabatt.

Abonnementsrabatt for jevnlig bruk. Kampanjekoder gir opptil 50% på tokenkjøp.

Abonnement

Velg et rabattabonnement for faste forespørsler.

Kampanjekode opptil 50%

Oppgi kode ved kjøp. Prisen beregnes på nytt etter gjeldende kampanje.

Kostnader i historikken

Modell, tokener og beløp lagres for hver forespørsel.

[Velg abonnement](https://ailoot.ai/docs/nb/billing/subscriptions/) · [Se modellpriser](https://ailoot.ai/models/nb/)

## Koble API-et til produktet du selger.

SaaS, apper og boter etter Ailoots offentlige tilbud og lisensavtale. Be om forhandlerlisens for videresalg.

Kommersiell applikasjon

Bygg tekst-, bilde-, video- og lydgenerering inn i betalte funksjoner i tjenesten.

Forhandlerlisens

Send prosjektbeskrivelse og tilgangsopplegg. Be om skriftlige vilkår for bruk og videresalg.

Dokumenter på nettstedet

Offentlig tilbud, lisensavtale og retningslinjer for databehandling er tilgjengelige før tilkobling.

[Be om forhandlerlisens](mailto:support@ailoot.ai) · [Offentlig tilbud og lisensavtale](https://ailoot.ai/legal/offer?lang=nb)

## Ailoot · Selskapet og dets prosjektportefølje





Ailoot bygger på etablert driftserfaring, en stor kundebase, stabil tjeneste og løpende KPI-kontroll.





Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.





Ailoot bruker denne driftserfaringen til API-tilgang til AI-funksjoner i kundenes produkter, agenter, applikasjoner og automatiseringer.
