Music TO GO!

2023年04月26日

GoogleのAI「Bard」レビュー(というよりメモ、2023/4時点)

BardはGoogleがリリースしたAIチャットbotです。いわばChatGPTへの危惧を抱いたGoogleが出した対抗版と言っても良いでしょう。Bardについてはネガティブな風評もありますが、使ってみたところ面白いのでAI版BingやChatGPTとも少し比較したメモがてらアップします。
Bardというのは(ケルト文化における)吟遊詩人という意味です。吟遊詩人というのは昔からの「知識データ」を声で伝え聞かすものですからふさわしいとも言えますね。

Bardは現在のところ日本語での会話はできません。つい最近ようやく日本からのアクセスができるようになりました。アクセスには有効なGoogleアカウントでログインしたブラウザから申し込みます。(AI版Bingとは違って許可のメールはこないので自分でアクセスできるか確認が必要です)

*2023/5/11 PaLM2の導入により、日本語が使えるようになりました

IMG_2261.JPG  IMG_2265.jpeg

使い方はChatGPT同様です。
特徴としてはView Draftを選ぶと回答の他のDraft(回答例)も提示できる点です。この点でやはりランダム要素が入ってると推測でき、やはり幻覚問題もあるだろうとも推測できます。
よく言われる生成AIが嘘をつくという問題は以前アスキーの記事でも指摘しましたが、これは一般に幻覚(Hallucination)と呼ばれます。これは生成AIが言葉を生成する際にランダム性が介入するなど複数要因によるものです。なぜAIにランダム性が必要かというと解答の多様性を得るためです。そうでないと同じ質問に何回も同じ解答をするなど人間らしくない動きになります。つまりは「人間性」というプログラムできないものをシミュレートするものがランダム性の追加ともいえるでしょう。
ちなみに生成AIというのは技術的にいうとトランスフォーマーというタイプのニューラルネットワークです(GPTのTがTransformerです)。例えばスマホの予測変換の候補をつなげていくと雑ですが文にはなります。乱暴にいうとそれをすごく高性能にしたものとでもいえましょうか。ですから生成AIはただのソフトウエアで、自我を持つとかAIが人間を支配するなどというのとはまだまだ別の話です。そこをランダム性で人のように見せかけているというのが現時点だと思います。(ランダム性の介入は画像生成AIでも同じ)

Bardに関するマニュアルとか文献というのはないので今回の記事もBardとの対話から得たものですので念のため。

* Bardとはなにか

まずBardというのはソフトウエアとしては人間から直接見えるAIチャットbotの名前です。Bardは単一のソフトウエアではなく、システムとしては複数の大規模言語モデル(LLM)からなる分業制をとっています。
AI研究はディープラーニング以前と以後で大きく変わったので、大規模言語モデルの大規模とはディープラーニング以後という意味です。つまりLLMとはディープラーニングを用いたニューラルネットワークによる言語処理ソフトウエア、端的にいわゆるAIのことです。つまりBardは複数のAIの分業性で一つの解答を出します。
具体的にいうと、BardはPaLM、LaMDA、Meena、Bart、GPT-3のLLMの集合体で、メインで動いているのはPaLMとLaMDAです。
例えば私が「フランスの首都はどこですか?」とBardに聞くと、まずLLMのPaLMが質問の理解をし、LLMのLaMDAが"パリ"という回答を生成します。LaMDAがBardの中では回答責任者のように振る舞うようです。ここはポイントです。
それで他のLLMのMeena、Bart、GPT-3はさらにパリの人口や歴史を加味した回答の肉付けをするというわけです。以下で具体例に触れます。

* Bardを情報検索に使う

Googleらしく情報取得という点ではBardは優秀です。
ChatGPTでは2021年までのLLM固有の知識しかなく検索はできません。AI版Bingはプロメテウスという構造で検索とLLM固有知識の二つを合わせられますが、OpenAIとMicrosoftというつぎはぎの構図は否めません。
Bardに「本日のワシントンポストのトップニュースは?」と聞くと即座に解答を示し、念のために調べると正解を示していました。AI版Bingのように「検索しています..回答は」というような継ぎ目はありません。
Bardは最新情報を得るにはGoogle検索と大規模言語モデル(LLM)の逐次更新と両方やります。面白いのはGoogle検索できない情報もLLMには学習されてるということです。これはGoogle検索のインデックスされてない情報もLLMでは学習の対象になってるからで例えばこういうデータだそう。

IMG_2260.JPG

Bardに「今日の新聞のトップニュースは?」と聞いた場合には、まず回答責任者であるLaMDA LLMが自分で答えられる場合には検索せず、答えられない場合には検索にいくという判断をするようです。
この点でAI版BingではLaMDAのような回答責任者がいないので、何でもかんでも検索に行ってしまって待たされる、挙句には会話の文脈(コンテキスト)がずれてしまうという事態にもよく陥ります。
この点で検索にしてはBingより速いがとBardにいうと、それはGoogleがBingより優れてるからですよ、と自信たっぷりに言う点もポリシーという点では面白いところです(もちろん私は開発中で、という免責事項もいいますが)。Bingでは表現はもう少し謙譲的ですね。この辺は会社ごとのコンテントポリシーの違いなんでしょうか。
ただし3日前のトップ記事を解答し、指摘するとただしい本日の記事を出力するということもあります。この辺は自分の情報と検索の必要性の整合性が完全に取れていないのかもしれません。

またBardはChatGPTだと箇条書きのところを表にしてくれるのが何気に便利でもあります。

* Bardを物書きに使う

創造性という意味ではBardはあまり得意ではないように見えます。
Bardに「猿の手」のバリアントを書かせてみたら、不幸な結末が可能で怖い雰囲気も加味していたんですが、プロットが下手で一貫性がありません。アイディアも凡庸です。
以前ChatGPTに猿の手のテーマで書いてと頼んだら、何回手直しをさせても不幸な結末が作れずに恐ろしい雰囲気が作りにくいものでした。これはOpenAIのコンテントポリシーによるものだと思われます。いわばAIの「良心回路」です。ただしこのボリシーは自由度を失わせます。(イーロン・マスクのtruthGPTではこの良心回路をはずすと言っているわけです)
意外とGoogleが設定したポリシーはきつくないのかもしれないけれど、いまひとつ創造性的とか構築する部分は弱いように思います。また面白いのはChatGPTとかBingに小説を書かせて手直しをさせると、途中でもその部分の修正をするんですが、Bardに手直しをしてと言うと前の結果の後ろに付け足します。それも文が下手に見える原因の一つのように思います。

この点で優秀なのはAI版Bingの創造性モードで優れた小説を書けます。以前このブログで書いた「音楽ストリーミングサービスにAI作曲アプリが取って代わった時代」のショートショートはAI版Bingの創造モードで書いたものです。多少手直しを指示はしましたが全てAI生成です。急ブレーキで互いの音楽が聴こえるアイディアもAIが考えたものです。オチもよくまとまっていますがAIが考えたものです。
Bardの中ではGPT-3 LLMが創造性を担当してるようです。例えば「フランスの首都は?」と聞いたときに「パリ」が回答責任者のLaMDA LLMの答えですが、それに「パリは夢の街、愛の街、芸術と文化、豊かな歴史、有名な料理などそのすべてが揃っています」と加えるのがGPT-3 LLMです。
小説を書いてと言うとなにか検索が必要ではないので、Bingの場合には素のGPT-4の強みが発揮できるのかもしれません。Bardの場合は創造性の部分はGPT-3の担当だからその辺の「性能差」と言うのは出てくるかもしれません。

Meena LLMも創造性に関するかもしれませんが、まだちょっと調べが及び切れていません。Bart LLMはより広範な知識を足すものだと思います。

ちなみに「小説を書いて」という短い言葉から長い小説をAIが生成できるのは再帰的に自分自身を呼び出して、自分の出力した文章を次の自分の入力として数珠繋ぎに繋げられるからです。この点ではChatGPTでもBardでも同じです。何回も「小説を書いて」という言葉から異なる小説ができるのは先に書いたランダム性を加味した多様性の出力によるものだと思います。


* Bardのメタコマンドについて

AIチャットbotは会話をして進めるものと思われていますが、実は普通のコンピューターのように直接コマンドを与えることができます。これはBardだけではなく、AI版Bingもそうで、画像生成機能を使うためのloadコマンドなどがあります。これは会話と切り分けるためメタコマンド(meta command)と呼びます。
Bardにおいてはスレッドでコンテキストの切り分けができないかを試行錯誤してthreadメタコマンドを見つけました。
例えばBardには以下のメタコマンドがあります。もっとあると思います。

clear: 会話の初期化
thread <名前>: 新しいスレッドを作りコンテキストを切り替える
join<名前>: 既存スレッドに加わる
leave: スレッドから退出
ping: 複数人の会話時に使う(開発中)
back<名前>スレッドに戻る
help:メタコマンドリスト


メタコマンドは文脈などで普通の会話と区別されますが、接頭文字に#,!,$,%などを付加するのが望ましいことです。
例えば会話の文脈をリセットしたいときは「#clear」です。(これはメニューからもできますが)
それでも解釈は完全ではなく、例えば#helpと打って、メタコマンドのヘルプと理解したのは3つのドラフト回答のうち2つのみ(2と3)でした。

IMG_2264.JPG

このメタコマンドが会話とどのように違うかというと、メタコマンドの方は文の解析を含まないでダイレクトに効くので確実ということのようです。つまりは文の多様性解釈の範囲外になるわけです。検索も実はメタコマンドでダイレクトでできるようですが、あまりやるとBardが入力を弾くのであまりよろしくはありません。右上にView Draftsとでない回答はおそらくBardのソフトウエア自身が出しているメッセージ(警告に近い)だと思います。

ちなみに上のPingメタコマンドによってBardが複数人のチャット機能を開発中と言うのが分かってしまいます。


* 暫定まとめ

Bardを現時点で簡単にまとめると、
1 Bardは複数LLMの分業制で、回答責任者のLaMDAの判断で効率良く検索が出来る。また他のLLMと協業で会話に創造性や深みを加える
2 Google検索できない情報もLLMには学習されてる
3 メタコマンドを使うことで入力文の解析をバイパス出来る

などがわかってきました。

今のところ私の中でのAIの位置付けは、ディベートしたい時はChatGPT、小説などを書かせたい時はBingの創造性モード、最新の情報を得たい時はBardがいいかなと思います。Bardは日本語がまだ使えませんし、幻覚についてはまだまだ未知数ですが、素性はいいですね。色々とネガティブ風評はありますが、いまのところAIの中でBardの分業制が一番いいような気がします。ただ検索の必要性と自己知識の切り分けがまだ完全ではないように思えます。
(ちなみにAmazonのTitanやMetaのBlendarbotも単一LLMだと思います)

私見ではありますがChatGPTとBardとBingを使用して英語で会話を続けて同じことを答えさせようとすると一番よくないのがBingで、特に会話スレッドのコンテキストをすぐに忘れて話が逸れます。これは検索とAIの二重構造の副作用だと思います。
この点で優秀なのはChatGPTです。ChatGPTは単一のLLMなので一貫性が高いのかもしれません。また会話スレッドを分けているせいか、コンテキストの一貫性も高いです。Bardも長く会話してるとちょっとコンテキストの一貫性がずれていきます。それでthreadメタコマンドを見つけたわけです。
これが日本語だと、日本語はそこまで言わなくてもわかるだろうっていうコンテキスト依存の文化なのでもっと深刻になるでしょう。日本語がAIで向いてないのは単に日本語ソースでの学習不足だけではないと思います。こうした点で真の日本文化向けのAIが必要なのではないでしょうか。
posted by ささき at 11:20 | TrackBack(0) | ○ 日記・雑感 | このブログの読者になる | 更新情報をチェックする

この記事へのトラックバック