Anthropic: Claude Sonnet 4.6
Claude Sonnet 4.6 helpt bij ontwikkeling, begrip van lange documenten, planning en taken met visuele gegevens. Het ondersteunt adaptief redeneren en meertrapswerk met tools.
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.
Code, documenten en een actieplan
Claude Sonnet 4.6 combineert programmeren, begrip van een grote context, agentplanning, professioneel informatiewerk en ontwerp. Anthropic benadrukt het bestuderen van code vóór wijzigingen en het vermogen om opeenvolgend aan meerdere stappen van een opdracht te werken. Dit is nuttig bij het zoeken naar een probleem in een groot project, het analyseren van een lang document en het voorbereiden van rapportinhoud.
Het model kan informatie uit contracten, onderzoeksartikelen en ander materiaal in één verzoek analyseren. Een taak kan bestaan uit feiten extraheren, daarop voortbouwen in redeneringen en een resultaat vormen dat meerdere delen samenbrengt. Andere beschreven toepassingen zijn financiële analyse en het maken van interfacecode met aandacht voor compositie en vormgeving.
Acties in een visuele omgeving
Sonnet 4.6 begrijpt tekst en afbeeldingen; het eigen resultaat is tekst. Anthropic beschrijft computertoepassingen waarin het model zich op een screenshot oriënteert, muis- en toetsenbordacties kiest, een complexe spreadsheet analyseert of de stappen van een webformulier doorloopt. Voor de feitelijke uitvoering zijn toepassingstools nodig die het scherm doorgeven en de acties uitvoeren.
De gebruikelijke visuele invoerformaten bij de fabrikant zijn JPEG/PNG/GIF/WebP, waarbij van een animatie het eerste frame wordt gebruikt. Bij native analyse is de lange zijde 1568 pixels en zijn er 1568 visuele tokens; grote afbeeldingen worden vóór analyse verkleind. Ondersteuning voor bestanden en parameters hangt af van de methode van de toepassing.
Ook documenten, spreadsheets en presentaties kunnen worden geanalyseerd of inhoudelijk voorbereid, maar het opleveren van het uiteindelijke bestand vereist een geschikte omgeving. Afbeeldingen helpen grafieken, schema's en de visuele structuur van materiaal te begrijpen; dit maakt het model niet tot een beeldgenerator.
Hoe de analyse wordt geregeld
Deze versie ondersteunt adaptief redeneren en handmatige extended thinking. De handmatige modus is als verouderend aangemerkt; de adaptieve modus laat het model kiezen wanneer aanvullende analyse nuttig is, ook tussen toolaanroepen. De niveaus van effort zijn low, medium, high en max, met high als standaard. Volgens Anthropic helpt de inspanningskeuze om de uitwerkingsgraad en latentie af te stemmen op de aard van de taak.
De huidige specificatie geeft 1 miljoen contexttokens en maximaal 128 duizend antwoordtokens in de gewone modus. Voor langdurig werk beschrijft de fabrikant ook experimentele compressie van oude context tot een samenvatting. Die functie vereist toepassingsondersteuning en heft de beperkingen van het modelvenster niet op.
Waar bij het werk rekening mee moet worden gehouden
De betrouwbare grens van de ingebouwde kennis is augustus 2025. Voor latere informatie zijn taakmateriaal of beschikbare zoekmogelijkheden nodig. Gekoppelde tools kunnen helpen informatie te zoeken, code uit te voeren en gevonden inhoud te verwerken; hun aanwezigheid en de toegestane acties worden door de toepassing bepaald.
Sonnet 4.6 is getraind om weerstand te bieden aan verborgen kwaadaardige instructies in andermans materiaal, maar een complexe visuele omgeving en onduidelijke opdrachten kunnen nog steeds tot fouten leiden. Expliciete taakeisen, controle van geëxtraheerde feiten en beoordeling van het actieresultaat blijven onderdeel van betrouwbaar werken met het model.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-sonnet-4-6-thinking
claude-sonnet-4-6-thinkingAan de slag
Claude Sonnet 4.6 helpt bij ontwikkeling, begrip van lange documenten, planning en taken met visuele gegevens. Het ondersteunt adaptief redeneren en meertrapswerk met tools.
- Toegestane invoer
- Tekst
- Resultaten
- Tekst
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Invoertypen
text- Uitvoertypen
text- Uitvoerformaat
- json of SSE
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten claude-sonnet-4-6-thinking | Standaard— |
Veldmessages | Typemessage[] | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
Veldmessages[].role | Typestring | VereisteVereist | Waarden en limieten Afhankelijk van het model | Standaard— |
Veldmessages[].content | Typestring | VereisteOptioneel | Waarden en limieten Geldt wanneer: Tekstgesprek | Standaard— |
Veldstream | Typeboolean | VereisteOptioneel | Waarden en limieten | Standaardfalse |
Combinaties van invoermaterialen
Tekst · UTF8-tekst
messages[].content
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, messages |
Parametermaterial_types | Contracttext |
Parametermessages | Contractberichtenarray met de structuur role/content |
Parameterfile_material | Contractwerkelijk UTF-8-document ingevoegd als letterlijke tekst; er wordt geen bestands-ID afgeleid |
Parameteroptional_controls | Contractstream |
Parametercontrol_scope | ContractTekstgesprek; stream is een booleaanse waarde en is standaard false. |
Parameteroutput_modalities | Contracttext |
Parameterhosted_operations | Contractfalse |
Parametermultimodal_input_binding | Contractnull |
Methodealiasnamen: /chat/completions
Levenscyclus: synchronous_or_streamed
Stuur het exacte model-ID mee met messages.
Contextlengte is geen uitvoerlimiet.
Een tekstbestand kan letterlijke tekst aanleveren; beeld-, audio- en bestandsobjectinvoer vereisen een exacte koppeling.
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
Ailoot-tarieven
Prijzen per configuratie
| Configuratie | Tariefstaffel | Kosten |
|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens $0.006 / 1K tokens Uitvoer · Uitvoertokens $0.03 / 1K tokens Invoer · Cache lezen $0.0006 / 1K tokens Invoer · Cache schrijven $0.0075 / 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 · 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-6-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-6-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"))
Resultaten ophalen en opslaan
Ailoot Ultra · OpenAI Chat
json of SSE
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar elke keuze en de bijbehorende inhoud, toolaanroepen en redeneringen. Voeg in SSE delta’s samen per keuze-/toolindex en bewaar de uiteindelijke reden van beëindiging en de verbruiksgegevens.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar aanvraag-/antwoord-ID’s en headers. Er wordt geen algemene URL meegeleverd om teksttaken op te halen.
Antwoordvelden
| Veld | Type |
|---|---|
Veldchoices[].index | Typeinteger |
Veldchoices[].message.content | Typestring|null |
Veldchoices[].message.tool_calls | Typetool_call[] |
Veldchoices[].message.reasoning_content | Typestring |
Veldchoices[].message.reasoning_details | Typeobject|array |
Veldchoices[].finish_reason | Typestring|null |
Veldusage | Typeobject |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra claude-sonnet-4-6-thinking
Aliasnamen voor methodepaden
/chat/completions
Gerelateerde aanroeper-ID’s
FAQ · Anthropic: Claude Sonnet 4.6
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/chat/completions·claude-sonnet-4-6-thinking:text→text- Welke velden gebruikt het verzoek?
POST /v1/chat/completions·claude-sonnet-4-6-thinking:model,messages,stream- Welke limieten gelden?
POST /v1/chat/completions·claude-sonnet-4-6-thinking:messages.min_items:1