Skip to main content
Open In Colab CrewAIは、LangChainや他のエージェントフレームワークから完全に独立した、一から構築された軽量で超高速なPythonフレームワークです。CrewAIは開発者に高レベルのシンプルさ(Crews)と精密な低レベル制御(Flows)の両方を提供し、あらゆるシナリオに合わせた自律型AIエージェントの作成に最適です。CrewAIについてはこちら AIエージェントを扱う際、そのインタラクションのデバッグとモニタリングは非常に重要です。CrewAIアプリケーションは多くの場合、複数のエージェントが協力して動作するため、それらがどのように連携し、コミュニケーションを取るかを理解することが不可欠です。Weaveはこのプロセスを簡素化し、CrewAIアプリケーションのトレースを自動的に取得することで、エージェントのパフォーマンスとインタラクションを監視・分析できるようにします。 この統合はCrewsとFlowsの両方をサポートしています。

Crewを使い始める

この例を実行するには、CrewAI(詳細はこちら)とweaveをインストールする必要があります:
ここでCrewAI Crewを作成し、Weaveを使用して実行をトレースします。始めるには、スクリプトの先頭で単にweave.init()を呼び出すだけです。weave.init()の引数は、トレースがログに記録されるプロジェクト名です。
Weaveは、エージェントのインタラクション、タスクの実行、LLM呼び出しなど、CrewAIライブラリを通じて行われるすべての呼び出しを追跡し、ログに記録します。Weaveウェブインターフェースでトレースを確認できます。 crew_trace.png
CrewAIは、キックオフプロセスをより適切に制御するためのいくつかのメソッドを提供しています:kickoff()kickoff_for_each()kickoff_async()、およびkickoff_for_each_async()。この統合は、これらすべてのメソッドからのトレースのログ記録をサポートしています。

ツールの追跡

CrewAIツールは、ウェブ検索やデータ分析から、同僚間のコラボレーションやタスク委任まで、さまざまな機能をエージェントに提供します。この統合はそれらもトレースすることができます。 上記の例で生成されるレポートの品質を向上させるために、インターネットを検索して最も関連性の高い結果を返すツールへのアクセスを提供します。 まず、追加の依存関係をインストールしましょう。
この例では、SerperDevToolを使用して、「リサーチアナリスト」エージェントがインターネット上の関連情報を検索できるようにしています。このツールとAPI要件の詳細についてはこちらをご覧ください。
インターネットにアクセスできるエージェントを持つこのCrewを実行すると、より良く関連性の高い結果が得られます。下の画像に示すように、ツールの使用を自動的にトレースします。 crew_with_tool_trace.png
この統合は、crewAI-toolsリポジトリで利用可能なすべてのツールを自動的にパッチします。

Flowを使い始める

flow.png
この統合はFlow.kickoffエントリーポイントと利用可能なすべてのデコレーター —@start@listen@router@or_および@and_を自動的にパッチします。

Crewガードレール - 独自のオペレーションを追跡する

タスクガードレールは、タスク出力を次のタスクに渡す前に検証および変換する方法を提供します。シンプルなPython関数を使用して、エージェントの実行をリアルタイムで検証できます。 この関数を@weave.opでラップすると、入力、出力、アプリケーションロジックの取得が開始され、データがエージェントを通じてどのように検証されるかをデバッグできます。これにより、実験時にコードの自動バージョン管理も開始され、gitにコミットされていないアドホックな詳細が取得されます。 リサーチアナリストとライターの例を見てみましょう。生成されたレポートの長さを検証するガードレールを追加します。
ガードレール関数を単に@weave.opでデコレートするだけで、この関数への入力と出力を、実行時間、LLMが内部で使用されている場合のトークン情報、コードバージョンなどと共に追跡できます。 guardrail.png

結論

この統合について改善すべき点があれば、ぜひお知らせください。問題が発生した場合は、こちらで問題を開いてください。 CrewAIを使用して強力なマルチエージェントシステムを構築する方法の詳細については、多くの例ドキュメントをご覧ください。