西川和久の不定期コラム
結局ChatGPTってどうなの?初代iPhoneのように生活を変えてしまう存在になり得る?ChatGPTを使ってみる!
2023年4月28日 06:17
今年(2023年)に入って、ChatGPTやBingチャットなど大規模言語モデルを使ったサービスが一気に実用域に入り、どこを見てもAI一色。以前、Bingチャットについては速報を掲載したが、ChatGPTはいまだだったこともあり、いまさらならがご紹介したい。
ChatGPTとは?
ChatGPTとは一言で言えば、「OpenAIが大規模言語モデルをベースに作ったチャットボットで、自然な会話ができる」的な感じだろうか。たとえば「おはよ!」/「おはようございます」程度であれば昔からあったが、「Pythonでクイックソートのコードを教えてください」と尋ねると、実際のコードと解説が出てくる。初めて試した人は驚くはずだ。もちろん英語だけでなく日本語もOKなのがポイントだ。
そしてChatGPTで使われている大規模言語モデルは、大きく分けてGPT-3.5とGPT-4の2つあり(細かい説明は後述)、記事執筆時点では後者は有料版のChatGPT Plusでのみ使用可能。後半に少し有料版のChatGPT Plusにも触れているが、今回は無料で使えるChatGPT/GPT-3.5を中心に話をしたい。
さて、ChatGPTを使うにはアカウントを取得しなければならない。方法は簡単で、ChatGPTのページにアクセスし、アカウントを作る。メールアドレスを入力するか、Googleもしくは、Microsoftアカウントなどがあれば、それでも大丈夫だ。
実際ログインした画面は以下の通り。左側は履歴が出て、選ぶとチャットの続きができる。任意の履歴を消したい時には項目をクリックすると右にゴミ箱アイコンがあるので、それをクリック、チェックマークを選べば消える。
設定は、テーマをSystem/Dark/Lightから選べるのに加え、この原稿を書いている最中アップデートがあり、履歴と学習のON/OFFが付いた。入力した内容を学習させたくない=企業用途では有効だ。
ソースコードを吐かせる
チャットを始めるには、下にある“Send a message.”に何か書けば良い。試しにさっきのクイックソート(Quick Sort)を聞いた結果が以下の画面キャプチャとなる。答えを適当なファイルへコピペ、実行するともちろん作動する。
% python test.py
[1, 2, 3, 4, 6, 8]
「おはよ!」/「おはようございます」程度であれば昔からそれっぽいのはあったものの、さすがにここまでできるのはなかったのではないだろうか。これが騒がれる理由だ。
もちろん、プログラムだけでなく、いろいろなことを尋ねると答えくれる。なお、一連のチャットは内容をある程度覚えており、それを前提で話を進めることができる(文脈把握と呼ばれている)。これをリセットしたい時は、左上の[+ New chat]で新規のスレッドを始めれば良い。
回答の精度を上げたいならプロンプト
基本、何を尋ねるにしても、普通に書けばいいのだが、答えの精度を上げるためにPrompt(プロンプト)形式の例がいくつも出ている。その1つとして、GPT-Templatorがどう書けばいいのか動かしながら理解でき、分かりやすいのでご紹介したい。
以下、[アイデアを出す]で実際動かした例を掲載する
[アイデアを出す]
あなたの役割はクリエイターです
以下の #条件 を満たして #内容 に関する返答だけをしてください。
#条件
言語は日本語で,文字数は30文字以内で,5つ生成してください,
箇条書きで,
#内容
ゆずを使った新商品のケーキのキャッチコピーを考えてください
いかがだろうか。このパターンに則って書けば、回答の精度を上げることができる。ほかにもいろいろなPrompt形式のパターンがあるので、興味のある人は調べてほしい。
アイディア出しにも使える
次に作曲や作詞もできる。
Q) Jeff Beck風のコード進行を4小節作ってください
A) |: Am7 | D7#9 | Gmaj7 | Gmaj7 :|
この進行は、アミン7コードから始まり、ディセブンス#9コードに移行し、最後にGメジャーセブンコードに落ち着きます。これは、ジャズやブルースの進行によく見られるハーモニックな展開で、Jeff Beckのギタープレイにも良く合います。
Q) BLACKPINK風の歌詞とコード進行を4小節作ってください
A) こちら、BLACKPINK風の歌詞とコード進行の例です。この進行は、ポップなメロディに合うシンプルなコード進行です。
歌詞:
Verse 1:
Gonna shine like a diamond
In the sky, oh so high
Nothing can stop us now
We'll keep dancing all night
Chorus:
D/F# G Em7 C
We're BLACKPINK in your area
D/F# G Em7 C
We're gonna light up the night
D/F# G Em7 C
With our music and our style
D/F# G Em7 C
We're gonna rock this town tonight
Verse 2:
Feelin' strong, feelin' free
In this moment, we're all we need
Hands up, we're gonna fly
Together, we'll reach new heights
Chorus:
D/F# G Em7 C
We're BLACKPINK in your area
D/F# G Em7 C
We're gonna light up the night
D/F# G Em7 C
With our music and our style
D/F# G Em7 C
We're gonna rock this town tonight
この進行は、D/F#、G、Em7、Cというシンプルなコード進行です。歌詞のテーマは、自信と自由、そしてパワフルな音楽とパフォーマンスに焦点を当てています。
と、それっぽいのが出てくる。テーマに沿ったものも作成可能だ。これを丸コピはいかがなものかとは思うが、ネタ出しを手伝ってもらうのはありだろう。少し違うが、お題を与え、キャッチコピーをいくつも作ってもらう例を見かけたこともある。
余談になるが、ChatGPTにこの記事のタイトルとサブタイトルを各々10個考えてもらったが、どれもイマイチ(笑)。結局筆者が考えたのをそのまま使っている。万能ではないということだ。
要約もお手の物
3番目は要約が得意。日本語なら読めばいいが、英語など外国語になると、DeepLのお世話にならないとなかなか難しい。それを要約しつつ、翻訳までしてくれる。
Q) 日本語で記事の要約お願いします
https://blogs.microsoft.com/blog/2023/03/21/create-images-with-your-words-bing-image-creator-comes-to-the-new-bing/
A) マイクロソフトのブログによると、Bingの検索エンジンが、新しい機能「Bing Image Creator」をリリースしたとのことです。この機能を使用すると、ユーザーは単語や短文を入力して、自分の言葉でイメージを作成することができます。Bing Image Creatorは、ディープラーニングを使用して、入力された単語や短文に基づいて、関連する画像を検索し、それらを自動的に合成して新しい画像を作成します。この機能は、ブログやSNSでの投稿など、様々な場面で活用できるとされています。
Q) ポイントを箇条書きにして要約してもらえますか
A) はい、以下に箇条書きで要約します。
・Bingの検索エンジンが「Bing Image Creator」という新機能をリリース
・ユーザーは単語や短文を入力して自分の言葉でイメージを作成できる
・Bing Image Creatorはディープラーニングを使用して、入力された単語や短文に基づいて関連する画像を検索し、自動的に合成して新しい画像を作成
・この機能はブログやSNSなど様々な場面で活用可能
ここまでできれば、DeepLで読んで自分でまとめるより、かなりの時間を節約できる。ただ本サイトも含め、右ペインなど、メインのフレーム以外にランキングや新着などが多く載っているサイトでは別の記事を引っ張ってしまうことが多発するので要注意。この場合は、隠しURLなどへテキストを置き、そのURLを貼るか、記事ごとコピペすることになる。
ただしコピペの場合、1回のやり取り(問いも回答も含め)最大4K token(token:トークンは言語モデルがテキストを理解する単位)。大量だとこの条件から外れてしまう。このtoken、基本英語は1 word(“rock'n'roll” → “rock”,“'”,“n”,“'”,“roll”は5 tokenなど例外も結構あるが)、日本語は1文字。つまり日本語の方が圧倒的に不利だ。これはBingチャットなどほかの海外製AI Chatも同じ。一回にコピペする量を調整しながら……となるだろうか。
表の作成もラクラク
4番目は、表も作れる点だ。
これらは、検索すればそれぞれ分かるが、これだけまとめるにはかなりの手間。それが一瞬でできてしまうわけだ。CSVか何かでダウンロードしたいところだが、そんな場合は、こう尋ねれば良い。
Q) 縦軸に有名なギタリスト名、横軸に年代、ジャンル、所属バンド名として表をCSV形式で作ってください
A) 以下、回答
ギタリスト名,年代,ジャンル,所属バンド名
ロバート・ジョンソン,1930年代,ブルース,なし(ソロ)
レス・ポール,1940年代-1950年代,ジャズ、ポップス,レス・ポール&メアリー・フォード
チャック・ベリー,1950年代-1960年代,ロックンロール,なし(ソロ)
ジミ・ヘンドリックス,1960年代,ロック、ブルース,ジミ・ヘンドリックス・エクスペリエンス
.
.(省略)
.
ジョン・フルシアンテ,1990年代-現在,ロック、オルタナティヴ,レッド・ホット・チリ・ペッパーズ
トム・モレロ,1990年代-現在,ロック、ラップメタル,レイジ・アゲインスト・ザ・マシーン、オーディオスレイヴ、プ
トム・モレロが途中で切れているのは先のtoken数の制限からだ。続きはこう尋ねる。
Q) トム・モレロが途中で切れているので、続きをお願いします
A) おっしゃる通りでした。続きを追加します。
ギタリスト名,年代,ジャンル,所属バンド名
トム・モレロ,1990年代-現在,ロック、オルタナティヴ、ラップメタル,レイジ・アゲインスト・ザ・マシーン、オーディオスレイヴ、プロフェットス・オブ・レイジ、ストリート・スウィーパー・ソーシャル・クラブ
これを使ってExcelなどに流し込めば表のできあがり! マーケティング用の資料作成などにも使えそうだが、なかなかそううまい話でもない。
後述するが、表記/名前や数字などがあっている保証がないのだ。Bingチャットの場合は出典へのリンクがあるものの、ChatGPTの場合何もなく、鵜呑みにするのは危険。さらに言えば最新情報は含まれていない。
ほかにも疑似的に感情を持たせた事例(実際試したところ結構こっちのメンタルがやられる)や、簡単なゲームができたり、経費精算や企画書のテンプレ作成などいろいろ対応可能。つまり、どう使うかは人間次第となる。
ChatGPTの弱点
先で少し触れたが、最大の弱点は、学習しているデータは2021年9月までで、かつ、ネットには非接続である点だ。以下、その証拠的なものを掲載した。
Q)2018年W杯優勝国は
A)2018年W杯優勝国はフランスです。
Q)2022年W杯優勝国は
A)2022年W杯の優勝国はまだ分かりません。大会が開催される2022年11月までに、各国代表チームの戦いによって競われ、決定される予定です。
Q)GPT-4について教えてください
A)GPT-4については、OpenAIから公式のアナウンスはされておらず、現時点では正式にリリースされていません。
ただし、OpenAIはGPT-3のような自然言語処理技術に取り組んでおり、今後もGPTの改良や新たなバージョンの開発が進められる可能性があります。また、GPT-3のリリース後には、GPT-3をベースとしたいくつかの派生プロジェクトが出現しています。
しかし、GPT-4についての具体的な情報やリリースの時期については、現時点では明らかにされていません。今後のOpenAIの発表や情報に注目が必要です。
GPT-4についてはなかなか笑えるが、そう言えば、先日、GeForce RTX 4070Tiの性能などを尋ねたら、そんなのは出ていない。間違いだ言われた(笑)。確かにGeForce RTX 4070 Tiは2021年には存在しないSKUなのでそうなのだが、持ってる、買ったっと書いても嘘だと言われ、苦笑してしまった。この点についてはネット接続しているBingチャットの方が有利となる。
このようにChatGPTに関しては長年不変的なもの(たとえばプログラミングなど)を尋ねる方が良く、最新情報はBingチャットで……と筆者は使い分けている。
ただし、Chrome拡張の「WebChatGPT」を使えば、これを一応克服できる。インストールすると、下に画面キャプチャのようなパネルが追加され、[Web access]をONにすると、まず検索し情報を引っ張り、それをPromptとしてChatGPTへ投げ、回答を得ている。先の2022年W杯優勝国を例にすると……。
Q1)2022年W杯優勝国は
Q2)Web search results:
[1] "2022 FIFAワールドカップ(英: 2022 FIFA World Cup )は、2022年 11月20日から12月18日にかけてカタールで開催された22回目のFIFAワールドカップ。大会スローガンは、"Now is All"(今こそがすべて) [2]。日本の報道では「W杯カタール大会」などと呼ばれる [3]。"
URL: https://ja.wikipedia.org/wiki/2022_FIFA%E3%83%AF%E3%83%BC%E3%83%AB%E3%83%89%E3%82%AB%E3%83%83%E3%83%97
[2] "ワールドカップ(W杯)カタール大会は18日夜(日本時間19日未明)に決勝があり、アルゼンチンがPK戦の末にフランスを破って36年ぶり3回目の優勝 ..."
URL: https://www.bbc.com/japanese/64021739
[3] "ワールドカップカタール大会の決勝は日本時間の19日、ドーハ近くにあるルサイルスタジアムで行われ、36年ぶりの優勝を目指す世界ランキング3 ..."
URL: https://www3.nhk.or.jp/news/html/20221218/k10013926701000.html
Current date: 2023/4/27
Instructions: Using the provided web search results, write a comprehensive reply to the given query. Make sure to cite results using [[number](URL)] notation after the reference. If the provided search results refer to multiple subjects with the same name, write separate answers for each subject.
Query: 2022年W杯優勝国は
Reply in 日本語
A)2022年W杯優勝国はアルゼンチンです。決勝は日本時間の19日にカタールのルサイルスタジアムで行われ、PK戦の末にアルゼンチンがフランスを破って優勝しました[2][3]。大会スローガンは「Now is All(今こそがすべて)」でした[1]。
となる。出典へのリンクもあるので信用できる。動きを見ていると、Bingチャットの“'xxxxを検索しています”によく似ている。「一応」と書いたのは、検索したのとあまり差がなく、また検索結果の文章が長いとtoken制限に引っかかる可能性もあるからだ。
試しに「縦軸にG7の国名、横軸に人口、男女比の表を2022年の情報で書いてください」とすると「申し訳ありませんが、提供された検索結果のうち、縦軸にG7の国名、横軸に人口、男女比の表を2022年の情報で書くようなものは見つかりませんでした。」と、いまく行かなかったが、Bingチャットでは画面キャプチャのようにOKだった。
ChatGPT関連のChrome拡張はほかにもYouTube動画を要約するYouTube ChatGPT、音声でPromptを指示できる Promptheusなど、いろいろ出ているので、chrome web storeで検索して欲しい。
次に今のところ多くの学習は英語圏から。これは生い立ち上、仕方ない話で、たとえば先日“終電を逃したので近所の開いてるサウナを聞いてみた”的なネタがあがっていたが、日本国内都道府県のランドマーク的なものすら危ういのに、そんなローカルな情報を学習しているはずもなく、かつ、ネットもGPSもアクセスできない状態で正解が得られるはずもない。
人名も同じだ。よほど有名・著名でない限り日本人は学習していない。自分の名前でプロフィールの要約を聞いても無駄である。逆に間違ってるのを楽しむ的な用途もあるようだが……。
ただ、問題は「知らない」と答えればいいのだが(GeForce RTX 4070 Tiはないと否定されたが)、“知ったかぶりで答える”のでたちが悪い。この点については自分で判断することになる。また先に書いたが、出典がなく、答えた名称や数字が合っているか確認もできない。
これらがAIについてネガティブな記事でよく挙げられている部分だ。ただ否定するのは簡単だが、このような特性を理解した上で、使いこなしてこそ人間ではないだろうか。
筆者の場合は、プログラミング的なことで尋ねることが多く、これについてはもう検索しなくなった。検索だとそのキーワードで引っかかるタイトルがずらずら並ぶものの、本当に欲しい情報かは、全部中を確認する必要があり、面倒になってしまったのだ。嘘かどうかは実際コピペしてプログラムを実行してみれば良い(笑)。
AI関連の記事で素人でもプログラムできた的な記事を結構見かけるが、これは半分本当で半分嘘(?)だ。クイックソート程度なら「教えて!」で済むものの、複数のAPIを使って、欲しい結果を得るには、絡み合う要件/条件をきちんと整理して指示しなければならず、結局自分でも書ける人がしないと、うまく行かない。逆に言えば、自分と同レベル(以上)のアシスタントを雇ったと考えるとこれ以上便利なものはない。
先日これは便利だと思ったのは、CSSをコピペして、ダークモード対応に! と書くと、本当にダークモードになったのには驚いた(笑)。もちろんやればできるが地味に面倒なので、この手の単純でつまらないケースはChatGPTに任せた方がベター。浮いた時間はもっとクリエイティブな作業に使うか、サボるか……有意義に過ごせば良い。
無料版ChatGPTと有料版ChatGPT Plusの違い
ここまでは無料版のChatGPTでできる話。有料版のChatGPT Plusは20ドル/月。遊びで使うにはちょっと考えてしまう金額だが、仕事で使うなら問題ない範囲だろう。とは言え、最近、Google Workspace、Slack、Google Colab Proなどいろいろ月額課金が増えており、痛いには違いない。
ChatGPT Plusでできることは、これまであげた内容に加え
- 1)ピーク時でも通常アクセス(ChatGPTは混んでるとログインできないこともある)
- 2)ピーク時でもレスポンスが変わらない(ChatGPTは混んでると反応が鈍くなる)
- 3)機能改善、新機能へに先行利用
1)2)は混んでる時は使わないで済ます手もあるが、3)は重要。一番の違いはGPT-4が使えることだ。このGPT-4、GPT-3.5のトレーニング量1,750億パラメータに対し100兆パラメータと言われており、圧倒的な差だ(Bingチャットに聞いてみた)。読解力、文章力、日本語の理解度などが向上している。まだ一般公開されてないが、マルチモーダルになっており、文字だけでなく、画像、音声、映像にも対応する。
加えてGPT-3.5だと最大4K tokenだったのが32K tokenへ増えており、結構なボリュームの文章をやり取りできるようになった。レビューや分析などもこの量が扱えればそこそこいけそうだ。
そして極め付けは“ChatGPT plugins”と呼ばれるプラグインに対応するところだ。たとえば最大の欠点だったネット非接続をWebブラウザプラグイン経由で接続し、最新情報を得たりすることも可能になる。ただしこの機能も現在waitlist受付で、ChatGPT Plusにすれば即使えるようになるわけではない。
このようにかなり進化しているのだが、学習しているデータChatGPTと同じくは2021年9月までに加え、現時点でGPT-4は利用制限あり(GPT-4 currently has a cap of 25 messages every 3 hours)、マルチモーダル、プラグインが一般公開されておらず、すぐ試せないのが残念な部分だ。
ChatGPTからChatGPT Plusへ移行するには、左下に「Upgrade to Plus」があるので、それをクリック、後は支払いなど指示に従えば良い。無事移行が終わると、画面キャプチャのように、スレッドごとにGPT-3.5かGPT-4かを選ぶことができる。
どの程度差があるのか、以下のPromptでGPT-3.5とGPT-4を試してみた。
# 命令書:
あなたはIT系ライターです。
以下の制約条件と入力文をもとに、記事の下書きを出力してください。
# 制約条件:
・文字は500文字程度
・ITには無縁の人にも分かり易く
・歴史的背景も加える
・重要なキーワードを漏らさない
# 入力文:
CUDAとAIについて
近年、人工知能(AI)の急速な発展に伴い、GPUの活用が不可欠となっています。その中でも、CUDAという技術が注目を浴びています。
CUDAは、NVIDIAが開発したGPU向けのプログラミング技術です。従来のCPUと比較して、GPUは多数のコアを持ち、並列処理に優れています。そのため、CUDAを使うことで、大量のデータ処理や複雑な演算を高速化することができます。
また、CUDAはAIの分野でも広く使われており、深層学習のフレームワークであるTensorFlowやPyTorchでもサポートされています。これらのフレームワークを使って、画像認識や自然言語処理などのタスクを行う場合、CUDAを活用することで、高速かつ効率的な処理が可能となります。
なお、CUDAの歴史的背景については、2006年にNVIDIAが発表したCUDA Toolkit 1.0が最初です。当初は、数値解析や科学技術計算の分野で利用されていましたが、AIの発展に伴い、現在では広く使われています。
以上が、CUDAとAIについての概要です。今後も、AIの進化に合わせて、CUDAがますます重要な技術となっていくことが予想されます。
# 記事の下書き:
## CUDAとAI: 初心者向け解説
CUDA(Compute Unified Device Architecture)は、NVIDIA社が開発した技術で、GPU(Graphics Processing Unit)を利用して並列コンピューティングを行うためのプログラミングモデルです。これにより、高度な計算処理が必要なアプリケーションやAI(人工知能)の学習が効率的に行えます。
AIの発展は、過去数十年で急速に進んできました。特にディープラーニングという技術が登場し、多層ニューラルネットワークを用いて画像認識や自然言語処理などの高度なタスクを達成できるようになりました。しかし、ディープラーニングは膨大な計算量が必要で、従来のCPU(Central Processing Unit)では限界がありました。
そこで、NVIDIA社が2007年にCUDAを発表しました。GPUはもともと3Dゲームのリアルタイム描画を効率化するために開発されたハードウェアですが、CUDAを利用することで、AIの学習や科学技術計算などの分野でもその力を発揮できるようになりました。
CUDAは、プログラマーが簡単にGPU上で並列処理を実行できるように、C/C++やPythonなどの一般的なプログラミング言語で記述できます。これにより、AI開発者は高速化された学習プロセスを実現し、より精度の高いAIモデルを構築できるようになりました。
要約すると、CUDAはGPUを利用した並列コンピューティング技術であり、AIの学習やその他の高度な計算処理を効率的に行うために開発されました。これにより、AI開発が加速し、私たちの生活に役立つさまざまな技術が生まれています。
いかがだろうか? GPT-3.5も悪くないが、GPT-4を読んだ後だと何か物足りない。理解度の差が感じられる。
プラグインはここにアクセスし、待ち行列に登録する必要がある。筆者はまだ使えない状態なので、使用可能になったら追ってレポートする予定だ。
一点、GPT-3.5より劣っているのは、GPT-4は外部URLにアクセスできないことだ。「申し訳ありませんが、私はWebページにアクセスすることができません。」表示される。これについては、Webブラウザプラグイン待ちとなる。
小ネタ
次にちょうどこの記事を書いている最中に、OpenAIのブランドガイドラインが出た。これによると、
OK
・Meowlytics powered by GPT-4
・Powered by
・Built on
・Built with
・Developed on
・Developed with
NG
・MeowlyticsGPT
・Meowlytics with GPT-4
・Meowlytics AI by OpenAI
・ChatGPT-powered Meowlytics
つまり、最近よく見かける“何とかGPT”は全滅となり、あっちこっちで修正が行なわれている(行政GPTは行政GAIになったり影響は多方面)。これから出るであろうプラグインもこの下にガイドラインが書かれているので、興味/関係のある方は一度ご覧頂きたい。
最後に余談になるが、この記事によると「ChatGPTは1日あたり70万ドル以上の運用コストがかかる可能性がある」と書かれている。つまり日本円でざっくり1億円/日。ChatGPT PlusやOpen AIの課金APIをいくらかき集めてもビジネス的には赤字だろう。これを何とかするためにMicrosoftが大規模言語モデル用AIチップを開発中との話もある。世の中サクッと始めて儲かる話はない。
とは言え、使う側からすればそれは関係ない話。無料版ChatGPTでも有料版ChatGPT Plusでも、アシスタントとして使えば物凄く役に立つはずだ。初代iPhone(スマホ)も当初は多くの人が見向きもしなかったが、4S辺りで勝負が付いた感じだろうか=4年。今はご覧のようにスマホなしの生活などあり得なくなった。
ChatGPTなどを代表するAIチャットボットもこのような存在になり得るのか!? 話には聞いてるけど、未体験の方は是非これを機会に試して欲しい。