このページでは、Smolagents を W&B Weave と統合して、エージェントアプリケーションを追跡および分析する方法について説明します。モデルの推論のログ記録、関数呼び出しの監視、および Weave の Traces 機能とバージョニング機能を使用した実験の整理方法を学びます。提供されている例に従うことで、貴重なインサイトを取得し、アプリケーションを効率的にデバッグし、異なるモデル設定を比較することができます。これらすべては Weave のウェブインターフェース内で行えます。Documentation Index
Fetch the complete documentation index at: https://wb-21fd5541-weave-caching.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
概要
Smolagents は、強力なエージェントアプリケーションを構築するための最小限の抽象化を提供するシンプルなフレームワークです。OpenAI、Hugging Face Transformers、Anthropic など、複数の LLM プロバイダーをサポートしています。 Weave は Smolagents のトレースを自動的に取得します。トラッキングを開始するには、weave.init() を呼び出し、通常通りライブラリを使用するだけです。
事前準備
-
Weave で Smolagents を使用する前に、必要なライブラリをインストールするか、最新バージョンにアップグレードしてください。次のコマンドは
smolagents、openai、weaveをインストールまたはアップグレードし、出力を抑制します。 -
Smolagents は、OpenAI、Hugging Face Transformers、Anthropic などの複数の LLM プロバイダーをサポートしています。対応する環境変数を設定して、選択したプロバイダーの APIキー を設定します。
基本的なトレース
言語モデルアプリケーションのトレースを中央の場所に保存することは、開発およびプロダクションにおいて不可欠です。これらのトレースはデバッグに役立ち、アプリケーションを改善するための貴重な Datasets として機能します。 Weave は Smolagents のトレースを自動的に取得します。トラッキングを開始するには、weave.init() を呼び出して Weave を初期化し、その後は通常どおりライブラリを使用します。
次の例では、ツールを使用する LLM エージェントへの推論呼び出しを Weave でログ記録する方法を示します。このシナリオでは:
- Smolagents の
OpenAIServerModelを使用して言語モデル(OpenAI のgpt-4o)を定義します。 - エージェントが必要に応じて呼び出すことができる検索ツール(
DuckDuckGoSearchTool)を設定します。 - ツールとモデルを渡して
ToolCallingAgentを構築します。 - 検索ツールをトリガーするクエリをエージェント経由で実行します。
- Weave は各関数とモデルの呼び出しをログに記録し、ウェブインターフェースを介して検査できるようにします。

カスタムツールのトレース
smolagents の @tool デコレータを関数に付与するか、smolagents.Tool クラスを継承することで、エージェントワークフロー用のカスタムツールを宣言できます。
Weave は Smolagents ワークフローのカスタムツール呼び出しを自動的に追跡します。次の例は、カスタム Smolagents ツール呼び出しを Weave でログ記録する方法を示しています。
- カスタム関数
get_weatherが定義され、Smolagents の@toolでデコレートされています。これにより、エージェントが推論プロセスの一部として呼び出せるようになります。 - この関数は場所と、摂氏出力用のオプションのフラグを受け取ります。
OpenAIServerModelを使用して言語モデルがインスタンス化されます。- カスタムツールとモデルを使用して
ToolCallingAgentが作成されます。 - エージェントがクエリを実行すると、
get_weatherツールを選択して呼び出します。 - Weave はモデルの推論とカスタムツールの呼び出しの両方をログに記録し、引数 (arguments) と戻り値を含めます。
