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

# GPU Instances

> Rent dedicated B200 GPU instances with SSH access for training, fine-tuning, and custom workloads.

DeepInfra GPU Instances give you dedicated access to NVIDIA B200 hardware — the most powerful GPUs available. You get a container with SSH access and full control over your environment, billed by the hour.

## Available GPUs

| GPU            | Memory      | Best for                                     |
| -------------- | ----------- | -------------------------------------------- |
| **B200-180GB** | 180GB HBM3e | Large-scale inference, fine-tuning, training |

## Key features

* **Dedicated access** — no sharing with other users
* **SSH access** — connect directly to your container
* **Full environment control** — bring your own Docker image or use ours
* **Pay-per-use** — billed by the hour, only while running
* **Quick setup** — running in minutes

## Use cases

* LLM training and fine-tuning
* Large-scale batch inference
* Research and experimentation
* Development environments with GPU access

## Web UI

### Start a new container

1. Go to [Dashboard → GPU Instances](https://deepinfra.com/dash/instances)
2. Click **New Container**
3. **Select GPU configuration** — choose from available B200/B300 configs. Each shows:
   * GPU type, quantity, and memory (e.g., `1xB200-180GB`, `8xB200-180GB`)
   * Hourly pricing
   * Availability status
4. **Enter container details**:
   * **Container Name** — a descriptive name
   * **SSH Key** — paste your public SSH key (format: `ssh-rsa AAAAB3NzaC1yc2E...`)
5. Accept the NVIDIA license agreements and cryptocurrency mining policy
6. Click **I agree to the above**

### Connect to a running container

1. Wait for container status to show `running`
2. Click on the SSH login field to copy the command
3. Run `ssh ubuntu@<ip-address>` in your terminal

### Stop a container

1. Click on the container in the instances list
2. Click **Terminate**
3. Type `confirm` and click **Terminate**

<Warning>
  All container data is permanently lost when terminated. Save your work before stopping.
</Warning>

## HTTP API

### Create a container

```bash theme={null}
curl -X POST https://api.deepinfra.com/v1/containers \
  -H "Authorization: Bearer $DEEPINFRA_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-cluster",
    "gpu_config": "8xB200-180GB",
    "container_image": "di-cont-ubuntu-torch:latest",
    "cloud_init_user_data": "#cloud-config\nusers:\n- name: ubuntu\n  shell: /bin/bash\n  sudo: '\''ALL=(ALL) NOPASSWD:ALL'\''\n  ssh_authorized_keys:\n  - ssh-rsa AAAAB3NzaC1yc2E..."
  }'
```

### Get container details

```bash theme={null}
curl -X GET https://api.deepinfra.com/v1/containers/{container_id} \
  -H "Authorization: Bearer $DEEPINFRA_TOKEN"
```

Once `running`, connect via SSH:

```bash theme={null}
ssh ubuntu@<container-ip>
```

### List containers

```bash theme={null}
curl -X GET https://api.deepinfra.com/v1/containers \
  -H "Authorization: Bearer $DEEPINFRA_TOKEN"
```

### Terminate a container

```bash theme={null}
curl -X DELETE https://api.deepinfra.com/v1/containers/{container_id} \
  -H "Authorization: Bearer $DEEPINFRA_TOKEN"
```

## Container lifecycle

| State           | Description                                       |
| --------------- | ------------------------------------------------- |
| `creating`      | Container is being initialized                    |
| `starting`      | Container is booting up                           |
| `running`       | Container is active and accessible                |
| `shutting_down` | Container is being terminated                     |
| `failed`        | Container failed to start or encountered an error |
| `deleted`       | Container has been permanently removed            |
