> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# op

> weave.trace.op の Python SDK リファレンス

export const SourceLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="source-link">
    Source
  </a>;

<h1 id="api-overview">
  API 概要
</h1>

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L96" />

<h2 id="class-displaynamefuncerror">
  <kbd>クラス</kbd> `DisplayNameFuncError`
</h2>

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L99" />

<h2 id="class-opcallerror">
  <kbd>クラス</kbd> `OpCallError`
</h2>

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L215" />

<h2 id="class-opkwargs">
  <kbd>クラス</kbd> `OpKwargs`
</h2>

op() のキーワード引数用の TypedDict です。

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L120" />

<h2 id="class-sentinel">
  <kbd>クラス</kbd> `Sentinel`
</h2>

Sentinel(package: 'str', path: 'str', name: 'str')

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/../../../../weave/trace/op/__init__" />

<h3 id="method-__init__">
  <kbd>メソッド</kbd> `__init__`
</h3>

```python theme={"system"}
__init__(package: 'str', path: 'str', name: 'str') → None
```

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L209" />

<h2 id="class-weavekwargs">
  <kbd>クラス</kbd> `WeaveKwargs`
</h2>

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1477" />

<h3 id="function-as_op">
  <kbd>関数</kbd> `as_op`
</h3>

```python theme={"system"}
as_op(fn: 'Callable[P, R]') → Op[P, R]
```

@weave.op でデコレートされた関数を受け取り、その Op を返します。

@weave.op でデコレートされた関数はすでに Op のインスタンスであるため、この関数は実行時には no-op となります。ただし、OpDef の属性に型安全にアクセスする必要がある場合は、型チェッカーを満たす目的でこの関数を使用できます。

**引数:**

* <b>`fn`</b>: weave.op でデコレートされた関数。
  **戻り値:**
  関数の Op。

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1170" />

<h3 id="function-call">
  <kbd>関数</kbd> `call`
</h3>

```python theme={"system"}
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 オブジェクトに取得されます。

このメソッドは `@weave.op` でデコレートされたすべての関数に自動的にバインドされ、次のように使用できます。

```python theme={"system"}
@weave.op
def add(a: int, b: int) -> int:
     return a + b

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

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1216" />

<h3 id="function-calls">
  <kbd>関数</kbd> `calls`
</h3>

```python theme={"system"}
calls(op: 'Op') → CallsIter
```

この op へのすべての Call を走査するイテレーターを取得します。

このメソッドは、`@weave.op` でデコレートされたすべての関数に自動的にバインドされ、次のように使用できます。

```python theme={"system"}
@weave.op
def add(a: int, b: int) -> int:
     return a + b

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

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1423" />

<h3 id="function-get_captured_code">
  <kbd>関数</kbd> `get_captured_code`
</h3>

```python theme={"system"}
get_captured_code(op: 'Op') → str
```

op の取得されたコードを取得します。

これは、ref から op を取得した場合にのみ機能します。使用パターンは次のとおりです。

ref = weave.publish(func) op = ref.get() captured\_code = op.get\_captured\_code()

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1469" />

<h3 id="function-is_op">
  <kbd>関数</kbd> `is_op`
</h3>

```python theme={"system"}
is_op(obj: 'Any') → TypeIs[Op]
```

オブジェクトが Op かどうかを確認します。

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L443" />

<h3 id="function-is_placeholder_call">
  <kbd>関数</kbd> `is_placeholder_call`
</h3>

```python theme={"system"}
is_placeholder_call(call: 'Call') → TypeIs[NoOpCall]
```

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L411" />

<h3 id="function-is_tracing_setting_disabled">
  <kbd>関数</kbd> `is_tracing_setting_disabled`
</h3>

```python theme={"system"}
is_tracing_setting_disabled() → bool
```

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1440" />

<h3 id="function-maybe_bind_method">
  <kbd>関数</kbd> `maybe_bind_method`
</h3>

```python theme={"system"}
maybe_bind_method(func: 'Callable', self: 'Any' = None) → Callable | MethodType
```

任意のオブジェクトに関数をバインドします (クラスでない場合でも) 。

self が None の場合、関数をそのまま返します。

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1452" />

<h3 id="function-maybe_unbind_method">
  <kbd>関数</kbd> `maybe_unbind_method`
</h3>

```python theme={"system"}
maybe_unbind_method(oplike: 'Op | MethodType | partial') → Op
```

Op に類似したメソッドまたは部分適用の束縛を解除し、通常の Op 関数にします。

対象ごとの処理:

* メソッドの場合、設定済みの `self` パラメーターを削除します
* 部分適用の場合、事前設定されたすべてのパラメーターを削除します

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L1240" />

<h3 id="function-op">
  <kbd>関数</kbd> `op`
</h3>

```python theme={"system"}
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,
    attributes: 'dict[str, Any] | None' = None,
    eager_call_start: 'bool' = False
) → Callable[[Callable[P, R]], Op[P, R]] | Op[P, R]
```

関数またはメソッドを Weave op に変換するデコレーターです。同期と非同期の両方に対応しています。イテレーター関数を自動的に検出し、適切な動作を適用します。

**引数:**

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L436" />

<h3 id="function-placeholder_call">
  <kbd>関数</kbd> `placeholder_call`
</h3>

```python theme={"system"}
placeholder_call() → Call
```

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L231" />

<h3 id="function-setup_dunder_weave_dict">
  <kbd>関数</kbd> `setup_dunder_weave_dict`
</h3>

```python theme={"system"}
setup_dunder_weave_dict(op: 'Op', d: 'WeaveKwargs | None' = None) → WeaveKwargs
```

WeaveKwargs を op に渡すために使用される \_\_weave dict を設定します。

* <b>`func`</b>: デコレートする関数。

* <b>`name`</b>: op のカスタム名。関数の名をデフォルトとします。

* <b>`call_display_name`</b>: Call の表示名。string または callable を指定できます。

* <b>`postprocess_inputs`</b>: ログする前に入力を変換する関数。

* <b>`postprocess_output`</b>: ログする前に出力を変換する関数。

* <b>`tracing_sample_rate`</b>: トレースする Call の割合 (0.0 から 1.0) 。

* <b>`enable_code_capture`</b>: この op のソースコードを取得するかどうか。

* <b>`accumulator`</b>: ストリーミング op の結果を蓄積する関数。

* <b>`attributes`</b>: この op が作成するすべての Call にマージされるデフォルトの属性 (優先度が最も低い) 。`weave.attributes()` コンテキストと明示的な Call ごとの属性は、キーの競合時にこれらを上書きします。予約済みの "weave" キーはここでは設定できません。

* <b>`eager_call_start`</b>: True の場合、Call の開始がバッチ処理ではなく即時に送信されます。評価などの長時間実行される操作で、UI にすぐに表示する必要がある場合に便利です。
  **引数:**

* <b>`d`</b>: 更新する既存の WeaveKwargs dict (オプション) 。

* <b>`op`</b>: kind と color を抽出する Op。
  **戻り値:**
  attributes、display\_name、およびオプションで kind/color が設定された WeaveKwargs dict。

***

<SourceLink url="https://github.com/wandb/weave/blob/v0.53.1/weave/trace/op.py#L422" />

<h3 id="function-should_skip_tracing_for_op">
  <kbd>関数</kbd> `should_skip_tracing_for_op`
</h3>

```python theme={"system"}
should_skip_tracing_for_op(op: 'Op') → bool
```


## Related topics

- [op](/ja/products/wandb/weave/reference/typescript-sdk/functions/op.md)
