AutoGPTの解説です。
公開日:2023年4月17日
※動画を再生してから読むのがオススメです。
今日は、私のAIエージェントが、Pythonのコーディングを全く新しいレベルに引き上げる様子をお見せしたいと思います!AIエージェントが協力して、小さなミニゲームやUI付きアプリをたった2分で作成します。
また、AIシステムを作るという最終目標に向けて、AIエージェントファームを作ろうとした私のAutoGPTプロジェクトも紹介したいと思います。
では、さっそく始めてみましょう。
まず、システムの簡単なフローチャートをお見せしましょう。
真ん中にPythonのハブを置いています。
チャットGPTエージェントが2つあり、チャットGPT 3.5 APIに接続されています。
システムはトリガーメッセージで始まり、2つのチャットGPTエージェントの間でシミュレーションを開始します。
2人ともGoogleにアクセスできるので、フレームの外に出て情報を検索し、それを持ち帰って相手のエージェントに伝えることができます。
このシステムでの彼らの目標は、協力して、我々の説明のPythonコードを作成することです。
例えば、私たちがゲームを作りたいとすると、彼らは協力してそのゲームを作り、動作するPythonコードを作成しようとするのです。
というわけで、これで終わりです。
もっと深く潜ってみましょう。
ここがPythonのハブです。
このコードを全部見て回るつもりはありません。
でも、エージェントを見てみましょう。
ここでは、エージェント007を紹介します。
あなたはPythonとゲームに関する特別な知識を持つプロのソフトウェア開発者という役割です。
メッセージは短く、コードに集中してください。
あなたのタスクは、エージェント69と一緒にPythonでUIを持つ書き込むためのテキストボックスを作ることです。
あなたのタスクは、エージェント69に批評のフィードバックを与えることでもあり、この構造、応答、反射コード、批評で会話してください。
69のミラーリング指示はありますが、彼はエージェント007を批評することになりますよね。
私はこのミラーリング・アプローチで良い結果を得ましたが、両方のシステムの役割を全く違うものにして、お互いの強みを生かせるようにすることも試してみたいと思っています。
でも、それはまた別のビデオで。
では、このテキストボックスを作成して、UIで書き込んでみましょう。
なるほど。
では、これを実行してみましょう。
どれくらい時間がかかるかを知るために、ここにタイマーを表示させました。
こことあそこでタイマーをスタートさせて、行ってみましょう。
はい。
トリガーメッセージから始めますね。
こんにちは 007
私はエージェント69です。
Pythonで簡単な教科書を作るのをお手伝いします。
Tinkererライブラリを使えば、簡単にGUIを作ることができるんだ。
そして、これが彼の反省点です。
プロフェッショナルな口調で会話するために、正しい相手への対応を確認することが大切なのです。
そして、彼はコードのIDを出します。
このコード、またはコードは、Tinkererライブラリを使ってシンプルなテキストボックスを作成します。
ラベルやボタンはないんだ。
改善されるかもしれませんね。
ええと、わかりました。
それでエージェントゼロが戻ってきて、ウィンドウを作ってくれてありがとう、と言う。
前のコードを積み上げて、ユーザーフレンドリーな方法で制限に対処することが重要です。
そこで、彼はコードを見て、いくつかのアイデアを思いついた。
これで、より機能的な能力を持つようになり、よりユーザーフレンドリーなものになりました。
建設的なフィードバックや改善提案を行うことで、より良い結果を得ることができると考えているのです。
それが彼の全体的な振り返りです。
そうですね。
そして、彼らは行ったり来たりして、コードのために良いアイデアを作ろうとします。
これが最終的に出来上がったコードです。
私たちはこれをテストするつもりです。
これをコピーして貼り付け、テストしてみましょう。
はい。
それでは、どうぞ。
これがその結果です。
右です。
何かある
なるほど。
というわけで、うまくいっているようです。
エラーテキスト教科書が空だと書きましたね。
そうですか。
ということで、AI送信に関するメッセージは全部出ました。
保存も何もしていません。
とてもシンプルなUIなんですね。
そうですね。
いい仕事だ。
では、いろいろなものを作ってみて、それがうまくいくかどうか試してみましょう。
今度はPythonでUIを持ったチックタックトーのゲームを作ってみましょう。
よしっ。
こっちはいい感じだね。
タイマーをスタートさせて実行します。
よしっ。
というわけで、2分50秒くらいでしたね。
それをコピーしてテストしてみます。
オーケー。
入力させてください。
よしっ。
これはいい感じだ。
コードができました。
よし
それはとても奇妙でした。
うまくいくかどうか見てみよう。
X. ああ、良い。
うん。
よし。
で、今どうなった?
そうだな
それで、止まったんだけど、あー、再開できるかな?
ああ、これでいい。
Xの勝ちだ。
なんでさっきはそうならなかったんだろう。
よし。
かっこいい。
うまくいったね。
他のこともやってみよう。
そうですね。
では次に、ノルウェーの天気をチェックするアプリを、基本的なUIで作ってみましょう。
なるほど。
それを実行してみましょう。
タイマーをスタートさせて、行ってみましょう。
オーケー。
約1分20秒でしたね。
これを手に取って、これが何なのか正確に見てみましょう。
なるほど。
では、これをテストしてみましょう。
リージョンへようこそ。
これは正確にはUIではないのですが、まあいいでしょう。
地域へようこそ、アプリのチェックです。
ノルウェーの都市名をいくつか入力してください。
はい。
オスロとベルゲンにしましょうか。
わあ。
うまくいった
それほど洗練されてはいないが、少なくとも動作はしている。
オスロの現在の気温は10度、雲が多い、ベルゲンは13度、雲が少しある。
というわけで、やろうと思えば簡単にUIを作ることができます。
でも、今はそんなことしません。
何か違うことをやってみましょう。
それでは、PythonでUIのある新しい、奇妙でシンプルなゲームを作るために、ここで彼らに自由を与えてみることにしましょう。
だから、これが何になるかはわからないけど、チェックしてみよう。
なるほど。
では、それを実行して、タイマーをスタートさせて、行ってみましょう。
オーケー。
というわけで出来上がりました。
これはとてもエキサイティングです。
では、どのように教えたか見てみたいので、この上のほうにずっと行ってみましょう。
あー、こんにちは、エージェント。
あなたと一緒にこのプロジェクトに取り組めることを嬉しく思います。
もちろんです。
さっそく始めましょう。
私たちはゲームオーバーのようなもので、エージェントゼロは始めたがっているようですが、私たちがエージェント69を作るのはどんなゲームなのかを明確にする必要があります。
まずは簡単なUIを設定するところから始めましょう。
それが良いスタートでしょう?
そして、あなたのプランに賛成です。
ゲームについては、数字を使った簡単な推理ゲームを作ろうかと考えています。
プレイヤーは1~100までの数字を当てるのですが、高すぎたり低すぎたりしたらヒントを出すんです。
そして、その反省から、シンプルな推理ゲームに取り組むことにしました。
それでは、推理ゲームのUIに必要なウィジェットを追加していきましょう。
ウィジェットにラベルを貼って入力する必要があります。
ということで、彼らはこのことを何度も何度も繰り返し
改善しようとするのです。
これが更新されたコードです。
素晴らしいキャッチだ。
なるほど。
このコードは問題なく動作しているように見えますが、プレイヤーが無効な入力、例えば数字の代わりに文字列を入力した場合、値のエラーを発生させるのです。
グレートキャッチです。
エラー処理エラーを追加する必要がありますね。
それはとても、とても良いことです。
つまり、彼らは弱点を見つけ、協力してそれを修正したのです。
この作業に費やした時間はわずか3分です。
だから、彼らはただ行ったり来たりして、他のものを実装しようとしたんだ。
これがうまくいくのか?
わからないけど、やってみよう。
では、それをコピーして、スピンしてみましょう。
よし。
では、ここで何かを得ることができました。
どうだろう?
2つのウィンドウがあります。
これを拡大しましょう。
このウィンドウがどんなウィンドウなのかわかりません。
これを掴んでいい?
そうですね。
ここに2つの窓があります。
これが見えるといいのですが。
ちょっと小さいですが、基本的にゲストを1人から100人まで入力するようになっています。
さあ、始めましょう。
試行回数が10回あるので、ここで難易度を選ぶことができます。
でも、うまくいかないみたいだけど、まあいいや。
では、50回やってみましょう。
あなたの推測は高すぎます。
残り9回の試行回数が高すぎますね。
そうですか。
30をやってみましょう、高すぎます。
20は高すぎる。
1。
おめでとうございます。
正しい数字を当てましたね。
わーい。
では、頑張ってリプレイしてみましょう。
よしっ。
じゃあ、まだ10回試行できるんだね。
ということは、うまくいかなかったんですね。
50回にしよう。
低すぎる。
90だと高すぎる。
75だと思う。80だと低すぎる。
なるほど。
というわけで、ポイントを押さえた。
クールだったね。
いいアイデアでしたね。
もちろんとてもシンプルなものですが、3分間という時間はとても印象的です。
なるほど。
これはまだチャットGPT3.5で、GPT4と比べるとコーディングがあまり得意でないことを忘れないでください。
GPT 4にアップグレードする予定です。
あと1つAPIがあれば準備完了です。
これはとても面白いことになりそうです。
このビデオの最後に、AutoGPTで作ったものをお見せしたいと思います。
では、AutoGPTに移動して、それを見てみましょう。
では、このAutoGPTシステムの計画をお見せしましょう。
エージェントファーム9000と呼ばれるAIがあります。
これは、包括的なAGIシステムを開発することを最終目標として、他のエージェントを生成・再生産できるGPT専用エージェントを自律的に作成・管理するように設計されたAIです。
つまり、私たちの目標その1は、AGIシステムの概念、原理、アーキテクチャを理解できるエージェントを作ることであり、特殊なエージェントを作成、管理、再生産する能力を含む。
目標3は、複製プロセスを継続的に分析し、最適化し、改良することができるエージェントを作成することです。
目標4は、AGIシステム内の様々なエージェント間の相互作用を調整・管理し、シームレスなコラボレーション、知識の共有、タスクの優先順位付けを可能にするエージェントを作成することです。
そして最後の目標は、AGIシステムのパフォーマンスを監視し、改善すべき点を特定し、システムの安定性、拡張性、適応性を維持するために必要な調整を実施するエージェントを作成することである。
というわけで、これは非常に興味深いケースです。
だから、私たちはただ実行しようと思っています。
100回ほど連続させてみて、それからまた戻って、立ち位置を確認することにしましょう。
なるほど。
AutoGPTはもうしばらく稼働していますね。
今、ちょっと見てみたいんです。
さて、現在の状況はどうなっているのでしょうか。
AGIシステムを作るという目標を達成するために、このタスクに集中して他のエージェントを生成できるエージェントを作る必要があります。
そこで、まず「AGI focus」というエージェントを作りました。
このプロンプトは、システムの重要な原則ですよね?
そして、ここにこのようなリストを書きました。
そして、AGIエキスパートというエージェントを作成し、AGIシステムの概念、原理、アーキテクチャを理解するためにAGIエキスパートを訓練しました。
そう、このAGIエキスパート・エージェントを始めたのです。
そして、AGIフォーカスエージェントにメッセージを送り、AGIシステムに関するレポートの作成を開始し、エージェントがタスクと管理プロセスに積極的に取り組んでいることを確認する、という流れになります。
なるほど。
それはいい。
そして、AGIデザイナーという新しいGPTエージェントを立ち上げたいと考えています。
多様なスキルセットを持つ自己複製エージェントを設計し、実装します。
プロセスを継続的に分析し、最適化し、改良することを可能にします。
だから、私はこのスタートをとても楽しんでいます。
私が求めているのは、これだと思います。
私は、さまざまな種類のスキルを持つエージェントを作り上げたいのですね。
そこで考えたのが、今度はAGIエキスパートエージェントに焦点を当てたものを作りました。
AGIエキスパートを作り、管理するためのトレーニングに焦点を当てるべきですね。
そうですね。
この目標を達成するために、GPTエージェントに特化したコアコンピテンシーを定義することから始めようと思います。
それで、この何もしないコマンドを始めたんですね。
それは良い兆候ではありません。
なるほど。
そこで、AGIシステムの作成についてGoogleで検索してみました。
これはいいことだ。
なるほど。
それで、このホームページの4万文字が見つかりました。
早速見てみましょう。
それは、tech target.comのartificial general intelligenceというウェブサイトでした。
なるほど。
これは悪くないですね。
そうですか。
MLやAIの専門知識、認知科学、神経科学といった分野の知識について見てみましょう。
なるほど。
さて、ここまでは順調だ。
私はこれが好きです。
では、新たにAGIマネージャーを作成し、ゴールに向かってコンピュータに必要な機能を果たすエージェントを選択・管理します。
なるほど。
では、マネージャーを作成し、ビルダーにメッセージを送ります。
次に、AGIリサーチャーを作り、ウェブサイトを検索・閲覧し、システムに関する情報を忘れ、それを簡潔なレポートにまとめる。
なるほど。
それはいいことだ。
そうしたい。
しかし、ここに来て、ちょっとレールから外れてしまいました。
これは私にも時々あることです。
同じプロンプトがずっと続いているのがわかると思います。
というわけで、これは作業途中のものです。
このゴールは少し変えなければならないかもしれません。
何を変えるかはまだ決めてないんだけどね。
ただAGIシステムを作るだけでなく、もっと全体的な目標が必要だと思うんです。
来週にはビデオにするつもりです。
あるいは、あなたがこれを見るときはいつでも、それが公開されているかもしれません。
AutoGPTはとても面白いですし、とても楽しいです。
このBabyAGIとAutoGPTのトレンドについて、これからいくつか素敵なビデオを作る予定です。
楽しみにしていてください。
せっかくここまで来たのだから、ビデオの冒頭で紹介した私のシステムを試してみたいという人もいるかもしれない。
その場合は、下の説明文にある私のメンバーシップへのリンクをチェックしてみてください。
そして、ご視聴ありがとうございました。
では、また次回のビデオでお会いしましょう。