ChatGPTやCodexを使ってみると、「思った答えが返ってこない」と感じることがあります。
その原因は、AIが苦手だからというより、こちらの頼み方がまだあいまいなことが多いです。
この記事では、初心者が最初に覚えたいプロンプトの基本を、やさしい例で整理します。

この記事でわかること

  • プロンプトで最低限伝えたい3つの要素
  • ChatGPTとCodexで頼み方を少し変える考え方
  • 失敗しにくい依頼文の整え方

まず知っておきたいこと

プロンプトとは、AIに出す指示文のことです。
難しそうに聞こえますが、最初は「何をしてほしいかをわかりやすく書くこと」と考えれば十分です。

大切なのは、長い文章を書くことではありません。
短くても、目的と条件がはっきりしていれば、AIの答えはかなり安定しやすくなります。

初心者のうちは、次の3つをそろえるだけでも効果があります。

  • 目的: 何をしてほしいか
  • 条件: どこまで守ってほしいか
  • 出力形式: どういう形で返してほしいか

たとえば「Pythonを教えてください」だけでは広すぎます。
一方で、「Python初心者向けに、for 文を3行の例で説明してください」と書けば、答えの方向がかなりはっきりします。

ChatGPTでできること

ChatGPTに頼むときは、「説明してほしい」「考えを整理したい」という目的をはっきりさせると使いやすいです。
特に初心者のうちは、コードを全部書かせるよりも、意味を聞いたり、たたき台を出してもらったりする使い方が向いています。

たとえば、次のような依頼はわかりやすいです。

Python初心者です。
`if` 文と `for` 文の違いを、専門用語を減らして説明してください。
3行くらいの短いコード例も入れてください。

この依頼文では、「誰向けか」「何を知りたいか」「どんな形で返してほしいか」が入っています。
そのため、説明だけが長く続いたり、難しい言葉が増えすぎたりしにくくなります。

ChatGPTに実際に説明を依頼した例は次の画像です。

Codexでできること

Codexに頼むときは、「何を直したいか」「どこを変えたくないか」をはっきり伝えるのが大切です。
ChatGPTよりも作業に近い依頼が多いので、元コードと条件をセットで渡すと結果が安定しやすくなります。

たとえば、次のようなコードを整理してほしいとします。

scores = [80, 65, 90]
average = sum(scores) / len(scores)

print("テスト結果")
print("人数:", len(scores))
print("平均点:", average)

このとき、Codexには次のように頼めます。

このコードを、Python初心者でも読みやすいように整理してください。
表示部分を関数に分けてください。
コメントを入れてください。
動作は変えないでください。

この依頼文では、「整理する」「表示部分を関数に分ける」「コメントを入れる」「動作は変えない」という条件がそろっています。
そのため、必要以上に大きく作り変えられる可能性を減らせます。

Codexに実際にコード整理を依頼した例は次の画像です。

依頼文を作るコツ

プロンプトを書くときは、最初から完璧な文章を作ろうとしなくて大丈夫です。
まずは、次の順番で短く組み立てると失敗しにくくなります。

  • 誰向けかを書く
  • 何をしてほしいかを書く
  • 守ってほしい条件を書く
  • 返してほしい形を書く

たとえば、同じ質問でも次のように書き換えると伝わりやすくなります。

悪い例

Pythonのコードを書いてください。

よい例

Python初心者です。
合計を表示する短いコードを書いてください。
for 文を使ってください。
3行ごとに簡単な説明もつけてください。

よい例のほうは、対象、目的、条件、出力形式がそろっています。
この4つが入ると、AIがどの方向に答えるべきか判断しやすくなります。

また、長い依頼文を一度に出すより、まず短く頼んでから「もう少しやさしくしてください」「コードだけにしてください」と追加するほうが安定しやすいです。

おじちくワンポイント

初心者のうちは、プロンプトをうまく書こうとして長文化しすぎることがあります。
でも、最初から全部を説明しようとすると、かえって大事な条件がぼやけやすいです。
まずは短く頼み、返ってきた答えを見ながら少しずつ追加するほうが、結果も理解もしやすくなります。

よくある勘違い・注意点

  • 長いプロンプトほどよいとは限りません。短くても目的と条件がはっきりしていれば十分です
  • 「初心者向けに」「動作は変えないで」などの条件を書かないと、ほしい答えからずれやすくなります
  • 1回で完璧な答えを出してもらおうとせず、少しずつ調整するほうが安定しやすいです

練習問題

問題1
ChatGPTに、len() の使い方を初心者向けに説明してもらう依頼文を1つ書いてみてください。
「誰向けか」「何を知りたいか」「どんな形で返してほしいか」を入れてみましょう。

問題2
次のコードをCodexに整理してもらう依頼文を書いてみてください。
条件として、「表示部分を関数に分ける」「動作は変えない」「コメントを入れる」を必ず入れてみてください。

name = "佐藤"
score = 92

print("結果")
print(name)
print(score)

まとめ

  • プロンプトでは、目的、条件、出力形式を短くはっきり伝えることが大切です
  • ChatGPTには説明や相談の目的を書き、Codexには元コードと条件をセットで渡すと使いやすいです
  • 最初から完璧を目指さず、短く頼んで少しずつ調整すると失敗しにくくなります

次の記事