Source: https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/
Canonical: https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/
Language: nb

# Anthropic: Claude Sonnet 4

[Markdown](https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/index.md) · [JSON](https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/facts.json)

## [Anthropic: Claude Sonnet 4](https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/)

Claude Sonnet 4 er Anthropics modell for koding og resonnering med tekst-, bilde- og filinput. Den publiserte profilen omfatter verktøy og resonneringskontroller, et kontekstvindu på 200,000 tokener og opptil 64,000 svartokener.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `claude-sonnet-4-20250514-thinking`](https://ailoot.ai/models/nb/claude-sonnet-4-20250514-thinking/#method-0)

Om modellen

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

Claude Sonnet 4 er Anthropics modell med fokus på kode- og resonneringsoppgaver. Den publiserte driftsprofilen tar imot tekst, bilder og filer og returnerer tekst. Den oppgir kontroller for resonnering og funksjonsverktøy, med et kontekstvindu på 200,000 tokener og opptil 64,000 svartokener.

#### Kode og dokumenter med et tydelig resultat

For programvarearbeid oppgir du relevant kildekode, observert oppførsel og ønsket korreksjon. Behold det sviktende eksemplet og faktisk feiloutput når de avgjør diagnosen. Be om en målrettet endring og kontrollene som trengs for å vurdere virkningen.

For dokumentanalyse merker du kildene og navngir kriteriene eller spørsmålene som skal brukes. En sammenligning kan be om ett funn per kriterium; en uthenting kan definere verdiene som skal returneres og hvordan manglende informasjon skal fremstå. Bevar kildeetiketter slik at et kort svar fortsatt er knyttet til materialet som støtter det.

#### Bruk visuelt belegg målrettet

Identifiser bildet, siden eller grensesnittilstanden som betyr noe og detaljen som skal undersøkes. Et skjermbilde kan støtte et spørsmål om synlig innhold eller oppførsel; et dokumentbilde kan tilføre oppsettskontekst til det skriftlige materialet. Hold den relevante kilden tilgjengelig når du vurderer uttrukket ordlyd eller tolkning.

#### Resonnering og applikasjonsverktøy

Profilen oppgir resonnering og funksjonsverktøy. Definer operasjonene som er tilgjengelige for den omkringliggende applikasjonen og behold observasjonene de returnerer. En foreslått handling og det faktiske resultatet har forskjellige roller i arbeidsflyten; observasjonen gir belegg for neste trinn.

Når et svar skal bli data, oppgir du feltene og betydningen og validerer den faktisk returnerte posten mot kilden. For et menneskelesbart resultat ber du om konklusjonen og belegget som betyr noe for den. Sett av plass til svaret i arbeidskonteksten og bevar allerede fattede beslutninger for senere runder.

En nyttig Sonnet 4-leveranse lar analysen eller den foreslåtte endringen bli stående med kildehenvisninger og validering, slik at neste trinn kan fortsette fra et resultat som kan inspiseres.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `claude-sonnet-4-20250514-thinking`

[`claude-sonnet-4-20250514-thinking`](https://ailoot.ai/models/nb/#m=claude-sonnet-4-20250514-thinking&route=Ultra&caller=claude-sonnet-4-20250514-thinking&fmt=chat)

Anthropic /`claude-sonnet-4-20250514-thinking`

### Start

Claude Sonnet 4 er Anthropics modell for koding og resonnering med tekst-, bilde- og filinput. Den publiserte profilen omfatter verktøy og resonneringskontroller, et kontekstvindu på 200,000 tokener og opptil 64,000 svartokener.

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 claude-sonnet-4-20250514-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

#### Ailoot-satser

#### Priser etter konfigurasjon

| Konfigurasjon | Prisplan | Kostnad |
| --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Kostnad Inndata · Inngående tokener **$0.006** / 1K tokener Utdata · Utgående tokener **$0.03** / 1K tokener Inndata · Lesing fra hurtigbuffer **$0.0006** / 1K tokener Inndata · Skriving til hurtigbuffer **$0.0075** / 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":"claude-sonnet-4-20250514-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="claude-sonnet-4-20250514-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** [`claude-sonnet-4-20250514-thinking`](https://ailoot.ai/models/nb/#m=claude-sonnet-4-20250514-thinking&route=Ultra&caller=claude-sonnet-4-20250514-thinking&fmt=chat)

#### Aliaser for metodestier

`/chat/completions`

#### Tilknyttede anroper-ID-er

[`claude-sonnet-4-20250514-thinking`](https://ailoot.ai/models/nb/#m=claude-sonnet-4-20250514-thinking&route=Ultra&caller=claude-sonnet-4-20250514-thinking&fmt=chat)

FAQ · Anthropic: Claude Sonnet 4

Hvilke inndata og resultater er tilgjengelige?

`POST /v1/chat/completions` · `claude-sonnet-4-20250514-thinking`: `text` → `text`

Hvilke felt bruker forespørselen?

`POST /v1/chat/completions` · `claude-sonnet-4-20250514-thinking`: `model`, `messages`, `stream`

Hvilke grenser gjelder?

`POST /v1/chat/completions` · `claude-sonnet-4-20250514-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.
