第3章 · Claude API Basics

エラー処理とレートリミット

Errors & Rate Limits
→ で次のスライド · F でフルスクリーン · N で講師ノート · Esc で終了

重要キーワード

Rate Limit
レートリミット
単位時間あたりの呼び出し上限 (RPM/TPM)
Exponential Backoff
指数バックオフ
失敗ごとに待機時間を倍々で伸ばすリトライ戦略
Idempotency
冪等性
同じ操作を何度繰り返しても結果が変わらない性質
Retry-After
リトライ後待機時間
429 で返るヘッダ。次の試行までの待ち秒数

エラー処理

Anthropic の中心テーマは AI Safety。 モデルが強力になるほど、誤用・予期せぬ振る舞い・社会的影響のリスクは増します。 それを技術と運用の両面から減らす活動を AI Safety と呼びます。

Constitutional AI (CAI)

LLM を訓練する際、人間からのフィードバック (RLHF) だけでなく、 「原則 (constitution) に従って AI 自身が自分の出力を批評・修正する」 プロセスを追加した手法。

  1. AI が回答を生成する。
  2. AI が原則 (例: 「有害な指示は避ける」「誠実に答える」) に照らして自己批評する。
  3. AI が修正された回答を出力する。
  4. このペアを使ってモデルを再訓練する。

これにより、人間アノテーターの工数を抑えながら 一貫した安全性 を獲得できます。

Refusals (拒否)

Claude には 「やってよいこと/やってはいけないこと」 の判断ロジックが組み込まれています。 たとえば爆発物の製造方法や、本人の同意のない監視ツールの作成は拒否します。 ただし、過剰な拒否 (over-refusal) を避ける研究も継続的に行われています。 誠実でない拒否や安全と無関係な過保護も望ましくありません。

Responsible Scaling Policy (RSP)

Anthropic は Responsible Scaling Policy という社内ガイドラインを公開し、 モデルの能力レベル (ASL = AI Safety Level) に応じて、 取り扱い・公開・運用基準を段階的に厳しくしています。

  • ASL-1: 既存ツールと同等のリスク
  • ASL-2: 現在の Claude が該当
  • ASL-3 以上: 大規模な社会的危害を及ぼし得るレベル — 公開前に追加の評価と緩和策を要求

開発者として知っておくべきこと

  • System Prompt (システムプロンプト) で振る舞いをある程度制御できるが、安全性ガードレールを完全に外すことはできない。
  • Jailbreak (ジェイルブレイク) 試行はサービス利用規約違反になりうる。
  • 自分のアプリで 入力検査・出力検査 を行うことが推奨される。
  • AUP (Acceptable Use Policy) に違反する用途は API 利用が停止される。

安全な振る舞いの観察

実際に Claude が拒否する例を見てみましょう (拒否の理由付け方が CAI らしいか観察)。

▶ エラー対応プランを Claude に
あなたは API クライアント設計をレビューする SRE です。Anthropic API の RateLimitError と APIStatusError(5xx) に対するリトライ戦略を、擬似コードで提示してください。考慮点も箇条書きで。
Hands-on Exercise

演習: リトライ付きラッパーを書く

`safe_call(prompt, retries=5)` 関数を実装し、次の動作を確認してください。 - RateLimitError → exponential backoff + jitter - 5xx エラー → リトライ - 4xx (RateLimit 以外) → 即座に raise テスト方法: わざと小さい max_tokens にしてエラーを誘発したり、無効なモデル名で 404 を起こしたりして挙動を確認。
▶ Playground を開いて実行

理解度チェック

4 問のクイズで理解度を確認しましょう。

クイズを開く
🎉

まとめ

お疲れ様でした!