ChatGPTに「Code Interpreter」という機能が追加されました。話し言葉で命令するだけで、パワーポイントファイルを生成したり、アップロードした画像をアニメGIFにするなど、さまざまな操作が行えます。なんと、裏側でPythonプログラムを生成し、実行しているのです。→過去の「柳谷智宣のChatGPTプロンプトクリエイティブラボ」の回はこちらを参照。
これまで、Excelやプログラミング言語などを駆使して行っていた作業が、自然言語で実現できるのは驚異的です。今回は、「Code Interpreter」で何ができるのか、どんなプロンプトを作ればいいのかを紹介します。
ロゴ画像がフェードインして回転するアニメGIFを作成する
Code Interpreterは今のところ、有料のChatGPT Plusで利用できます。設定画面で「Code Interpreter」を有効にしたら、「GPT-4」を選択し、メニューから「Code Interpreter」にチェックを入れます。すると、メッセージ入力欄に「+」マークが現れます。
試しに、企業ロゴの画像をアップロードし、回転するアニメGIFを作成してみましょう。「+」マークをクリックするか、ドラッグ&ドロップしてファイルをアップロードします。
プロンプトは試行錯誤できるように、テンプレ化しました。最初は単純な文章で指示したところ、正方形の画像が丸くなったり、3秒と入れたらエラーになったので、ブラッシュアップしています。
-
プロンプト
この画像を読み込み以下の命令にしたがってください。
###命令
この画像を正方形のアニメGIFにしてください。
画像は必ずフェードインしてから始まります。
そのあと、2回転させてください。
回転速度は1回転3000ミリ秒にしてください。 出力
プロンプトを入力すると、いきなり画像を生成するのではなく、どんな手順を用いるのかを解説します。その上でプログラムを生成し、処理を進めていきます。作成したプログラムは表示されませんが、「Show work」をクリックすることで確認することもできます。
フェードインの処理を行い、回転させる処理を行い、アニメGIFを生成したら、ダウンロードリンクを生成します。このリンクをクリックすると、指定通りの動作をする画像をダウンロードできました。
英語のWord文書を読み込ませてPowerPoint資料を作成する
ChatGPTでは、PowerPoint資料の中身を作ることも多いのですが、当然出力した文章は手動でPowerPointファイルにコピペする必要があります。しかし、Code Interpreterを使えば、直接PowerPointファイルを生成できるのです。
もちろん、従来通りプロンプトでお題を与えて、資料を作成することもできますが、今回は英語のWord文書を読み込ませ、その内容を踏まえて、PowerPointファイルを作成するように指示してみます。
シンプルな文章だと、内容がなかったり、英語で出力したりしたのでプロンプトに細かい指示を入れています。確認は不要と書かないと、「~という理解で正しいですか?」とか「~を保証するものではありません。ご了承下さい」などと、意味のない確認を求めてきます。
-
プロンプト
この資料の内容を読み込み以下の命令に従ってください。
###命令
プレゼン資料として5ページのpptxライブラリを利用して、pptxファイルを出力してください。
各ページには見出しの他に、内容を抜粋して箇条書きで3~4項目入れてください。
文書はすべて必ず日本語で出力してください。
処理の前の確認は不要です。
英語の文書を読み込み、中身を分析し、指定枚数のスライドを生成。PowerPointファイルとして生成し、ダウンロードリンクを出力してくれました。
タイトルや見出しは問題なかったのですが、中の箇条書きのレイアウトが崩れていました。とは言え、マウスで動かして文字サイズを調整すればいいだけなので、手間はかかりません。すべて、コピー&ペーストするよりは確実に楽です。
Twitterのアクティビティデータを分析したりグラフ化する
CSVファイルを読み込ませて、データの中身を分析させることもできます。例えば、Twitterの「ツイートアクティビティ」から1か月分のデータをエクスポートし、そのCSVファイルをChatGPTに読み込ませてみましょう。
プロンプトはシンプルに「このファイルを読み込んでください」でOKです。もちろん、処理させたい目的が決まっているなら、最初のプロンプトで入力してもOKです。
データを読み込むと最初の数行を実際に表示してくれます。きちんと情報を理解しているのがわかります。
-
プロンプト
このファイルを読み込んでください。
このデータを元にグラフを作成できます。何を作ろうかぱっと思い浮かばなかったので、「さまざまな情報から有効なグラフをいくつか作成してください」と適当なプロンプトを投げてみました。ふわっとしすぎて、人間相手なら嫌われる指示です。
しかし、ChatGPTは即、1日の時間帯別の平均インプレッション数と1日の時間帯別の総エンゲージメント数、インプレッション数とエンゲージメント数の散布図という3つのグラフを作成してくれました。筆者は夜に投稿することが多いので、あまり意味のあるグラフにはなりませんでしたが、サクッとビジュアル化できるのはとても便利です。
-
プロンプト
さまざまな情報から有効なグラフをいくつか作成してください。
データについて、質問することもできます。データの偏りを質問したり、改善方法を聞くこともできます。出力するデータによっては文章だけでなく、表組にしてくれることもあります。
もう情報の分析はChatGPTでできそうです。そこで、重要になるのがデータの持ち方です。今回、公開されているいろいろな白書のデータを利用して、分析しようとしたのですが、セルを結合して見栄えをよくする「神Excel」により、読み込むことができませんでした。これからは、AIが読めるように、キレイなデータを持つことがポイントになってくるでしょう。
-
プロンプト
投稿時間によって、インプレッション数は変わりますか?
出力
文字化けするグラフの凡例をきちんと表示させる
Code Interpreterではグラフを作成できますが、実は日本語の凡例は文字化けしてしまいます。これは日本語のフォントがないからです。
日本語の入ったグラフをきちんと表示したいなら、フォントをアップロードしてあげましょう。まずは、フォントファイルが必要です。今回はLINEが提供する角丸ゴシック体「LINE Seed JP」フォントを使いました。無償なうえ商用利用も可能です。
まずは、そのファイルをアップロードし、凡例に使うように指示します。
-
プロンプト
グラフの凡例にはこのフォントを使ってください。
「了解しました」と返ってきたら、売上のファイルをアップロードし、グラフ作成のプロンプトを入力します。これで、日本語がきちんと表示されたグラフが表示されるようになります。
-
プロンプト
各店舗の売り上げを折れ線グラフにしてください。
Code Interpreterでは、複数ファイルをZIPファイルにまとめて渡すこともできます。しかし、フォントとCSVファイルをまとめて渡すと、うまく動作しないこともありました。そんな時は、そのセッションに固執せず、すぐに新しいチャットを初めて、別の方法を試してみましょう。
また、7月13日の日中にCode Interpreterが動作しなくなりました。結局、数時間待って、元に戻りましたが、まだCode interpreterはβ版です。正常に動作しないこともある、と割り切って使いましょう。
それでも、Code Interpreterの破壊力はすさまじいです。非エンジニアでも、自然言語でChatGPTに指示を出すことで、プログラムを生成し、実行できる世界を体感してみてください。