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

> CommError、CUDA のメモリ不足、wandb agent の失敗など、W&B sweep でよくある問題の対処方法を説明します。

# Sweeps のトラブルシューティング

一般的なエラーメッセージは、推奨されるガイダンスを参考に対処してください。

<div id="commerror-run-does-not-exist-and-error-error-uploading">
  ### `CommError, Run does not exist` と `ERROR Error uploading`
</div>

この 2 つのエラーメッセージが両方とも返される場合は、W\&B Run ID を定義している可能性があります。たとえば、Jupyter Notebook や Python スクリプトのどこかに、次のようなコードスニペットがあるかもしれません。

```python theme={null}
wandb.init(id="some-string")
```

W\&B Sweeps では run ID を設定できません。これは、W\&B Sweeps によって作成された Runs には、W\&B がランダムな一意の ID を自動的に生成するためです。

W\&B の run ID は、プロジェクト内で一意である必要があります。

表やグラフに表示されるカスタムの名を設定したい場合は、W\&B の初期化時に name パラメーターに名を渡すことをお勧めします。例:

```python theme={null}
wandb.init(name="a helpful readable run name")
```

<div id="cuda-out-of-memory">
  ### `Cuda out of memory`
</div>

このエラーメッセージが表示された場合は、プロセスベースで実行するようにコードをリファクタリングしてください。より具体的には、コードを Python スクリプトに書き換えてください。また、W\&B Python SDK ではなく、CLI から W\&B sweep Agent を呼び出してください。

たとえば、コードを `train.py` という Python スクリプトに書き換えるとします。トレーニングスクリプト (`train.py`) の名を、YAML の sweep 設定ファイル (この例では `config.yaml`) に追加してください。

```yaml theme={null}
program: train.py
method: bayes
metric:
  name: validation_loss
  goal: maximize
parameters:
  learning_rate:
    min: 0.0001
    max: 0.1
  optimizer:
    values: ["adam", "sgd"]
```

次に、Python スクリプト `train.py` に以下を追加します。

```python theme={null}
if _name_ == "_main_":
    train()
```

CLI にアクセスし、wandb sweep を使用して W\&B sweep を初期化します:

```shell theme={null}
wandb sweep config.yaml
```

返されたW\&B Sweep IDを控えておきます。次に、Python SDK ([`wandb.agent()`](/ja/models/ref/python/functions/agent)) ではなくCLIを使用して、[`wandb agent`](/ja/models/ref/cli/wandb-agent)でsweepジョブを開始します。以下のコードスニペットの`sweep_ID`を、前のstepで返されたSweep IDに置き換えてください。

```shell theme={null}
wandb agent sweep_ID
```

<div id="anaconda-400-error">
  ### `anaconda 400 error`
</div>

通常、以下のエラーは、最適化対象のメトリクスをログしていない場合に発生します。

```shell theme={null}
wandb: ERROR Error while calling W&B API: anaconda 400 error:
{"code": 400, "message": "TypeError: bad operand type for unary -: 'NoneType'"}
```

YAML ファイルまたはネストされた辞書内で、最適化する "metric" というキーを指定します。このメトリクスを (`wandb.Run.log()`) でログしていることを確認してください。さらに、Python スクリプトまたは Jupyter Notebook では、sweep で最適化対象として定義したメトリクス名と*完全に*同じ名を使用していることを確認してください。設定ファイルの詳細については、[sweep 設定を定義する](/ja/models/sweeps/define-sweep-configuration/)を参照してください。
