Profile picture of ML_Bear

ML_Bear

@MLBear2

Published: March 6, 2025
1
44
442

以前、OpenAIのReasoningモデルのベストプラクティスを紹介しましたが、Anthropicも同様のガイドを出していました。CoTは避けようといった大まかな内容には共通点も多く、面白かったです😇 以下 2つのトピックをスレで紹介します ・プロンプトエンジニアリングのコツ ・テクニカルな考慮点 続く↓

Image in tweet by ML_Bear

【プロンプトエンジニアリングのコツ】 1. しっかり考えるよう指示しよう 2. few-shotは必要最低限に 3. 思考過程の再入力は避ける 4. 長文出力性能を活かそう 5. 自分でチェックさせよう 6. 性能重視なら英語で指示 7. 大規模アウトプット時には構造化を 8. 小規模な思考は従来のCoTで十分

1. しっかり考えるよう指示しよう ・「手順を細かく列挙する」より「問題をしっかり考えて」というハイレベルな指示の方が創造性を活かせる ・何を望んでいるのかは明確かつ具体的に示そう ・精密な構造化が必要な場合は、シンプルな箇条書きを与えた後、出力された思考過程を確認して微調整しよう。

2. few-shotは必要最低限に ・下図に示すようにClaudeでは タグなどで推論例を提示することも可能 ・だが、事前の例示が多すぎるとモデルの自由な思考を阻害することがあるので自由に考えさえることも検討しよう。

Image in tweet by ML_Bear

3. 思考過程の再入力は避ける ・Claude が生成したステップ思考(thinking)をそのままユーザープロンプトに流し込むと、モデルの混乱や性能劣化を招く場合がある ・デバッグ用途として参考に見るだけに留めるのがおすすめ

4. 長文出力性能を活かそう ・Extended thinkingモデルは長文テキストを出力することに優れる ・なるべく長い時間考えられるように工夫して指示してあげよう。図の例などを参考。 ※ Extended thinking: AnthropicではOpenAIで言うところのReasoningモデルをこう呼ぶ

Image in tweet by ML_Bear

5.自分でチェックさせよう ・Claudeに自らアウトプットをチェックさせるのが有効 ・例: タスク完了前に簡単なテストで作業を検証する、正しい結果かどうか分析を行う、テストコードを実行する

Image in tweet by ML_Bear

6. 性能重視なら英語で指示 ・Extended thinkingの推論は英語が最も得意とされている ・出力は日本語にしても、推論時の混乱を減らすために主要な指示文は英語で書く、といった使い分けで性能向上が期待できる。

7. 大規模アウトプット時には構造化を ・20,000 語相当以上のテキストが必要な場合は「段階的なアウトライン」→「段落ごとの内容固め」など、構造化出力を指示する。 ・学術的レポートや長大データ生成では「最初にインデックスと見出しを作る」→「内容を分割して展開」の手順が有効。

8. 小規模な思考は従来のCoTで十分 「途中経過は詳しく要らないけど多少のステップ思考はしてほしい」くらいなら、Extended thinkingモードではなく、標準モードでCoTのプロンプトを書くだけで十分な場合もよくある。

【テクニカルな考慮点】 1. 最低 1024 トークンが必要 2. 長い思考を行う際はバッチ処理を検討 3. 大規模出力時もバッチ処理やストリーミングを 4. コストと時間に注意 5. 前のターンの thinking は課金対象にならない 6. 他機能との併用制限に注意

1. 最低 1024トークンが必要 ・Thinking には最低 1024 トークンが必要 ・最初は小さめ(1024)から開始し、タスクの複雑さに応じて増やすのがおすすめ

2. 長い思考を行う際はバッチ処理を検討 ・大量の思考トークンを要するタスク(目安として32,000 超)を一度に実行するとタイムアウトやネットワーク上限に達しがち。 ・適切に分割してバッチ処理を行うのが良い。

3. 大規模出力時はバッチ処理やストリーミングを検討 ・Claude 3.7は128,000トークン規模の出力も可能だが、回線切断リスクを減らすためにストリーミングやバッチ処理を推奨。 ・単にトークン数を大きくするだけでなく、段階的に増やし最適バランスを探る。

4. コストと時間に注意 ・Thinking トークンも出力トークンとして課金対象 ・思考用トークンが増えるほど、応答時間も長くなるため、必要性に応じてバランスを取ることが重要。

5. 前のターンの thinking は課金対象外 ・過去の thinking ブロックはコンテキストウィンドウから自動的に除外される ・トークン管理上は何度も積み重ならない設計となっている

6. 他機能との併用制限 ・thinking が ON のときは `temperature`, `top_p` などのパラメータ変更は非対応。 ・ツール強制使用 (forced tool use) やレスポンスのプリフィル (pre-fill) も利用不可。

参考記事 Extended thinking tips https://docs.anthropic.com/en/... Building with extended thinking #how-extended-thinking-works class="text-blue-500 hover:underline" target="_blank" rel="noopener noreferrer">https://docs.anthropic.com/en/...

OpenAI版のベストプラクティスは↓で紹介しました https://x.com/MLBear2/status/1...

Share this thread

Read on Twitter

View original thread

Navigate thread

1/19