# Select CUDA GPU device

- **Method:** `PUT`
- **Path:** `/api/v1/system/gpu-device`
- **Operation ID:** `set_gpu_device_api_v1_system_gpu_device_put`
- **Tags:** System

Switch the active CUDA device. Unloads both TTS and ASR models for device migration.

## Effective servers

- `http://127.0.0.1:8100`

  Voice Creator Pro on this computer

## Query parameters

- **`index` (required)**: `integer`

  CUDA device index

## Responses

### 200 Successful Response

**Content type:** `application/json`

schema: `SetGpuDeviceResponse`

- **`changed` (required)**: `boolean`

  Whether the device was actually changed
- **`success` (required)**: `boolean`

  Whether the operation succeeded
- **`message`**: `string | null`

  Optional status message
- **`needs_reload`**: `boolean`, default: `false`

  Whether the TTS model needs to be reloaded on the new device

**Example:**

```json
{
  "success": true,
  "changed": true,
  "needs_reload": false,
  "message": ""
}
```

### 422 Validation Error

**Content type:** `application/json`

schema: `HTTPValidationError`

- **`detail`**: `array`

  **Items:**

  schema: `ValidationError`
  - **`loc` (required)**: `array of (string | integer)`
  - **`msg` (required)**: `string`
  - **`type` (required)**: `string`
  - **`ctx`**: `object`
  - **`input`**: `any`

**Example:**

```json
{
  "detail": [
    {
      "loc": [
        ""
      ],
      "msg": "",
      "type": "",
      "input": null,
      "ctx": {}
    }
  ]
}
```

## Schemas

- `HTTPValidationError` — shown above.
- `SetGpuDeviceResponse` — shown above.
- `ValidationError` — shown above.
