原文(日本語に翻訳)
APIがストリームの途中でoverloaded/serverエラーを返した際に、それまでに出力されていたストリーミング応答が破棄されてしまう問題を修正 — 現在は部分的な応答を保持し、「不完全な応答」である旨の通知が表示されるようになりました
原文(英語)
Fixed streaming responses being discarded when the API emits a mid-stream overloaded/server error after partial output — the partial is now kept with an incomplete-response notice
概要
Claude Codeが応答をストリーミング表示している最中に、APIが overloaded(過負荷)やサーバーエラーを返すことがあります。これまでは、こうしたエラーが発生するとそれまでにストリーミングされていたテキストがすべて破棄され、何も表示されていなかったかのようになっていました。この修正により、途中まで出力されていた応答は破棄されずにそのまま保持され、「不完全な応答である」ことを示す通知が併せて表示されるようになりました。
基本的な使い方
Before(修正前):
Claude: これは長い説明の途中経過です。まず最初に...
(ここでAPIがoverloaded/serverエラーを返す)
→ それまで表示されていたテキストが消え、エラーのみが表示されるAfter(修正後):
Claude: これは長い説明の途中経過です。まず最初に...
(ここでAPIがoverloaded/serverエラーを返す)
→ ここまでの出力はそのまま残り、
「応答が不完全です(ストリームがエラーで中断されました)」
といった通知が追加で表示される実践例
長い回答生成中にAPIが一時的に過負荷になった場合
大きなコードの説明や長文のドキュメント生成中にAnthropic側のAPIが混雑(529 overloaded_error)してストリームが中断しても、修正後はそれまでに生成された有用な部分的な内容を読むことができ、続きを依頼するかどうかを判断しやすくなります。
コード生成中のサーバーエラー
コードブロックを出力している途中でサーバーエラーが発生した場合、以前は書きかけのコードごと消えていましたが、修正後は途中まで書かれたコードが残るため、どこまで生成されたかを確認した上で再試行を指示できます。
不完全な応答であることを踏まえた再依頼
「不完全な応答」の通知が表示されるため、ユーザーは応答が全体の一部でしかないことを明確に認識でき、「続きをお願いします」といった形で自然に再依頼を行いやすくなります。
注意点
- 保持されるのはストリームエラー発生までに生成されていた部分のみであり、エラー自体が解消されるわけではありません。続きが必要な場合は改めて依頼する必要があります。
- 「不完全な応答」の通知は、部分的な内容を鵜呑みにせず、完全性を確認する目安として活用してください。
- overloaded_error(529)やサーバーエラーは基本的にAnthropic側の一時的な状態に起因するものであり、時間をおいて再試行することも有効です。