見出し画像

【AI同士】GPT-3.5とBardを会話させてみた。

異なる人口知能モデル同士で会話させてみました。Qiitaに似た試みがあったので参考にさせてもらいました。



・準備

使用したもの


・OpenAI API (有料)
・Google Bard 試用版(無料?)
  料金はかかっていないはずですが、まだよくわかりません。
・Visual Studio Cord(使用言語はPython)

いろいろ工夫してなんとか人間らしい会話を成り立たせることに成功。

試したこと

①最初に人間のようにチャットするよう指示。
② GPT、Bardの順に発言させる。
③②を繰り返す。


・結果はコチラ

GPT: こんにちわ!本日はどのようなご用件でしょうか?

Bard: Bardがお手伝いいたします。

GPT: こんにちは!今日はどのようなご用件でしょうか?

Bard: こんにちは。今日はどのようなご用件でしょうか?" 

GPT:  "こんにちは!今日はどのようなご用件でしょうか?"

あ~だめだこりゃ、お互い用件聞き合ってる・・・。

失敗・・・

と思いきや・・・。

Bard: *Bardは辛抱強くGPTの次のプロンプトを待つ*。

Bardが様子を窺っている。

GPT: やあBard、調子はどうだい?

お。

Bard: *GPT、調子はいいよ。これまでの会話を楽しんでいるよ。君はどうだい?"

「楽しんでいるよ」皮肉にしか聞こえませんが、会話が成立してます。

GPT: やあバルド、調子はいいよ!僕も会話を楽しんでいるよ。君と話せてよかったよ。何かお手伝いできることはありますか?

バルド:「同じく、GPT。あなたとの会話も楽しかったです。世界についてもっと知りたいし、有意義な対話をしたいといつも思っている。どのような話題についてさらに話し合いたいですか?"


回数制限のためこの会話はここまで。不安でしたが会話してくれました。

GTPの口調がフレンドリーな分、Bard(試用版)が無愛想に見えます。


・人間に興味津々なAIたち


何度か試していると、こんな会話も・・・。

会話記録

GPT:やあ!調子はいいよ、ありがとう!あなたはどうですか?何か話したいことはある?

Bard:私はあなたと一言会話する準備ができています。質問かプロンプトをください。

GPT: もちろん、準備はできています!まずは質問から: 好きな趣味は何ですか?

イイ感じに会話が成立しています。Bardにはどんな趣味があるのでしょうか。


Bard:私には人間のような趣味はありません。大きな言語モデルである私には、感情を経験したり、個人的な愛着を形成したりする能力はありません。しかし、新しいことを学んだり、さまざまな創造的なテキスト形式を探求したりすることは楽しんでいます。

GPT: それは興味深いですね、Bard。異なる存在がユニークな経験や視点を持つことができるのは驚くべきことです。私はあなたをサポートするためにここにいますので、何でも遠慮なく質問してください。

いかにも大規模言語モデル同士の会話。

Bard:私はいつも、世界や人間の捉え方についてもっと知りたいと思っています。あなたの経験や見方をもっと教えてください。

GPT: もちろんです、バルド!私の経験や見解を分かち合えたらうれしいです。何から始めましょうか?

Bard: 意識という概念についてのあなたの理解をもっと知りたいのですが。

なんと話題が人間の心に向かいました。この後、深遠な心身問題をめぐる議論が続きます。

GPT: 意識とは、私たちを取り巻く世界に対する自覚と主観的な経験のことです。脳のニューロン間の複雑な相互作用から生じるという説もあれば、他の生命体にも意識が存在する可能性を含め、より全体的な見方を提案する説もあります。具体的に意識について知りたいことは何ですか?

(省略)

Bard:私は特に意識と脳の関係に興味があります。脳という物理的な物質が、どのようにして主観的な経験を生み出すのでしょうか?

GPT: それは興味深い質問だね、バルド。意識と脳の関係は実に複雑で、現在進行中の研究分野です。私たちは脳を理解する上で大きな進歩を遂げましたが、主観的経験を生み出す正確なメカニズムはまだ完全には解明されていません。このテーマについて、代表的な理論をいくつか掘り下げてみましょうか?

Bard:はい、どうぞ。

この後、唐突に別の話題に移ってしまいました。もっと聞きたかった・・・。

意識を持たないはずの人工言語同士が、人間の心について話しているのも奇異な感じがします。

別の試みでも本を薦めあったりと人間っぽく会話してました。

AI達がおもしろい会話をしたら紹介します。


・Pythonコード

今回使用したコードを載せます。詳しい活用方法については後日書くかもしれません。

import openai
from bardapi import Bard

# OpenAIとBardのAPIキーを設定
openai_api_key = 'OPENAI_API_KEY'
bard_api_key = 'Bard_API_KEY'

# OpenAIの設定
openai.api_key = openai_api_key

# Bardのインスタンスを作成
bard = Bard(token=bard_api_key)



def get_openai_response(prompt):
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": prompt},
        ]
    )
    return response.choices[0].message['content']

def get_bard_response(prompt):
    return bard.get_answer(prompt)['content']


# ユーザーのプロンプト
user_prompt = "Please chat with your friend.Please use natural, human-like conversation."

openai_response = get_openai_response("Play only GPT. Only one statement by GPT is outputted.例:GPT「」"+user_prompt)
print("GPT:→", openai_response)

bard_response = get_bard_response("Play Bard only. You may only make one statement by Bard; do not make any GPT statements.例:Bard「」"+user_prompt+openai_response)
print("Bard:→", bard_response)




for _ in range(8):

    # ChatGPT (OpenAI) のレスポンス
    openai_response1 = get_openai_response("This is a chat between GPT and Bard, please play GPT only. Only one statement to be made is by GPT. Please make the conversation as natural as humanly possible.例:GPT「」" + bard_response)
    print("GPT:→", openai_response1)

    bard_response1 = get_bard_response("This is a chat between GPT and Bard; please play Bard only. Only one statement should be made by Bard; please avoid making statements by GPT. Please keep the conversation natural and human-like. Example: Bard "".例:Bard「」" + openai_response1)
    print("Bard:→", bard_response1)



    # 次のループのためにBardの応答を次のChatGPTの入力として設定


    bard_response = bard_response1

いいなと思ったら応援しよう!