2023年3月15日、午前11時ごろ。私はキエヴのクレシャチャティク通りのカフェに座って画面を見つめていて、このプロジェクトにもう12時間も費やしたのに、結果は昨日より悪くなっていることを理解しました。
サンフランシスコのクライアントはAIアシスタントの動くプロトタイプを待っていました。私はプロンプトを書き直してはまた書き直していました。モデルは速く、自信ありげに答え、しかもほとんどの場合で外しました。
なぜChatGPTは正しい答えの代わりに自信ありげに答えるのか
問題はモデルではありませんでした。問題は、私がモデルとどう会話していたかでした。
私は課題を渡して、すぐに答えを求めました。モデルは答えました。答えは筋が通っていて、きちんと整っていて、確認すると3ステップ目で崩れました。
これはよくある話です。ChatGPTは、正しい答えを返すために最適化されているのではなく、説得力のある答えを返すために最適化されています。これは別のことです。
正面から解決策を求めると、モデルは「それっぽく聞こえる答え」へ最短ルートを取ります。考えません。正しい答えに似た文章を予測しているだけです。
単純な課題ではそれでうまくいきます。複雑なものでは、うまくいきません。
私は出力を手作業で作り直し、条件を追加し、問題設定を明確化しました。1回の反復に20〜40分かかります。12時間で、そういうやり取りをおよそ18回も回していて、実際にはまったく前に進んでいませんでした。
クライアントはレポート上の進捗を見ていました。私は、このプロジェクトが燃え尽きかけているのを見ていました。
このテーマのプロンプトをPDFにまとめました。無料で受け取ってください:https://t.me/airozov_bot
たった40分で全部変えたプロンプト
偶然がこういう形で起きました。私は課題の言い換えに疲れて、ただこう書きました:
"答える前に、課題をステップごとに分解して。どんな前提を置いている?論理のどこで間違いが起こり得る?それだけを確認してから答えを出して。"
モデルは予想外のものを返してきました。声に出して考え始めたのです。私自身の問題設定にある矛盾を2つ見つけました。そして、各案が機能する理由/機能しない理由を説明しながら、解決策を3つ提案してきました。
私は2つ目の案を使いました。それで課題はクローズしました。
これをchain of thought(連鎖的思考)と呼びます。答えを求めるのではありません。答える前に、モデルに“考えるように”求めるのです。
ここからは、私がそれ以来ずっと使い続けている3つの具体的な構成を紹介します。
1つ目――"ステップごとに"。 いちばん簡単な方法です。どんな依頼文の最後にも "ステップごとに考えて" と付け加えてください。なんだか当たり前に聞こえますが、安定して効きます。ロジック、コード、分析のような課題では、回答の質が明らかに上がります。私の場合、直球の依頼に比べて、作り直しの回数が約40%減りました。
2つ目――"まず前提"。 答える前に、モデルに「課題の条件の中で何を真だと考えるか」を書かせます。これは、私自身が依頼をうまく作れていない瞬間を捕まえるのに役立ちます。多くの場合、問題はモデルではなく、私は穴のある課題設定をしていて、モデルは正直にそこへ落ちていたことが判明します。
3つ目――"3つの案と、1つのベスト"。 1つの答えではなく、課題へのアプローチを3つ出させ、それぞれのうちどれが望ましいか、そしてなぜそうなのかを説明させます。これは特に、アーキテクチャの判断や文章の組み立てのときにうまく機能します。トークンを少し多めに使う代わりに、1点ではなく解決策の選択肢全体が見えるようになります。
そのカフェでの40分は、失われた12時間を取り戻すほどの価値がありました。私はプロジェクトを2日後に納品しました。クライアントは満足してくれて、さらに$650の追加注文もくれました。
私が見つけるとは思っていなかったこと
私は、chain of thoughtは回答の質のためのものだと思っていました。ところが実際は、まず重要なのは私の質問(プロンプト)の質でした。
モデルが声に出して考えると、あなたが出した依頼をモデルがどう理解しているかが見えます。そして、たいがいの場合、あなたが意図したのとは違う理解をしています。これはモデルの不具合ではありません。あなたの言い回しの鏡です。
そういうプロンプトで数週間作業するうちに、私は課題の出し方を変えるようになりました。文脈を追加し、曖昧さを取り除き、制約を明確に指示するようになったのです。誰かの講座でそう読んだからではありません。モデルがどこへ行ってしまうのかを見て、なぜそうなるのかが分かったからです。
これはChatGPTに限らず改善しました。私が今メインで使っているClaudeでも、こうしたプロンプトはさらにきれいな結果を返します。長いchain of thought(思考の連鎖)の文脈をより良く維持できるためです。
もう1つ、あまり言及されない点があります。chain of thoughtは回答を遅くします。モデルはより多くの文章を書くのです。初心者には非効率に見えます――答えをすぐ返してもらえるなら、なぜそんなに言葉が必要なのか?と。
でも私はそうは思いません。私は速い回答は必要ありません。これから2時間先も作り直す必要のない回答が欲しいのです。
毎日、こうしたツールをTelegramで1つ解説しています:https://t.me/yevheniirozov
今すぐやるべきこと
claude.ai、もしくはChatGPTを開いてください。ここ数日行き詰まっている課題を1つ取り上げます。
次のプロンプトを書いてください:
"答える前に、課題についてあなたが置いている前提をすべて書き出して。次に、解決策をステップごとに分解して。論理の中で弱点になり得る場所を指摘して。その後で、最終的な回答を出して。"
以前受け取っていた回答と比べて、何が変わるか見てみてください。
これは5分で終わります。そして高い確率で、次の数時間の作り直しを節約できます。
私のTelegramをフォローしてください:
- 私自身が使っているプロンプト
- お金を失った原因になったミス
- みんなが書く前のツール





