> ## 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.

# 評価のクリーンアップに時間がかかる場合

このページでは、大規模なデータセットを使用して W\&B Weave の評価を実行する際に、クリーンアップ時間を短縮するために併用する 2 つの方法について説明します。評価コードの実行が完了してからプログラムが終了するまでに、長い遅延が発生しているユーザーを対象としています。

以下のセクションでは、保留中のバックグラウンド処理をフラッシュする方法と、クライアントの並列性を高める方法について説明します。

<h2 id="flush-pending-background-work">
  保留中のバックグラウンド処理をフラッシュする
</h2>

フラッシュを行うと、保留中のバックグラウンド処理をコードの終了後まで待たずに、メインスレッドと並行して強制的に完了させることができます。

大規模なデータセットで評価を実行すると、バックグラウンドスレッドでデータセットをアップロードしている間、プログラムの実行が完了するまでに長い待ち時間が発生することがあります。これは、バックグラウンドのクリーンアップが完了する前にメインスレッドの実行が終了した場合に起こります。`client.flush()` を呼び出すと、すべてのバックグラウンドタスクがメインスレッドで強制的に処理されるため、メインスレッドの実行中に並列処理が行われます。ユーザーコードがデータのサーバーへのアップロードより先に完了する場合、これによりパフォーマンスが向上する可能性があります。

次の例では、評価の後に保留中のバックグラウンド処理をフラッシュします。

```python theme={"system"}
client = weave.init("fast-upload")

# ... 評価のセットアップ
result = evaluation.Evaluate(dataset_id="my_dataset_id")

client.flush()
```

<h2 id="increase-client-parallelism">
  クライアントの並列性を高める
</h2>

クライアントの並列性を高めると、データセットのアップロードなどのバックグラウンド処理に Weave が使用できるスレッドが増えます。フラッシュと併用することで、クリーンアップにかかる時間をさらに短縮できます。

Weave は環境に基づいてクライアントの並列性を自動的に決定しますが、次の環境変数を使用して手動で設定することもできます。

* `WEAVE_CLIENT_PARALLELISM`: 並列処理に使用できるスレッド数。この値を大きくすると、データセットのアップロードなどのバックグラウンドタスクのパフォーマンスが向上する場合があります。

`weave.init()` の `settings` 引数を使用して、プログラムから設定することもできます。

```python theme={"system"}
client = weave.init("fast-upload", settings={"client_parallelism": 100})
```

***

<Badge stroke shape="pill" color="blue" size="md">[パフォーマンス](/ja/support/weave/tags/performance)</Badge><Badge stroke shape="pill" color="blue" size="md">[評価](/ja/support/weave/tags/evaluation)</Badge>
