Przejdź do treści
Warsztat

Claude Opus 5.5 w API: cztery zmiany, które zepsują działający kod

Przejście z Opus 5 to nie jest zmiana jednej nazwy modelu. Cztery rzeczy kończą się błędem 400 - z gotowymi poprawkami.

6 min czytania
Claude Opus 5.5 w API: cztery zmiany, które zepsują działający kod

👁 117 przeczytań

// w skrócie
  • Na Opus 5.5 pole thinking: disabled oraz budget_tokens zwracają błąd 400 na każdym poziomie wysiłku - zamiast tego należy ustawić thinking: adaptive i kontrolować koszt parametrem effort: low lub medium.
  • Bloki myślenia Opus 5.5 odczytują tylko modele Fable 5.1 i Mythos 5.1, więc przełączenie rozmowy na Opus 5 lub Opus 4.8 powoduje, że model traci dostęp do wcześniejszego rozumowania.

Przejście z Claude Opus 5 na Opus 5.5 wygląda jak zmiana jednej nazwy modelu w konfiguracji. Nie jest. Cztery zachowania, które na Opus 5 działały, na Opus 5.5 kończą się błędem 400, a piąta zmiana nie zwraca błędu, tylko po cichu wycisza interfejs. Zebrałem je z dokumentacji Anthropic razem z gotowymi poprawkami.

Werdykt w jednym akapicie

Zmień nazwę modelu na claude-opus-5-5 dopiero po przejściu listy poniżej. Najczęstszy problem to wyłączone myślenie - na Opus 5 była to popularna optymalizacja kosztu, na Opus 5.5 to błąd przy każdym zapytaniu. Drugi to wymuszone wywołanie narzędzia. Oba poprawia się w kilku linijkach, ale bez nich aplikacja po prostu przestaje działać. Do tego trzeba ręcznie ustawić poziom wysiłku, bo domyślny spadł z high na medium.

Zmiana 1: myślenia nie da się wyłączyć

Na Opus 5 thinking: {"type": "disabled"} było dozwolone do poziomu wysiłku high. Na Opus 5.5 myślenie jest zawsze włączone - zarówno wyłączenie, jak i stary budżet tokenów (budget_tokens) zwracają błąd 400 na każdym poziomie.

Poprawka: usuń pole thinking albo ustaw {"type": "adaptive"}, a o koszcie decyduj poziomem wysiłku.

client.messages.create(
    model="claude-opus-5-5",
    max_tokens=16000,
    output_config={"effort": "low"},
    messages=[{"role": "user", "content": "..."}],
)

Trzy rzeczy do dopilnowania przy okazji:

  • Zwiększ max_tokens. Myślenie liczy się do limitu wyjścia, nawet jeśli jego treść nie wraca. Limit ustawiony pod Opus 5 z wyłączonym myśleniem obetnie odpowiedzi. Na długie zadania programistyczne producent wskazuje 64 tysiące.
  • Czytaj odpowiedź po typie bloku, nie po pozycji. Odpowiedź może zaczynać się od bloków myślenia z pustą treścią.
  • Usuń z poleceń instrukcje „nie myśl”. Model i tak nie może się do nich zastosować, a polecenia każące mu wypisać rozumowanie w odpowiedzi mogą zostać odrzucone z kategorią reasoning_extraction.

Zmiana 2: wymuszone narzędzia zwracają błąd

tool_choice: {"type": "any"} i {"type": "tool", "name": "..."} kończą się błędem 400 - w zwykłych zapytaniach, w trybie wsadowym i przy liczeniu tokenów. Zostaje auto i none.

Poprawka zależy od tego, po co było wymuszenie:

  • Jeśli chciałeś, żeby model użył narzędzia - ustaw auto, napisz w poleceniu, którego narzędzia ma użyć, dodaj strict: true do definicji narzędzia i sprawdź w kodzie, czy wywołanie nastąpiło. auto go nie gwarantuje.
  • Jeśli chodziło tylko o JSON w odpowiedzi - zamiast wymuszonego narzędzia użyj ustrukturyzowanego wyjścia (output_config.format).

Zmiana 3: bloki myślenia są przypięte do modelu i rozmowy

To zmiana, która najczęściej zaskoczy w systemach z kilkoma modelami:

  • Opus 5.5 czyta bloki myślenia Opus 5 i starszych modeli - rozmowa przeniesiona na Opus 5.5 zachowuje rozumowanie.
  • W drugą stronę tylko Fable 5.1 i Mythos 5.1 czytają bloki Opus 5.5. Przełączenie rozmowy na Opus 5 czy Opus 4.8 - na przykład przez model zapasowy po odmowie - oznacza, że dalsze tury idą bez wcześniejszego rozumowania. Zapytanie się uda, ale model „zapomni”, jak doszedł do dotychczasowych wniosków.
  • Edycja historii unieważnia bloki. Jeśli Twój kod zmienia wcześniejsze wiadomości, polecenie systemowe albo listę narzędzi w trakcie rozmowy, ponownie wysłany blok myślenia może zostać odrzucony. Dla kont założonych od 31 sierpnia 2026 jest to domyślnie błąd.

Poprawka: buduj historię tylko przez dopisywanie. Zmiany instrukcji w trakcie rozmowy wstawiaj jako nową wiadomość systemową, a narzędzia deklaruj od pierwszego zapytania.

Zmiana 4: obsługa komputera tylko przez nowy zestaw

Stare narzędzie computer_20251124 zwraca błąd 400. Opus 5.5 przyjmuje tylko zestaw computer_toolset_20260801 - bez nagłówka beta, bez nazwy i bez wymiarów ekranu w definicji.

To więcej niż podmiana wpisu: w nowym zestawie akcja jest nazwą bloku wywołania (screenshot, left_click…), a nie polem input.action, w jednej turze może przyjść kilka akcji naraz, a każdy wynik musi zawierać "toolset_name": "computer". Producent radzi zrobić i przetestować tę zmianę najpierw na Opus 5, który przyjmuje obie formy.

Zmiana bez błędu: cisza między wywołaniami narzędzi

Nie przepłacaj za te subskrypcje

Prowadzę sklep z rocznymi dostępami do narzędzi AI - te same konta, o których piszę wyżej, tylko taniej niż w cenniku producenta.

Zobacz, co jest dostępne

Na Opus 5 krótkie notatki między wywołaniami narzędzi - „znalazłem X, teraz sprawdzam Y” - wracały jako zwykły tekst. Na Opus 5.5 dłuższe notatki wracają jako bloki myślenia z pustą treścią. Nic się nie psuje, ale interfejs, który pokazuje tylko tekst, milknie na całą długą turę agenta.

Poprawka: ustaw thinking.display na "updates" (nagłówek beta thinking-display-updates-2026-08-18) i wyświetlaj niepuste bloki myślenia przed wywołaniem, które poprzedzają.

Dwie rzeczy do przestawienia ręcznie

UstawienieCo się zmieniłoCo zrobić
Poziom wysiłkuDomyślny spadł z high na mediumUstaw jawnie i przetestuj low oraz medium. Mój pomiar
OdmowyNowe kategorie: bio i reasoning_extraction obok cyberSprawdzaj stop_reason: "refusal" przed odczytem treści i włącz model zapasowy

Odmowa przychodzi jako zwykła odpowiedź HTTP 200 ze stop_reason: "refusal". Anthropic zaleca od pierwszego dnia włączyć modele zapasowe po stronie serwera (fallbacks: "default" z nagłówkiem server-side-fallback-2026-07-01), bo klasyfikatory czasem blokują nieszkodliwe zapytania. Odmowy z kategorii reasoning_extraction nie są przekazywane do modelu zapasowego.

Lista kontrolna

  1. Nazwa modelu: claude-opus-5-5 (na Bedrocku anthropic.claude-opus-5-5, na OpenRouterze anthropic/claude-opus-5.5).
  2. Usunięte thinking: disabled i budget_tokens we wszystkich ścieżkach.
  3. max_tokens z zapasem na myślenie.
  4. tool_choice any i tool zamienione na auto ze strict: true i sprawdzeniem wywołania.
  5. Historia rozmowy budowana wyłącznie przez dopisywanie.
  6. Obsługa komputera na computer_toolset_20260801.
  7. Obsługa stop_reason: "refusal" i włączony model zapasowy.
  8. Jawnie ustawiony poziom wysiłku.
  9. Wyświetlanie bloków myślenia w interfejsach agentowych.

Co zostaje bez zmian

Kontekst 1 mln tokenów, maksymalnie 128 tysięcy tokenów wyjścia, ten sam tokenizer co Opus 5 (liczba tokenów się nie zmienia), pamięć podręczna z minimum 512 tokenów, tryb wsadowy, obsługa plików, PDF, obrazów, ustrukturyzowane wyjście i narzędzia serwerowe. Priority Tier - jak w Opus 5 - nie jest obsługiwany.

Najczęstsze pytania

Jak nazywa się Opus 5.5 w API?

claude-opus-5-5. Na Amazon Bedrock anthropic.claude-opus-5-5, na OpenRouterze anthropic/claude-opus-5.5.

Dlaczego dostaję błąd 400 po zmianie modelu?

Najczęściej przez wyłączone myślenie albo wymuszone narzędzie. Obie rzeczy są w Opus 5.5 niedozwolone.

Czy mogę wyłączyć myślenie, żeby było taniej?

Nie. Ustaw niski poziom wysiłku - w moim teście low obniżył koszt tekstu o 17% wobec domyślnego.

Czy zmienia się liczba tokenów względem Opus 5?

Nie. Tokenizer jest ten sam, więc ten sam tekst to ta sama liczba tokenów.

Co to jest „preserved thinking”?

Przypięcie bloków myślenia do modelu i rozmowy. Edycja wcześniejszej historii albo przełączenie na inny model sprawia, że dotychczasowe rozumowanie przestaje być dostępne.

Google · Twoje źródłaPromptowy wyżej w Twoim Google - jednym kliknięciemDodaj do preferowanych źródeł

Źródła i data sprawdzenia

Wszystkie zmiany, komunikaty błędów, nazwy parametrów i nagłówków pochodzą z przewodnika migracji do Claude Opus 5.5 i dokumentacji modeli Anthropic na platform.claude.com, odczytanych 24 września 2026. Nazwa modelu na OpenRouterze z publicznej listy modeli z tego samego dnia. Przykład kodu jest uproszczonym przykładem z dokumentacji. Wynik 17% pochodzi z mojego testu opisanego w tekście o poziomach wysiłku.

// Newsletter

Cały tydzień w AI, w jednym mailu

Wybrane premiery, narzędzia i analizy. Raz w tygodniu, prosto do skrzynki.

Zapisz się za darmo →
Za darmo. Wypisujesz się jednym kliknięciem.

Najczęstsze pytania

Dlaczego po zmianie modelu na claude-opus-5-5 dostaję błąd 400?

Najczęstszą przyczyną jest wyłączone myślenie (thinking: disabled) albo wymuszone wywołanie narzędzia (tool_choice: any lub tool) - obie opcje są na Opus 5.5 niedozwolone. Należy usunąć pole thinking lub ustawić adaptive, a tool_choice zmienić na auto ze strict: true.

Czy w Claude Opus 5.5 można wyłączyć myślenie, żeby obniżyć koszty?

Nie, myślenie jest zawsze włączone i nie da się go wyłączyć. Koszt można ograniczyć, ustawiając niski poziom wysiłku - według testu opisanego w artykule effort: low obniżył koszt tekstu o 17% wobec domyślnego poziomu medium.

Jak obsłużyć komputer w Claude Opus 5.5 po usunięciu starego narzędzia?

Stare narzędzie computer_20251124 zwraca błąd 400, więc trzeba przejść na zestaw computer_toolset_20260801 bez nagłówka beta, bez nazwy i bez wymiarów ekranu w definicji. Producent zaleca najpierw przetestować nowy zestaw na Opus 5, który przyjmuje obie formy.

Co oznacza stop_reason refusal w odpowiedzi Claude Opus 5.5?

Odmowa modelu przychodzi jako zwykła odpowiedź HTTP 200 ze stop_reason: refusal, a nie jako błąd. Anthropic zaleca od pierwszego dnia włączyć modele zapasowe przez nagłówek server-side-fallback-2026-07-01, przy czym odmowy z kategorii reasoning_extraction nie są przekazywane do modelu zapasowego.

// czytaj też

Podobne tematy na Promptowym

Piotr Olszewski

Piotr Olszewski

ADMINISTRATOR

Piotr Olszewski - twórca i autor Promptowego, polskiego serwisu o sztucznej inteligencji. Codziennie śledzi premiery modeli, narzędzia i regulacje AI, i tłumaczy je prostym, konkretnym językiem.

// mapa strony

🛒 Sklep Kinetyka Google AI Gemini Pro 170 zł CapCut Pro 460 zł/rok n8n Cloud Starter 320 zł/rok Zobacz wszystko →
promptowy w liczbach 0tekstów w archiwum0newsów z ostatnich 7 dni0modeli wideo w obserwatorium0zagadek w grach
× powiększenie