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

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

目次

Camelとは何か?

Camelは、2つのAI同士を会話させてタスクを完了させるAIエージェント。
AutoGPTと共通するところは、こちらの2つ。

  1. AIが目的達成のためにタスクの実行手順を考える。
  2. フィードバックをもとに手順を変更し実行する。

ただし、フィードバックしてくれる相手が変わります。

  • AutoGPT:ユーザー(人間)
  • Camel:AI

もし、プログラムに詳しくないユーザが、プログラム自動作成タスクに関わるとどうなるでしょうか?
間違った結果が出たり、余計な手間がかかってしまうことになります。
一方でCamelの場合は、AIがフィードバックします。
「フィードバックする人間の知識に依存せずタスクを実行できる」のは大きなメリットですね。

Camel 実行までの手順

導入する方法は、2種類あります。

  1. Google Colab
  2. ローカルでプログラムを実行する

どちらも簡単なので、安心して導入してみてください。
まずは、どちらの手法でも使うOpenAIのAPIキーを準備しましょう。

OpenAI APIキーの取得

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

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

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

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

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

APIキーを準備できたので、それぞれの手法で導入していきましょう。
まずはGoogle Colabから!

Google Colabで実行する手順

Google Colabでの導入手順
  1. GitHubにアクセス
  2. Google Colabでファイル開く
  3. 開いたファイルをご自身のGoogle Driveにコピー
  4. APIキーや実行したいタスクなどの変更
  5. 実行

GitHubにアクセス

こちら↓のGitHubにアクセス
https://github.com/lightaime/camel

Google Colabでファイル開く

ちょっと下にスクロールして「Open in Colab」をクリック。

開いたファイルをご自身のGoogle Driveにコピー

「ファイル」→「ドライブにコピーを保存」で、保存。

APIキーや実行したいタスクなどの変更

「camel_demo.ipynb のコピー」というファイルができていたらOKです。
OPENAI_API_KEYやタスクプロンプトは、適宜変更しましょう。

実行

上から順にプログラムが書かれているセルにカーソルをあわせて、再生ボタンをクリックしプログラムの実行。

このように青文字と緑文字で、会話が始まるとOKです。

※注意※
初めて④のセルを実行したとき、次のようなエラーが出ました。
同様のエラーが出る場合、私が修正したプログラムを使ってみてください。

修正したプログラム↓

from camel.agents import RolePlaying
 task_prompt = "Design a custom game using pygame"
print(Fore.YELLOW + f"Original task prompt:\n{task_prompt}\n")
role_play_session = RolePlaying("Computer Programmer", "Gamer", task_prompt)
print(Fore.CYAN + f"Specified task prompt:\n{role_play_session.task_prompt}\n")


chat_turn_limit, n = 10, 0
assistant_msg, _ = role_play_session.init_chat()
# エラー処理追加し変更
while n < chat_turn_limit:
   n += 1
   (assistant_msg, _, _), (user_msg, _, _) = role_play_session.step(assistant_msg)
   if user_msg is not None:
       print_text_animated(Fore.BLUE + f"AI User:\n\n{user_msg.content}\n\n")
       print_text_animated(Fore.GREEN + f"AI Assistant:\n\n{assistant_msg.content}\n\n")
       if "<CAMEL_TASK_DONE>" in user_msg.content:
           break
   else:
       print("user_msg is None, skipping this iteration.")
# プログラムが修正した旨を明示
print("プログラムが終了しました。")

以上で、Google Colabでの導入から実行手順までの解説が終了です!
次は、ご自身のパソコンで実行する方法にいってみましょう!
(もし、Google Colabだけで良ければ飛ばしてもらって構いません!)

ローカルで実行する手順

Google Colabでの導入手順
  1. Pythonのインストール
  2. VScode のインストール
  3. Camelプログラムのインストール
  4. 必要なモジュールやプログラムの準備
  5. 実行

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ファイルを開くとインストールされます。

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

1.Terminalを開き、次のコマンドを実行。Camelのプログラムフォルダをダウンロードします。

git clone https://github.com/lightaime/camel 

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

cd camel

3. 必要なモジュールをインストール

pip3 install -r requirements.txt

4. touch コマンドで、プログラムファイル(camel.py)を作成。

touch camel.py

5. VS code で camel.py ファイルを開き、以下のコードを貼り付ける。

#貼り付けるコード
import os
import openai

openai.api_key = "YourAPIKEY"

import time
from colorama import Fore
def print_text_animated(text):
   for char in text:
       print(char, end="", flush=True)
       time.sleep(0.02)

from camel.agents import RolePlaying
task_prompt = "Design a tetris game using pygame"
print(Fore.YELLOW + f"Original task prompt:\n{task_prompt}\n")
role_play_session = RolePlaying("Computer Programmer", "Gamer", task_prompt)
print(Fore.CYAN + f"Specified task prompt:\n{role_play_session.task_prompt}\n")

chat_turn_limit, n = 10, 0
assistant_msg, _ = role_play_session.init_chat()

# エラー処理追加し変更
while n < chat_turn_limit:
   n += 1
   (assistant_msg, _, _), (user_msg, _, _) = role_play_session.step(assistant_msg)
   if user_msg is not None:
       print_text_animated(Fore.BLUE + f"AI User:\n\n{user_msg.content}\n\n")
       print_text_animated(Fore.GREEN + f"AI Assistant:\n\n{assistant_msg.content}\n\n")
       if "<CAMEL_TASK_DONE>" in user_msg.content:
           break
   else:
       print("user_msg is None, skipping this iteration.")
# プログラムが修正した旨を明示
print("プログラムが終了しました。")

実行

こちらのコマンドでプログラムを実行します

python3 camel.py

以下のように出力されたらOKです。

最後に

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

次回は、Camel を実行してみた結果や所感について記事にしたいと思います!
お楽しみに!

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

この記事を描いた人

Leon Kobayashi

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

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

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

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

この記事を描いた人

Leon Kobayashi

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

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

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

【好きなもの】

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

この記事を描いた人

Leon Kobayashi

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

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

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

【好きなもの】

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

Recruit

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

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

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

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