Anthropic: Claude Opus 4.7
Claude Opus 4.7 jest przeznaczony do złożonej pracy inżynierskiej oraz analizy dokumentów i obrazów z drobnymi szczegółami. Szczególną uwagę poświęca dokładnemu wykonywaniu instrukcji i sprawdzaniu wyniku.
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
Staranna praca inżynierska
Anthropic tworzy Claude Opus 4.7 do złożonych, długotrwałych zadań programistycznych. W opisie modelu nacisk położono na konsekwentne wykonywanie pracy, uważne traktowanie instrukcji i szukanie sposobów sprawdzenia własnego wyniku przed wiadomością końcową. Model nadaje się do badania trudnego problemu w kodzie i przygotowywania materiałów zawodowych, w których jednocześnie potrzebne są rozwiązanie techniczne i jasna forma przedstawienia.
Opus 4.7 dosłownie przestrzega sformułowań. Najlepiej określać zadanie przez wyraźne granice: które części należy zmienić, co sprawdzić i jaki powinien być wynik. Jeśli warunek dotyczy wszystkich części pracy, należy tak go opisać. Producent podkreśla także korzystanie z notatek w pamięci plikowej przy długich zadaniach, lecz odczytywanie i zachowywanie takich notatek wymaga narzędzi aplikacji.
Odczytywanie szczegółowych schematów i zrzutów interfejsu
Model przyjmuje tekst i obrazy oraz zwraca tekst. Dla wejścia wizualnego obsługiwana jest rozdzielczość do 2576 pikseli na dłuższym boku, około 3,75 megapiksela. Jest to przydatne przy rozbudowanych zrzutach ekranu, wyodrębnianiu informacji ze złożonych diagramów i zadaniach ze szczegółowym wzorcem wizualnym.
Formaty standardowego wejścia wizualnego u producenta to JPEG/PNG/GIF/WebP, z pierwszą klatką animacji. Przy analizie natywnej: dłuższy bok — 2576 pikseli, 4784 tokeny wizualne; duże obrazy są zmniejszane przed analizą. Obsługa plików i parametrów zależy od metody aplikacji.
Wysoka rozdzielczość pomaga zachować szczegóły, lecz nie sprawia, że rozumienie wizualne jest bezbłędne. Na wyjściu można uzyskać wyjaśnienie, strukturę danych lub kod; tworzenie i edycja samego obrazu nie należą do możliwości wyjściowych modelu. Sterowanie interfejsem wymaga narzędzi pokazujących modelowi ekran i wykonujących działania w aplikacji.
Głębokość i zakres zadania
Kontekst wynosi 1 mln tokenów, a maksymalna odpowiedź w zwykłym trybie — 128 tys. tokenów. Obsługiwane jest rozumowanie adaptacyjne; w tej wersji nie ma ręcznego extended thinking z budget_tokens. Standardowy poziom effort to high; dostępne są także low, medium, xhigh i max. Poziom xhigh zapewnia osobne ustawienie między high i max dla długotrwałej pracy inżynierskiej i agentowej.
Przy niskich poziomach wysiłku model szczególnie ściśle ogranicza pracę do tego, o co poproszono. Dla złożonych badań producent zaleca zapewnienie dostatecznej przestrzeni na rozumowanie i odpowiedź. W tej wersji zmieniono sposób dzielenia tekstu na tokeny, dlatego ta sama objętość tekstu nie zawsze ma długość w tokenach znaną z wcześniejszych wersji.
Warunki pracy
Wiarygodna granica wbudowanej wiedzy to styczeń 2026 roku. Do aktualnych badań, pracy z dokumentami i wykonywania kodu wykorzystuje się materiały i narzędzia udostępnione przez aplikację. Opus 4.7 ma mechanizmy ochronne mogące blokować zabronione lub obarczone wysokim ryzykiem żądania dotyczące cyberbezpieczeństwa. Dbałość o sprawdzanie wyniku jest przydatna w pracy, lecz końcowe zmiany i wnioski nadal wymagają weryfikacji w konkretnym środowisku.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions claude-opus-4-7-thinking
claude-opus-4-7-thinkingStart
Claude Opus 4.7 jest przeznaczony do złożonej pracy inżynierskiej oraz analizy dokumentów i obrazów z drobnymi szczegółami. Szczególną uwagę poświęca dokładnemu wykonywaniu instrukcji i sprawdzaniu wyniku.
- Akceptowane dane wejściowe
- Tekst
- Wyniki
- Tekst
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Wejście
text- Wyjście
text- Format wyjściowy
- json lub SSE
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity claude-opus-4-7-thinking | Domyślnie— |
Polemessages | Typmessage[] | WymaganieWymagane | Wartości i limity Minimalna liczba elementów: 1 | Domyślnie— |
Polemessages[].role | Typstring | WymaganieWymagane | Wartości i limity Zależy od modelu | Domyślnie— |
Polemessages[].content | Typstring | WymaganieOpcjonalne | Wartości i limity Obowiązuje, gdy: Rozmowa tekstowa | Domyślnie— |
Polestream | Typboolean | WymaganieOpcjonalne | Wartości i limity | Domyślniefalse |
Kombinacje materiałów wejściowych
Tekst · tekst UTF8
messages[].content
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, messages |
Parametrmaterial_types | Kontrakttext |
Parametrmessages | Kontrakttablica wiadomości o strukturze role/content |
Parametrfile_material | Kontraktrzeczywisty dokument UTF-8 wstawiony jako dosłowny tekst; bez wywnioskowanego ID pliku |
Parametroptional_controls | Kontraktstream |
Parametrcontrol_scope | KontraktRozmowa tekstowa; stream jest wartością logiczną i domyślnie wynosi false. |
Parametroutput_modalities | Kontrakttext |
Parametrhosted_operations | Kontraktfalse |
Parametrmultimodal_input_binding | Kontraktnull |
Aliasy metody: /chat/completions
Cykl życia: synchronous_or_streamed
Wyślij dokładne ID modelu wraz z messages.
Długość kontekstu nie jest limitem wyjścia.
Plik tekstowy może dostarczyć dosłowny tekst; wejścia obrazowe/dźwiękowe/obiekty plików wymagają dokładnego powiązania.
Cennik
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Stawki Ailoot
Ceny według konfiguracji
| Konfiguracja | Tabela stawek | Opłata |
|---|---|---|
| KonfiguracjaPodstawowe stawki za tokeny | Tabela stawekStawka podstawowa | Opłata Wejście · Tokeny wejściowe $0.01 / 1K tokenów Wyjście · Tokeny wyjściowe $0.05 / 1K tokenów Wejście · Odczyt cache $0.001 / 1K tokenów Wejście · Zapis do cache $0.0125 / 1K tokenów Wejście · Zapis do cache, 1 godz. — / 1K tokenów |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Przykładowe żądania
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-opus-4-7-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-opus-4-7-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"))
Odbieranie i zapisywanie wyników
Ailoot Ultra · OpenAI Chat
json lub SSE
Zachowaj wszystkie ukończone wyniki
Zachowaj każdą kompletną zwróconą odpowiedź, plik i część treści.
Zachowaj każdy wariant i jego treść/wywołania narzędzi/rozumowanie. W SSE składaj przyrosty według indeksu wariantu/narzędzia, zachowując końcowy powód zakończenia i dane użycia.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj ID i nagłówki żądań/odpowiedzi. Nie udostępniono ogólnego URL pobierania zadania tekstowego.
Pola odpowiedzi
| Pole | Typ |
|---|---|
Polechoices[].index | Typinteger |
Polechoices[].message.content | Typstring|null |
Polechoices[].message.tool_calls | Typtool_call[] |
Polechoices[].message.reasoning_content | Typstring |
Polechoices[].message.reasoning_details | Typobject|array |
Polechoices[].finish_reason | Typstring|null |
Poleusage | Typobject |
Błędy i dalsze kroki
| Odpowiedź | Warunek | Następny krok |
|---|---|---|
Odpowiedź400 · invalid_request_error | WarunekNieprawidłowe wymagane pola, sposób reprezentacji materiału lub wartość parametru | Następny krokPopraw wskazane pola przed nowym żądaniem utworzenia. |
Aliasy
Aliasy modelu
Ailoot Ultra claude-opus-4-7-thinking
Aliasy ścieżek metod
/chat/completions
Powiązane ID modeli
FAQ · Anthropic: Claude Opus 4.7
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/chat/completions·claude-opus-4-7-thinking:text→text- Jakich pól używa żądanie?
POST /v1/chat/completions·claude-opus-4-7-thinking:model,messages,stream- Jakie limity obowiązują?
POST /v1/chat/completions·claude-opus-4-7-thinking:messages.min_items:1