メルマガ登録
このたびブレインパッドは、LLM/Generative AIに関する研究プロジェクトを立ち上げ、この「Platinum Data Blog」を通じてLLM/Generative AIに関するさまざまな情報を発信をしています。今回は、自律型AIエージェントの機能や動作についての説明とあわせて、AIエージェントをいくつかご紹介します。
こんにちは。アナリティクスサービス部の江本です。
昨年2022年11月末にChatGPTがリリースされてから半年もたたずして、自律型AIエージェントが続々とリリースされ大きな話題を呼びました。
今では様々な自律型AIエージェントが存在しており、その多くはウェブブラウザを通して簡単に試すことができるようになっています。
自律型AIエージェントは、与えられたゴールに対してLLMを用いて必要なタスクの定義および行動計画を生成します。
計画に沿ってタスク実行し、その結果をもとにバグ修正や新たなタスクが必要と判断されたら行動計画を修正します。そして、当初の目的が達成されたと判断されるまで行動・評価・修正を自律的に繰り返します。
これまで様々な自律型AIエージェントが開発・公開されており、機能は様々ですがおよそ共通している事として
といった特性があります。
具体的なタスク処理の雰囲気を掴むために、今回はBabyAGIの仕組みをご紹介し、実際にゴールを与えて、タスク処理の様子をお見せします。
BabyAGIはYohei Nakajima氏によって開発されたAIエージェントで、2023/4/3にリポジトリ公開されました。
ユーザから与えられたゴールに対して、BabyAGIは以下のステップを踏んで4つのエージェントを使いながらタスクを処理していきます。
また、タスクとその実行結果のペアをMemory(ベクトルデータベース)に保存し、Context Agentを通じて関連度の高いコンテクストをタスク実行時に参照しています。
以下実装コードです。現在はクラスにリファクタリングされており、こちらは書き換えられる前の古いバージョンのコードですが1ファイルに処理が閉じたコードとなっており、短く理解し易いものとなっております。
https://github.com/yoheinakajima/babyagi/blob/79bf9676ccc9d0371f2e3471d2808fe2da6b02ab/babyagi.py
以上がBabyAGIの仕組みの概要となります。140行にも満たない非常に短いコードでAIエージェントの自律的な動作が実現しています。
自律型AIエージェントに関連する後続プロジェクトでBabyAGIからインスピレーションを受けたものは多く、この分野に大きな影響を与えています。
インスピーレーションを与えたプロジェクト:https://github.com/yoheinakajima/babyagi/blob/main/docs/inspired-projects.md
BabyAGIは外部のLLMとベクトルデータベースを利用したシンプルな構成であり、ウェブ検索機能などは実装されておりません。
このBabyAGIをベースとして機能の強化やパフォーマンスを改善するための改変版BabyAGIとしてBabyBeeAGI、BabyCatAGIなどが開発されています。
今月6/7にもBabyDeerAGIと呼ばれるmodがリリースされました。User Input Agentの追加やタスクの並列処理が実装されており、Google Search APIも利用できるようになっています。
BabyDeerAGI(およびBabyAGI)はYoshiki Miura氏開発のウェブUIで実行することができます。
https://github.com/miurla/babyagi-ui
上記githubのコードから自身のローカル環境上にウェブUIを構築することができますが、現在下記のデモサイトで無料で試すことも可能となっております。
https://babyagi-ui.vercel.app/ja
(SerpApiチームがオフィシャルスポンサーとなっており、デモサイトで発生分のsearch APIのクレジットを提供してくれているとのことです)
今回はこのデモページを利用させていただきます。ウェブUIはChatGPTとよく似たサイト構成となっております。
設定方法は簡単で、ページ内の設定ボタンからOpenAIのAPIキーを入力してモデルとエージェントを指定すれば、あとはゴール入力するのみです。
ここでは、次の設定・ゴールをセットしてみます。
しばらくすると、ゴールに対して4つのタスクリストが生成されました。
タスク洗い出しが終わったあとは、ウェブUI上でタスクの処理が自動的に進行し、その進捗状況がリアルタイムで表示されます。
全てのタスクが終了した後、実行結果を.txtファイルとして保存することが可能です。以下、保存したテキストファイルの内容を各タスクごとにお見せします。
はじめのタスクは調査記事を検索するもので、以下のようにタスク結果報告書が返ってきました(テキストが長いため途中で切れています。)
## 次のタスク
1. 自律型AIエージェントに関する調査記事を検索する - **[ web-search]**
## ✅ タスクの結果
報告書
この記事では、「Auto-GPT」という新しいプログラムについて説明されています。このプログラムは、「ChatGPT」という技術を使用して、自己完結型のAIアシスタントを作成することができます。
Auto-GPTは、ユーザーからの継続的な指示なしで複雑なタスクを実行することができます。ユーザーの仕様に基づいてコードブロックを生成し、ソフトウェア開発プロジェクトを管理することもできます。
Auto-GPTは、iOSとAndroidの違いなどのトピックに関する研究などのタスクにも使用することができます。タスクの結果はテキストファイルに保存され、簡単に参照することができます。
Auto-GPTは、ウェブ開発者、ポッドキャストの研究者、および他の特定の役割によって使用されることができます。このプログラムはまだ実験段階にあり、不正確な情報を生成したり、間違いを com る可能性があります。
Auto-GPTを使用するには、GitとPythonのインストールが必要であり、ユーザーはOpenAIからAPIキーを取得する必要があります。Auto-GPTの使用には潜在的なコストがかかり、APIキーには使用制限があります。
Auto-GPTの代替として、「AgentGPT」というプロジェクトがあります。AgentGPTは、インストールを必要とせずにウェブブラウザで動作する類似のプロジェクトです。AgentGPTはAuto-GPTよりも進んでいませんが、自己完結型のAIエージェントができることについて基本的な理解を提供することができます。
このテキストは、私たちの目標と現在のタスクに関連する情報を提供しています。関連する情報は以下の通りです:
- ソニーAIとPolyphony Digital(PDI)は、「Gran Turismo Sophie(GT Sophie)」AIエージェントを発表しました。
- GT Sophieは、新しい深層強化学習プラットフォームを使用して、ソニーAI、PDI、およびソニー・インタラクティブ・エンタテインメント(SIE)によって開発された自己学習型のAIエージェントです。
- GT Sophieは、PlayStation 4のゲーム「Gran Turismo Sport」でAIを活用した新しいゲーム体験を提供し、世界のトップドライバーと競争するために訓練されています。
- GT Sophie
次のタスクは要約です。先ほど行った検索収集結果から関連する記事を要約します。
## 次のタスク
2. 検索結果から関連する記事を要約する - **[ text-completion]**
## ✅ タスクの結果
Auto-GPTは、ChatGPT技術を使用して自己完結型のAIアシスタントを作成するプログラムです。ユーザーの指示なしで複雑なタスクを実行し、コードブロックの生成やソフトウェア開発プロジェクトの管理も可能です。また、iOSとAndroidの違いなどの研究タスクにも使用できます。タスクの結果はテキストファイルに保存され、参照が容易です。ただし、まだ実験段階であり、不正確な情報や間違いを生成する可能性があります。使用にはGitとPythonのインストールが必要であり、APIキーの取得と使用制限もあります。代替としてAgentGPTがありますが、こちらはインストール不要でウェブブラウザで動作し、基本的な理解を提供します。
次は要約結果から重要な情報を抽出します。先程の要約の時点ですでに重要な情報が抽出されているようで、ここでは箇条書きに整理している程度の処理となっています。
## 次のタスク
3. 重要な情報をピックアップする - **[ text-completion]**
## ✅ タスクの結果
Auto-GPTは、ChatGPT技術を使用して自己完結型のAIアシスタントを作成するプログラムです。
Auto-GPTは、ユーザーの指示なしで複雑なタスクを実行し、コードブロックの生成やソフトウェア開発プロジェクトの管理も可能です。
Auto-GPTは、iOSとAndroidの違いなどの研究タスクにも使用できます。
タスクの結果はテキストファイルに保存され、参照が容易です。
Auto-GPTはまだ実験段階であり、不正確な情報や間違いを生成する可能性があります。
Auto-GPTの使用にはGitとPythonのインストールが必要です。
Auto-GPTの使用にはAPIキーの取得と使用制限があります。
代替としてAgentGPTがありますが、こちらはインストール不要でウェブブラウザで動作し、基本的な理解を提供します。
次は要約結果から重要な情報を抽出します。先程の要約の時点ですでに重要な情報が抽出されているようで、ここでは箇条書きに整理している程度の処理となっています。
## 次のタスク
3. 重要な情報をピックアップする - **[ text-completion]**
## ✅ タスクの結果
Auto-GPTは、ChatGPT技術を使用して自己完結型のAIアシスタントを作成するプログラムです。
Auto-GPTは、ユーザーの指示なしで複雑なタスクを実行し、コードブロックの生成やソフトウェア開発プロジェクトの管理も可能です。
Auto-GPTは、iOSとAndroidの違いなどの研究タスクにも使用できます。
タスクの結果はテキストファイルに保存され、参照が容易です。
Auto-GPTはまだ実験段階であり、不正確な情報や間違いを生成する可能性があります。
Auto-GPTの使用にはGitとPythonのインストールが必要です。
Auto-GPTの使用にはAPIキーの取得と使用制限があります。
代替としてAgentGPTがありますが、こちらはインストール不要でウェブブラウザで動作し、基本的な理解を提供します。
最後は、1,2,3の内容をもとに最終的な調査記事に内容を仕上げるタスクです。最終成果物はAuto-GPTとAgentGPTについて紹介する記事となりました。
## 次のタスク
4. 最終的な調査記事を作成する - **[ text-completion]**
## ✅ タスクの結果
2023年3月頃から注目を集めている自律型AIエージェントに関する調査記事
最近、注目を集めている自律型AIエージェントについて調査しました。その中で、「Auto-GPT」というプログラムが特に注目されています。Auto-GPTは、ユーザーからの指示なしで複雑なタスクを実行することができる自己完結型のAIアシスタントです。このプログラムは、「ChatGPT」という技術を使用して開発されており、ユーザーの仕様に基づいてコードブロックを生成したり、ソフトウェア開発プロジェクトを管理したりすることができます。
Auto-GPTは、ウェブ開発者やポッドキャストの研究者など、さまざまな役割の人々によって使用されることが期待されています。このプログラムはまだ実験段階にあり、不正確な情報を生成したり、間違いをする可能性があることに注意が必要です。
Auto-GPTを使用するには、GitとPythonのインストールが必要です。また、OpenAIからAPIキーを取得する必要があります。ただし、Auto-GPTの使用には潜在的なコストがかかる可能性があり、APIキーには使用制限があります。
Auto-GPTの代替として、「AgentGPT」というプロジェクトも存在します。AgentGPTは、インストールを必要とせずにウェブブラウザで動作する類似のプロジェクトです。AgentGPTはまだ開発が進んでいないものの、自己完結型のAIエージェントについて基本的な理解を提供することができます。
以上が、2023年3月頃から注目を集めている自律型AIエージェントに関する調査結果です。Auto-GPTとAgentGPTは、それぞれ異なる特徴と利点を持っていますので、使用する際には適切な選択を行う必要があります。
最終出力として、全てのタスクが完了したあと実行したタスクリストが出力されます。
## タスクリスト
| ID | Status | Task | Tool | Dependency |
| :-: | :-: | - | :-: | :-: |
| 1 | ✅ | 自律型AIエージェントに関する調査記事を検索する | | |
| 2 | ✅ | 検索結果から関連する記事を要約する | | 1 |
| 3 | ✅ | 重要な情報をピックアップする | | 2 |
| 4 | ✅ | 最終的な調査記事を作成する | | 1, 2, 3 |
## 完了
All tasks completed!
以上、BabyDeerAGIを使ったデモ紹介でした。
BabyAGI以外にも様々な自律型AIエージェントが開発・公開されており、ここではそのうちいくつかのプロジェクトをご紹介します。
ゴールをタスク分解して自律的に処理を進める点においてはどのプロジェクトにおいても共通ですが、もちあわせている機能や特徴は様々です。
※ 以下でご説明する内容は当記事執筆時点での情報となります。
ここでご紹介する自律型AIエージェントは公開されてからまだ日が浅く、仕様変更やリファクタリングが盛んに行われているため今後内容が変わる可能性があります。
Auto-GPTは、ローカルPC上で動作する自律型AIエージェントです。
2023/3/30に公開されて以来非常に多くの注目を集めており、本記事執筆時点でのGithubスター数は140.0kとなっています。
Auto-GPTはLLMを使ったテキスト処理やGoogle検索に限らず、例えば
といった機能を備え、複雑なタスクに対応することができます。また、bing検索やSlack、Twitterなど様々なPlugin開発も行われており、更に多様なタスク処理が可能です。
特徴
AgentGPTはウェブUIを通して実行できるエージェントです。
ウェブUIが公開されており、ローカルPC上でのセットアップは不要でOpenAI APIキー無しでも動かせる(ただし処理回数制限あり)ためすぐに試すことが可能です。
画像生成機能があり、画像生成系のゴールを与えればウェブUI上で生成・閲覧できる点も特徴です。
公開されているウェブUIの無料アカウントの場合、一日に実行できるエージェント数は5と制限されていますが、ローカルPC上で構築した場合はエージェント数に制限はなく利用できます。
(ただしローカルPC上で構築した際はOpenAI APIキーは必須で、検索や画像生成を行う場合はそれに応じたAPIキーが必要です)
特徴
GodmodeはAuto-GPTとBabyAGIにインスパイアされたウェブプラットフォームで、Auto-GPT・BabyAGIを使って動作しています。
こちらはウェブUIのみ公開されており、AgentGPTと同様OpenAI APIキーを用意せずに試すことができます(APIキー未入力の場合は処理回数制限あり)
AgentGPTとは違い、ゴールからタスクリストを生成した際に、どのタスクを実行するかユーザ側で選択することができます。
また、タスク処理を行う際にエージェントの考えとその根拠を示た上でユーザに承認を求める点はAuto-GPTと同様で、必要に応じてユーザフィードバックを与えることも可能です。
実行の様子は、以下の開発者ツイートのデモ動画をご覧いただくとわかりやすいです。
特徴
SuperAGIは自律型AIエージェントをウェブUIを通して作成・実行・管理できるようにするためのオープンソースフレームワークです。
ローカルPC上で動作する開発・実行フレームワークで、環境構築の方法や用意するAPIキーなどの情報はAuto-GPTと同様です。
SuperAGIではGoogle検索をはじめ、メール送信やSlack連携、DALL-Eを用いた画像生成など様々なツールが用意されており、ゴール設定の際にユーザ自身で利用するツールを選択することが可能です。
また、複数エージェントの並列実行やエージェントメモリ機能、複数ベクトルデータベースの利用などタスク実行を効率的に行う機能が用意されています。
実行の様子は、以下の公式デモ動画をご覧いただくとわかりやすいです。
動画では以下をゴールとして設定し実行しています。
特徴
今回は自律型AIエージェントについて、いくつかご紹介させていただきました。
実際に本記事でご紹介したものや他のAIエージェントをgpt-3.5-turboを指定して利用してみましたが、いずれも利用までの準備や利用方法はとても簡単で、またOpenAI APIキーの料金もgpt-3.5-turboならば安いため、とても気軽に実験を繰り返すことができました。
まだ試したことがない方も、是非自律型AIエージェントを試してみてはいかがでしょうか。
あなたにオススメの記事
2023.12.01
生成AI(ジェネレーティブAI)とは?ChatGPTとの違いや仕組み・種類・活用事例
2023.09.21
DX(デジタルトランスフォーメーション)とは?今さら聞けない意味・定義を分かりやすく解説【2024年最新】
2023.11.24
【現役社員が解説】データサイエンティストとは?仕事内容やAI・DX時代に必要なスキル
2023.09.08
DX事例26選:6つの業界別に紹介~有名企業はどんなDXをやっている?~【2024年最新版】
2023.08.23
LLM(大規模言語モデル)とは?生成AIとの違いや活用事例・課題
2024.03.22
生成AIの評価指標・ベンチマークとそれらに関連する問題点や限界を解説