Crew を使い始める
この例を実行するには、CrewAI と Weave をインストールしてください。CrewAI のインストールの詳細については、CrewAI installation guide をご覧ください。weave.init() を呼び出します。weave.init() の引数には、Weave がトレースをログするプロジェクト名を指定します。
CrewAI には、kickoff プロセスをより細かく制御するための複数の method (
kickoff(), kickoff_for_each(), kickoff_async(), kickoff_for_each_async()) があります。このインテグレーションは、これらすべての method からのトレースのログをサポートしています。ツールをトラッキングする
CrewAI のツールは、Web 検索やデータ分析から、共同作業や同僚へのタスク委任まで、さまざまな機能をエージェントに提供します。インテグレーションでは、それらもトレースできます。 インターネットを検索して最も関連性の高い結果を返せるツールを使えるようにすることで、前の例で生成されたレポートの品質を向上させます。 まず、追加の依存関係をインストールします。SerperDevTool を使用して、‘Research Analyst’ エージェントがインターネット上の関連情報を検索できるようにしています。このツールと API の要件の詳細については、SerperDevTool documentationをご覧ください。
このインテグレーションは、
crewAI-toolsリポジトリで利用可能なすべてのツールに自動的にパッチを適用します。Flow 入門
次の例では、CrewAI Flow を定義し、Weave でトレースします。Crews の場合と同様に、Flow を定義する前にweave.init() を呼び出してください。これにより、Weave は Flow.kickoff のエントリポイントと、@start、@listen、@router、@or_、@and_ の各デコレータを自動的に取得します。
このインテグレーションでは、
Flow.kickoff のエントリポイントと、使用可能なすべてのデコレータ (@start、@listen、@router、@or_、@and_) に自動的にパッチが適用されます。Crew guardrail: 独自の ops をトラッキングする
タスクガードレールを使うと、CrewAI がタスクの出力を次のタスクに渡す前に検証や変換を行えます。エージェント の実行内容をその場で検証するには、Python 関数を使用できます。 ガードレール関数を@weave.op でラップすると、inputs、outputs、アプリケーションロジックが取得され、エージェント を通じてデータがどのように検証されるかをデバッグできるようになります。さらに、実験を進める中で git にコミットされていないアドホックな詳細も記録できるよう、コードのバージョン管理も自動的に開始されます。
次の例では、リサーチアナリストとライターの Crew を拡張し、生成されたレポートの長さを検証するガードレールを追加します。
@weave.op でデコレートすると、この関数の入力と出力に加え、実行時間、関数が LLM を使用している場合のトークン情報、コード version などをトラッキングできます。