Skip to main content

VoltageGPU CLI — Deploy and manage Confidential Compute (Intel TDX) GPU pods from the command line.

Project description

VoltageGPU CLI

Confidential AI Infrastructure from the command line.

voltagegpu-cli lets you deploy and manage Confidential Compute GPU pods on VoltageGPU — hardware-attested Intel TDX environments with AES memory encryption and Protected PCIe, built for regulated workloads that cannot trust the host.

Install

pip install voltagegpu-cli

Or from source:

git clone https://github.com/voltagegpu/voltagegpu-cli.git
cd voltagegpu-cli
pip install -e .

Configure

Get an API key from voltagegpu.com and set it:

export VOLT_API_KEY="your_api_key_here"

Or create ~/.volt/config.ini:

[api]
api_key = your_api_key_here

Quick start

# Browse available Confidential Compute GPU tiers
volt cc inventory

# Register your SSH public key
volt ssh-keys add --name laptop --file ~/.ssh/id_ed25519.pub

# Deploy a hardware-attested pod
volt cc deploy --name my-pod --resource h200-small --image ubuntu:22.04

# List running pods
volt pods list

# Print the SSH command
volt pods ssh <pod_id>

# Stop or delete
volt pods stop <pod_id>
volt pods delete <pod_id>

Commands

Confidential Compute

volt cc inventory                      # list available GPU tiers + prices
volt cc deploy --name NAME \           # deploy a pod
               --resource TIER \
               --image ubuntu:22.04 \
               [--ssh-key <uid>]

Pods

volt pods list [--json]
volt pods get <pod_id>
volt pods ssh <pod_id>
volt pods stop <pod_id>
volt pods delete <pod_id> [--yes]

SSH keys

volt ssh-keys list [--json]
volt ssh-keys add --name LABEL (--file PATH | --key "ssh-ed25519 AAAA…")
volt ssh-keys delete <key_id> [--yes]

Account

volt account balance
volt account info
volt config               # show current SDK config (masked)

All list commands support --json for machine-readable output.

Python SDK

from volt import VoltageGPUClient

with VoltageGPUClient() as client:
    # Browse inventory
    for item in client.list_confidential_inventory():
        print(item["display_name"], item["final_price_per_hour"])

    # Deploy a pod
    result = client.create_confidential_pod(
        name="training-run",
        resource_name="h200-small",
        image="ubuntu:22.04",
    )
    pod = result["pod"]
    print(f"Deployed {pod['targonUid']}{pod['ssh_command']}")

    # List, stop, delete
    for pod in client.list_pods():
        print(pod.name, pod.status, pod.hourly_price)

    client.stop_pod(pod.id)
    client.delete_pod(pod.id)

Custom configuration

from volt.sdk import Config, VoltageGPUClient

client = VoltageGPUClient(
    config=Config(
        api_key="your_api_key",
        base_url="https://api.voltagegpu.com/api",
    )
)

Environment variables

Variable Description Default
VOLT_API_KEY Your VoltageGPU API key
VOLT_BASE_URL API base URL https://api.voltagegpu.com/api

Examples

Stop every running pod

volt pods list --json | \
  jq -r '.[] | select(.status == "RUNNING") | .id' | \
  xargs -I {} volt pods stop {}

Pick the cheapest H200 tier

volt cc inventory --json | \
  jq 'map(select(.display_name | test("H200"))) | sort_by(.final_price_per_hour)[0]'

Support

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voltagegpu_cli-1.2.0.tar.gz (39.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voltagegpu_cli-1.2.0-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file voltagegpu_cli-1.2.0.tar.gz.

File metadata

  • Download URL: voltagegpu_cli-1.2.0.tar.gz
  • Upload date:
  • Size: 39.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for voltagegpu_cli-1.2.0.tar.gz
Algorithm Hash digest
SHA256 e6fd8d9d2a35d1c8ff5d13a98c1fbf1c2bdbc686738bf73a7b58c42c0767243d
MD5 881890dd71b05e444856e0c095e3a269
BLAKE2b-256 ac1291f87508831b9aef1951c2b0cd499e0a4b147ed0754927a12d403494347e

See more details on using hashes here.

File details

Details for the file voltagegpu_cli-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: voltagegpu_cli-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for voltagegpu_cli-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a4fab28a3b7e8d3227ab0a113d6ffd2fb20cacc09ae0f7e767dcd33bc99de5ec
MD5 c2412e243b24febb0073ea6450cc9b95
BLAKE2b-256 94f20c40712c76981c5f1c75589212384b63bb4958c1100d0ef9af6c1f22a421

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page