以下をトラッキングすること:入力、出力、メタデータおよびアプリを通じて流れるデータは、システムのパフォーマンスを理解するために重要です。しかし時間の経過とともにアプリをバージョン管理することも、コードやアプリケーションパラメータの変更が出力にどのように影響するかを理解するために重要です。WeaveのModelクラスは、これらの変更をWeaveで追跡する方法です。
このチュートリアルでは以下を学びます:
- Weave
Modelを使用してアプリケーションとそのパラメータを追跡しバージョン管理する方法。
- すでにログに記録されているWeave
Modelをエクスポート、変更、再利用する方法。
の使用weave.Model
weave.Modelクラスは現在Pythonでのみサポートされています。
WeaveModelを使用することで、モデルベンダーID、プロンプト、温度などのパラメータが保存され、変更時にバージョン管理されます。
WeaveでModelを作成するには、以下が必要です:
- から継承するクラス
weave.Model
- すべてのクラスフィールドの型定義
- 型付けされた
invoke関数と@weave.op()デコレータ
クラスフィールドやモデルを定義するコードを変更すると、これらの変更がログに記録され、バージョンが更新されます。これにより、アプリの異なるバージョン間で生成結果を比較できます。
以下の例では、モデル名、温度、システムプロンプトが追跡されバージョン管理されます:
これでモデルをインスタンス化し、invokeで呼び出すことができます:
を呼び出した後、Weaveでトレースを確認できます.invokeがモデルパラメータとコードを追跡するようになりましたでデコレートされたモデル関数のweave.op()。モデルもバージョン管理されていることがわかります(この場合は「v21」)。モデルをクリックするとそのバージョンのモデルを使用したすべての呼び出しを確認できます
の使用に関する注意:weave.Model:
predictの代わりにinvokeをWeaveModelの関数名として使用することもできます。
- 他のクラスメソッドをweaveで追跡したい場合は、
weave.op()
- アンダースコアで始まるパラメータはweaveによって無視され、ログに記録されません
ログに記録されたweave.Model
のエクスポートと再利用
Weaveは呼び出されたモデルを保存しバージョン管理するため、これらのモデルをエクスポートして再利用することが可能です。モデル参照の取得
Weave UIで特定のバージョンのモデル参照を取得できます
モデルの使用
モデルオブジェクトのURIを取得したら、それをエクスポートして再利用できます。エクスポートされたモデルはすでに初期化されており、すぐに使用できることに注意してください:
ここで、同じモデルバージョン(v21)が新しい入力で使用されたことがわかります:
次のステップ