皆様、夜分遅くまでお疲れ様です。
おそらくこのブログに辿り着いたということは、貴方様は以下のようなお悩みをお持ちではないでしょうか。
- Excelやスプレッドシートを使っていて業務を効率化したいけどやり方がわからない
- いろいろググってみたがIF?SUMIFS?INDEX?VLOOKUPなどの関数がわからない
- 絶対参照、相対参照、*(ワイルドカード)?もわからない
- 明日の資料提出まで時間がない……また徹夜か(涙)
今回はこれらのお悩みをズバリ解決いたします。
私ではなく『ChatGPT』が。
※今回は有料版の『GPT-4』を使った内容になっています
2023年10月27日時点、無料版のGPT3.5の挙動が非常に不安定になっている為、
何卒ご了承ください。
本当のところは最後まで読んで欲しいですが、このブログ記事にたどり着くほど
時間に追われている貴方の為に結論からお伝えいたします。
ChatGPTに送信する文章を以下の『プロンプト』を使ってください。
ちなみに今『プロンプトをコピー』するというボタンが表示されていると思いますが、
これもChatGPTに出力して貰ったものをコピペしています。
ChatGPT プロンプト例
あなたはExcel関数式の専門家です。 以下の条件を満たすような関数式を出力してください。 現在、私は『』ということをしたいと考えています。 リストには、下記の項目が含まれています。 ()は項目の列です。 ・項目名1(B列) ・項目名2(C列) ・項目名3(D列) ・項目名4(E列) ・項目名5(F列) ・項目名6(G列) シートはXXに応じて以下のように分かれています ・シート1 ・シート2 ・シート3
プロンプトについて(簡単な説明)
プロンプトとは、利用者がChatGPTを始めとする対話型AIに指示する際、
望ましい出力を得る為に利用者が活用する文章のことです。
「何だ、ただの指示出しのことね……そんなの簡単じゃないか!?」と思ったアナタの為に、
ChatGPTに『望ましい出力結果を得る為に、なぜプロンプトが大切かを教えてください。』と尋ねてみました。
以下は出力結果です。文章量に圧倒されますね。
解説:
ChatGPTに質問する際は、最初に必ず『ロール(役割)』を定義しましょう。
ロールを定義することで、ChatGPTがあなたが欲しい回答を持ってそうな人に成り代わって
回答を作成してくれることでその精度を上げてくれます。
ex.)◯◯の専門家
今度は長い文章を『中学生でもわかるように300文字程度で要約してください。』という指示をしてみたところ
以下のように要約してくれました。実はこれもプロンプトになります。
解説:
『 中学生でも分かるように』という指示を出すことで、
専門的な内容をなるべく専門用語を避けて平易な文体で説明してくれます。
他にはこんなこともできます。『 ドイツ人の同僚がわかるようにドイツ語で出力してください。』という指示をしてみたところ
なんとドイツ語の文章が出力されました。大学時代、ドイツ語を選択しましたが全く意味は分かりません。
ちなみに同僚から上司に文章を送る際は、文章は変わるのでしょうか。
『 ドイツ人の上司に伝える場合は文章表現を変えたほうが良いでしょうか。』と指示をすると以下のように出力されました。
解説:
ドイツ語の部分をコピーするのが面倒ですね。
『ドイツ語の部分をコピペボタンをクリックすることでコピペできるようにしてください。』と指示を出してみました。
『Copy code』のボタンをクリックすると文章をコピーできました。
少し脱線しましたね。このやり取りでプロンプトのニュアンスが伝わったと思います。
プログラミングをイメージすると必要最低限の指示だけを与えれば良いと思い込んでしまいますが、
プロンプトの場合はできるだけ具体的にこちらが望む出力結果をイメージして指示をすることが大切です。
関数式を出力する流れ
文章だけではイメージが掴みづらいと思いますので、実際に一例を紹介します。
突然ですが、ここからは漫画『呪術廻戦』のネタバレを含みます。
アニメ派の方はご注意ください。
読んでるブログ変わった!?と思われるかもしれませんが、
架空の会社のExcelを例として使うよりは人気漫画を例に取ったほうが読者も楽しくイメージできるかなと思った次第です!決してブログ作成者がその方が筆が乗るからという判断ではありません。
以下のように、キャラクターごとに名前・術式・領域展開、反転術式、等級、黒閃経験の表があります。
東京校、京都校、OBというシートがあり、それぞれに該当するキャラクターの情報が記載されています。
下記は東京校のシート。
下記は京都校のシート。
下記はOBのシート
呪術廻戦が好き過ぎてMECEなシートを作成したつもりが、
致命的なミスに気づいてしまいました……
シートが独立しているので、このままでは欲しいキャラの情報を検索できないッ!
せっかくキャラクターの名前を検索して、キャラクターの術式や領域展開、マニアックな等級なんかの情報を
復習しようと思ったのにシートが別れているとフィルターできないですね……大変困りました。
という想定で、今回はプルダウン形式でキャラクター名を選択すると、
キャラクターの情報一覧が取得できるリストを作成しようと思います。
では早速、GPTに新たな集計シートに黒閃経験有りのキャラクターのみを抽出したリストを作成する場合の
関数式を出力する方法を聞いてみます。
解説:
Excel関数式に限らずですが、GPTに何か具体的な解決策を出力させたい場合は
その前提情報を事細かく情報共有することが大切です。
プルダウンリストの作り方が分かりました。
今まで他人が作ったプルダウンリストを使ったことはあるんですが、
皆さんこうやって作ってたんですね……
早速、Excelの画面でデータタブの『データ検証』からリストを作成しようと思うのですが……
データ検証がないことが判明しました
ソフトウェアのバージョンなどによって、機能自体が無かったり、
その呼び名が異なったりすることは非常にあるあるです。
こういう時はGPTに聞いても解決しないので、落ち着いてGoogle検索した方が解決します。
GPTに聞いて解決しないと視野狭窄に陥りがちですが、
解決しない場合は一旦、GPTから離れてググりましょう。
ちなみに私のバージョンのExcelでは、『データ入力規則』>『データの入力規則』が当該機能でした。
クリックすると下記のようにリストを設定する画面になります。
関数式出力とはズレるので、ココの箇所は割愛させて頂きます。
紆余曲折を経てプルダウンリストの作り方が分かりました。
今まで他人が作ったプルダウンリストを使ったことはあったのですが、
自分では作った試しが無かったので助かりました!(ダイジェスト)
閑話休題。本題の関数式を尋ねてみましょう。
今回は複数のシートにまたがる情報を取得したいので、それができる関数式の出力をお願いしました。
最初のプロンプトで事細かに事前情報を共有したので、驚くほど細かい関数式が出力されましたね!
しかし、そのままコピペしてしまうとエラーになってしまいました。
どうやらキャラクター名を参照するセルの位置が
コピペ元の関数式がB3ではなくA2になっていたようです。
こういう時、手動で直しがちではないでしょうか。
しかし関数式の修正もGPTにお願いできるので、お願いしてみましょう!
参照するセルの位置を修正したところ、ちゃんと『無し』と表示されましたね。
虎杖悠仁の術式はこのブログ作成時点(2023年10月27日)無しです。
もし最新話で術式を使えるようになっていたらごめんなさい。
同じ要領で『領域展開』『反転術式』などの項目に入力する関数式も出力してもらいましょう。
入力すると、以下のようにプルダウンのリストが完成しました!
こう見ると虎杖悠仁って主人公なのに黒閃以外、特徴がないキャラクターということが分かりますね。
本編の前日譚『呪術廻戦 0 東京都立呪術高等専門学校』の主人公、乙骨憂太にプルダウンリストを変更してみましょう。
すべての項目が埋まってますね。
ちなみに原作で黒閃打った描写あったっけ?という方は、
劇場版の夏油戦で黒閃を放つ描写があったので見直してみてくださいね。
次は京都校のメンバーをプルダウンで見てみましょう!
うーん、『等級』と『黒閃経験』の列(F列・G列)が逆になっていたのが原因のようでした。
ブログ記事に添付したスクショもしっかり逆になっていました。気づいた方はいらっしゃいますか。
GPTではなく私のミスでしたね。教訓として記事に残させて頂きたいと思います。
藤堂のように不義遊戯は使えないので、
非術師の私は手動でセル列を入れ替えました。
OBのセルも同じミスがありましたので、入れ替えました。
ヒヤリハットが命取りなのは呪術師だけではなく、
広告運用者、ひいてはサラリーマンでも同じことです。
皆さん、気を引き締めていきましょう!
ラストはOBのシートのキャラクターも見ておきましょう。
こう見ると流石、五条先生ですね。術式、領域展開も使えて、反転術式まで使える。
五条先生、黒閃打ってた描写あったっけ?と思った方は申し訳ございません。
原作最新話のネタバレになります。まぁ打てるよね、知ってたって感じです。
まとめ
さて皆さん、ChatGPTのプロンプトの核心は掴まれましたでしょうか。
途中からGPTの話か呪術廻戦の話をしているか、どちから分からなくなってきました。
しかしGPTに指示を出す時も自分が好きなものについて熱弁する時のテンションで伝えた方が良い出力を得られる傾向があります。
プロンプトに関しては余計な情報というものはなく、背景情報などは多ければ多いほどGPTの出力結果も良くなります。
ご自身でもChatGPTに関数式を出力する際は、以下の4点を意識してください。
1.まずロール(ex.Excel関数式の専門家)を定義する
2.目的やシート名、項目名(列)は可能な限り詳細に共有する
3.GPTの説明とExcelの項目が異なる場合は、一旦GPTを閉じてGoogle検索して見る
4.関数式を過信せず、自分の入力したセルも含めて、出力が正しいか確認する
付録(ハルシネーションのリスクについて)
GPTに限らず、生成系AI全般に言えることですが、たまに『ハルシネーション』が発生するリスクがあります。
ハルシネーションとは、現実には存在しないことを生成系AIが事実として出力してしまうことです。
今回はブログ記事作成中に、おそるべきハルシネーションに遭遇したので共有します。
登場人物と術式があべこべになっているのが分かります。
何より『佐々木琲世』は『呪術廻戦』ではなく
全く別作品『東京喰種:re』の主人公です。
Excel関数式などは出力が正しいか、正しくないかすぐ判別できますが、
それ以外の事柄は使用者が正しいリテラシーを持っていないと全く関係無い事柄を
関連付けて認識してしまうリスクがあるので非常に危険だと再認識しました。
ブロク記事は以上になります!
このブログ記事が面白かった方は、他の記事ももう1本読んで帰って貰えると嬉しいです。
あとオタク系商材でWeb広告活用を検討中の方がいらっしゃいましたら、
インハウス支援と広告運用を行っていますので是非、アイトリガーまでお問い合わせください。