🛺
AutoGen! 複数のAgentAIを楽に作れる!会話が大切
前書き
- 複数のエージェントのシステムの実装に興味があったところにAutoGenの勉強会があり、参加した。
- その時はピンと来なかったが、後でMicrosoftが作ってるし、注目と思い、論文を読みました。
- いろんなweb記事の例やTutorialや勉強会等で動かしました。プログラム作成、実行するtoolも充実してることに気づけたのも良かった。
話すこと
- 複数のAgentのシステム作成を簡単にするAutoGenの解説
- 論文読んで、自分が理解した内容です。違うとかありましたらご指摘願います。
読者対象
- ChatDevやAIScientistを読んで、そんなシステムを作りたい人。
- 複数のAgentのシステムをLangChianやLnagGraphで作ってるけど他のtoolも探している人。
1. どんなもの?
- 論文構成は、概要、始めに、フレームワーク(会話Agent、会話プログラム)、アプリ例、議論
- 複数のAgentのシステム作成Open-sourceのフレームワーク
- 図の左のように エージェントはカスタマイズが可能で、複数エージェントで会話し さらに会話のパターンも柔軟である
- 図の左はタスクを解決するために エージェントが会話してるところ。
- 以下の6つが例として記載。
- 数学の問題の解決
- RAGでのコード生成・質問回答
- 意思決定
- 複数エージェントによるコーディング
- グループチャットでの動的タスク解決
- チェスの対局
2. 先行研究と比べてどこがすごいの?
- ChatDevやAIScientistは、特定の用途に比べて、汎用的にシステムが作れる。
- MicroSoftが作っているし、エコシステムが充実、さらに成長しそう。
- LangGraphや他のツールとの使い分けは気になる。
- 会話重視、モジュール化、いろんな会話型を用意
3. 技術や手法の"キモ"はどこにある?
- 複数エージェントの協業する上で、どのような個別のエージェントのデザインが、能力
、カスタマイズ性、再利用性、効率性でいいかを考えた。 - また、幅広いエージェントの会話パターンに対応する良いインターフェースを考えて以下の実装が生まれた。
- ConversableAgentは会話できるエージェント、抽象クラスのAgentを継承、サブクラス化できる
- 図は上段:AssistantAgent、UserProxyAgent、GroupChatManagerがサブクラスとして用意されている。中断:プログラム例、下段:実行時の会話例
- 統一的な会話インターフェースを持ち、メッセージの送受信、応答の生成、カスタム返信関数の登録ができる。
- 自然言語制御やPythonコード制御で会話の流れを柔軟に変えられる。
4. どうやって有効だと検証した?
- (a): 数学問題解決タスク,(b): Q&Aタスク(RAG) ,(c):ALFWorld(テキスト理解?),(d): コーディングタスクで、強い結果、複数エージェント化の良さを確認できる。
5. 議論はあるか?
- コミュニケーションの仕方を試す場としてもいいなと思った。
- 例えば最近みたyutubeでbuddicaの中野さんは会議では報連相の相談だけでいいと言っていた。それを全員守る場合になにが起きるか?とか社会的にも今の一般常識から外れた理想のものを生むためのtoolにもなる?
6. 次に読むべき論文はあるか?
-A Survey on Large Language Model based Autonomous Agents これもそのうち記事書きます。
-ALFWorld: Aligning Text and Embodied Environments for Interactive Learning
論文情報・参考資料・次に読む?記事
- 論文:AutoGen: Enabling Next-Gen LLM Applications
via Multi-Agent Conversations - Tutorialもあるサイト:AutoGen
- AI Agent の個性に注目!MBTIなどの個性に注目して最高チーム作り!
- AI Scientist!
- ChatDev: Agentsが語りあってソフト作るよ!
あとがき
記事よかったら、いいね♡ 押してね!フォローも嬉しい!
Discussion