> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-docs-1917.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

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

大規模なデータセットで評価を実行する際のパフォーマンスを向上させるには、次の 2 つの method を併用してください。

<div id="flushing">
  ### フラッシュ
</div>

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

例:

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

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

client.flush()
```

<div id="increasing-client-parallelism">
  ### クライアントの並列性を上げる
</div>

クライアントの並列性は環境に応じて自動的に決まりますが、次の環境変数を使って手動で設定することもできます。

* `WEAVE_CLIENT_PARALLELISM`: 並列処理に使用できるスレッド数です。この値を増やすと、並列処理に使用できるスレッド数も増え、データセットのアップロードのようなバックグラウンドタスクのパフォーマンスが向上する可能性があります。

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

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

***

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