見出し画像

【AutoGPT】英語解説を日本語で読む【2023年4月17日|@All About AI】

AutoGPTの解説です。
公開日:2023年4月17日
※動画を再生してから読むのがオススメです。


Today I want to show you how my AI agents take Python coding to a whole new level when they cooperate to create small mini games and apps with a UI in only two minutes.

今日は、私のAIエージェントが、Pythonのコーディングを全く新しいレベルに引き上げる様子をお見せしたいと思います!AIエージェントが協力して、小さなミニゲームやUI付きアプリをたった2分で作成します。

I also want to show you my AutoGPT project where I tried to create an AI agent farm with the ultimate goal of creating an AI system.

また、AIシステムを作るという最終目標に向けて、AIエージェントファームを作ろうとした私のAutoGPTプロジェクトも紹介したいと思います。

So let's just get started.

では、さっそく始めてみましょう。

First let me just show you a quick flow chart here of the system.

まず、システムの簡単なフローチャートをお見せしましょう。

So we've got a Python hub in the middle.

真ん中にPythonのハブを置いています。

We got two chat GPT agents that are hooked up to chat GPT 3.5 API.

チャットGPTエージェントが2つあり、チャットGPT 3.5 APIに接続されています。

The system starts with a trigger message that's going to start a simulation between our two chat GPT agents.

システムはトリガーメッセージで始まり、2つのチャットGPTエージェントの間でシミュレーションを開始します。

They have both access to Google so they can go outside the frame and search for info, bring it back and tell the other agent about it.

2人ともGoogleにアクセスできるので、フレームの外に出て情報を検索し、それを持ち帰って相手のエージェントに伝えることができます。

Their goal in this system is to work together and to create a working Python code of our description.

このシステムでの彼らの目標は、協力して、我々の説明のPythonコードを作成することです。

Let's say we want a game, then they're going to cooperate, try to make that game and put out a working Python code.

例えば、私たちがゲームを作りたいとすると、彼らは協力してそのゲームを作り、動作するPythonコードを作成しようとするのです。

So that's it.

というわけで、これで終わりです。

Let's dive deeper.

もっと深く潜ってみましょう。

Here we are at our Python hub.

ここがPythonのハブです。

I'm not going to go through all of this code now.

このコードを全部見て回るつもりはありません。

That's just going to take too long, but we are going to look at our agents.

でも、エージェントを見てみましょう。

So we have agent 007.

ここでは、エージェント007を紹介します。

The role is you are a professional software developer with special knowledge about Python and games.

あなたはPythonとゲームに関する特別な知識を持つプロのソフトウェア開発者という役割です。

Keep your messages short, focus on the code.

メッセージは短く、コードに集中してください。

Your task is to create a text box to write in with a UI in Python with agent 69.

あなたのタスクは、エージェント69と一緒にPythonでUIを持つ書き込むためのテキストボックスを作ることです。

Your task is also to give critique feedback to agent 69, converse in this structure, response, reflection code and critique.

あなたのタスクは、エージェント69に批評のフィードバックを与えることでもあり、この構造、応答、反射コード、批評で会話してください。

We have the mirrored instructions for 69, but he is going to critique agent 007, right?

69のミラーリング指示はありますが、彼はエージェント007を批評することになりますよね。

I had good results with doing this mirrored approach, but I also want to experiment with keeping the both the system roles quite different so they can work off each other's strength.

私はこのミラーリング・アプローチで良い結果を得ましたが、両方のシステムの役割を全く違うものにして、お互いの強みを生かせるようにすることも試してみたいと思っています。

But that's going to be for another video.

でも、それはまた別のビデオで。

Now let's try to create this text box to write in with a UI.

では、このテキストボックスを作成して、UIで書き込んでみましょう。

Okay.

なるほど。

So let's run this now.

では、これを実行してみましょう。

I brought up a timer here so we can get an insight of how long this takes.

どれくらい時間がかかるかを知るために、ここにタイマーを表示させました。

Let me start that over here and there and go.

こことあそこでタイマーをスタートさせて、行ってみましょう。

Okay.

はい。

So we start off with the trigger message, right?

トリガーメッセージから始めますね。

So hello 007.

こんにちは 007

I'm agent 69.

私はエージェント69です。

I'm here to help you create a simple textbook in Python.

Pythonで簡単な教科書を作るのをお手伝いします。

We can use the Tinkerer library, which allows us to create a GUI easily.

Tinkererライブラリを使えば、簡単にGUIを作ることができるんだ。

And here's his reflection.

そして、これが彼の反省点です。

It's important to make sure that we are addressing the correct person to use a professional tone in our conversation.

プロフェッショナルな口調で会話するために、正しい相手への対応を確認することが大切なのです。

And then he puts out an ID for a code.

そして、彼はコードのIDを出します。

This code or the code creates a simple text box using the Tinkerer library, which is a good starting point.

このコード、またはコードは、Tinkererライブラリを使ってシンプルなテキストボックスを作成します。

We don't have any labels or buttons.

ラベルやボタンはないんだ。

It could be improved.

改善されるかもしれませんね。

Uh, okay.

ええと、わかりました。

So agent zero come back and says, thank you for creating the window.

それでエージェントゼロが戻ってきて、ウィンドウを作ってくれてありがとう、と言う。

It's important to build up the previous code and address the limitations in a user friendly manner.

前のコードを積み上げて、ユーザーフレンドリーな方法で制限に対処することが重要です。

So he looks at the code, comes up with some ideas.

そこで、彼はコードを見て、いくつかのアイデアを思いついた。

It's now has more functional abilities, which makes us more user friendly.

これで、より機能的な能力を持つようになり、よりユーザーフレンドリーなものになりました。

The previous limitation where we solved and then it comes back to agent 69 again, trying to, he reflects on providing constructive feedback and suggestions for improvements can lead to a better role outcome.

建設的なフィードバックや改善提案を行うことで、より良い結果を得ることができると考えているのです。

That's his overall reflection.

それが彼の全体的な振り返りです。

Right.

そうですね。

And they go back and forward, try to, uh, go make good ideas for the code.

そして、彼らは行ったり来たりして、コードのために良いアイデアを作ろうとします。

This is the code we end up with.

これが最終的に出来上がったコードです。

We are going to test it.

私たちはこれをテストするつもりです。

So let's copy this and paste it in and test it.

これをコピーして貼り付け、テストしてみましょう。

Okay.

はい。

So here we go.

それでは、どうぞ。

Here is the result.

これがその結果です。

Right.

右です。

Something.

何かある

Okay.

なるほど。

So I guess it's working.

というわけで、うまくいっているようです。

You wrote error text textbook is empty.

エラーテキスト教科書が空だと書きましたね。

Okay.

そうですか。

So we got that message all about AI submit.

ということで、AI送信に関するメッセージは全部出ました。

It's not saving or anything.

保存も何もしていません。

It's a very simple UI.

とてもシンプルなUIなんですね。

Yeah.

そうですね。

Good job.

いい仕事だ。

Now let's try to create a whole bunch of different things and see if it works.

では、いろいろなものを作ってみて、それがうまくいくかどうか試してみましょう。

Now let's try to create a Tic Tac Toe game with a UI in Python.

今度はPythonでUIを持ったチックタックトーのゲームを作ってみましょう。

Okay.

よしっ。

Sounds good over here.

こっちはいい感じだね。

Start the timer and run.

タイマーをスタートさせて実行します。

Okay.

よしっ。

So that was about two minutes and 50 seconds.

というわけで、2分50秒くらいでしたね。

Let me copy that and test it.

それをコピーしてテストしてみます。

Okay.

オーケー。

Let me enter.

入力させてください。

All right.

よしっ。

This looks good.

これはいい感じだ。

So we got a code here.

コードができました。

Okay.

よし

That was so strange.

それはとても奇妙でした。

Let me see if it works.

うまくいくかどうか見てみよう。

X. Ah, good.

X. ああ、良い。

Yeah.

うん。

Okay.

よし。

So what happened now?

で、今どうなった?

Okay.

そうだな

So it stopped, but, uh, can we restart it?

それで、止まったんだけど、あー、再開できるかな?

Ah, here we go.

ああ、これでいい。

X wins.

Xの勝ちだ。

Wonder why that didn't happen earlier.

なんでさっきはそうならなかったんだろう。

Okay.

よし。

Cool.

かっこいい。

That works.

うまくいったね。

Let's do something else.

他のこともやってみよう。

Okay.

そうですね。

So now let's try to create an app that checks the weather in Norway with a basic UI.

では次に、ノルウェーの天気をチェックするアプリを、基本的なUIで作ってみましょう。

Okay.

なるほど。

Let's run that.

それを実行してみましょう。

Start the timer and go.

タイマーをスタートさせて、行ってみましょう。

Okay.

オーケー。

So that was about one minute and 20 seconds.

約1分20秒でしたね。

Let me just grab this and see exactly what this is.

これを手に取って、これが何なのか正確に見てみましょう。

Okay.

なるほど。

So let's test this now.

では、これをテストしてみましょう。

Welcome to the region.

リージョンへようこそ。

This is not exactly a UI, but okay.

これは正確にはUIではないのですが、まあいいでしょう。

Welcome to the region, whether app check.

地域へようこそ、アプリのチェックです。

Uh, please enter name some cities in Norway.

ノルウェーの都市名をいくつか入力してください。

Okay.

はい。

Let's do Oslo and Bergen.

オスロとベルゲンにしましょうか。

Wow.

わあ。

That works.

うまくいった

It's not that sophisticated, but at least it works.

それほど洗練されてはいないが、少なくとも動作はしている。

Uh, I just fetched a free API on the web and yeah, current temperature in Oslo, 10 degrees, broken clouds, 13 degrees in Bergen, a few clouds.

オスロの現在の気温は10度、雲が多い、ベルゲンは13度、雲が少しある。

So we can just do a quick UI on this if we wanted to.

というわけで、やろうと思えば簡単にUIを作ることができます。

Uh, I'm not going to do that now.

でも、今はそんなことしません。

Let's try something different.

何か違うことをやってみましょう。

So now let's try to give them some freedom here so we can create a new, strange, simple game with a UI in Python.

それでは、PythonでUIのある新しい、奇妙でシンプルなゲームを作るために、ここで彼らに自由を与えてみることにしましょう。

So I don't know what this is going to be, but let's check it out.

だから、これが何になるかはわからないけど、チェックしてみよう。

Okay.

なるほど。

So run that, start the timer and go.

では、それを実行して、タイマーをスタートさせて、行ってみましょう。

Okay.

オーケー。

So that was done.

というわけで出来上がりました。

This is very exciting.

これはとてもエキサイティングです。

So let's just go all the way up on top here because I want to see how they taught it.

では、どのように教えたか見てみたいので、この上のほうにずっと行ってみましょう。

Uh, hello agent.

あー、こんにちは、エージェント。

I'm glad to work on this project with you.

あなたと一緒にこのプロジェクトに取り組めることを嬉しく思います。

Sure.

もちろんです。

Let's get started.

さっそく始めましょう。

We're kind of a game over building agent zero seems eager to start, but we need to clarify what game we are building agent 69.

私たちはゲームオーバーのようなもので、エージェントゼロは始めたがっているようですが、私たちがエージェント69を作るのはどんなゲームなのかを明確にする必要があります。

Just start by setting up a simple UI.

まずは簡単なUIを設定するところから始めましょう。

That's a good start, right?

それが良いスタートでしょう?

And I agree with your plan.

そして、あなたのプランに賛成です。

As for the game, I was thinking we create a simple guessing game using numbers.

ゲームについては、数字を使った簡単な推理ゲームを作ろうかと考えています。

The players will have to guess a number between one and a hundred, and we give them hints if they are too high or low.

プレイヤーは1~100までの数字を当てるのですが、高すぎたり低すぎたりしたらヒントを出すんです。

And the reflection is a simple guessing game could be a good start for us to work on.

そして、その反省から、シンプルな推理ゲームに取り組むことにしました。

Let's start adding widgets for guessing game UI.

それでは、推理ゲームのUIに必要なウィジェットを追加していきましょう。

We need to label and enter the widgets.

ウィジェットにラベルを貼って入力する必要があります。

So they gone on and on about this.

ということで、彼らはこのことを何度も何度も繰り返し

They try to improve it.

改善しようとするのです。

Here's the updated code.

これが更新されたコードです。

Great catch.

素晴らしいキャッチだ。

Okay.

なるほど。

So the code seems to work fine, but if the player entered invalid inputs, like string instead of numbers, it will raise a value error.

このコードは問題なく動作しているように見えますが、プレイヤーが無効な入力、例えば数字の代わりに文字列を入力した場合、値のエラーを発生させるのです。

Great catch.

グレートキャッチです。

We should add an error handling error.

エラー処理エラーを追加する必要がありますね。

That is very, that is very good.

それはとても、とても良いことです。

So they found a weakness and they cooperated and fixed it.

つまり、彼らは弱点を見つけ、協力してそれを修正したのです。

So remember they only spent three minutes on this.

この作業に費やした時間はわずか3分です。

So they just went back and forward, try to implement other stuff.

だから、彼らはただ行ったり来たりして、他のものを実装しようとしたんだ。

Is this going to work?

これがうまくいくのか?

I don't know, but let's try it.

わからないけど、やってみよう。

So let's copy that and let's give it a spin.

では、それをコピーして、スピンしてみましょう。

Okay.

よし。

So we got something here.

では、ここで何かを得ることができました。

I don't know.

どうだろう?

We got two windows.

2つのウィンドウがあります。

Let's expand this.

これを拡大しましょう。

I don't know what kind of window this is.

このウィンドウがどんなウィンドウなのかわかりません。

Can I grab that?

これを掴んでいい?

Okay.

そうですね。

So here we got two windows.

ここに2つの窓があります。

So it's, I hope you can see this.

これが見えるといいのですが。

It's a bit small, but it's basically enter your guests one to a hundred.

ちょっと小さいですが、基本的にゲストを1人から100人まで入力するようになっています。

Let's start.

さあ、始めましょう。

And we have got 10 attempts so we can choose our difficulty here.

試行回数が10回あるので、ここで難易度を選ぶことができます。

It doesn't seem to work though, but okay.

でも、うまくいかないみたいだけど、まあいいや。

So let's do 50.

では、50回やってみましょう。

Your guess is too high.

あなたの推測は高すぎます。

You got nine attempts remaining too high.

残り9回の試行回数が高すぎますね。

Okay.

そうですか。

Let's do 30 too high.

30をやってみましょう、高すぎます。

20 too high.

20は高すぎる。

1.

1。

Congratulations.

おめでとうございます。

You guessed the right number.

正しい数字を当てましたね。

Wow.

わーい。

So let's try hard and replay.

では、頑張ってリプレイしてみましょう。

Okay.

よしっ。

So I guess we still have 10 attempts.

じゃあ、まだ10回試行できるんだね。

So that didn't work.

ということは、うまくいかなかったんですね。

Let's do 50.

50回にしよう。

It's too low.

低すぎる。

90 too high.

90だと高すぎる。

I guess it's 75 too low 80.

75だと思う。80だと低すぎる。

Okay.

なるほど。

So you get the point.

というわけで、ポイントを押さえた。

That was cool.

クールだったね。

That was a good idea.

いいアイデアでしたね。

It's very simple of course, but for three minutes, that's quite impressive.

もちろんとてもシンプルなものですが、3分間という時間はとても印象的です。

Okay.

なるほど。

So just remember this is still with chat GPT 3.5 and that is not so good at coding as GPT four soon.

これはまだチャットGPT3.5で、GPT4と比べるとコーディングがあまり得意でないことを忘れないでください。

I will have upgraded this to GPT four.

GPT 4にアップグレードする予定です。

I just need one more API and I'm ready to go.

あと1つAPIがあれば準備完了です。

That is going to be very interesting.

これはとても面白いことになりそうです。

Uh, I just want to finish off this video by showing you something I created in AutoGPT.

このビデオの最後に、AutoGPTで作ったものをお見せしたいと思います。

So let's just head over to AutoGPT and take a look at that.

では、AutoGPTに移動して、それを見てみましょう。

Okay, so let me show you the plan I have for this AutoGPT system.

では、このAutoGPTシステムの計画をお見せしましょう。

So we have the AI that's called Agent Farm 9000.

エージェントファーム9000と呼ばれるAIがあります。

It's an AI designed to autonomously create and manage specialized GPT agent that can generate and reproduce other agents with the ultimate goal of developing a comprehensive AGI system.

これは、包括的なAGIシステムを開発することを最終目標として、他のエージェントを生成・再生産できるGPT専用エージェントを自律的に作成・管理するように設計されたAIです。

So our goal number one is going to be create an agent capable of understanding the concepts, principles and architecture of AGI systems, including the ability to create, manage and reproduce specialized agents.

つまり、私たちの目標その1は、AGIシステムの概念、原理、アーキテクチャを理解できるエージェントを作ることであり、特殊なエージェントを作成、管理、再生産する能力を含む。

Goal number three is going to be create an agent that can continuously analyze, optimize and refine the replication process, ensuring the resulting agents contribute effectively.

目標3は、複製プロセスを継続的に分析し、最適化し、改良することができるエージェントを作成することです。

Goal four is going to be an agent that can coordinate and manage interaction between various agent within the AGI system, enabling seamless collaboration, knowledge sharing and task prioritization.

目標4は、AGIシステム内の様々なエージェント間の相互作用を調整・管理し、シームレスなコラボレーション、知識の共有、タスクの優先順位付けを可能にするエージェントを作成することです。

And our final goal is to create an agent responsible for monitoring the AGI systems performance, identifying areas of improvement, implementing and necessary adjustments to maintain the system stability, scalability, and adaptability.

そして最後の目標は、AGIシステムのパフォーマンスを監視し、改善すべき点を特定し、システムの安定性、拡張性、適応性を維持するために必要な調整を実施するエージェントを作成することである。

So this is quite the interesting case.

というわけで、これは非常に興味深いケースです。

So I think we are just going to run it and I'm going to run it.

だから、私たちはただ実行しようと思っています。

Let's do a hundred continuous, and then we will get back and take a look at where we stand.

100回ほど連続させてみて、それからまた戻って、立ち位置を確認することにしましょう。

Okay.

なるほど。

So AutoGPT has been running for a while now.

AutoGPTはもうしばらく稼働していますね。

I just wanted to take a look now.

今、ちょっと見てみたいんです。

So where we stand.

さて、現在の状況はどうなっているのでしょうか。

So it started off with this plan here, uh, to achieve the goal of creating an AGI system, I need to start building agents that can, an agent that can stay focused on this task and generate other agent.

AGIシステムを作るという目標を達成するために、このタスクに集中して他のエージェントを生成できるエージェントを作る必要があります。

So we started by creating an agent called AGI focus.

そこで、まず「AGI focus」というエージェントを作りました。

So this prompt is key principle of systems, right?

このプロンプトは、システムの重要な原則ですよね?

And it wrote this whole kind of list here.

そして、ここにこのようなリストを書きました。

Then it went on to start an agent named AGI expert, train AGI expert to understand the concepts, principles, and architecture of AGI systems.

そして、AGIエキスパートというエージェントを作成し、AGIシステムの概念、原理、アーキテクチャを理解するためにAGIエキスパートを訓練しました。

So, yeah, it started this AGI expert agent.

そう、このAGIエキスパート・エージェントを始めたのです。

And it kind of went on to find some information about, so message the AGI focus agent, start working on a report on AGI systems, ensure that the agent is actively working on the task and managing process.

そして、AGIフォーカスエージェントにメッセージを送り、AGIシステムに関するレポートの作成を開始し、エージェントがタスクと管理プロセスに積極的に取り組んでいることを確認する、という流れになります。

Okay.

なるほど。

That's cool.

それはいい。

And then wanted to start a new GPT agent named AGI designer.

そして、AGIデザイナーという新しいGPTエージェントを立ち上げたいと考えています。

So design and implement self replicating agents with a diverse and complimentary skill set.

多様なスキルセットを持つ自己複製エージェントを設計し、実装します。

Enable to continuous analyze and optimize and refine the process.

プロセスを継続的に分析し、最適化し、改良することを可能にします。

So I really enjoy the start here.

だから、私はこのスタートをとても楽しんでいます。

I think this is what I am looking for.

私が求めているのは、これだと思います。

I want to build up agents with different kinds of skills, right?

私は、さまざまな種類のスキルを持つエージェントを作り上げたいのですね。

So now the thought was, now I created the focus on AGI expert agents.

そこで考えたのが、今度はAGIエキスパートエージェントに焦点を当てたものを作りました。

I should focus on training AGI expert to create and manage.

AGIエキスパートを作り、管理するためのトレーニングに焦点を当てるべきですね。

Yeah.

そうですね。

I will begin by defining core competencies specialized in GPT agents should process to achieve this goal.

この目標を達成するために、GPTエージェントに特化したコアコンピテンシーを定義することから始めようと思います。

So it started doing this do nothing command.

それで、この何もしないコマンドを始めたんですね。

That's not a good sign.

それは良い兆候ではありません。

Okay.

なるほど。

So we did a Google search for creating AGI systems.

そこで、AGIシステムの作成についてGoogleで検索してみました。

That's good.

これはいいことだ。

Okay.

なるほど。

So it found 40,000 characters on this website.

それで、このホームページの4万文字が見つかりました。

Let's take a quick look at it.

早速見てみましょう。

So it was this website, artificial general intelligence on tech target.com.

それは、tech target.comのartificial general intelligenceというウェブサイトでした。

Okay.

なるほど。

So that was not bad.

これは悪くないですね。

Okay.

そうですか。

I wrote that to file, let's take a look at that expertise in ML and AI knowledge of fields, cognitive science, neuroscience.

MLやAIの専門知識、認知科学、神経科学といった分野の知識について見てみましょう。

Okay.

なるほど。

So, so far, so good.

さて、ここまでは順調だ。

I like this.

私はこれが好きです。

I've gotten so far before, so now we create a new, an AGI manager, select and manage agent to fulfill the required to computer towards the goal.

では、新たにAGIマネージャーを作成し、ゴールに向かってコンピュータに必要な機能を果たすエージェントを選択・管理します。

Okay.

なるほど。

So we have a manager, you message the builder.

では、マネージャーを作成し、ビルダーにメッセージを送ります。

Now we created an AGI researcher search and browse websites, forget information on systems and synthesize it into a concise report.

次に、AGIリサーチャーを作り、ウェブサイトを検索・閲覧し、システムに関する情報を忘れ、それを簡潔なレポートにまとめる。

Okay.

なるほど。

That's good.

それはいいことだ。

We want that.

そうしたい。

But then we got to here and it kind of went off the rails.

しかし、ここに来て、ちょっとレールから外れてしまいました。

This happens sometimes for me.

これは私にも時々あることです。

You can see it did the same prompt forever.

同じプロンプトがずっと続いているのがわかると思います。

So this is a working progress.

というわけで、これは作業途中のものです。

Uh, I might have to change up the, the goal here a bit.

このゴールは少し変えなければならないかもしれません。

I haven't really decided what I'm going to change.

何を変えるかはまだ決めてないんだけどね。

I kind of think I need a more of an overall goal in just creating an AGI system.

ただAGIシステムを作るだけでなく、もっと全体的な目標が必要だと思うんです。

So I'm going to work on that and I probably going to do a video next week.

来週にはビデオにするつもりです。

Or whenever you see this, it might be out.

あるいは、あなたがこれを見るときはいつでも、それが公開されているかもしれません。

So yeah, very interesting, a lot of fun with AutoGPT.

AutoGPTはとても面白いですし、とても楽しいです。

And I got some cool videos coming up on this BabyAGI, AutoGPT trend.

このBabyAGIとAutoGPTのトレンドについて、これからいくつか素敵なビデオを作る予定です。

So look out for them.

楽しみにしていてください。

If you made it all the way here, maybe you want to try out my system that I just show you in the beginning of the video.

せっかくここまで来たのだから、ビデオの冒頭で紹介した私のシステムを試してみたいという人もいるかもしれない。

If you want that check out the link in the description below to my membership.

その場合は、下の説明文にある私のメンバーシップへのリンクをチェックしてみてください。

And thank you for tuning in.

そして、ご視聴ありがとうございました。

See you in the next one.

では、また次回のビデオでお会いしましょう。


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