著者 | チンメイ・バレラオ 編纂者:岳陽 画像は著者作成、背景画像はハリウッドレポーター[1]による バーチャルアシスタントのチームが協力して顧客サービスの問い合わせに対応する様子を想像してみてください。各アシスタントにはそれぞれの役割があり、正確で効率的、かつ最適な対応を保証します。これがLLMにおけるエージェンティックモデルの核となるコンセプトです。 検索拡張(RAG)は、LLMアプリケーションの中核コンポーネントとなっています。Arize Phoenix、Ragas、TrueLensなどのツールは、様々な指標を用いてRAGのパフォーマンスを評価できます。RAG技術の継続的な進歩に伴い、エージェントモデルはLLMアプリケーション開発における新たなトレンドになりつつあります。既存製品や新製品をエージェント型ワークフローに変換しようと、誰もが競い合っています。人間の介入の有無にかかわらず、LLMが連携し、効果的なグループディスカッションを行い、最適かつ包括的なソリューションを共同で開発していく姿は、間違いなく刺激的です。 01 エージェントとは何ですか?エージェントはLLM内の調整プラットフォームです。複数のLLMの機能を統合するように設計されており、LLMがなくてもタスクを自動化できるため、人的介入は最小限で済みます。各エージェントは、特定のタスクを独立して処理しながら、ディスカッション、相談、ブレインストーミングを行い、継続的に作業を改善できます。任意のLLMを使用してエージェントを作成し、様々なタスクを実行させることができます。 出典: Microsoft Autogen[2]。Autogenライブラリにおけるさまざまな種類のエージェントとその役割を説明しています。 02 エージェンティック方式とは何ですか?エージェンティックアプローチとは、ワークフローをより小さく、より独立したエージェントに分割し、それらが連携して問題解決に取り組むアプローチです。単一のシステムがすべてのタスクを処理するのとは異なり、このアプローチでは、専門能力を持つエージェントに責任を分散することで、より効率的でスケーラブルなソリューションを実現します。つまり、異なるタスクを異なる人に割り当て、チームディスカッションを通して包括的なソリューションを共同で開発していくようなものです。これは、ブレインストーミングセッションで行われる作業に似ています。 例えば: LLM に基づいた簡単な質疑応答システムを構築したいとします。 LLM RAGプロセスでは、検索エンジンがユーザーの質問に基づいて最も関連性の高いデータを取得します。選択されたデータは質問と共にLLMシステムに送信され、回答が生成されます。回答の構造や内容の最適化が必要な場合は、プロンプトを調整し、同じ手順を繰り返して回答を検証します。 上記の状況に基づいて、エージェンティック アプローチを使用すると、検索タスクを担当する検索エージェント、回答を生成する責任がある回答生成エージェント、回答に関するフィードバックを提供する責任がある回答検証エージェントの 3 つのエージェントを作成できます。 検索エージェントが関連データを提供すると、回答生成エージェントと回答検証エージェントが対話を開始します。複数回のフィードバックとコミュニケーションを経て、適切な回答が得られます。これらの2つのエージェントには、それぞれのタスクを明確にするために、具体的なプロンプトを設定できます。さらに、検索エージェントはLLM機能を必要としないため、LLMへのアクセスは許可しません。検索エージェントは検索タスクを独立して完了するだけで済みます。 著者による画像 上の図は、先ほど述べた手順を正確に示しています。この図を通して、エージェントを用いて様々なタスクを自律的に完了させる方法を明確に理解できます。 03 評価インテリジェント エージェントについて理解が深まったところで、次にその評価方法を検討します。 機械学習(ML)や深層学習(DL)の分野では、一般的に離散的な出力を扱うため、評価基準は比較的固定的で一般化が容易です。しかし、RAGプロセスやエージェントの評価となると、状況は一変します。RAG評価では、コンテキスト関連性、忠実度、コンテキスト再現率、再現率、毒性、Recall@K、Precision@Kといった様々な指標が導入されています。エージェントもこれらの指標を用いて、自身のパフォーマンスを効果的に評価できます。コンテキスト関連性、忠実度、再現率など、従来のシステムに用いられてきた多くの評価指標は、エージェント評価にも適用可能です。さらに、エージェントをよりスムーズに評価できる専用ツールも存在します。 次に、これらの評価ツールを 1 つずつ見ていきましょう。 3.1 エージェントネオ出典: Agentneo公式リポジトリ ragaAIが開発したAgentneoは、AIエージェントの監視、モニタリング、評価のためのPython SDKです。エージェントとLLMの追跡、ツールの使用、マルチエージェントシステムのデバッグ、セルフホスト可能なダッシュボード、タイムラインと実行フローチャートを備えた高度なデータ分析機能などの機能を提供します。 まず、次のコマンドを実行してインストールします。 この簡単なインストール手順を実行するだけで、Agentneo をローカル環境に正常に展開できます。 次の手順は非常に簡単です。エージェントが初期化され、グループでの会話ややり取りが始まる前に、追跡機能(簡単に言うとログ記録を有効にする)を有効にする必要があります。 これにより、エージェント間の会話の監視を開始できます。多くのアプリケーションと同様に、Agentneo はカスタマイズ可能なダッシュボードを提供し、エージェントのさまざまな側面に関する情報を表示できます。 独自のニーズに応じてエージェントのパフォーマンスを評価し、対応する評価指標を設定できます。 グループチャットとコミュニケーションが完了したら、追跡を終了してダッシュボードを開きます。 ブラウザに http://localhost:3000 と入力するだけで、インタラクティブなダッシュボードにアクセスできます。 Agentneoダッシュボード このダッシュボードでは、さまざまなデータ(分析データ、時間、LLM 通話ログなど)に加えて、エージェントの会話の非常に重要な部分であるエージェント間のチャット内容を追跡できます。 既にAutogenやCrewaiといった複数のエージェントライブラリと統合されており、今後さらに多くのエージェントライブラリと統合される予定です。私はこのライブラリをAutogenと組み合わせて使用し、エージェントのアクティビティを追跡するための優れたツールであることがわかりました。 Github: Agentneo[3] |ラーガアイ[4] 3.2 アリゼ・フェニックス出典:アライズフェニックス公式サイト Arize Phoenix は、次の側面から評価を実行するオープンソースの LLM トレースおよび評価ツールです。
Phoenixはエージェントの行動追跡にも適しています。これは、Autogenが依存する基盤となるモデルライブラリを検出することで実現されます。 使用を開始する前に、関連するライブラリをインストールする必要があります。 以下はローカルで実行できるコード例です。 コードを実行すると、以下に示すダッシュボード インターフェイスが表示されます。 Agentneoは以前試したことがありますが、正直なところPhoenixはあまり使っていません。なぜでしょうか?Phoenixを使いたいと思った頃は、Googleモデルを全くサポートしておらず、OpenAIモデルへのアクセスも制限されていました。しかし、今はおそらく全てのモデルをサポートしているようです。 ノートブック[5] | 手続き型フェニックス[6] | LLM評価[7] 3.3 トゥルーレンズ多くのアプリケーションでは、TrueLens を使用して RAG プロセスを追跡および監視します。 出典: TrueLens githubリポジトリ[8] TruLensは、フィードバックメカニズムを通じてLLMベースのアプリケーションのパフォーマンスを客観的に評価するソフトウェアツールです。これらのメカニズムは、アプリケーションの入力、出力、中間処理の品質を自動的に分析することで、評価実験を加速し、スケーラビリティを実現します。TruLensは、自動質問応答、コンテンツ要約、検索強化生成、エージェントベースアプリケーションなど、様々なシナリオに適しています。 TruLens は、次のフィードバック メカニズムを通じて LLM アプリケーションのパフォーマンスを向上させ、リスクを軽減します。
画像クレジット: TrueLens公式サイト[9] 公式ウェブサイトでは、エージェント評価プロセスでTrueLensを使用することが推奨されています。TrueLensを使用する場合、その使いやすさは他のツールに匹敵します。 まず、必要な依存関係をインストールします。 次に、追跡する指標を設定します。 次に、アプリケーションをビルドします。 リーダーボードで結果を表示し、実行中のダッシュボードを確認できます。 これらの手順を完了すると、以下に示すようなダッシュボードが表示されます。 この記事ではすべてのコードを提供しているわけではありませんが、NOTEBOOK[10]ではTrueLensアプリケーションのセットアップと実行の手順を説明します。 写真提供:アダム・シルバーマン 04 最後の言葉この記事で紹介したツールはすべて独自のユーザーインターフェースを備えており、ローカルマシンで表示できます。アプリケーションに多数のエージェントが含まれている場合、トラッキングは非常に重要です。監視すべき項目は、アプリケーションの複雑さや具体的なニーズによって異なります。評価プロセスでは、会話ログを評価することが一般的に有用です。会話ログは各エージェントの具体的な動作を示してくれるため、プロンプトを適切に調整したり、会話ラウンド数を決定するのにも役立ちます。エージェントを評価するための他のツールをご存知でしたら、ぜひコメントをお寄せください。 読んでくれてありがとう! このブログを楽しんで、新しいことを学んでいただければ幸いです。 著者について チンメイ・バレラオ AI/ML研究者兼エンジニア | AI、CV、物体検出分野で3回トップライターに輝く | 洞察とシミュレーションでテクノロジーを簡素化 | 終わり 今週のインタラクティブコンテンツ🍻 ❓エージェントを評価するための他のツールをご存知の場合は、お気軽にコメントを残してください。 🔗記事内のリンク🔗 [1]https://www.hollywoodreporter.com/lifestyle/lifestyle-news/distracted-boyfriend-meet-stars-meme-summer-1033623/ [2]https://microsoft.github.io/autogen/0.2/docs/Use-Cases/agent_chat/ [3]https://github.com/raga-ai-hub/AgentNeo [4]https://raga.ai/agentneo [5]https://github.com/Arize-ai/phoenix/blob/main/tutorials/tracing/autogen_tutorial.ipynb [6]https://docs.arize.com/phoenix/tracing/integrations-tracing/autogen-support [7]https://phoenix.arize.com/ [8]https://github.com/truera/trulens [9]https://www.trulens.org/ [10]https://colab.research.google.com/github/truera/trulens/blob/main/examples/quickstart/quickstart.ipynb#scrollTo=wiL9tL_8xrRP オリジナルリンク: https://medium.com/towards-artificial-intelligence/evaluating-and-monitoring-llm-agents-tools-metrics-and-best-practices-a61f508cccb0 |
01 エージェントとは何ですか?02 エージェンティック方式とは何ですか?03 評価3.1 エージェントネオ3.2 アリゼ・フェニックス3.3 トゥルーレンズ04 最後の言葉 |