メインコンテンツへスキップ

API 概要


class DisplayNameFuncError


class OpCallError


class OpKwargs

op() のキーワード引数を表す TypedDict。

class Sentinel

Sentinel(package: ‘str’, path: ‘str’, name: ‘str’)

method __init__

__init__(package: 'str', path: 'str', name: 'str') → None

class WeaveKwargs


関数 as_op

as_op(fn: 'Callable[P, R]') → Op[P, R]
@weave.op でデコレートされた関数を受け取り、その Op を返します。 @weave.op でデコレートされた関数はすでに Op のインスタンスであるため、この関数は実行時には実質的に何もしません。ただし、OpDef の属性に型安全にアクセスする必要がある場合は、型チェッカーを満たすために使用できます。 引数:
  • fn: weave.op でデコレートされた関数。 戻り値: 関数の Op。

関数 call

call(
    op: 'Op',
    *args: 'Any',
    __weave: 'WeaveKwargs | None' = None,
    __should_raise: 'bool' = False,
    __require_explicit_finish: 'bool' = False,
    **kwargs: 'Any'
) → tuple[Any, Call] | Coroutine[Any, Any, tuple[Any, Call]]
op を実行し、結果と実行を表す Call の両方を返します。 この関数は例外を送出しません。エラーはすべて Call オブジェクトに記録されます。 この method は、@weave.op でデコレートされたすべての関数に自動的にバインドされるため、次のように使用できます。
@weave.op
def add(a: int, b: int) -> int:
     return a + b

result, call = add.call(1, 2)

関数 calls

calls(op: 'Op') → CallsIter
この op に対するすべての Call を反復処理するイテレータを取得します。 この method は、@weave.op でデコレートされた任意の 関数 に自動的にバインドされるため、次のように使用できます。
@weave.op
def add(a: int, b: int) -> int:
     return a + b

calls = add.calls()
for call in calls:
     print(call)

関数 get_captured_code

get_captured_code(op: 'Op') → str
op のキャプチャ済みコードを取得します。 これは、ref から取得した op に対してのみ機能します。パターンは次のとおりです。 ref = weave.publish(func) op = ref.get() captured_code = op.get_captured_code()

関数 is_op

is_op(obj: 'Any') → TypeIs[Op]
オブジェクトが Op かどうかを確認します。

関数 is_placeholder_call

is_placeholder_call(call: 'Call') → TypeIs[NoOpCall]

関数 is_tracing_setting_disabled

is_tracing_setting_disabled() → bool

関数 maybe_bind_method

maybe_bind_method(func: 'Callable', self: 'Any' = None) → Callable | MethodType
任意のobject (class でないものも含む) に関数をバインドします。 self が None の場合は、関数をそのまま返します。

関数 maybe_unbind_method

maybe_unbind_method(oplike: 'Op | MethodType | partial') → Op
Op のような method または partial のバインドを解除し、通常の Op 関数にします。 対象:
  • methods: 束縛された self パラメータを削除します
  • partials: あらかじめ設定されたパラメータを削除します

関数 op

op(
    func: 'Callable[P, R] | None' = None,
    name: 'str | None' = None,
    call_display_name: 'str | CallDisplayNameFunc | None' = None,
    postprocess_inputs: 'PostprocessInputsFunc | None' = None,
    postprocess_output: 'PostprocessOutputFunc | None' = None,
    tracing_sample_rate: 'float' = 1.0,
    enable_code_capture: 'bool' = True,
    accumulator: 'Callable[[Any | None, Any], Any] | None' = None,
    kind: 'OpKind | None' = None,
    color: 'OpColor | None' = None,
    eager_call_start: 'bool' = False
) → Callable[[Callable[P, R]], Op[P, R]] | Op[P, R]
関数またはmethodをWeaveのopに変換するデコレータです。同期・非同期の両方に対応しています。イテレータ関数を自動的に検出し、それに応じた適切な動作を適用します。 引数:

関数 placeholder_call

placeholder_call() → Call

関数 setup_dunder_weave_dict

setup_dunder_weave_dict(op: 'Op', d: 'WeaveKwargs | None' = None) → WeaveKwargs
ops に WeaveKwargs を渡すために使用する __weave dict を設定します。
  • func: デコレートする関数。
  • name: op のカスタム名。デフォルトでは関数名になります。
  • call_display_name: Call の表示名。文字列または callable を指定できます。
  • postprocess_inputs: logging の前に入力を変換する関数。
  • postprocess_output: logging の前に出力を変換する関数。
  • tracing_sample_rate: トレースする Call の割合 (0.0 ~ 1.0)。
  • enable_code_capture: この op のソースコードを取得するかどうか。
  • accumulator: ストリーミング ops の結果を蓄積する関数。
  • eager_call_start: True の場合、Call の開始はバッチ処理ではなく直ちに送信されます。UI にすぐ表示する必要がある評価のような長時間実行される operation に便利です。 引数:
  • d: 更新対象の既存の WeaveKwargs dict (省略可) 。
  • op: kind と color の抽出元となる op。 戻り値: attributes、display_name、および必要に応じて kind/color が設定された WeaveKwargs dict。

関数 should_skip_tracing_for_op

should_skip_tracing_for_op(op: 'Op') → bool