メインコンテンツへスキップ
Colab で開く weave.init() を呼び出した後、Weave は Cohere Python ライブラリ 経由で行われる LLM call を自動的にトラッキングしてログします。

トレース

開発中でも本番環境でも、LLM アプリケーションのトレースを一元管理されたデータベースに保存することが重要です。これらのトレースは、デバッグや、アプリケーション改善に役立つデータセットとして活用できます。 Weave は cohere-python のトレースを自動的に取得します。ライブラリは通常どおり使用でき、まず weave.init() を呼び出します:
weave.init() の呼び出し時に W&B team を指定しない場合、Weave はデフォルトの entity を使用します。デフォルトの entity を確認または更新するには、W&B Models ドキュメントの User Settings を参照してください。 Cohere モデルは connectors をサポートしており、これを使用するとエンドポイント側から他の API へリクエストを送信できます。レスポンスには、コネクタ から返されたドキュメントへのリンクを含む citation 要素付きの生成テキストが含まれます。 cohere_trace.png
LLM Call をトラッキングするために、Weave は Cohere の Client.chat()AsyncClient.chat()Client.chat_stream()AsyncClient.chat_stream() の各 method にパッチを適用します。

独自の op でラップする

Weave の op を使うと、実験を進めながらコードが自動的にバージョン管理され、入力と出力も記録されるため、結果を_再現可能_にできます。Cohere の chat method を呼び出す @weave.op() でデコレートした関数を作成すると、Weave が入力と出力をトラッキングしてくれます。以下はその例です。
cohere_ops.png

実験をしやすくするために Model を作成する

複数の要素が絡む実験では、情報を整理するのが難しくなります。Model クラスを使用すると、system prompt や使用しているモデルなど、アプリの実験に関する詳細を記録して整理できます。これにより、アプリのさまざまなバージョンを整理し、比較しやすくなります。 Model は、コードのバージョン管理や入力/出力の記録に加えて、アプリケーションの挙動を制御する構造化されたパラメーターも保持するため、どのパラメーターが最も効果的だったかを見つけやすくなります。また、Weave Models は serveEvaluation でも使用できます。 以下の例では、modeltemperature を試せます。これらのいずれかを変更するたびに、WeatherModel の新しい version が作成されます。
cohere_model.png