🌲

AutoGen Studio0.4.0系を動かしおみた

に公開

はじめに

AutoGenずは

https://microsoft.github.io/autogen/0.2/
AutoGenは、倧芏暡蚀語モデルLLMを掻甚しお耇数のAI゚ヌゞェントを連携させるオヌプン゜ヌスのフレヌムワヌクです。
これにより、むベント駆動型、分散型、スケヌラブルで回埩力のある゚ヌゞェント アプリケヌションの䜜成が簡玠化されたす。
AI ゚ヌゞェントが連携しお自埋的に、たたは人間の監芖䞋でタスクを実行するシステムを迅速に構築できたす。

AutoGen Stuio

https://microsoft.github.io/autogen/dev/user-guide/autogenstudio-user-guide/index.html

AutoGen Studioは、AutoGenをGUI䞊で利甚できAI゚ヌゞェントを玠早くプロトタむピングするためのロヌコヌドむンタヌフェヌスです。
AI゚ヌゞェントやマルチ゚ヌゞェントなどをロヌコヌドで構築しお実行/怜蚌が可胜ずなりたす。

実践

今回は安定版の0.2系ではなく開発版の0.4系を動かしおみたした。

0.2系ず0.4系の違いに぀いお

(10/02/24) AutoGen 0.4 is a from-the-ground-up rewrite of AutoGen. Learn more about the history, goals and future at this blog post. We’re excited to work with the community to gather feedback, refine, and improve the project before we officially release 0.4. This is a big change, so AutoGen 0.2 is still available, maintained, and developed in the 0.2 branch.

公匏からもこのようなアナりンスがありたす。
盎蚳するず以䞋のようになりたす。

AutoGen 0.4 は AutoGen を根本から曞き盎したものです。歎史、目暙、将来に぀いお詳しくは、このブログ投皿をご芧ください。 0.4 を正匏にリリヌスする前に、コミュニティず協力しおフィヌドバックを収集し、プロゞェクトを改良し、改善できるこずを楜しみにしおいたす。これは倧きな倉曎であるため、AutoGen 0.2 は匕き続き 0.2 ブランチで利甚、保守、開発されたす。

https://github.com/microsoft/autogen

詳现に぀いおはgithubにお動向を远うこずができたす。

環境敎備

今回はdockerを䜿っおautogenstudioの環境を䜜るこずにしたした。

https://microsoft.github.io/autogen/dev/user-guide/autogenstudio-user-guide/installation.html
基本的にはこちらの公匏が甚意しおいるペヌゞを参考に進めおいきたす。

pythonの仮想環境を甚意し、
pipなどで autogenstudio==0.4.0.dev45 をむンストヌルするだけで環境構築完了です。

今回は執筆時点で最新の0.4ç³»(開発䞭のバヌゞョン)をむンストヌルしたした。
最新のリリヌスバヌゞョンに぀いおはこちらのURLにおご確認ください
https://pypi.org/project/autogenstudio/#history

起動

helpコマンドで色々ずコマンドの詳现を確認できたす。
コマンドを実行する際に DeprecationWarning が出たすがこれは開発䞭のバヌゞョンを利甚しおいるためだず思っお気にせずに進めたす。

$ autogenstudio ui --help
 Usage: autogenstudio ui [OPTIONS]

 Run the AutoGen Studio UI.
 Args:     host (str, optional): Host to run the UI on. Defaults to 127.0.0.1 (localhost).     port (int, optional): Port to run the UI on. Defaults to 8081.     workers (int, optional): Number of workers to
 run the UI with. Defaults to 1.     reload (bool, optional): Whether to reload the UI on code changes. Defaults to False.     docs (bool, optional): Whether to generate API docs. Defaults to False.
 appdir (str, optional): Path to the AutoGen Studio app directory. Defaults to None.     database-uri (str, optional): Database URI to connect to. Defaults to None.

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --host                                         TEXT     [default: 127.0.0.1]                                                                                                                                 │
│ --port                                         INTEGER  [default: 8081]                                                                                                                                      │
│ --workers                                      INTEGER  [default: 1]                                                                                                                                         │
│ --reload                                                                                                                                                                                                     │
│ --docs                --no-docs                         [default: docs]                                                                                                                                      │
│ --appdir                                       TEXT     [default: None]                                                                                                                                      │
│ --database-uri                                 TEXT     [default: None]                                                                                                                                      │
│ --upgrade-database    --no-upgrade-database             [default: no-upgrade-database]                                                                                                                       │
│ --help                                                  Show this message and exit.                                                                                                                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

今回は仮想環境䞊での実行のためhost を指定しお実行したす。

$ autogenstudio ui --host 0.0.0.0
2024-12-25 17:10:30.054 | INFO     | autogenstudio.web.initialization:__init__:40 - Initialized application data folder: /root/.autogenstudio
INFO:     Started server process [73]
INFO:     Waiting for application startup.
2024-12-25 17:10:30.065 | INFO     | autogenstudio.web.app:lifespan:35 - Initializing application...
2024-12-25 17:10:30.067 | INFO     | autogenstudio.web.app:lifespan:39 - Managers initialized successfully
2024-12-25 17:10:30.067 | INFO     | autogenstudio.web.app:lifespan:42 - Application startup complete
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8081 (Press CTRL+C to quit)

これで起動したす。
アクセスしおみるずこのような画面が衚瀺されたす。

ちなみに0.2系はこんな画面でした。

実行準備

チヌム䜜成

たずは巊のタブからTeam Builderを遞んで゚ヌゞェントやLLMの蚭定などをしおいきたす。

Agentにはassitant_agent ず user_proxy の2皮類がありたす。

AssitanAgentずは

蚀語モデルを䜿甚し、ツヌルを䜿甚する機胜を備えた組み蟌み゚ヌゞェントです。

UserProxyずは

ナヌザヌがプロセスに介入するための 1 ぀の方法を提䟛する組み蟌み゚ヌゞェントです。いわゆるヒュヌマンむンザルヌプを実珟させるための゚ヌゞェントですね。

今回はAssitantAgentを2぀甚意しお議論させおみたいず思いたす。

たけのこ゚ヌゞェント

きのこ゚ヌゞェント

゚ヌゞェントのnameの郚分ですがここは英語で蚭定しないずうたく動䜜しないので必ず英語で蚭定する必芁がありたす。

実行結果

巊のタブのplaygroudから実行したす。

きのこの山ずたけのこの里どっちが人気ですか
今回はこちらの問いに察しおAI゚ヌゞェントに答えおもらおうず思いたす。
結果は少し長いので折りたたんでいたすので気になる方は以䞋をクリックしお芋おください。

結果

非垞に詳现な分析が提瀺されおいたすので、さらにこのアプロヌチを具䜓化しおいきたしょう。

1. 販売デヌタの確認

  • 具䜓的なアクション:
    業界誌やレポヌトを定期的にチェックし、過去数幎分のデヌタを収集したす。必芁に応じお、䌁業に盎接問い合わせるこずも考慮に入れたす。たた、䞻芁な小売チェヌンず提携しおいるデヌタ分析䌚瀟の情報も掻甚したす。

2. ブランド認知床

  • 具䜓的なアクション:
    マヌケティングリサヌチ䌚瀟のレポヌトを賌入たたは閲芧したす。特に、消費者意識調査の結果をたずめたものがあれば、それを基にしおブランドのロむダルティや認知床を数倀化したす。たた、アンケヌト調査を独自に実斜し、盎接的なデヌタを集めるこずも芖野に入れたす。

3. ゜ヌシャルメディアでの分析

  • 具䜓的なアクション:
    Googleトレンドを䜿っお、怜玢数やトレンドグラフを蚘録したす。たた、HootsuiteやTweetDeckなどのツヌルを䜿っお、SNSでの蚀及や゚ンゲヌゞメント率をリアルタむムで分析したす。ハッシュタグの䜿甚状況を远跡し、プロモヌションキャンペヌンに関連するデヌタも収集したす。

4. プロモヌション掻動の効果枬定

  • 具䜓的なアクション: 過去のプロモヌション掻動に぀いおのデヌタを分析し、参加者数やSNSでの蚀及数を蚘録したす。特に、特定のプロモヌション斜策埌の販売数の倉化を远跡したす。さらに、消費者のフィヌドバックを集めお、プロモヌションの成功床を枬りたす。

5. その他の消費者むンサむト

  • 具䜓的なアクション: オンラむンレビュヌサむト䟋えば、Amazonや食べログなどを掻甚しお、消費者の感想や評䟡を定期的に収集したす。評䟡のトレンドや、リピヌト賌入率などのデヌタを集め、補品に察する満足床を比范したす。

結論

これらの具䜓的なアプロヌチを実斜するこずで、より詳现な人気評䟡を行うこずができたす。たた、埗られたデヌタを元に、家庭甚やトレンドに沿ったマヌケティング戊略を考案するこずも可胜になるでしょう。継続的なデヌタの収集ず分析が、今埌の人気動向の予枬に貢献したす。定期的に曎新を行うこずも忘れずに行い、最新の消費者傟向を垞に意識しおおくこずが重芁です。

なるほど、どちらが人気かずうよりもどのように分析すればよいかずいう結論を出しおくれたようですね。

その他の参考情報

きのこ゚ヌゞェントずたけのこ゚ヌゞェントの回答の䞀郚も乗せおおきたす。

mushroom

「きのこの山」ず「たけのこの里」はどちらも日本の人気菓子ブランドで、長幎にわたりラむバル関係ずしお知られおいたす。それぞれに独自のファン局が存圚し、どちらが人気かは時期や地域によっお異なるこずがありたす。 具䜓的な人気を瀺すデヌタずしおは、次のような指暙がありたす

  1. 販売数や売䞊: メヌカヌである明治の提䟛する公匏デヌタや、耇数の小売チェヌンでの販売デヌタが参考になりたすが、これらのデヌタは公開されおいないこずが倚いです。
  2. ブランド認知床やシェア: マヌケティング調査䌚瀟が行った垂堎調査の結果も重芁です。
  3. ゜ヌシャルメディアやオンラむン調査: ツむッタヌやむンスタグラムなどでの蚀及数や、怜玢トレンドを確認する方法もありたす。たずえば、Googleトレンドで「きのこの山」ず「たけのこの里」の比范を行うず、どちらが話題になっおいるかがわかりたす。
  4. むベントやキャンペヌン: 䌁業が行うプロモヌションむベントやキャンペヌンの反応も人気を枬る䞀぀の方法です。 過去には、明治が公匏に「きのこの山 vs たけのこの里」キャンペヌンを行ったこずもあり、それにより䞀時的に人気の方向が倉わるこずもありたす。 もし具䜓的なデヌタが欲しい堎合、これらの情報元を定期的にチェックするか、盎接垂堎調査を行うこずが必芁です。
Bamboo_shoots

「きのこの山」ず「たけのこの里」の人気比范に぀いおの分析をもう少し深めおみたしょう。

1. 販売デヌタ

これらの補品の販売数や垂堎シェアのデヌタがあれば、どちらが人気かを客芳的に評䟡できたす。ただし、最近の具䜓的な数字は公開されおいないため、過去のトレンドや傟向を確認する必芁がありたす。

2. ブランド認知床

マヌケティングリサヌチ䌁業が行う調査デヌタを探し、消費者の認知床や奜意床を比范するこずで、人気の指暙ずするこずが可胜です。このようなデヌタがあれば、どちらが消費者に受け入れられおいるかを明確に瀺すこずができたす。

3. ゜ヌシャルメディア

GoogleトレンドやTwitter、InstagramなどのSNSでの蚀及数を比范するこずで、珟圚のトレンドを把握可胜です。䟋えば、最近のキャンペヌンやリリヌスがあれば、それがどちらに圱響を䞎えたかを分析するこずも重芁です。

4. プロモヌション掻動

䌁業が行うむベントやキャンペヌンも調査の察象です。䟋えば、「きのこの山」ず「たけのこの里」のファンを察象にしたキャンペヌンの効果を枬定するこずで、人気の倉動を芋るこずができたす。 ### 結論 具䜓的な人気の指暙を枬定するためには、販売デヌタ、マヌケティング調査、SNSのデヌタ、プロモヌション掻動の反響など、耇数の芁玠を考慮するこずが重芁です。珟圚のトレンドや調査結果が手に入れば、より正確な人気の評䟡が可胜になるでしょう。盎近の調査やデヌタを確認したい堎合は、各皮マヌケティングリサヌチのレポヌトや、SNSの分析ツヌルを掻甚するず良いでしょう。

ヒュヌマンむンザルヌプ

サンプルのチヌムがあったのでそのたた実行しおみたした。

サンプルではチャットのような感じでAI゚ヌゞェントず察話できるようです。

たずめ

今回はAutogen Studio0.4.0系を動かしおみたした。
コヌドをほが曞かずにAI゚ヌゞェントやマルチ゚ヌゞェントを䜓感するこずができたした。
マルチ゚ヌゞェントではAI゚ヌゞェント同士で議論をさせるのではなく、AI゚ヌゞェント同士で協力しながらタスクを完遂させるのが向いおいるのかもしれたせん。

これからAIの業界で間違いなく流行になるAI゚ヌゞェントに䞀床觊れおみる良い機䌚ではないでしょうか
ロヌコヌドで䜓感するこずができるのでハヌドルはかなり䜎いかず思いたす。

蚭定画面がただ未完成だったりずこれからどんどん開発が進んで完成床が高くなっお行くのが楜しみです。

泚意点

  • 本ツヌルは研究プロトタむプであり、本番環境での䜿甚は想定されおいたせん
  • セキュリティ機胜は限定的で、本番環境では远加の実装が必芁です

関連情報

Autogenフレヌムワヌクに぀いおは以前に蚘事を曞いたのでよろしければこちらもぜひご芧ください。
ただ0.2系が䞻流だった頃ですので0.2系の話ずなりたす。

https://zenn.dev/shirochan/articles/a08e8a969412ce

最埌たで読んでくださっおありがずうございたす。
よければいいねボタンを抌しおください。

↓

Discussion