Anthropic: Claude Sonnet 4
Claude Sonnet 4 er Anthropics model til programmering og ræsonnement med tekst-, billed- og filinput. Den offentliggjorte profil omfatter værktøjer og ræsonnementsindstillinger, et kontekstvindue på 200.000 tokens og op til 64.000 tokens til svargenerering.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Claude Sonnet 4 er Anthropics model med fokus på programmerings- og ræsonnementsopgaver. Den offentliggjorte hostingprofil modtager tekst, billeder og filer og returnerer tekst. Den angiver indstillinger for ræsonnement og funktionsværktøjer med et kontekstvindue på 200.000 tokens og op til 64.000 tokens til svargenerering.
Kode og dokumenter med et eksplicit resultat
Ved softwarearbejde gives den relevante kilde, den observerede adfærd og den ønskede rettelse. Bevar det fejlende eksempel og det faktiske fejloutput, når de bestemmer diagnosen. Bed om en afgrænset ændring og de kontroller, der er nødvendige for at vurdere effekten.
Ved dokumentanalyse mærkes kilderne, og de kriterier eller spørgsmål, som skal anvendes, angives. En sammenligning kan bede om én observation pr. kriterium; en udtrækning kan definere de værdier, som skal returneres, og hvordan manglende oplysninger skal fremstå. Bevar kildemærkninger, så et kortfattet svar forbliver forbundet med det understøttende materiale.
Brug visuelle belæg målrettet
Angiv det relevante billede, den relevante side eller grænsefladetilstand og den detalje, der skal undersøges. Et skærmbillede kan understøtte et spørgsmål om synligt indhold eller adfærd; et dokumentbillede kan tilføje layoutkontekst til det skriftlige materiale. Hold den relevante kilde tilgængelig ved gennemgang af udtrukket ordlyd eller fortolkning.
Ræsonnement og applikationsværktøjer
Profilen angiver ræsonnement og funktionsværktøjer. Definer de handlinger, som er tilgængelige for den omgivende applikation, og bevar de returnerede observationer. En foreslået handling og dens faktiske resultat har forskellige roller i forløbet; observationen giver belæg for næste trin.
Når et svar skal blive til data, angives felterne og deres betydning, og den faktisk returnerede post valideres mod kilden. Ved et menneskeligt læsbart resultat bedes der om konklusionen og de relevante belæg. Afsæt plads til svaret inden for arbejdskonteksten, og bevar fastlagte beslutninger til senere ture.
Et nyttigt Sonnet 4-resultat holder analysen eller den foreslåede ændring sammen med kildehenvisninger og validering, så næste trin kan fortsætte fra et resultat, som kan undersøges.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-sonnet-4-20250514-thinking
claude-sonnet-4-20250514-thinking
claude-sonnet-4-20250514-thinkingStart
Claude Sonnet 4 er Anthropics model til programmering og ræsonnement med tekst-, billed- og filinput. Den offentliggjorte profil omfatter værktøjer og ræsonnementsindstillinger, et kontekstvindue på 200.000 tokens og op til 64.000 tokens til svargenerering.
- Accepterede input
- Tekst
- Resultater
- Tekst
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Inputtyper
text- Outputtyper
text- Outputformat
- json eller SSE
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser claude-sonnet-4-20250514-thinking | Standard— |
Feltmessages | Typemessage[] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 | Standard— |
Feltmessages[].role | Typestring | KravPåkrævet | Værdier og grænser Afhænger af modellen | Standard— |
Feltmessages[].content | Typestring | KravValgfrit | Værdier og grænser Gælder når: Tekstsamtale | Standard— |
Feltstream | Typeboolean | KravValgfrit | Værdier og grænser | Standardfalse |
Kombinationer af inputmaterialer
Tekst · UTF8-tekst
messages[].content
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, messages |
Parametermaterial_types | Kontrakttext |
Parametermessages | Kontraktbeskedarray med strukturen role/content |
Parameterfile_material | Kontraktfaktisk UTF-8-dokument indsat som bogstavelig tekst; intet fil-ID udledes |
Parameteroptional_controls | Kontraktstream |
Parametercontrol_scope | KontraktTekstsamtale; stream er en boolesk værdi og er som standard false. |
Parameteroutput_modalities | Kontrakttext |
Parameterhosted_operations | Kontraktfalse |
Parametermultimodal_input_binding | Kontraktnull |
Metodealiaser: /chat/completions
Livscyklus: synchronous_or_streamed
Send det præcise model-ID med messages.
Kontekstlængde er ikke et outputloft.
En tekstfil kan levere bogstavelig tekst; billed-, lyd- og filobjektinput kræver en præcis binding.
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
Ailoot-takster
Priser efter konfiguration
| Konfiguration | Takstplan | Beløb |
|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Beløb Input · Inputtokens $0.006 / 1K tokens Output · Outputtokens $0.03 / 1K tokens Input · Cachelæsning $0.0006 / 1K tokens Input · Cacheskrivning $0.0075 / 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 · OpenAI Chat
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
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"))
Hent og gem resultater
Ailoot Ultra · OpenAI Chat
json eller SSE
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Bevar hvert valg og dets indhold, værktøjskald og ræsonnement. Saml i SSE deltaer efter valg-/værktøjsindeks, og bevar den endelige afslutningsårsag og forbrugsoplysningerne.
Hvis det oprindelige svar skal kontrolleres
Bevar anmodnings-/svar-ID’er og headere. Der leveres ingen generel URL til at hente tekstjob.
Svarfelter
| Felt | Type |
|---|---|
Feltchoices[].index | Typeinteger |
Feltchoices[].message.content | Typestring|null |
Feltchoices[].message.tool_calls | Typetool_call[] |
Feltchoices[].message.reasoning_content | Typestring |
Feltchoices[].message.reasoning_details | Typeobject|array |
Feltchoices[].finish_reason | Typestring|null |
Feltusage | Typeobject |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Aliaser
Modelaliaser
Ailoot Ultra claude-sonnet-4-20250514-thinking
Aliaser for metodestier
/chat/completions
Relaterede kalder-ID’er
FAQ · Anthropic: Claude Sonnet 4
- Hvilke input og resultater er tilgængelige?
POST /v1/chat/completions·claude-sonnet-4-20250514-thinking:text→text- Hvilke felter bruger anmodningen?
POST /v1/chat/completions·claude-sonnet-4-20250514-thinking:model,messages,stream- Hvilke grænser gælder?
POST /v1/chat/completions·claude-sonnet-4-20250514-thinking:messages.min_items:1