modely

claude-opus-4-20250514-thinking

Markdown · JSON

claude-opus-4-20250514-thinking

Claude Opus 4 Thinking používa režim rozšíreného uvažovania pôvodného Opus 4 na komplexné softvérové zmeny, dlhodobé agentné postupy a výskum. Dokáže uvažovať medzi podporovanými krokmi nástrojov a spájať dôkazy v náročnej úlohe pred vytvorením textového výsledku.

O modeli

Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.

Claude Opus 4 Thinking využíva rozšírené uvažovanie pôvodného modelu Claude Opus 4. Anthropic túto generáciu určuje na náročné programovanie, výskum, písanie a úlohy vyžadujúce udržanie smeru počas mnohých krokov. Označenie Thinking sa týka prístupu modelu k odpovedi; nemení pôvodný Opus 4 na neskoršiu edíciu Opus.

Uvažovanie pri náročnej úlohe

Claude Opus 4 spája štandardný režim odpovede s režimom rozšíreného uvažovania. Pri rozšírenom uvažovaní môže venovať viac času preskúmaniu problému pred odpoveďou. Výrobca opisuje dlhodobú prácu na komplexných úlohách ako hlavnú prednosť, najmä keď úloha vyžaduje prepojenie postupnosti zistení namiesto riešenia izolovaných promptov.

Pri výskumnej otázke poskytnite materiály na porovnanie, rozhodnutie, ktoré majú podporiť, a dôležité podmienky. Vyžiadajte syntézu založenú na dôkazoch, ktorá oddeľuje zistenia, predpoklady a otvorené otázky. Pri písaní zahrňte publikum, zdrojové materiály, požadovanú štruktúru a tvrdenia, ktoré musí výsledok vysvetliť. Ide o praktické použitia dokumentovaných výskumných a pisateľských schopností modelu, nie prísľuby konkrétneho výsledku.

Zmeny v kódovej báze

Anthropic zdôrazňuje porozumenie komplexnému kódu, úpravy, ladenie a zmeny vo viacerých súboroch. Dodajte modelu relevantné moduly, kontrakty rozhraní, očakávané správanie a existujúce testy alebo chybový výstup. Vymedzte požadovanú zmenu a požiadajte o vysvetlenie závislostí, kvôli ktorým sú navrhnuté úpravy potrebné.

Užitočný technický výsledok prepája tri veci: príčinu problému, konzistentnú implementáciu a spôsob kontroly výsledného správania. Pri refaktorovaní určte verejné rozhrania a pozorovateľné správanie, ktoré musia zostať stabilné. Pri funkcii opíšte používateľský postup a prípady zlyhania. Dlhodobé uvažovanie modelu tak pomáha projektu namiesto samotného predlžovania odpovede.

Nástroje, súbežná práca a nadväznosť

Pôvodná generácia Claude 4 pridáva uvažovanie medzi volaniami nástrojov v dokumentovanom postupe rozšíreného uvažovania Anthropic. Môže preskúmať výsledok nástroja, prehodnotiť prístup a vybrať ďalšiu akciu. Výrobca opisuje aj súbežné používanie nástrojov a lepšiu nadväznosť, keď aplikácia poskytne lokálne súbory, ktoré môže model čítať a aktualizovať.

Agent používajúci tieto možnosti potrebuje, aby jeho aplikácia poskytovala nástroje, vykonávala požadované akcie a vracala ich výsledky. Pamäťové súbory tiež patria prostrediu aplikácie; nie sú neobmedzeným úložiskom automaticky prenášaným medzi nesúvisiacimi konverzáciami. Pri návrhu postupu vracajte modelu relevantné pozorovania a ponechajte cieľ úlohy aj kritériá prijatia dostupné.

Vizuálna analýza a textový výstup

Claude Opus 4 podporuje aj vizuálnu analýzu. Snímky obrazovky, grafy a diagramy môžu dodávať dôkazy popri texte, zatiaľ čo odpoveď modelu zostáva textová. Používajte jasne čitateľné obrázky a určte vzťahy, ktoré chcete vysvetliť. Ak úloha závisí od presných počtov alebo meraní, zahrňte zdrojové hodnoty, pretože vizuálna interpretácia môže byť približná.

Pri úlohe cez Ailoot API určte potrebný konečný výstup: návrh zmien viacerých súborov, technické skúmanie, výskumnú syntézu alebo dôsledne štruktúrovaný dokument. Dodajte dôkazy a obmedzenia umožňujúce zvoliť prístup. Súhrny rozšíreného uvažovania od výrobcu poskytujú vysvetlenie popri výsledku, ale súhrn nie je doslovným záznamom všetkého uvažovania. Dodaný kód alebo analýzu overte oproti požiadavkám úlohy vrátane predpokladov, ktoré ešte potrebujú dôkazy.

Praktická úloha

Praktická úloha

Technický príklad v angličtine

Plan a coordinated order refactor

Review this proposed refactor. Module A emits {order_id, total_cents}; module B stores those fields; module C displays total_cents / 100. A developer proposes renaming only A to amount_cents. Identify affected contracts and propose a coordinated migration that preserves existing consumers, with checks for old and new records.

Očakávaný výsledok

A dependency map in text, a staged migration proposal and compatibility checks for each consumer.

Overenie výsledku

Confirm the proposal covers B and C and does not silently reinterpret cents as whole currency units.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-opus-4-20250514-thinking

claude-opus-4-20250514-thinking

Anthropic /claude-opus-4-20250514-thinking

Úvod

Claude Opus 4 Thinking používa režim rozšíreného uvažovania pôvodného Opus 4 na komplexné softvérové zmeny, dlhodobé agentné postupy a výskum. Dokáže uvažovať medzi podporovanými krokmi nástrojov a spájať dôkazy v náročnej úlohe pred vytvorením textového výsledku.

Povolené vstupy
Text
Výsledky
Text

Dostupné v Ailoot · vstupy a metódy

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Vstup
text
Výstup
text
Výstupný formát
json alebo SSE
PoleTypPožiadavkaHodnoty a limityPredvolené
PolemodelTypstringPožiadavkaPovinnéHodnoty a limity
claude-opus-4-20250514-thinking
Predvolené—
PolemessagesTypmessage[]PožiadavkaPovinnéHodnoty a limity
Minimálny počet položiek: 1
Predvolené—
Polemessages[].roleTypstringPožiadavkaPovinnéHodnoty a limity
Príklady: system, user, assistant, tool, function
Podmienky: Tieto roly sú výslovne zastúpené typmi kompatibility v zdrojovom kóde; presný súbor rolí zostáva závislý od modelu.
Závisí od modelu
Predvolené—
Polemessages[].contentTypstring|content_part[]|nullPožiadavkaVoliteľnéHodnoty a limityPredvolené—
Polemessages[].tool_callsTyptool_call[]PožiadavkaVoliteľnéHodnoty a limityPredvolené—
Polemessages[].tool_call_idTypstringPožiadavkaVoliteľnéHodnoty a limity
Platí, keď: role=tool; použite skutočne vrátené ID
Predvolené—
Polemessages[].nameTypstringPožiadavkaVoliteľnéHodnoty a limityPredvolené—
Polemessages[].reasoning_contentTypstringPožiadavkaVoliteľnéHodnoty a limity
Platí, keď: Posielajte späť skutočne vrátené uvažovanie, ak ho tento model používa
Predvolené—
Polemessages[].reasoning_detailsTypobject|arrayPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Polemax_tokensTypintegerPožiadavkaVoliteľnéHodnoty a limity
Minimum: 1
Závisí od modelu
Predvolené—
Polemax_completion_tokensTypintegerPožiadavkaVoliteľnéHodnoty a limity
Minimum: 1
Závisí od modelu
Predvolené—
PolestreamTypbooleanPožiadavkaVoliteľnéHodnoty a limityPredvolenéfalse
Polestream_options.include_usageTypbooleanPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PoletemperatureTypnumberPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poletop_pTypnumberPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PolestopTypstring|string[]PožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PoletoolsTypfunction_tool[]PožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poletools[].typeTypstringPožiadavkaVoliteľnéHodnoty a limity
function
Závisí od modelu
Predvolené—
Poletools[].function.nameTypstringPožiadavkaPovinnéHodnoty a limity
Platí, keď: poskytnutý nástroj typu funkcia
Predvolené—
Poletools[].function.descriptionTypstringPožiadavkaVoliteľnéHodnoty a limityPredvolené—
Poletools[].function.parametersTypJSON_schemaPožiadavkaVoliteľnéHodnoty a limityPredvolené—
Poletool_choiceTypstring|objectPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poleparallel_tool_callsTypbooleanPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poleresponse_formatTypobjectPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Polereasoning_effortTypstringPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PolereasoningTypobjectPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poleservice_tierTypstringPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PoleinstructionsTypstringPožiadavkaVoliteľnéHodnoty a limity
Pole kompatibility
Predvolené—
PolefunctionsTypfunction[]PožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Polefunction_callTypstring|objectPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
Poleprompt_cache_optionsTypobjectPožiadavkaVoliteľnéHodnoty a limity
Závisí od modelu
Predvolené—
PolemodalitiesTypstring[]PožiadavkaVoliteľnéHodnoty a limity
text
Predvolené—
PoleproviderTypobjectPožiadavkaVoliteľnéHodnoty a limity
Podmienky: provider.options sa na tejto textovej trase Ultra odmieta
Predvolené—
Polecache_control.ttlTypstringPožiadavkaVoliteľnéHodnoty a limity
Podmienky: Hodnota 1h sa v skutočne používaných poliach cache promptov odmieta
Predvolené—
Kombinácie vstupných podkladov

Text · Text UTF8

messages[].content

Parametre a životný cyklus metódy
ParameterŠpecifikácia
Parametercontent_typeŠpecifikáciaapplication/json
ParameterrequiredŠpecifikáciamodel, messages
Parametermaterial_typesŠpecifikáciatext
ParametermessagesŠpecifikáciapole správ so štruktúrou role/content
Parameterfile_materialŠpecifikáciaskutočný dokument UTF-8 vložený ako doslovný text; ID súboru sa neodvodzuje
Parameteroptional_controlsŠpecifikáciastream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametercontrol_scopeŠpecifikáciazávisí od modelu; používateľské nástroje typu funkcia sa líšia od nástrojov prevádzkovaných službou
Parameteroutput_modalitiesŠpecifikáciatext
Parameterhosted_operationsŠpecifikáciafalse
Parametermultimodal_input_bindingŠpecifikácianull

Životný cyklus: synchronous_or_streamed

Pošlite presné ID modelu spolu s messages.

Dĺžka kontextu nie je horná hranica výstupu.

Textový súbor môže poskytnúť doslovný text; obrazové a zvukové vstupy a vstupy so súborovými objektmi potrebujú presné naviazanie.

Cenník

Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.

Rýchly režim
Neuvedené Keď je zvolený rýchly režim
Režim Flex
Neuvedené Keď je zvolený režim flex
Maximálna úroveň uvažovania
Neuvedené Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)

Sadzby Ailoot

Ceny podľa konfigurácie

KonfiguráciaSadzobníkPoplatok
KonfiguráciaZákladné sadzby za tokenySadzobníkZákladná sadzbaPoplatok
Vstup · Vstupné tokeny $0.03 / 1K tokenov
Výstup · Výstupné tokeny $0.15 / 1K tokenov
Vstup · Čítanie cache $0.0006 / 1K tokenov
Vstup · Zápis do cache $0.0075 / 1K tokenov
Vstup · Zápis do cache, 1 hod — / 1K tokenov

Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →

Príklady požiadaviek

Ailoot Ultra · OpenAI Chat

curlPython SDKStreamovanie v jazyku Python
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-opus-4-20250514-thinking", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

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-opus-4-20250514-thinking',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
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"))
from openai import OpenAI
import os
from pathlib import Path

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)
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))

with client.chat.completions.stream(model='claude-opus-4-20250514-thinking',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

Prijať a uložiť výsledky

Ailoot Ultra · OpenAI Chat

json alebo SSE

Uchovať všetky dokončené výsledky

Uložte každú úplnú vrátenú odpoveď, súbor a časť obsahu.

Zachovajte každý variant odpovede a jeho obsah, volania nástrojov a uvažovanie. V SSE zostavujte čiastkové zmeny podľa indexu variantu/nástroja a zachovajte konečný dôvod ukončenia aj údaje o spotrebe.

Ak treba overiť pôvodnú odpoveď

Zachovajte ID požiadaviek/odpovedí aj hlavičky. Všeobecná URL na načítanie textovej úlohy nie je poskytnutá.

Polia odpovede
PoleTyp
Polechoices[].indexTypinteger
Polechoices[].message.contentTypstring|null
Polechoices[].message.tool_callsTyptool_call[]
Polechoices[].message.reasoning_contentTypstring
Polechoices[].message.reasoning_detailsTypobject|array
Polechoices[].finish_reasonTypstring|null
PoleusageTypobject
Chyby a ďalšie kroky
OdpoveďPodmienkaĎalší krok
Odpoveď400 · invalid_request_errorPodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametraĎalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia.

Aliasy

Aliasy modelov

Ailoot Ultra claude-opus-4-20250514-thinking

Aliasy ciest metód

Použite cesty metód uvedené vyššie.

Súvisiace ID na volanie

claude-opus-4-20250514-thinking

FAQ · claude-opus-4-20250514-thinking
Aké vstupy a výsledky sú dostupné?

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

Aké polia používa požiadavka?

POST /v1/chat/completions · claude-opus-4-20250514-thinking: model, messages, stream, modalities, provider

Aké limity platia?

POST /v1/chat/completions · claude-opus-4-20250514-thinking: messages.min_items: 1

Viac podrobností

Pripojte Ailoot k Claude Code, OpenCode, Hermes alebo vlastnej aplikácii.

Spoločnosť a jej portfólio projektov

Spoločnosť a jej portfólio projektov: milióny zákazníkov; mesačné tržby v miliardách.

Nakupujte tokeny so zľavou.

Zľava predplatného na pravidelnú prácu. Promo kódy až 50% na nákup tokenov.

Predplatné
Na pravidelné požiadavky vyberte tarifu so zľavou.
Promo kód až 50%
Pri nákupe zadajte kód. Cena sa prepočíta podľa prebiehajúcej akcie.
Výdavky v histórii
Pri každej požiadavke sa uloží model, tokeny a suma.

Vybrať predplatné · Zobraziť ceny modelov

Pripojte API k produktu, ktorý predávate.

SaaS, aplikácie a boti podľa ponuky a licenčnej zmluvy Ailoot. Na ďalší predaj požiadajte o licenciu predajcu.

Komerčná aplikácia
Začleňte generovanie textu, obrázkov, videa a zvuku do platených funkcií svojej služby.
Licencia pre predajcu
Pošlite popis projektu a spôsob poskytovania prístupu. Vyžiadajte písomné podmienky použitia a ďalšieho predaja.
Dokumenty na webe
Ponuka, licenčná zmluva a zásady spracovania dát sú dostupné pred pripojením.

Požiadať o licenciu predajcu · Ponuka a licenčná zmluva