マジセミドライブ
ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。
ChatGPT探訪
2023.07.19
【ChatGPTプラグイン探訪】「 Code Interpreter 」〜ファイル入出力+Pythonコード自動生成実行〜
コンテンツ
はじめに
ごあいさつ
日本全国の「熱狂的ChatGPTプラグインファン」のみなさま、
おつかれさまです。
「eBASEBALLパワフルプロ野球2022 →栄冠ナイン」では、
3年生になると引退卒業していってしまい、チーム戦力が大幅ダウンしてしまうという、
高校野球の宿命があるわけですが、
実際の高校野球監督も、
特にスター選手の場合には、
『そこをなんとか、あと1年だけ、留年してもらってもよいですか?』と、
お願いしたい気持ちになっているのであろうなと思う、
マジセミ担当者Aでございます。
今回の作戦
今回は、ChatGPTに革命をもたらすプラグイン「 Code Interpreter 」の様子をうかがってみます。
ご注意点
※本記事は、担当者Aの主観により作成されていますので、なにとぞ、そういうことでよろしくお願いします。
※各プラグインの機能強化が進んでいる場合もありますので、最新情報をご確認ください。
ChatGPTプラグイン「Code Interpreter」まとめ
「Code Interpreter」とは
Pythonコードの自動生成実行機能
「 Code Interpreter 」(コードインタプリタ)とは、
ChatGPT上で「Pythonコードを自動的に生成して実行できる仕組み」を提供するプラグインです。
入力されたプロンプトを解釈して、必要なPythonコードを自動的に生成実行して、結果を提示してくれます。
ファイル入出力機能
「ファイル入出力が可能」である点も、大きな特徴としています。
今まではテキスト入力しかできませんでしたが、
「テキストファイル」「CSVファイル」「画像ファイル」などの入力が可能であるため、
「CSVファイルをアップロード →分析してもらう →グラフ出力してもらう」などの利用方法が可能となります。
ChatGPT提供の「公式プラグイン」
「 Code Interpreter 」は、
他のサードパーティー製プラグインとは異なり、
ChatGPTの機能を拡張する「公式プラグイン」です。
そのため、他のプラグインとは異なり、「オフィシャル特別枠」として扱われています。
主な機能
・Pythonコードの自動生成実行機能
・ファイルアップロード機能 :ZIP圧縮で複数ファイルのアップロードが可能
・データクリーニング機能
・データ分析機能
・グラフ作成機能
・(簡易的)画像編集機能
・(簡易的)動画編集機能
・ファイルダウンロード機能
ユースケース
・データ分析
・グラフ作成
・テキストのクラスタリング
・画像データからカラーパレットを作成
・GIFファイル作成
・小さなコードスニペットをテスト など
使用時の注意点
・利用には「ChatGPT Plus」の有料課金が必要
・「 Code Interpreter 」からインターネットへのアクセスは不可
確認①大量テキストの読み込み
ChatGPT4(デフォルト)の「テキストが多すぎエラー」問題
ChatGPT4(デフォルト)では「大量テキストを入力できない」という問題点があります。
大量テキストの例=ChromebookオフィシャルページのHTML
例えば、以下のページのHTMLは「14万文字」ほどあります。
→google.com →intl →ja_jp →chromebook
ChatGPT4(デフォルト)に入力してみる →テキストが多すぎエラー
『以下のHTMLにエラーがないかチェックしてください。』とお願いしても、
「テキストが多すぎエラー」になってしまいます。
「自分のところのサイトページHTML」をチェックしてもらおうとしても、
できなかったわけであり、
泣く泣くあきらめるしかなかったわけです。
「Code Interpreter」なら読み込めるのか? →読み込めている模様
テキストファイル化
「14万文字HTML」をテキストファイルに入れて、
「 Code Interpreter 」に読み込んでもらって、チェックしてもらいます。
実行結果
ちゃんとPythonコードを作成して、実行してます。
Pythonの「html.parser」モジュールを使用して、HTMLの構文を解析し、エラーがないか確認してくれているようです。
本当に読み込めているのかテスト →しっかり読み込めてました
大量テキスト例としておなじみ=ピーターパンテキスト(約27万文字)
→gutenberg.org →files →「The Project Gutenberg eBook of Peter Pan, by James M. Barrie」
読解テスト作成
読解テスト実施の様子
Pythonコードをグリグリ動かして、回答してくれているようです。
ピーターパン読解問題:問題+正解
■第1問
ピーターパンとウェンディはどのようにしてネバーランドに到着しましたか?
A. ボートで
B. 飛行機で
C. 魔法の粉で飛んで
D. トンネルを通って
※正解 = C
■第2問
ピーターパンはどのようにして自分の影を取り戻しましたか?
A. 影を追いかけて捕まえた
B. ウェンディが縫い付けた
C. フック船長から取り戻した
D. 影が自分から戻ってきた
※正解 = B
■第3問
ピーターパンとウェンディがロンドンに戻ったとき、彼らの親はどのように反応しましたか?
A. 怒っていた
B. 喜んでいた
C. 驚いていた
D. 彼らを認識できなかった
※正解 = B
「Code Interpreter」の回答
■第1問 = C 正解!
■第2問 = B 正解!
■第3問 = 回答不可 残念!
理由を付けて回答してくれているので、
しっかり読み込めていることが分かりましたね。
回答不可の第3問は、日本語と英語の翻訳問題かもしれません。
まとめ
「テキストが多すぎますエラー」を気にせずに、大量テキストを入力できます。
驚きの便利具合であるため、
「大量テキスト入力レボリューション」として認定いたします。
確認②Facebook分析
作戦概要
①マジセミFacebookの「アナリティクスデータ」をアップロードします。
・1ヶ月分
・CSVファイル
②アナリティクス分析をしてもらいます。
★フォローをお願いします。
プロンプト
■指示
アップロードした「Facebookアナリティクスデータ」について分析してください。
■記事区分
記事区分は、投稿記事の先頭に記述されている【xxxx】で判別できます。
【マジセミ動画】と記述されていれば、その記事区分は「マジセミ動画」です。
■分析方法
「1投稿あたりの平均数」を基準として分析してください。
■出力
・日本語で表示してください。
・分析結果について、グラフィカルに表示してください。
■改善提案
分析結果から「投稿に関する改善点」を提案してください。
■不明点について
不明点があれば、質問してください。
実行結果
まとめ
◯:CSVを放り込むと、それなりの分析をしてくれる
◯:記事区分ごとの「エンゲージメント数グラフ」+「インプレッション数グラフ」を作成してくれた
◯:傾向分析を出してくれた
◯:改善提案を出してくれた
✕:グラフ内の日本語が文字化けしてしまう ※改善に期待
プロンプトテンプレ+CSVデータを入力するだけで、レポートを作ってもらえるのは便利ですね。
文字化けがなければ、定期レポートのベースとして、使えるかもしれません。
Twitterでも同様の分析レポートを作成できるはずです。
確認③グラフで日本語フォントを表示する方法
文字化け問題解決の文献
「 Code Interpreter 」のグラフ出力で、
「日本語フォントを文字化けさせずに表示させる方法」が紹介されていました。
日本語を表示できるのか、やってみましょう。
参考ページ
「Code Interpreter」でサポートされている日本語フォントリスト
プロンプト
■課題
「 Code Interpreter 」でグラフを出力すると、「日本語フォント」が化けてしまいます。
■質問
「 Code Interpreter 」で、サポートされている「日本語フォント」をリストアップしてください。
■抽出条件
・フォントデータ提供元=Google
実行結果
まとめ
日本語に対応している「Noto Sans Japanese」を試してみます。
日本語フォント「Noto Sans Japanese」のダウンロード
「Noto_Sans_JP.zip」(58MBほど)をダウンロードします。
→fonts.google.com →noto →specimen →Noto+Sans+JP
サンプルグラフ 文字化け「解消」版
プロンプト
■指示
サンプル表示のための「折れ線グラフ」を作成してください。
■グラフタイトル
“月別売上グラフ”
■サンプルグラフ
表示サンプル用グラフであるため、売上額の数字は、適当に作成してください。
■出力データ
x軸 = 月
Y軸 = 売上額
■凡例表示
x軸 = “月”
Y軸 = “売上額”
■表示フォント
グラフ内で表示するフォントは、アップロードした「日本語対応フォント」を使用してください。
実行結果
【参考】文字化け「あり」グラフ
デフォルトでは、文字が「白い四角」になってしまいます。
【参考】文字化け「解消」グラフ
なにやら文字が弱々しいですが、
日本語が出ました!
まとめ
日本語対応フォントをアップロードして、
「このフォントを使用してください。」とすれば、
グラフに日本語を表示できることが分かりました。
備考:
①デフォルトで日本語対応フォントを仕込んでおいてもらう
②「 Code Interpreter 」がインターネットにアクセスできるようにしてもらう
などで、根本解決できそうなので、対応のほど、お願いします。>OpenAI
確認④「OpenAI API」代替 スプレッドシートへのデータ追記
「OpenAI API」とは
概要
「OpenAI API」は、開発者が「OpenAIによって開発されたAIモデル」にアクセスして使用できるようにするためのインターフェースサービスです。
「OpenAIのAI」を自社のサービスやアプリケーションに組み込むことができます。
身近な利用方法としては、
スプレッドシートからAPI経由でアクセスすることにより、数百件のレコードに対して、一括してChatGPTに回答を依頼するような使い方ができます。
課題
「OpenAI API」は、従量課金サービスであるため、利用量に応じて課金されます。
今回の作戦
「 Code Interpreter 」を利用することで、「OpenAI API」に課金せずに、「OpenAI API」ライクなことができるのか?
について、やってみます。
作戦手順
①スプレッドシートをCSVにします。
②「 Code Interpreter 」にアップロードします。
③「 Code Interpreter 」に答えを登録してもらいます。
④「回答済みCSVファイル」をダウンロードします。
⑤結果を確認します。
サンプルスプレッドシート
プロンプト
■指示
アップロードしたCSVの「問題」に対して、回答してください。
■回答入力項目
①「 Code Interpreter 」の答え
◯or✕を入力してください。
②「 Code Interpreter 」の補足解説
◯✕の根拠となる補足情報を入力してください。
■ダウンロード
回答結果を入力したCSVのダウンロードリンクを出力してください。
実行結果
「カスピ海」と「囲碁サッカー」は回答不可になりました。
「囲碁サッカー」については、把握しておいてほしかったですね。
回答確認
正解 5問
回答不可 2問
でした。
まとめ
CSVファイルを経由させることで、「OpenAI API」ライクな使い方は可能でした。
「 Code Interpreter 」は、(今のところ)ネットにアクセスできないので、
最新情報にアクセスできる「OpenAI API」のほうが使い勝手は良さそうですね。
普遍的な処理であるならば、「 Code Interpreter 」でもいけそうです。
特に、件数が大量にある場合は、より効果的に使えるかもしれません。
確認⑤動作確認までやってくれるコードデバッグ
Pythonサンプルコード「クイックソート」
作:ChatGPT3.5先生
“
def quick_sort(arr): if len(arr) <= 1: return arr else: pivot = arr[0] less = [x for x in arr[1:] if x <= pivot] greater = [x for x in arr[1:] if x > pivot] return quick_sort(less) + [pivot] + quick_sort(greater) # テスト用のリスト arr = [6, 3, 9, 1, 5, 2, 8, 7, 4] sorted_arr = quick_sort(arr) print(sorted_arr)
”
「Code Interpreter」で実行 →動作OK
実行されました。
Pythonサンプルコード「クイックソート」(バグ仕込み版)作成
バグ1
if len(arr) <= 1: ↓1を0に if len(arr) <= 0:
バグ2
less = [x for x in arr[1:] if x <= pivot] ↓<=を >=に less = [x for x in arr[1:] if x >= pivot]
バグ3
greater = [x for x in arr[1:] if x > pivot] ↓>を<に greater = [x for x in arr[1:] if x < pivot]
バグ込みコード
"
def quick_sort(arr): if len(arr) <= 0: return arr else: pivot = arr[0] less = [x for x in arr[1:] if x >= pivot] greater = [x for x in arr[1:] if x < pivot] return quick_sort(less) + [pivot] + quick_sort(greater) # テスト用のリスト arr = [6, 3, 9, 1, 5, 2, 8, 7, 4] sorted_arr = quick_sort(arr) print(sorted_arr)
"
「Code Interpreter」にコード修正を依頼
プロンプト
■指示
①以下の「クイックソートを実行するPythonコード」をチェックしてください。
②修正必要部分について説明してください。
③コードを修正してください。
④修正後コードが動作するか検証してください。
⑤修正後コードを出力してください。
■Pythonコード
※※※Pythonサンプルコード「3択クイズ」(バグ仕込み版)※※※
実行結果
見事に、修正してくれました。
まとめ
「ChatGPT4(デフォルト)」でも、コードデバッグしてくれますが、
修正後コードでも動かない場合があります。
しかし、
「 Code Interpreter 」では「コード修正後の動作確認」までやってくれる
というのは便利ですね。
確認⑥スライド資料下書き「桃太郎の犬」作成
PowerPointの下書きを作ってくれるようです。
プロンプト
■指示
パワーポイント資料を作成してください。
■資料概要
・資料タイトル=「桃太郎の犬」
・スライドページ数=5枚
■創作内容
・「桃太郎のお供として活躍した犬」目線の実録ルポ
・「きびだんごの配給が少なすぎやしませんか?」という不満
・「鬼ヶ島の連中って、本当に悪者だったのですか?」という疑念
■ページフォーマット
・ページタイトル
・ページタイトルを補足する箇条書き説明 ※3点ほど
■出力
「作成した資料をまとめたPDFファイル」としてダウンロードできるようにしてください。
実行結果
PDF変換は、うまくいかなかったようです。
完成してしまった下書き資料「桃太郎の犬」
これは、現代を生きる人類への何かしらのアンチテーゼかもしれません。
確認⑦画像エフェクト編集
簡単なエフェクト編集をやってくれるようです。
サンプル画像
モノトーン化
プロンプト
■指示
アップロードした画像ファイルを、モノトーン画像に加工してください。
実行結果
変換画像(モノトーン)
モノトーンのシックな感じになりました。
アリですね。
パステル南国化
プロンプト
■指示
アップロードした画像ファイルを、「南国感あふれるパステルカラーな色彩の画像」に加工してください。
実行結果
「色空間を変換して、南国の雰囲気を出す」
とのことです。
変換画像(パステル南国)
これは、意外とアリじゃないですか?
集中線を追加
プロンプト
■指示
アップロードした画像ファイルについて、画像を加工してください。
■加工方法
画像中央付近に対して、「強めの集中線」を付け加えてください。
実行結果
変換画像(集中線)
「思っていたのとなんか違う」感じになりました。
確認⑧顔検出モザイク加工処理
顔検出
プロンプト
■指示
アップロードした画像ファイルについて、顔部分を検出してください。
■加工方法
顔部分の周りを、黄色の太線で囲ってください。
実行結果
変換画像(顔認識)
イラストでも、顔認識ができるのですね。
顔検出モザイク加工処理
プロンプト
■指示
アップロードした画像ファイルについて、顔部分を検出してください。
■加工方法
顔部分をモザイク加工処理してください。
■ダウンロード
ダウンロードリンクを出力してください。
実行結果
変換画像(顔認識)①
いまいちモザイクが弱めですね。
変換画像(顔認識)②モザイク強め版
バッチリですね。
まとめ
テキストのオーダーだけで、色調変更をやってくれるのは、ありかもですね。
「自動顔認識モザイク加工処理」については、活用できそうな気配を感じています。
確認⑨GIF動画作成
プロンプト
■指示①
サンプル表示のための「折れ線グラフ」を作成してください。
■グラフタイトル
“月別売上グラフ”
■サンプルグラフ
表示サンプル用グラフであるため、売上額の数字は、適当に作成してください。
■出力データ
x軸 = 月
Y軸 = 売上額
■凡例表示
x軸 = “月”
Y軸 = “売上額”
■表示フォント
グラフ内で表示するフォントは、アップロードした「日本語対応フォント」を使用してください。
------------------------------------------------------
■指示②
GIF動画ファイル作成
■GIF動画内容
以下のように表示されるGIF動画を作成してください。
①最初の月の売上グラフ表示
②2つ目の月までの売上グラフ表示
③3つ目の月までの売上グラフ表示 ・・・
■出力
ダウンロードリンクを出力してください。
実行結果
作成されたGIF動画
いろいろやってくれて、
GIF動画を作ってくれました。
オリジナル版
※画像をクリックすると動きます。
調整版
※画像をクリックすると動きます。
まとめ
GIF動画を手動で作るのは、なかなか大変だと思うのですが、
オーダー1発+若干修正で完成できてしまうのは、
便利ですね。
確認⑩QRコード生成
「 Code Interpreter 」は、QRコードを作成できるようです。
プロンプト
■指示
以下のURLのQRコードを作成してください。
■URL
https://majisemi.com/
実行結果
まとめ
Googleレンズで認識して、
マジセミサイトを開けました。
QRコードを、さくっと作れるのは、便利かもですね。
確認⑪「ドラクエのスライム」を描いて
シンプルなイラストを描いてくれるようです。
プロンプト
■指示
Pythonで「ドラクエのスライム」のイラストを描いてください。
実行結果
いろいろ頑張って計算して、
たいへん「情趣溢れた」感じのスライムを描いてくれました。
審査員コメント
まず、スライムブルーを表現しているのはグッドですね。
目元は似ている感じもします。
正面を向いているはずなのに焦点が合っていない、
なおかつ、生命の息吹をまったく感じさせない魅力があります。
ChatGPTプラグイン「Code Interpreter」の担当者A総評ジャッジ
評価スター
★★★★★
即戦力大型新人として採用です。
コメント
テキスト入力機能
テキスト入力機能は、待ちに待ったレボリューションですね。
「作成した長めのHTML」をまるごとチェックしてもらえるようになるのは、
非常にグッドです。
CSV取り込み分析機能
「Googleアナリティクス」「Twitterアナリティクス」「Facebookアナリティクス」など、
CSVデータを放り込めば、グラフとしてまとめてくれます。
マンスリーレポートへの本格導入を検討してみようと思います。
顔検出モザイク加工処理機能
自動でモザイクをかけてくれるのは、使えそうですよね。
気に留めておくとしましょう。
GIF動画作成機能
効果的な資料を作成したい時などに、使えるかもしれません。
参考リンク
→zenn.dev →karaage0703 →ChatGPT Code Interpreterの活用方法を片っ端から試していく
【ChatGPTプラグイン探訪】記事リストポータル
こちらの記事リストポータルページでは、
他の「ChatGPTプラグイン調査記事」も参照できます。
【お知らせ】「マジセミ」のご紹介
「マジセミ」では、日々、多くのIT関連セミナーを開催しています。
多くのセミナーの中から「ご自身のスキルやビジネスを強化できるセミナー」を見つけて、ぜひ1度、参加してみてください。
マジセミ関連プラットフォーム
プラットフォーム | 説明 | URL |
---|---|---|
マジセミ | マジセミで実施されるさまざまなセミナーの開催情報を確認できます。 「IT関連セミナー」「製造業関連セミナー」など、ご自身のビジネスを強化できるセミナーを検索できます。 |
→majisemi.com |
マジセミサービス | 「セミナーを開催したい方」向けの情報を確認できます。 トライアルからの利用が可能です。 |
→majisemi.com →service |
マジセミドライブ | 「IT関連コンテンツ」などを紹介しています。 | →majisemi.com →topics |
マジセミFacebook | 毎日「マジセミ関連情報」や「IT関連ニュース」などを紹介しています。 ★フォローお願いします。 |
→facebook.com →OSSNews |
マジセミTwitter | マジセミFacebookと同様に、 毎日「マジセミ関連情報」や「IT関連ニュース」などを紹介しています。 ★フォローお願いします。 |
→twitter.com →Majisemi_it |
※「ご意見」「ご感想」「誤字がありましたよ」「こんな使い方もあるみたいですよ」などありましたら、
マジセミSNS(Facebook or Twitter)まで、お知らせください。
この記事のタグ一覧
フリーワード検索
カテゴリー一覧
アクセスランキング
- 🏆ランク1位🏆
【AIツール実験室】楽曲作成ツール「 Suno AI 」〜AI生成ミュージックフェス〜 - 🏆ランク2位🏆
【OSS情報アーカイブ】fping - 🏆ランク3位🏆
【無料オープンソース】「 リモートアクセス 」ツールまとめ5選 - 🏆ランク4位🏆
【OSS情報アーカイブ】Amanda - 🏆ランク5位🏆
【無料で使える】「 翻訳 」ツールまとめ - 🏆ランク6位🏆
【OSS情報アーカイブ】SonarQube - 🏆ランク7位🏆
【OSS情報】ディスクイメージング(クローニング)ツール「 Clonezilla 」 - 🏆ランク8位🏆
【OSS情報アーカイブ】SQLite - 🏆ランク9位🏆
【AIツール実験室】画像生成AIツール「 Emi 」(前編) - 🏆ランク10位🏆
【無料で使える】「 プロジェクト管理 」ツールまとめ