マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

ChatGPT探訪

2023.07.19

【ChatGPTプラグイン探訪】「 Code Interpreter 」〜ファイル入出力+Pythonコード自動生成実行〜

【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

★フォローをお願いします。

プロンプト

■指示
アップロードした「Facebookアナリティクスデータ」について分析してください。

■記事区分
記事区分は、投稿記事の先頭に記述されている【xxxx】で判別できます。
【マジセミ動画】と記述されていれば、その記事区分は「マジセミ動画」です。

■分析方法
「1投稿あたりの平均数」を基準として分析してください。

■出力
・日本語で表示してください。
・分析結果について、グラフィカルに表示してください。

■改善提案
分析結果から「投稿に関する改善点」を提案してください。

■不明点について
不明点があれば、質問してください。

実行結果

まとめ

◯:CSVを放り込むと、それなりの分析をしてくれる
◯:記事区分ごとの「エンゲージメント数グラフ」+「インプレッション数グラフ」を作成してくれた
◯:傾向分析を出してくれた
◯:改善提案を出してくれた
✕:グラフ内の日本語が文字化けしてしまう ※改善に期待

プロンプトテンプレ+CSVデータを入力するだけで、レポートを作ってもらえるのは便利ですね。
文字化けがなければ、定期レポートのベースとして、使えるかもしれません。

Twitterでも同様の分析レポートを作成できるはずです。

確認③グラフで日本語フォントを表示する方法

文字化け問題解決の文献

「 Code Interpreter 」のグラフ出力で、
「日本語フォントを文字化けさせずに表示させる方法」が紹介されていました。

日本語を表示できるのか、やってみましょう。

参考ページ

→KINTO Technologys
 →Tech Blog
 →ChatGPT(GPT-4)のCode Interpreter、日本語フォントでグラフや画像、PDFファイルを出力する方法とTwitterの分析

「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.com →blog →openai-api

課題

「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の活用方法を片っ端から試していく

→generativeinfo365.com →GPTimes →ChatGPT公式プラグイン「Code Interpreter」の料金や使い方を徹底解説!データ分析に革命を起こすスゴすぎる活用事例もご紹介!

【ChatGPTプラグイン探訪】記事リストポータル

こちらの記事リストポータルページでは、
他の「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)まで、お知らせください。

おすすめの記事

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。