BabyAGIとは? 概要〜ChatGPTとの違い〜導入まで徹底解説!

今回の記事では、BabyAGIについて、概要やChatGPTとの違い、導入方法を解説していきます。
本記事は2023/04/27時点に執筆しハマりやすいとこは画像をキャプチャしてます。
ぜひ最後までご覧いただければと!

目次

そもそもBabyAGIってなに?

BabyAGIとは、人工知能を活用して特定の目標を達成するためにタスクを自動生成、実行、優先順位付けするプログラムです。
名前といい、赤ちゃんがモチーフの公式アイコンといい、なんとも可愛らしい印象を受けますが実はこいつ、超絶ハイスペックなんです!

AGI(汎用的な人工知能)ですから、BabyAGIは「目標」と「最初のタスク」を与えるとあとは一人でタスクをこなしていきます。

例として、ドラゴン桜のような設定をしてみました。

目標:東京大学に入りたい。
最初のタスク:TODOリストを作る

具体的には、BabyAGIは次のような手順でタスクを処理します。

BabyAGIのタスクを処理手順
  1. 入学プロセスに関する情報を収集し、出願要件や試験日程などについて調査します。
  2. 収集した情報をもとに、新しいタスク(例:推薦状の準備、志望理由書の執筆、試験対策など)を生成します。
  3. 生成されたタスクを優先度順に並べ替え、プログラムが効率的にタスクを処理できるようにします。
  4. タスクリストに基づいて、各タスクを順番に実行し、適切な結果を得ます。
  5. タスクが完了するたびに、新しいタスクが生成される可能性があります。これらのタスクは、タスクリストに追加され、優先度に応じて処理されます。

BabyAGIは、このようにして東京大学入学に関連するタスクを効率的に実行し、目標達成に向けた道筋を示すことができます。
ドラゴン桜のようにみなさんも、大きな夢や抱えきれない仕事の数々……たくさんお持ちなのではないでしょうか。
どうやって夢をカタチにするかわからない、仕事が終わらない、そんなことがあると思います。
でも、大丈夫。
BabyAGIと一緒なら達成できそうです。
具体的な導入方法は、記事中盤から!
実際に手元のパソコンでこのプログラムを動かしますので、私と一緒にやってみましょう。

ChatGPTとBabyAGIの違い

BabyAGIとChatGPTは、どちらも人工知能技術を活用したプログラムですが、その目的と機能に違いがあります。

BabyAGIは、特定の目標を達成するためにタスクを自動生成、実行、優先順位付けするプログラムです。
目標達成のプロセスを自動化し、効率化することを目的としています。
一方、ChatGPTは、自然言語処理技術を用いて、人間との対話を通じて情報提供や質問回答などを行うプログラムです。
分かりやすい違いは、以下の点です。

BabyAGIChatGPT
分類タスク駆動型自律エージェント会話AIエージェント
目的目標達成をサポートすること対話型の質問応答や情報提供すること
タスク生成・実行目標に基づいてタスクを生成し、それらを優先順に実行ユーザーからの質問や要求に応じて、即座に回答や情報提供を行う
タスク管理タスクリストを作成し、優先度に応じてタスクを処理タスク管理機能を持っていない

これらの違いから分かるように、BabyAGIは目標達成に焦点を当てたプログラムであり、ChatGPTは対話を通じた情報提供を主な目的としています。
どちらも使う目的に応じて適切に利用するべきですね!

BabyAGI実行までの手順

では早速、BabyAGIを実行するまでの準備に取り掛かりましょう!
手順は次のようになっています。

BabyAGIの実行手順
  1. Pythonのインストール
  2. VScodeのインストール
  3. BabyAGIプログラムのインストール
  4. OpenAI APIキーの取得
  5. Pinecone APIキーの取得
  6. BabyAGIへAPIキーなどの設定の反映

Pythonのインストール

1.まずはPythonのダウンロードサイトを開く。

Macの方はこちら


Windowsの方はこちら

2. 赤枠内(Latest Python 3 Release – Python 3.11.3)をクリック。

3. 移動したページをスクロールして、Filesと表示されるところまでいく。
ご自身のOSにあったファイルをクリックしてダウンロードする。
私の場合は、Macなのでこちらをクリック。

4.「python-3.11.3-macos11.pkg」 というファイルがダウンロードされるので、クリックするとこんな画面に。
書いている内容を読んでPythonをインストール!

VScodeのインストール

1.こちらから自分のOSに合ったバージョンをダウンロードしてください。
(すでにエディタをインストールしている場合は不要ですが、正直、VScodeしか勝たんです!GitHub Copilotをかけ合わせると便利すぎるので推奨してます!笑)

2.ダウンロードしたZipファイルを開くとインストールされます。

BabyAGIプログラムのインストール

1.Terminalを開き、次のコマンドを実行。BabyAGIのプログラムフォルダをダウンロードします。
今回ダウンロードする場所はDesktop ディレクトリです。

cd Desktop
git clone https://github.com/yoheinakajima/babyagi.git

2.ダウンロードしたフォルダに移動します

cd babyagi

3. .env.example ファイルをコピーして、 .env という名前で保存。

cp .env.example .env

OpenAI APIキーの取得

1.OpenAIアカウントをお持ちでない方は、以下の記事参考にしてください!

株式会社SaaSis
遂に公開されたChatGPT APIとは? 利用するまでの流れ【ハンズオンで徹底解説】 | 株式会社SaaSis 今回はついに公開されたChatGPT APIの紹介します。 ChatGPT APIとは OpenAIは3月1日に、同社のAIチャットボットサービスの「ChatGPT」と音声認識サービスの「Whisper」のAP...

2.アカウント作成後、以下のページから「Create new secret key」を押してAPIキーを作成できます。
APIキーは後ほど使うので、大切に保存してください。

https://platform.openai.com/account/api-keys

※注意※
ここで忘れてはいけないのは、API利用料の支払い設定をすること!
私はこれをして、過去に別のプログラムでエラーを出てしまいました。
Billing OverviewPayment methods をクリックして、クレジットカード情報が登録されているか確認しましょう!

Pinecone APIキーの取得

ChatGPT APIと違い無料のPinecone APIを取得します。

1. 初めての方は以下のリンクから「Sign Up Free 」を押してしてください。
私は、「Continue with Google」からアカウントを作成しました!

Pinecone
Vector Database for Vector Search | Pinecone Search through billions of items for similar matches to any object, in milliseconds. It’s the next generation of search, an API call away.

2.アカウント作成するとこんな画面になりますので、
左のメニューから「API Keys」を選んで、「CREATE API KEY」をクリック。
「babyagi」など分かりやすく命名して「CREATE KEY 」でAPIキーを作成。
あとで使うのでどこかにメモしておいてください!

Environment とValue をメモして保存。

BabyAGIへAPIキーなどの設定の反映

1.BabyAGIへAPIキーなどの設定の反映

2.先ほど取得したAPIキーの貼り付け。
まずは、OPENAI_API_KEYOPENAI_API_MODEL から。

3.次は、PINECONE_API_KEY , PINECONE_ENVIRONMENTを入力。

ついに実行

準備が終わったので、次の順番でタスクの実行までやってみましょう!

タスクの実行手順
  1. BabyAGIにタスクの設定
  2. BabyAGIの実行

BabyAGIにタスクを設定する

先ほどの設定変更していた.env ファイルにタスクを書き込みます。
今回は次のようにします。

OBJECTIVE=Enter the University of Tokyo
INITIAL_TASK = Develop a task list

BabyAGIの起動

Terminalで、babyagi.pyを実行します。
適宜、cd コマンドで、ディレクトリを移動してください。

#例
cd Desktop/babyagi
python3 babyagi.py

動いた!!
ここで、Terminalにさまざま出力されているので、それぞれ説明します。

TASK LIST:
現在のタスクリストを表示するための出力です。
タスクリストには、実行されるべきタスクが格納されており、タスク名が表示されます。
この出力により、プログラムがどのタスクに取り組むべきかをユーザーが確認できます。

NEXT TASK:
タスクリストから選択された次のタスクを表示するための出力です。
この出力により、プログラムが現在どのタスクに取り組んでいるかをユーザーが把握できます。

TASK RESULT:
これは、実行されたタスクの結果を表示するための出力です。
この出力により、プログラムがタスクをどのように実行し、どのような結果が得られたかをユーザーが確認できます。

※注意※
プログラムは基本的に止めない限り、動き続けます。
API利用料金がものすごいことになってしまうので、気をつけましょう!

最後に

今回は、BabyAGIの実行環境を整えるところから実行するまでのハンズオンしました。
2023/04/27 時点での最新情報ですので、ご参考まで。

次回は、BabyAGIと一緒に記事を書いていこうと思っています。
アップ予定のタイトルは、「LLMと人間の脳の違いから考えるAI時代の生存戦略」です。
お楽しみに!

また、SaaSisでは、全体最適の視点でシステム提案から検証、導入、連携までワンストップで支援いたします。
「“ChatGPT × 社内データ“のAIチャットボットを作りたい」
「ChatGPTを使って、社内業務をどのように効率化できるか知りたい」
などChatGPT関連のご相談も承っております。
お気軽にご連絡くださいっ!

この記事を描いた人

Leon Kobayashi

必ずフォローすべきAIエバンジェリスト(自称)

=> 元東証一部上場ITコンサル

(拙者、早口オタク過ぎて性に合わず退社)<-イマココ

【好きなもの】官能小説・リコリコ・しゃぶ葉
宜しくおねがいします。

この記事を描いた人

Leon Kobayashi

自称: 必ずフォローすべきAIエバンジェリスト

=>元東証一部上場ITコンサル

(拙者、早口オタク過ぎて性に合わず退社)<-イマココ

【好きなもの】

官能小説・リコリコ・しゃぶ葉
宜しくおねがいします。

この記事を描いた人

Leon Kobayashi

必ずフォローすべきAIエバンジェリスト(自称)

=>元東証一部上場ITコンサル

(拙者、早口オタク過ぎて性に合わず退社)<-イマココ

【好きなもの】

官能小説・リコリコ・しゃぶ葉
宜しくおねがいします。

Recruit

現在、生成系AI事業急成長のため

積極的に人材採用を行なっています

ChatGPT講演会承っております!

  • URLをコピーしました!
目次