著者 | 崔昊 レビュー | Chonglou まとめAutoGenはAIをベースにしている 人間の意思決定プロセスをシミュレートすることで複雑な問題を解決するエージェント フレームワーク。 AI エージェントを使用して大量のデータを処理し、迅速な意思決定を行い、ユーザーとのやり取りを最適化します。 AutoGen は、データ処理、自動意思決定、ユーザーインタラクション、複雑な問題解決の機能を備えており、複雑な問題に対処するための新しいアイデアをユーザーに提供します。 AutoGen は、複数の AI エージェントを含むアプリケーションを構築することで、LLM アプリケーションの構築プロセスを簡素化し、多様な会話モードをサポートして、効率と生産性を向上させます。 この記事では、A 共有アシスタントという具体的な例を使用して、AutoGen フレームワークの使用方法を説明します。この例では、ユーザーはエージェントを通じてリクエストを開始し、アシスタント エージェントはコードを自動的に生成および検証することで、株価データのダウンロード、分析、チャートの描画のタスクの完了をユーザーを支援します。 AIエージェント入門今日の時代、人工知能技術は私たちの生活と仕事のあらゆる側面に深く浸透しています。日常業務の簡素化から複雑なビジネスプロセスの最適化まで、AI の影響はあらゆるところに及んでいます。しかし、AI 技術は急速に発展しているにもかかわらず、特に複雑な問題に対処する際には依然として課題に直面しています。これらの問題には、多くの場合、大量のデータの処理、複雑な意思決定、動的な環境への迅速な適応が伴い、従来の AI システムでは克服が難しい課題となっています。 このような背景から、AI エージェントの概念が生まれました。 AI エージェントは、人間の意思決定プロセスをシミュレートして複雑なタスクを処理する特殊なタイプの人工知能システムです。これらのインテリジェント エージェントは、大量のデータを処理および分析し、高速で正確なソリューションを提供できるため、人間にとっては時間がかかりすぎたり複雑すぎたりするタスクで優れた能力を発揮します。 AI エージェントの主な利点は、これらの複雑な問題に対処する効率と生産性を大幅に向上させ、それによって技術のさらなる開発と応用を促進できることです。 AI エージェントが解決する具体的な問題は次のとおりです。 データ処理と分析: AI エージェントは、人間にとっては時間と労力がかかる大量のデータを迅速に処理および分析し、洞察に富んだ結果を提供します。 自動意思決定: 迅速な対応が必要なシナリオでは、AI エージェントが自動的に意思決定を行うため、人間の介入の必要性が軽減されます。 ユーザーインタラクション: チャットボットやその他の形式を通じて、AI エージェントは24 時間年中無休のカスタマー サービスを提供して、ユーザー エクスペリエンスを向上させることができます。 複雑な問題の解決: AI エージェントは、予測分析や最適化の問題など、通常は人間の直接的な処理能力を超える複雑な問題を解決できます。 AutoGenとはAIエージェントは複雑な問題に対処する方法を提供します。では、AIをどのように実装するのでしょうか? エージェントはどうですか?それが AutoGen です。フレームワークとして、AutoGen は AI エージェントを作成および管理するために必要なツールと構造を提供します。これは単なる単純なエージェント実装ではなく、開発者が複雑な複数の AI エージェントベースのアプリケーションを構築できるようにする包括的なソリューションです。 Microsoft AutoGen は、複数のエージェントを使用して会話を行い、タスクを解決する大規模言語モデル (LLM) アプリケーションを開発するためのものです。 AutoGen のエージェントはカスタマイズ可能で、会話型であり、シームレスに人間の関与を可能にします。 LLM の人間による入力とツールの組み合わせを使用して、さまざまなモードで動作できます。 主な特徴: AutoGen を使用すると、マルチエージェント会話に基づく次世代 LLM アプリケーションを簡単に構築でき、複雑な LLM ワークフローのオーケストレーション、自動化、最適化が簡素化されます。 複雑なワークフローの多様な会話モードをサポートし、さまざまな複雑さの動作システムの例を提供し、AutoGen が多様な会話モードを簡単にサポートする方法を示します。 AutoGen は、API 統合キャッシュや、エラー処理、マルチ構成推論コンテキスト プログラミングなどの高度な使用モードを含む、強化された LLM 推論機能を提供します。 AutoGen は強力なだけでなく、インストールも簡単です。pip 経由でインストールできます。 次に、 AutoGen の例を使用して、AutoGen をより包括的に理解していただきたいと思います。 A-shareアシスタント: ユーザーエージェントとインテリジェントアシスタントペースの速い職場では、公開されているビジネス データを集計して分析する必要があるタスクに遭遇することがよくあります。上司から、株式市場のパフォーマンスなどの重要なデータを収集して分析するように依頼されたと想像してください。このタスクには、関連データの検索とダウンロードだけでなく、データの詳細な分析と分析結果を視覚的な形で提示することも含まれます。このプロセスは面倒なだけでなく、データの処理時に潜在的なリスクやバイアスが発生する可能性があるため、効果的に支援できるツールが重要になります。 この文脈では、AutoGen を使用してこのプロセスを簡素化する方法を示す具体的な例を見てみましょう。中国 A 株市場でよく知られている 2 つの株、Vanke A と China Merchants Bank のパフォーマンスを比較する必要があるとします。具体的なタスクは、2 つの株式の履歴データをダウンロードし、収益を比較し、対応する分析チャートを生成することです。これには、データの正確な抽出と処理だけでなく、結果を明確かつ直感的に提示する能力も必要です。 AutoGen を使用すると、パイプラインの異なる部分の処理をそれぞれ担当する複数の AI エージェントを含むパイプラインを構築できます。たとえば、1 つのエージェントが金融データベースから必要な株価データをダウンロードする役割を担い、別のエージェントがデータの分析と処理に集中し、最後のエージェントが分析結果をわかりやすいグラフに変換することができます。このように、AutoGen は作業負荷を大幅に軽減するだけでなく、分析プロセス全体の精度と効率も向上させます。最終的には、最新のデータに基づいているだけでなく、わかりやすいグラフ形式で提示された包括的かつ直感的な株式パフォーマンス比較レポートを上司に提示できるようになります。 考え上記の機能の実装を始める前に、まず次の図に示すように、参加者とプロセスを整理しましょう。 AutoGen による株価データの比較処理のプロセスには、ユーザー、ユーザー エージェント、ユーザー アシスタントの 3 つの参加者が関与します。質問する責任はユーザーにあります。ユーザー エージェントは AutoGen オブジェクトによって実行され、ユーザーからの質問を理解し、ユーザー アシスタントにコマンドを発行する役割を担います。実行中にユーザー アシスタントに問題が発生した場合、ユーザー エージェントはそれを解釈する必要があります。ユーザー アシスタントは、ソリューションを考え出し、実行コードを生成し、コードの正確性を評価する役割を担います。最後に、実行されたコードは実行のためにユーザーエージェントに渡されます。 プロセスの手順は次のとおりです。
株式比較フローチャート コーディングプロセスを理解した後、次のコードを見てみましょう。 このコードは、 AutoGenモジュールをインポートし、 config_list_from_json関数を呼び出して、大規模モデルに関連する構成情報を読み込むために使用されます。必要に応じて以下を説明します。 1. モジュールをインポートします。 import autogen: autogen という名前の Python モジュールをインポートします。このモジュールの具体的な機能はコード内では説明されていませんが、名前から判断すると、構成やコードの自動生成に関連している可能性があります。 2. 関数呼び出し: config_list_from_json 関数は、JSON ファイルから構成を読み取り、指定されたフィルター条件に基づいて構成リストを生成します。 フィルター辞書: 3.filter_dict: JSON ファイル内のコンテンツをフィルタリングするために使用されます。この例では、 AutoG enが使用するモデルとして ["gpt-4"] を指定します。 次に、OAI_CONFIG_LIST.json ファイルがどのようになっているかを見てみましょう。ファイルには JSON 配列が含まれており、各要素は API 構成を表す JSON オブジェクトです。このファイルは、API キーやベース URL など、さまざまな API 環境の構成情報を格納するために使用できます。 次にハイライトですが、assistant と user_proxy の 2 つのオブジェクトを作成します。これらは、ユーザー エージェントとユーザー アシスタントを作成するために使用されます。ユーザー エージェントとユーザー アシスタント間のやり取りをシミュレートするために使用されます。以下にコードの行ごとの説明を示します。 1. ユーザーアシスタントを作成する
2. ユーザーエージェント(user_proxy)を作成する
3. チャットを初期化してメッセージを送信する
アシスタントは、特定のパラメータを使用して構成されたヘルパー エージェントであり、何らかの自動化されたタスクやプロセスを実行します。 user_proxy は、ユーザーをシミュレートし、自動返信と会話の終了の条件が設定されたプロキシです。 user_proxy は、initiate_chat メソッドを通じてアシスタントとの会話を開始し、株式収益の比較に関するタスクの説明を送信します。 結果コードを実行すると、結果が生成されます。結果の内容は比較的長いため、ソリューションの提案、コードの生成、コードの検証、コードの修正などのプロセスが含まれます。これは、主にユーザー エージェントとアシスタント間のやり取りを反映する複雑な自己修正プロセスです。 便宜上、結果の出力を次の内容に整理しました。 Ask-User-Agent ヘルパー:ユーザーは現在の日付を尋ね、万科A株と招商銀行株の収益の比較を要求し、チャートを要求しました。 ソリューション アシスタントからユーザー エージェントへ:アシスタントは、主に次の 3 つのステップから成る解決策を考案しました。 1. Python の datetime ライブラリを使用して現在の日付を取得します。 2. pandas_datareader ライブラリを使用して、Yahoo Finance から過去の株価データを取得します。 3. matplotlib ライブラリを使用してデータをグラフにプロットし、2 つの株式の収益を比較します。 しかし、Yahoo Finance データを取得するコードを実行しようとすると、問題が発生しました。エラー メッセージには、型が間違っており、文字列インデックスは整数でなければならないと表示されました。 コードを再度実行します - ユーザーエージェントへのヘルパー:アシスタントは、Yahoo Finance からデータを取得する問題を解決するために、pandas_datareader の代わりに yfinance ライブラリを使用することを提案しました。 yfinance ライブラリを正常にインストールすると、アシスタントは株価データを再取得し、そのデータを CSV ファイルに保存するための新しいコード スニペットを提供します。次に、チャートを作成するための別のコードが提供され、今回はコードが正常に実行されました。 最終結果は、ユーザーエージェントのアシスタントです。アシスタントは、Vanke A と China Merchants Bank の過去の価格データが正常に取得され、チャートが作成されたことを確認します。環境の制限により、アシスタントはチャートを直接表示できないことを指摘し、チャートを表示するにはローカル環境でコードを実行することをユーザーに推奨します。最後に、「TERMINATE」を送信することで会話は終了しました。 AutoGen タスク コードプロセス全体を通じて、ユーザー エージェントとアシスタント間のやり取りは、問題の解決とコードの実行に重点が置かれます。アシスタントは、問題の診断と解決において適応性と柔軟性を発揮し、最終的にユーザーの要求を満たす結果を提供しました。 以下に、ユーザー アシスタントによって生成されたコードを参考用に掲載します。この Python コードは、2 つの株式 (Vanke A と China Merchants Bank) の日次収益を比較し、結果をグラフに表示するために使用されます。以下にコードの各部分の詳細な説明を示します。 全体的なコードは比較的単純で、実行プロセスは次のようになります。 1. 必要なライブラリをインポートします。 2. 現在の日付を取得して出力します。 3. 在庫データを取得する時間範囲を定義します。 4. Yahoo Finance から、指定された日付範囲内の Vanke A と China Merchants Bank の株価データをダウンロードします。 5. ダウンロードしたデータに毎日のリターンを計算して追加します。 6. 2 つの株式の日次収益を比較するチャートを描いて表示します。 コードで使用されている yfinance ライブラリは、Yahoo Finance から過去の市場データをダウンロードできる人気の金融データ インターフェイスです。 Matplotlibは、さまざまな静的、動的、インタラクティブなチャートを作成できる、広く使用されている Python プロット ライブラリです。 .pct_change() 関数は、データ フレーム内の要素のパーセンテージの変化を計算するために使用され、財務データ分析におけるリターンの計算によく使用されます。 plt.show() 関数呼び出しにより、生成されたチャートを表示するウィンドウが開きます。 Jupyter Notebook やその他のインタラクティブな環境では、通常、プロットは直接表示されます。 2つの株式のリターンの比較チャート 要約するこの論文では、Auto G en フレームワークとその財務データ分析への応用について紹介します。ユーザーはエージェントを通じてヘルプを要求し、Auto Genフレームワークのヘルパー エージェントがタスクを受け取ると、Python コードを使用して株価データを処理し、比較チャートを描画します。このプロセスは、データのダウンロード、分析、視覚化を処理するAuto Genの機能を示しています。 Auto Gen は、シンプルな A 共有アシスタントを実装することで、ユーザーの作業負荷を軽減し、タスク実行の精度と効率を向上させます。 Auto Genを使用すると、プロセスの構築、エージェントの割り当て、コード実行の自動化によって複雑なタスクも簡素化され、ユーザーはデータと分析結果をより直感的に提示できるようになります。 著者について51CTO コミュニティ エディター兼シニア アーキテクトの Cui Hao 氏は、ソフトウェア開発とアーキテクチャで 18 年の経験があり、分散アーキテクチャでは 10 年の経験があります。 |
<<: 誰でも大きなモデルを使用できます。よく構成されたプロンプトにより、簡単に始めることができます。
>>: GoogleはDeepMind AIを使用して何千もの新しい素材を分析および予測しました
[[443053]] 2021年は人工知能が飛躍的に進歩し続ける年です。最近、Github で誰かが...
自動運転車の登場は私たちの生活のあらゆる側面に影響を与え、変化をもたらすでしょう。未来はどうなるの...
OpenAIは米国時間9月26日月曜日、チャットボット「ChatGPT」に音声会話機能を追加したと発...
この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...
Dlib は、プログラミング言語 C++ で記述された汎用のクロスプラットフォーム ソフトウェア ラ...
GPT をめぐる戦いは、結局のところ、才能をめぐる戦いなのです。 ChatGPT が瞬く間に成功を...
スマート テクノロジーは、あらゆる業界の企業に無限のチャンスをもたらします。小さな変更でも、企業を完...
近年、民間ドローンの急速な普及は、空中撮影、レジャーや娯楽、農作物の保護、電力検査など、人々の生産と...
石油やガスの価格変動、運用コストの増加、サイバー/物理的な脅威の増大により、公益事業会社はセキュリテ...
イーロン・マスクによるツイッター買収のドラマもついにこの回まで来た。ツイッターは現地時間4月15日、...
MongoDB は、大規模なデータ ストレージ ソリューションの構築に適した NoSQL データベー...
[[224853]] [51CTO.com クイック翻訳] 人工知能と機械学習技術は、多くの分野で...
[[412098]] [51CTO.com クイック翻訳]キャピタル・ワンのモバイル、ウェブ、会話型...