前回は、ChatGPTの概要を一通り解説しました。今回は、ChatGPTの使い方や、上手に活用するために押さえておきたいプロンプトエンジニアリングの要素、ChatGPT APIを活用したVSCodeの拡張機能、ChatGPT APIの実装例について、実際にChatGPTを使いながら説明していきます。

→連載「ChatGPT入門 - 初めてのAIチャット活用」の過去回はこちらを参照。

ChatGPTは今のところ無料で利用できる

ChatGPTでは、有料版の「ChatGPT Plus($20/月)」も提供されていますが、現状、無料での利用も可能です(2023年3月現在)。ChatGPT Plusには「アクセスが集中しているときでも利用可能となる」「質問応答時間が早くなる」「新機能へ優先的にアクセスできる」といった利点があります。しかし、ChatGPTがどのようなものか少し試してみたい、という程度であれば無料版で十分でしょう。

まずは使ってみよう

ChatGPTを利用するためには、OpenAIのアカウントが必要となります。まずはアカウントを作成します。

ChatGPTの紹介ページへアクセスし、「TRY CHATGPT」を選択します。

  • ChatGPTのサイト

    ChatGPTのサイト

「Sign up」を選択します。

  • ログイン画面

    ログイン画面

メールアドレスを使用する場合は、メールアドレスを入力し「Continue」を選択します。続いてパスワードを入力し「Continue」を選択します。

  • OpenAIアカウント作成画面(左:メールアドレス入力・外部アカウント選択、右:パスワード入力)

登録したメールアドレス宛にOpenAIから確認メールが届くため、メール文面に従い「Verify email address」を選択し、アカウント作成を完了します。

アカウント作成後、ログイン画面からログインすると、質問を入力する画面が表示されます。まずは何か質問をしてみましょう。ここではChatGPTの使い方を質問してみます。

  • ChatGPTの使い方を質問

今回は以下のような回答が返ってきました。だらだらと長い文章でなく箇条書きで回答してくれており、簡潔さも備えた分かりやすい回答となっています。回答に対して続けて質問することや、新たなチャットを作成して別の質問をすることができます。また応答時間は、質問の内容やサービスの混雑具合によって異なります。

  • ChatGPTの使い方を質問し、ChatGPTから得られた回答

コレだけは押さえておこう「プロンプトエンジニアリング」

察しの良い方は既にお気づきかもしれませんが、ChatGPTが生成する文章は質問の仕方によって変わります。言い換えると、質問の仕方を工夫することで、ChatGPTによる回答の内容や質を向上させられるのです。

ChatGPTのようなGenerative AI(生成AI)は、テキスト入力をインタフェースとして持っています。このAIに入力するテキストを「Prompt(プロンプト)」と呼びます。そして、人間が望む回答を得るために生成AIへ与えるプロンプトを工夫することを、「Prompt Engineering(プロンプトエンジニアリング)」と呼びます。

プロンプトエンジニアリングの定義や体系についてはさまざまな議論がありますが、重要な要素としては以下の3つがあります。

  • 要素①:AIへ質問や指示する内容
  • 要素②:背景・補足情報
  • 要素③:出力条件

ChatGPTを利用する際には、これらの要素を考慮してプロンプトを適切に設計することで、回答結果の方向性や品質をコントロールします。さらには、必要に応じて後続のプロンプトで要素を追加することも可能です。このような工夫を施すことで、自身が期待する回答が得られる可能性を高めることができます。

例えば「新鮮なイチゴを売りとしたアイスクリーム店のキャッチコピーを15文字以内で作成してください」というプロンプトは上記の要素①②③を含んでおり、以下の通り分解されます。

  • 要素①:アイスクリーム店のキャッチコピーを作成する
  • 要素②:アイスクリーム店は新鮮なイチゴを売りとしている
  • 要素③:15文字以内で作成する

まずは、アイスクリーム店のキャッチコピーに関する回答が、要素①②③の有無によってどのように変わるか見てみましょう。

  • 質問1-1(要素①「AIへの質問や指示する内容」のみ)

アイスクリーム店のキャッチコピーを作成してください。

  • 回答1-1

「毎日のハッピーにアイスクリームで彩りを!」

  • 質問1-2(要素②「新鮮なイチゴを売りとしているという背景・補足情報」や、要素③「15文字以内であるという出力条件」を追加)

新鮮なイチゴを売りとしたアイスクリーム店のキャッチコピーを15文字以内で作成してください。

  • 回答1-2

「イチゴ尽くしのアイスクリーム!」

  • 質問1-3(後続プロンプト(質問)で、要素②「日本初出店という背景・補足情報」を新たに追加)

他の例を教えてください。なおこのアイスクリーム店は日本初出店です。

  • 回答1-3

「日本初! いちご尽くしアイス! 」

回答1-1ではどのお店にも通じるような20文字のキャッチコピーが生成されましたが、回答1-2では「新鮮なイチゴが売り」というお店の特徴を表現する15文字のキャッチコピーが生成されました。要素が増えることで、回答結果の品質が向上していることが分かります。

さらに回答1-3では、回答1-2を基に「日本初出店」という追加の特徴も含めた14文字のキャッチコピーが生成されました。後続のプロンプトで新たに追加された要素によっても回答結果の品質が変化しています。

PythonでFizzBuzz問題を解くコードを実装させてみる

この記事は
Members+会員の方のみ御覧いただけます

ログイン/無料会員登録

会員サービスの詳細はこちら