@weave.op でデコレートした関数またはメソッドです。デフォルトでは、Op の名前は関数名になり、関連する Call も同じ表示名を持ちます。
特定の Op のすべての Call の表示名は、いくつかの方法で上書きできます。
- Python
- TypeScript
- Op を呼び出すときに表示名を変更します。
次の例では、
__weave辞書を使用して Call の表示名を設定し、Op の表示名よりも優先されるようにしています。
- Call ごとに表示名を変更します。
次の例では、
Op.callメソッドを使用してcallオブジェクトを返し、その後でcall.set_display_nameを使って表示名を設定します。
- 特定の Op に対するすべての Call の表示名を変更します。
次の例では、
@weave.op関数デコレータ自体に新しい表示名を設定し、その Op に対するすべての Call に反映させています。
call_display_name は、call オブジェクトを受け取り文字列を返す関数にすることもできます。関数が実行されるときに Weave が自動的に call オブジェクトを渡すため、関数名や Call の入力、フィールドなどに基づいて動的に名前を生成できます。一般的なユースケースの 1 つは、関数名にタイムスタンプを付加することです。.attributes を使ってカスタム メタデータを記録することもできます。- Op 自体の表示名を変更します。 Op に関連付けられた Call は同じ表示名を持ちます。Op 自体の名前を上書きすると、Call の表示名も変更されます。これは次の 2 通りの方法で行えます。
- どの Call もログに記録される前に、Op の
nameプロパティを設定する:
- Op デコレータの
nameオプションを設定する: