見出し画像

『ChatGPTを使い尽くす! 深津式プロンプト読本』を読んでプロンプトで遊んでみた。


はじめに

ChatGPTは面白そうだけど、言葉の仕事をするなら大規模言語モデル(large language model; LLM)の人工言語を大量に読むのはまずいかも。少なくともわたしは読んだものに影響受けるからなあ、とこれまでずっとなるべくChatGPTなどの対話型AIを避け続けてきたのですが、今月はとうとうChatGPTの使用を自分に許可することにしました。理由は単純に好奇心に負けたのと、そろそろ人工言語が自然言語に影響し始めるか、人間が人工言語に慣れてくる頃なのではと思ったから。

選んだのは、noteCXOの深津貴之さんとITジャーナリスト/ライターの岩元直久さんが書いた本『ChatGPTを使い尽くす! 深津式プロンプト読本』です。深津さんによると、この本はChatGPT初心者が中級者になるための本だそう。

まだ半分と少ししか読んでいないのですが、既に相当、面白いです!この気持ち、中学生時代に初めてBASICでプログラミングして以来のワクワクかもしれません。

note記事の作成をサポートするGPTを作成

この本の6章を参考にしたところ、あっという間に、ChatGPTをnote記事の作成用にカスタマイズした「note記事作成サポーター」というGPTが作れました。現バージョンの機能は

  • 対象読者を質問し、その読者になった気持ちで感想と改善点を述べる

  • 文字数をカウントして記事を読むのにかかる時間を推定(Mediumのデフォルト機能のアイデアを拝借)

  • 漢字率を計算して読みやすさ判定(文賢の機能のアイデアを拝借)

  • ハッシュタグを5つ提案する

  • 記事を書いた人がポジティブな気持ちになるようにする

これ実は文字数のカウントや漢字率の計算が一筋縄ではいきませんでした。ただ「文字数をカウントして」「漢字率を計算して」と頼むと「目視では○×です」とかなり適当な数字にされてしまうのです。そこで「コードを書いて」と何度も念を押したところようやくPythonのコードを書いてカウントして漢字率を数えるようになりました。いやあ、やはりChatGPTは信用なりません。

そして正直これだけだと、便利なようで別になくてもいい感じなのですが、バージョン1.0なのでまあいいかと。もう少しちゃんとした校正に近いことができるかどうか試しつつ、このGPTを育ててみたいです。

言葉を重ねてプロンプトを書いてこそChatGPTの強みが活かせる

ChatGPTの得意不得意についても、ぼんやりとイメージが掴めました。例えばやはり調べ物は苦手計算も基本的に信用できません。数値データを読み込ませていろいろなグラフを作成することはできますが、ラベルに日本語があると文字化けします(OpenAIのグラフの実行環境に日本語が入っていないため)。ただし、プロンプト次第では改善できる問題もあります。

そもそもこの本を読む前、わたしはChatGPTにただ質問するだけ、ただ命令だけするだけでした。こうした一発で答えを求める方法は、Zero-shot Prompting(例なし推定)と言って、深津さんによれば、

プロンプトの書き方としてはあまり良い方法ではありません。むしろ使わない方が良い方法です。

『ChatGPTを使い尽くす! 深津式プロンプト読本』p.069

むむむ。どおりで満足できなかったわけです。じゃあどうすればいいかというと

  • Few-Shot prompting(少数例での推定)文章のプロンプトに加えて、サンプルをChatGPTに与える

  • Information Retrieval(情報検索)関連資料を渡してから作業させる

  • Generated Knowledge Prompting(知識生成プロンプティング)まず全情報をLLMに生成させてから作業させる

  • Chain of Thought(思考の連鎖)段階的に試作させる

  • Tree of Thought(思考の木)各ステップを、複数のアプローチに分岐させながら進める

  • ReAct (Reasoning + Acting)(推論 + 行動)タスクに必要な行動と理由を考えさせる

  • Proactive Prompting(積極的な質問と推定)足りない情報をLLMに質問させる

などなど方法はいろいろあり、この本でも具体的なプロンプト例が紹介されています。要は必要な資料や情報を与えたり、人の思考や行動にも似た、さまざまなステップを記述したプロンプトを書いたりすると、ChatGPTの強みを活かした出力が得られるようです。自然言語を使いはするものの、これはれっきとしたプログラミングです。

「note記事作成サポーター」のキャッチコピーを生成

では、上記のポイントを踏まえて、「note記事作成サポーター」GPTのキャッチコピーをChatGPTに生成させてみたいと思います。以下が実際に使ったプロンプトです。

「note記事サポーター」のキャッチコピーを考えてください。
note記事サポーターの機能はこの投稿を参照してください(https://x.com/hippo_b/status/1883485606313156788)。
方向性は以下を参考にしてください。
##方向性の例##
このGPTでnoteはもっと楽しくなる

筆者のプロンプト

単に「○×のキャッチコピーを考えて」というプロンプトだと、Zero-shot Promptingになってしまいます。そこで、関連情報を与えるInformation Retrieval(情報検索)とキャッチコピーのサンプルを与えるOne-Shot prompting(一例からの推定)を組み合わせてみました。

  1. このGPTを説明したXの投稿を参照させる → Information Retrieval(情報検索)

  2. 方向性としてキャッチコピーの例を1つ与える → One-Shot prompting(一例からの推定)

ちなみにChatGPTが参考にしたXの投稿は以下です。

そして、ChatGPTの生成結果は以下です。

こちらの投稿を確認しつつ、方向性を踏まえたキャッチコピー案をいくつかご提案します。

シンプルでわかりやすい
noteをもっと楽しく、もっと広く。
あなたのnoteに、頼れるサポーターを。
記事作成も、成長も、このGPTがサポート。

ポジティブ・応援のイメージ
noteライフ、進化させよう。
書きたい思いを支える相棒がここに。
書く楽しさも、読む楽しさも倍増!

GPT活用を強調
GPTの力でnoteが広がる、深まる。
インスピレーションも、執筆効率もブースト!

ユーザー目線の価値を伝える
ひとりじゃない。note記事作成の心強い相棒!
考える時間を創造の時間へ、noteサポーター。

この中で気に入ったものや、さらに修正・発展させたい方向性があればお聞かせください!

ChatGPTの出力

いかがでしょうか?まあどれもいまいちだったり、意味的に変なものもあるものの、note記事作成サポーター」GPTの特徴から大きくずれてはいない気がします。

この中で最終的にわたしのアンテナに引っかかったのは「noteライフ、進化させよう。」と「GPTの力でnoteが広がる、深まる。」です。これらをアレンジして考えた案は

GPTでnoteをもっと楽しく進化させよう。

筆者の代案

そしてさらにChatGPTに壁打ち的にフィードバックを求め、また案を出し、を繰り返して、最終案はこちら。

書く楽しさが広がる、進化する。note記事作成サポートGPT

筆者がChatGPTと考えた最終案

書く楽しさが広がる、進化する。」がコピーで、「note記事作成サポートGPT」がGPT名です(この作業をやっているうちに名前も変えたくなりました)。

いかがでしょうか。なんだかこの作業で自分が作りたいGPTが明確になったような気がしました。たまに、コピーライティングに近い翻訳のお仕事があるのですが、時間に余裕があればこういう感じでやってみてもいいかもしれません。

おわりに

『ChatGPTを使い尽くす! 深津式プロンプト読本』を読んでプロンプトでいろいろ遊んでみました。ChatGPTの強みを活かせるような考え方を踏まえつつプロンプトを書けば、あっという間に特定の用途のためのGPTが作れます。ただ、正確性など弱点も多いので、仕事などに使うにはまず動作をよく検証することが大切です。

で、ChatGPTを何に使うかというと、まずはコピーライティングに近い翻訳のお仕事でもしかしたら使えるかもしれません。また、今、ChatGPTの中でなんとなく単語帳アプリも育てています。これは、Ankiみたいなことができるのかを練習問題のつもりで試しているところです。そして引き続き「note記事作成サポートGPT」を育てていこうと思います。

これまで、BASICやC言語などでコードを書いてきましたが、ChagGPTでのノーコードプログラミングはもどかしさも含めて楽しいです。自分専用のマシン語通訳の人がいるような感じとでもいいましょうか。そしてとにかくLLMの有効な使い道はなんなのか、しばらくはプロンプトで遊んでみるつもりです。


いいなと思ったら応援しよう!