weave.init() の呼び出し後、Weave は LiteLLM 経由で行われた LLM Call を自動的にトラッキングしてログします。このガイドでは、Weave と LiteLLM を使用してトレースを取得し、Call をバージョン管理された op でラップし、Model で Experiments を整理し、function-calling の動作をトラッキングする方法を説明します。LLM アプリケーションを構築していて、LiteLLM がサポートする複数のモデルプロバイダ全体で可観測性を確保したい場合にご利用ください。
トレース
注: LiteLLM を使用する場合は、Weave は LiteLLM のトレースを自動的に取得します。ライブラリは通常どおり使用でき、まずfrom litellm import completionではなく、必ずimport litellmを使ってライブラリをインポートし、litellm.completion()で completion 関数を呼び出してください。これにより、すべての関数とパラメーターが正しく参照されます。
weave.init() を呼び出して開始します。
独自の ops でラップする
@weave.op() でデコレートした関数を作成し、その中で LiteLLM の completion 関数を呼び出すと、Weave が入力と出力をトラッキングしてくれます。以下はその例です。
試行錯誤をしやすくするために Model を作成する
Model クラスを使用すると、system prompt や使用しているモデルなど、アプリの実験に関する詳細を取得して整理できます。これにより、アプリの異なるバージョンを整理して比較しやすくなります。
コードのバージョン管理や入出力の記録に加えて、Models はアプリケーションの挙動を制御する構造化されたパラメーターも取得するため、どのパラメーターが最も適しているかを確認するのに役立ちます。さらに、Weave Models は serve や評価でも使用できます。
以下の例では、さまざまなモデルと temperature を試せます。
関数呼び出し
