自律型AIのBabyAGIの始め方と使い方、初心者にも分かり易く解説!

人工知能
この記事は約15分で読めます。

はじめに

 皆さんは、BabyAGI を知っていますか?

 AIチャットボット(ChatGPTやMicrosoft Bing AIチャットボット)に質問するとき、どんな言葉で聞くかで答えが変わってしまうために、最適な回答を得るための質問の仕方に悩むことが多くあります。

 BabyAGI は 前に紹介した「AutoGPT」と同様に、上述の悩みを解消する最新の自律型AIツールで、プロンプトを作成せずとも自動的に行うべきことを提案してくれます。

 ということで、今回は、この BabyAGI についてもう少し深堀して紹介しようと思います。

 この記事を読むと次の疑問について知ることができます。

 なお、OS、機種などで説明の仕方が変わってくることがありますので、私の使用しているパソコン環境について載せておきます。

パソコンOS : Windows11 Pro
Windowsバージョン : 22H2
Pythonプログラムのバージョン : 3.11.3
VS-Code エディターのバージョン : 1.77.3
BabyAGIのバージョン : 0.1.0

BabyAGI とは?

 BabyAGIとは、AIを使って目標に向かってタスクを自動で作り、優先順位をつけて自動で実行するプログラムです。

 OpenAIとベクトルデータベース(ここでは、Pinecone)を使って、タスクの結果やコンテキストはデータベースに保存され、次のタスクの作成に利用します。

 BabyAGIは、オリジナルのTask-Driven Autonomous Agentの簡略化版で、2023年3月にTwitterで公開されました。

 BabyAGIの開発者は、アメリカ合衆国カリフォルニア州サンフランシスコに住んでいる「Yohei Nakajima」と言う日本人で、BabyAGIのバージョンは、0.1.0です。

 BabyAGIとAutoGPTはどちらも自律型AIですが、BabyAGIはGoogle検索などが行えず、ChaGPTが学習したデータ内で情報を整理し、実行していきます。

 したがって、AutoGPTで必要となったGoogle APIキーなどは必要ではありません。

BabyAGI の始め方及び使い方

BabyAGI を利用するまで

 BabyAGI を利用するには次のステップで進めていきます。

  1. Python 3.11.3 のダウンロードとインストール
  2. VScode(エディタ)のダウンロードとインストール
  3. AutoGPTのインストール
  4. OpenAI APIキーの取得
  5. Pinecone APIキーや環境変数の取得
  6. BabyAGIへAPIキーなどの設定

Python 3.11.3 のダウンロードとインストール

 Pythonをすでにインストールしている方はこの部分は読み飛ばしてください。

 Pythonのページに移動し、「Download」⇒「Pythin 3.11.3」順にクリック

 すると、左下に「この種類のファイルはコンピュータに損害を与える可能性があります。…」と聞かれるので。「保存」をクリック。(この部分の画像は省略)

 パソコンのダウンロードフォルダーにPythonのセットアッププログラム「python-3.11.3-amd64.exe」がダウンロードされます。

 このファイルをダブルクリックして起動したら、最初のインストールのウインドウの下にある「Add python.exe to PATH」にチェックを入れて、「Install Now」をクリックして、インストールを始めると、「このアプリがデバイスに変更を加えることを許可しますか?」と聞いてくるので「はい」をクリックして、画面の指示にしたがいインストールを終えます。(この部分の画像は省略)

VScode(エディタ)のダウンロードとインストール

 VScodeをすでにインストールしている方はこの部分は読み飛ばしてください。

 VScodeのページに移動し、「Download for Windows Stable Build」をクリック

 すると、左下に「この種類のファイルはコンピュータに損害を与える可能性があります。…」と聞かれるので。「保存」をクリック。(この部分の画像は省略)

 パソコンのダウンロードフォルダーにVScodeのセットアッププログラム「VSCodeUserSetup-x64-1.77.3.exe」がダウンロードされます

 このファイルをダブルクリックして起動したら、「使用許諾契約書の同意画面」でに「同意する」にチェックを入れ、「次へ(N)>」クリック、「インストール先の指定」画面、「スタートメニューホルダーの指定」画面、「追加タスクの選択」画面と続き、全てで「次へ(N)>」クリック、最後の「インストール準備完了」画面で「インストール」をクリックし、画面の指示にしたがいインストールを終えます。(この部分の画像は省略)

BabyAGI のインストール

 BabyAGI をインストールするために、Git for Windowsをまずインストールしてください。

 Git for Windowsのインストール方法は、次の記事の「Gitのインストール」部分を参照。

 コマンドプロンプトを起動し(Windowsスタート⇒すべてのアプリ⇒Windowsツール⇒コマンドプロンプト順にクリック)、次のコマンドを実行します。なお、VScodeのターミナルから下記のコマンドを実行してもOKです。

git clone https://github.com/yoheinakajima/babyagi.git
cd babyagi
pip install -r requirements.txt

 上述でエラーが出て、上手くインストールができない場合は、「Microsoft C++ Build Tools」をダウンロードし、起動して「C++によるデスクトップ開発」にチェックを入れ「インストール」してください。(この部分の画像などは省略)

 再度、babyagiのディレクトリーに移り、「pip install -r requirements.txt」を実行します。

OpenAI APIキー及びPinecone APIキー、環境変数の取得

 OpenAI APIキー及びPinecone APIキー、環境変数の取得については、前に紹介したAutoGPTの「OpenAI APIキーの取得」及び「Pinecone APIキーの取得」の項目の部分を参照してください。

 ここでは、AutoGPTで取得した同じOpenAI APIキー及びPinecone APIキー、環境変数は新たに作成したAPIキーを利用しました。

BabyAGIへAPIキーなどの設定

 VScodeを開き、「EXPLORER」から先程インストールした「babyagi」フォルダー内を開き、その中にある「.env.template」⇒「.env」に名前変更をしてください。

 2023年4月23日現時点での、「.env」ファイル内の次の行番号にこれまで取得したAPIキーを設定してください。

  1. 17行目(赤文字の部分をあなたが取得したAPIキーを記入)
    OPENAI_API_KEY=あなたが取得したOpenAI APIキー
  2. 32行目(「# 」を削除し、赤文字の部分をあなたが取得したAPIキーを記入)
    # PINECONE_API_KEY= PINECONE_API_KEY=あなたが取得したPinecone APIキー
  3. 33行目(「# 」を削除し、赤文字の部分をあなたが取得した環境変数を記入)
    # PINECONE_ENVIRONMENT= ⇒ PINECONE_ENVIRONMENT=あなたが取得したPineconeの環境変数
  4. 41行目(赤文字の部分をあなたがBabyAGIにしてもらいたいことを記入、ここでは、例えばYouTubeで1万人以上のチャンネル登録者を獲得するための戦略をまとめる。)
    OBJECTIVE=Solve world hungerSummarize strategies for getting over 10,000 subscribers on YouTube

BabyAGI を使ってみたよ!

 BabyAGIをVScodeから起動して、動かしてみたいと思います。

 VScodeを起動し、下にあるターミナルウインドウの右にある「V 」をクリックすると表示されるメニュで「PowerShell」、「Command Promt」のどちらかを選択(ここでは、「Command Promptを選択」)します。

 それから、Promptに「python babyagi.py」と打ち込んでリターンをすれば、BabyAGIが起動します。

 このプログラムは、強制的に停止しないと、無限に動作し続ける可能性があるので(OpenAI APIキーの利用は無料ではない)、適当なところでプログラムを停止してください。VScodeのターミナル上であれば、「Ctrl + C」を同時に押せばプログラムは停止します。

 しばらく動かして、最後の方のタスクリストなどの結果の日本語訳を以下に示します。

************* タスクの優先順位を決めるエージェント対応。 ************
1. YouTubeの解析ツールを分析し、どのタイプのコンテンツが視聴者にとって最もパフォーマンスが高いかを判断する。
2. 動画タイトルの説明文やサムネイルのABテストを実施し、クリック率や検索性を最適化する。
3. 動画コンテンツを正確に表現し、視聴者のクリックを誘うアイキャッチサムネイルを作成する計画を立てる
4. キーワード調査を行い、動画のタイトルや説明文を検索しやすいように最適化する。
5. 関連するプラットフォームでの認知度やリーチを高めるためのソーシャルメディアプロモーションプランを作成する。
6. チャンネルを収益化し、認知度を高めるために、潜在的なブランドスポンサーやアフィリエイトを特定し、連絡を取る。
7. 関連するニッチの非競合クリエイターと協力し、新しいオーディエンスにリーチし、チャンネルに新鮮なコンテンツを提供する。
8. 視聴者にチャンネル登録やエンゲージメントを促すために、景品やコンテストを開催する。
9. 視聴者に動画の共有やコメントを促し、コメントやメッセージにタイムリーに対応するためのコミュニティ・エンゲージメント・プランを策定する。
10. コメントやメッセージを通じて視聴者と一貫して関わり、忠実なコミュニティを構築するシステムを開発する。
11. メールマーケティングを活用し、新しい動画の宣伝やYouTube以外での購読者との関わりを深める。
12. 関連するイベントやカンファレンスに参加し、他のクリエイターや業界関係者とのネットワークを構築し、チャンネルを宣伝する。
13. YouTubeの分析ツールを調査・分析し、エンゲージメントを最大化するために新しいコンテンツを投稿するのに最適な時間帯と曜日を決定する。
14. 関連するニッチで成功しているYouTubeチャンネルのリサーチを行い、潜在的なコラボレーション機会を特定し、それらのクリエイターにコンタクトを取り、パートナーシップの可能性について話し合う。
15. 一貫したビジュアルスタイルと声のトーンを含む、チャンネル独自のブランドアイデンティティを作成し、促進するための計画を策定する。
16. いいね!」「コメント」「シェア」などの視聴者のエンゲージメント指標を追跡・分析し、傾向を把握し、それに応じてコンテンツ戦略を調整するシステムを構築する。
17. チャンネルに関連する商品の作成とプロモーションを行い、認知度を高め、ブランドを収益化する計画を立てる
18. ライブQAセッションの開催、コメントやメッセージへのタイムリーな対応など、効果的なコミュニティエンゲージメント戦略に関するリサーチを実施し、忠実な視聴者を構築する。
19. 視聴者のチャンネル登録やエンゲージメントを高めるために、舞台裏の映像や新映像への早期アクセスなど、チャンネル登録者限定のコンテンツを作成・促進する計画を策定する。
20. InstagramやTwitterなどの関連プラットフォームにおいて、認知度やリーチを高めるための効果的なソーシャルメディアプロモーション戦略について調査を行う。

*****task list*****

- YouTubeの解析ツールで、どのタイプのコンテンツが視聴者に最も適しているかを分析する。
- 動画のタイトル説明やサムネイルのABテストを実施し、クリック率や検索性の最適化を図る
- 動画コンテンツを正確に表現し、視聴者のクリックを誘うアイキャッチサムネイルを作成する計画を立てる
- キーワード調査を行い、動画のタイトルや説明文を検索しやすいように最適化する。
- 関連するプラットフォームでの認知度やリーチを高めるためのソーシャルメディアプロモーションプランを作成します。
- チャンネルを収益化し、認知度を高めるために、潜在的なブランドスポンサーやアフィリエイトを特定し、アプローチする。
- 関連するニッチの非競合クリエイターと協力し、新しいオーディエンスにリーチし、チャンネルに新鮮なコンテンツを提供する。
- 視聴者にチャンネル登録やエンゲージメントを促すために、プレゼントやコンテストを開催する。
- 視聴者に動画の共有やコメントを促し、コメントやメッセージにタイムリーに対応するためのコミュニティ・エンゲージメント・プランを開発する。
- コメントやメッセージを通じて視聴者と一貫して関わり、忠実なコミュニティを構築するシステムを開発する。
- メールマーケティングを活用して、新しい動画を宣伝し、YouTube以外の購読者とエンゲージする。
- 関連イベントやカンファレンスに参加し、他のクリエイターや業界関係者とのネットワークを構築し、チャンネルのプロモーションを行う。
- YouTubeの分析ツールを調査・分析し、エンゲージメントを最大化するために新しいコンテンツを投稿するのに最適な時間帯と曜日を決定する。
- 関連するニッチで成功しているYouTubeチャンネルのリサーチを行い、潜在的なコラボレーション機会を特定し、それらのクリエイターとパートナーシップの可能性について議論する。
- 一貫したビジュアルスタイルと声のトーンを含む、チャンネル独自のブランドアイデンティティを作成し、促進するための計画を策定する。
- いいね!」「コメント」「シェア」などの視聴者エンゲージメント指標を追跡・分析し、トレンドを把握し、それに応じてコンテンツ戦略を調整するシステムを開発する。
- チャンネルに関連する商品の制作とプロモーションを行い、認知度を高め、ブランドを収益化する計画を立てる
- ライブQAセッションの開催、コメントやメッセージへのタイムリーな対応など、効果的なコミュニティエンゲージメント戦略に関する調査を行い、忠実な視聴者を構築する。
- 視聴者のチャンネル登録とエンゲージメントを高めるため、舞台裏の映像や新映像への早期アクセスなど、チャンネル登録者限定のコンテンツを作成・促進する計画を策定する。
- InstagramやTwitterなどの関連プラットフォームにおいて、認知度やリーチを高めるための効果的なソーシャルメディアプロモーション戦略に関する調査を実施する。

*****next task*****

YouTubeの解析ツールで、どのタイプのコンテンツが視聴者に最も適しているかを分析する。

*****タスクの結果*****
ニッチで成功しているYouTubeチャンネルを調査し、コンテンツとエンゲージメント戦略のベストプラクティスを特定したら、次のステップとして、YouTubeの分析ツールを分析して、どのタイプのコンテンツが視聴者にとって最も効果的かを判断することです。YouTube AnalyticsやGoogle Analyticsなどのツールを使って、視聴回数、視聴時間、エンゲージメント、デモグラフィックなどの指標を追跡し、視聴者の好みや行動を把握することができます。このデータに基づいて、コンテンツ戦略を調整し、最も人気があり魅力的な動画の種類に焦点を当てたり、タイトル、説明文、タグを最適化して発見性を高めたりすることができます。さらに、視聴者維持率データを使って、視聴者が離れていく部分を特定し、動画全体を通して視聴者の興味を引きつけるように改善することができます。分析データを継続的に分析し、データに基づいた意思決定を行うことで、YouTubeの登録者数1万人以上という目標達成の可能性を高めることができるのです。

 以上のような一連のタスクを実行していきます。これがずーと続くので気を付けましょう。

BabyAGI の評判

 BabyAGI につてい、Twitterでのツイートを調べてみました。

 検索ワードは「BabyAGI」で検索して、「最新」から2つほど載せます。

 書き込みは、ほとんどが外国人で、内容も「BabyAGI」を活用したアプリケーションの話が多いですね!それだけ、BabyAGIが注目を集めているということでしょうか?

BabyAGI を使った感想

 BabyAGIは、目的のPromptと初期のタスクを入れるのみで、あとは勝手に行うべきタスクリストを提案し、それをずーと目的の回答が得られるまで動作し続けます。

 AutoGPTとの違いは、BabyAGIはChatGPTの学習内容にしたがて目的をを達成するためのタスクリストを作り、そのリストを1つづつぶしていって、最終的に答えを見つけ出すというツール(場合によっては永遠に動作続ける可能性がある)ですが、AutoGPTは、目的を達成するための検索にGoogle検索を行い、途中で人間の判断で容易に動作を止めることができます。

 上述のことから、BabyAGIについても、強制的に止めるのではなく、ある程度進行した際にプログラム上から人間の判断でプログラムを続けるか続けないかの判断ができるようになるとよいと感じました。

 今後もAutoGPT、BabyAGIなどの関連技術の動向に注目していきたいと思います。

おわりに

 皆さんいかがだったでしょうか。

 BabyAGI とは?、BabyAGI の始め方及び使い方、BabyAGI を利用するまで、Python 3.11.3 のダウンロードとインストール、VScode(エディタ)のダウンロードとインストール、BabyAGI のインストール、OpenAI APIキー及びPinecone APIキー、環境変数の取得、BabyAGIへAPIキーなどの設定、BabyAGI を使ってみたよ!、BabyAGI の評判、BabyAGI を使った感想などについて解説してきました。

 この記事が少しでも皆様のお役に立てればこれほど嬉しいことはありません。

以上です。

 

コメント

タイトルとURLをコピーしました