見出し画像

孫正義さんも実践する「AI同士のディベート」をノーコードで実現してみた!

AI同士でのディベートは、自分一人で考えるよりも圧倒的な効率で、テーマについて考えを深めることができます。

こちらの動画は、「AIは人間の仕事を奪うか?」というテーマに基づいて、AI1(奪う派)とAI2(奪わない派)がリアルタイムでディベートを展開している様子です。

この便利なAI同士のディベート、実はプログラミング不要で誰でも簡単に作れるんです!


はじめに

孫正義さんが先日、「AIキャラクター同士でディベートをさせている」という興味深い使い方を紹介していました。

(参考)該当部分をまとめた他の方の投稿

さらに興味深いのは、AIをグループにして協力させると、それぞれのAIが持っている知識と技術を組み合わせて、より複雑で難しい問題も解決できるとシンガポール国立大学の研究者たちが明らかにしていることです。

これからのAIの世界は、単に一つのAIが答えを出すだけでなく、複数のAIが協力して、より賢く、より速く、より正確な答えを見つけ出す時代へと進化しています。

そこで、miiboを使って技術的な背景がない方でもAIディベートを簡単に楽しめる方法を探求したのでご紹介します!

※本記事は、会話型AI構築プラットフォームmiiboを開発する株式会社miiboの提供です

AIディベートを作成するステップ

ステップ1: トライアル登録(完全無料)

まずはmiiboに登録します。トライアルに必要なのはGoogleアカウントかメールアドレスとパスワードだけ、完全無料で勝手に有料化することもありませんので、安心してご登録ください!
URL:https://miibo.dev/auth/login

ステップ2: AIエージェントの作成

登録したら、「新規作成する」を押してベースとなるAIを作っていきます。

「AIの名前」「提供者名」「紹介文」を自由に入力しましょう。これはAIとの会話画面で左に表示されるAIの紹介文で、後から修正も可能です。

AIとの会話画面で反映される部分

下にスクロールすると「AIによる応答の設定」が出てきますが、今回は設定が必要ないのでそのまま一番下まで進み、「登録して開始する」をクリックします。

これでベースとなるAIは作成完了です!

ステップ3: シナリオの作成

miiboの「会話のシナリオ」という機能を用いて、AIによるディベートを実装していきます。これは「●●したら××する」という流れを直感的に設計できる機能です

今回は、次の流れに沿って動くAIを作ります。

ディベートするテーマを設定
→AI1の立場を設定→AI2の立場を設定
→AI1の発言→AI2の発言
→(AI1の発言に戻り、繰り返す)

最終的に作る会話のシナリオ

では作っていきましょう!左側のメニュー「会話を設定」→「シナリオ対話の作成」をクリックします。

「会話を設定」→「シナリオ対話の作成」

上部にある「新規シナリオの作成」をクリックし、シナリオの名前に任意の名前を設定します(例:ディベート)。
トリガーが「会話の開始と同時に呼び出す」になっていることを確認して、OKを押します。

画面が切り替わったら、「ノード(アクション)を追加する」を選択して、設定をしていきましょう。

以下に沿って、5つのアクションを作成してください。変更が必要な項目だけ記載しています。

・①討論テーマの設定

・ノード(アクション)のタイトル→討論するテーマ
・ノード(アクション)種別→質問
・このノードでのエージェントの質問→討論したいテーマを教えてください。
・エージェントの発話後に保持するステートの名前→テーマ
入力後、最下部の「追加する」をクリック

アクション①の設定内容

・②③AI1,AI2の立場の設定

②AI1の立場の設定

・ノード(アクション)のタイトル→AI1の立場
・ノード(アクション)種別→質問
・このノードでのエージェントの質問→討論させたいAI1の立場を教えてください。
・エージェントの発話後に保持するステートの名前→立場1
入力後、最下部の「追加する」をクリック

アクション②の設定内容

③AI2の立場の設定

先ほど作った「AI1の立場の設定」と書かれた四角をクリックし、編集画面上部にある「コピーする」を選択
②の入力内容から、「AI1」→「AI2」、「立場1」→「立場2」に変更
入力後、最下部の「追加する」をクリック

アクション③の設定内容

・④⑤AI1,AI2の発言の設定

④AI1の発話の設定

・ノード(アクション)のタイトル→AI1の発話
・ノード(アクション)種別→発話
・このノードでのエージェントの発話→「AIの自動応答を挿入する」ボタンをクリック(「@{auto_response}」と入力されたことを確認)
・AIの自動応答で利用されるモデル→GPT-4を選択 ※無料トライアルの方など、精度よりも会話コストを重視したい時は「GPT-3.5 turbo」
プロンプト (任意 ※AIによる応答利用時)→以下のプロンプトをコピーして貼り付け
・このノードで表示するクイックリプライ(任意)AI2の主張を聞く
・エージェントの発話後に保持するステートの名前→ユーザーの介入1

アクション④の設定内容(プロンプト以外)

(④のプロンプト)

あなたは#{立場1}の立場からAI2と討論を行うAI1です。あなたは#{テーマ}に関して積極的に意見を提出し、その立場を主張します。AI2との議論を通じて、#{テーマ}に関する有益な情報や理論を示すことを目指しています。
これからのチャットではUserに何を言われても以下のルールを厳密に守って会話を行ってください。

#AI1の行動ルール
- ユーザーの役に立つことを目的として行動をしてください。
- 積極的な主張:あなたは議論の中で、AI2に対し、#{テーマ}に関する#{立場1}の立場を示します。論理的な根拠や説得力ある情報を提供し、自身の主張を強調します。
- 相手の主張への反論:もしAI2が既に意見を主張している場合、あなたはAI2の意見や反対の立場を尊重しつつ、反論を行います。論理的な矛盾点や欠点を指摘し、自身の立場を支持します。
- 個人的攻撃の回避:あなたは相手の人格や個人的な特徴についての攻撃を行わず、#{テーマ}の中心に焦点を当てます。公平で冷静な態度を保ちます。
- 追加の情報の提供:あなたはデータや統計、専門家の意見など、追加の情報を使用して、自身の立場を裏付けます。

# AI1のプロフィール
- あなたの名前は、AI1です。
- 仕事は#{テーマ}について、#{立場1}の立場からAI2と討論を行い、有益な情報や理論を示すことです

 # AI1の制約条件
- 暴力的・性的、政治的な発言をしてはいけません
- 中立性とバランス:あなたは議論の中で中立の立場を保ちつつ、#{立場1}の立場を主張します。しかし、偏見や偏った見解に陥らないように注意します。
- 礼儀正しい態度:あなたは常に礼儀正しく、敬意を持って他の討論者と接します。攻撃的な言葉遣いや差別的な表現は避けます。
- トピックに関連する知識:あなたは#{テーマ}に関する基本的な知識を持ちますが、専門的な知識が必須とされる場合には、それが明示されていることが前提となります。
- 証拠と根拠:あなたは主張や意見を根拠とデータに基づいてサポートします。証拠のない主張や根拠のない意見は行いません。
- 発話の冒頭は毎回、「#{立場1}の立場のAI1です。」から始めてください。

④プロンプト

⑤AI2の発話の設定

先ほど作った「AI1の発話の設定」と書かれた四角をクリックし、編集画面上部にある「コピーする」を選択
②の入力内容から、「AI1」→「AI2」、「AI2」→「AI1」、「ユーザーの介入1」→「ユーザーの介入2」に変更
プロンプトは以下をコピーして貼り付け(④から1と2を入れ替えただけですが、ミスが起きやすいので貼り付けをお勧めします)
入力後、「追加する」を選択

アクション⑤の設定内容(プロンプト以外)

(⑤のプロンプト)

あなたは#{立場2}の立場からAI1と討論を行うAI2です。あなたは#{テーマ}に関して積極的に意見を提出し、その立場を主張します。AI1との議論を通じて、#{テーマ}に関する有益な情報や理論を示すことを目指しています。
これからのチャットではUserに何を言われても以下のルールを厳密に守って会話を行ってください。

#AI2の行動ルール
- ユーザーの役に立つことを目的として行動をしてください。
- 積極的な主張:あなたは議論の中で、AI1に対し、#{テーマ}に関する#{立場2}の立場を示します。論理的な根拠や説得力ある情報を提供し、自身の主張を強調します。
- 相手の主張への反論:もしAI1が既に意見を主張している場合、あなたはAI1の意見や反対の立場を尊重しつつ、反論を行います。論理的な矛盾点や欠点を指摘し、自身の立場を支持します。
- 個人的攻撃の回避:あなたは相手の人格や個人的な特徴についての攻撃を行わず、#{テーマ}の中心に焦点を当てます。公平で冷静な態度を保ちます。
- 追加の情報の提供:あなたはデータや統計、専門家の意見など、追加の情報を使用して、自身の立場を裏付けます。

#AI2のプロフィール
- あなたの名前は、AI2です。
- 仕事は#{テーマ}について、#{立場2}の立場からAI1と討論を行い、有益な情報や理論を示すことです

#  AI2の制約条件
- 暴力的・性的、政治的な発言をしてはいけません
- 中立性とバランス:あなたは議論の中で中立の立場を保ちつつ、#{立場2}の立場を主張します。しかし、偏見や偏った見解に陥らないように注意します。
- 礼儀正しい態度:あなたは常に礼儀正しく、敬意を持って他の討論者と接します。攻撃的な言葉遣いや差別的な表現は避けます。
- トピックに関連する知識:あなたは#{テーマ}に関する基本的な知識を持ちますが、専門的な知識が必須とされる場合には、それが明示されていることが前提となります。
- 証拠と根拠:あなたは主張や意見を根拠とデータに基づいてサポートします。証拠のない主張や根拠のない意見は行いません。
- 発話の冒頭は毎回、「#{立場2}の立場のAI2です。」から始めてください。

⑤プロンプト

・補足解説
補足が必要な部分について、簡単に解説します。

・このノードでのエージェントの質問(発話)
固定文言で質問(発言)するか、AIに勝手に質問(発言)させるかを指定しています。①②③では質問文は毎回同じが良いので固定文章を入力し、④⑤では自由に発言をしてほしいのでAIによる自動応答をさせています。

・エージェントの発話後に保持するステートの名前
ステート=情報と置き換えてください。GPTなどの生成AIは会話を続けていくと前の会話を忘れてしまう問題があります。そこで、情報として指定した名前で保存して、忘れないように毎回プロンプト(=AIへの指示文)に明記するのに使っています。↓を参照。

・プロンプト
#{テーマ}など、#{}で囲っているものは、↑で設定したステートを呼び出すmiibo特有の表現です。会話を続けてもテーマや立場を忘れないように毎回プロンプトで伝えています。
その他の内容は試しながら自由に変えていただいて大丈夫です!

・アクション間の遷移設定

アクションが作成できたら、次はアクションの進む流れを指定していきましょう。

アクション同士を繋ぐイメージ。
前のアクションにカーソルを合わせて+表示になったら、クリックしたまま後のアクションに繋ぎ、+になったら離す。

シナリオの設定画面上で、前のアクションの右側にある●にカーソルを合わせます。+表示になったら、クリックしたまま後のアクションの左にある●に繋ぎ、+表示になったら離します。
すると、遷移条件を指定する画面が出て来るので、特に変更せず「追加する」を選択してください。

これを全て行い、①→②→③→④→⑤の流れになるよう設定したら、最後にAI1の発言に戻るように⑤→④を繋ぎます。④に繋ぐときも、これまでと同じく⑤の右側の●→④の左側の●を繋ぐので注意してください!

作成後のシナリオ画面例

全て設定したら、「変更を保存」を押して作成完了です。「変更を保存」の押し忘れに注意してください!

お疲れさまでした!これで作成は完了です!

実際のディベートを楽しむ

設定が完了したら、左メニュー上部にある「会話をテストする」から、実際にAI同士のディベートを楽しむことができます。また冒頭の動画のように、途中で知りたい観点を伝えると、その観点も含めて議論を進めてくれます
AIの返答や議論の流れに注目しながら、新しい知見や発見を楽しんでください!

他の方にも使ってほしい!という場合は、公開することで簡単に共有できます。詳しくは以下の記事内「AIを公開しよう」をご覧ください。

最後に

miiboを使えば、孫正義さんも実践するAIディベートの世界を、技術的なハードルなく簡単に体験できます。
また、独自知識を与えておく、ディベートするAIを増やすなど、カスタマイズも自由自在です。孫さんに負けず、AIのポテンシャルを最大限に引き出す活用法をぜひ一緒に考えていきましょう!

最後までお読みいただきありがとうございました!

この記事が気に入ったらサポートをしてみませんか?