GPU Cloud

Implante instâncias gerenciadas de GPU, execute workloads de modelos ou Docker e conecte-se pela API do EmpirioLabs.

GPU Cloud fornece instâncias gerenciadas de GPU para servir modelos, notebooks, ComfyUI, Web Terminal, Ollama ou sua própria imagem CUDA. A cobrança é medida por segundo em relação ao seu saldo de crédito. Conecte-se a cargas de trabalho em execução por caminhos autenticados da API do EmpirioLabs.

Você pode gerenciar instâncias a partir da página da GPU Cloud no painel ou através da API documentada aqui.

Como funciona

  1. Escolha uma GPU do catálogo. Cada linha mostra VRAM, preços por hora e a contagem exata disponível.
  2. Escolha uma carga de trabalho: um modelo selecionado, um id de modelo Hugging Face, um template ou uma imagem personalizada do CUDA Docker.
  3. Implante a instância. As configurações do seu painel mostram o limite atual da GPU para sua conta.
  4. Espere pela prontidão. Novas instâncias passam por provisioning, depois loading, depois running.
  5. Conecte-se pela API usando sua chave API do EmpirioLabs.
  6. Pare ou destrua quando terminar. Instâncias paradas liberam a GPU e o disco de runtime enquanto preservam a especificação de deploy para um recomeço. Instâncias destruídas são removidas permanentemente.

Preços e limites

  • Os preços são listados por GPU por hora e cobrados por segundo.
  • Implantações multi-GPU são chamadas de listed hourly price x GPU count.
  • O faturamento começa quando uma instância chega ao running.
  • O faturamento para quando uma instância é interrompida ou destruída.
  • Implantar e iniciar uma instância exige saldo de crédito suficiente para a janela inicial de execução.
  • Instâncias em execução são interrompidas automaticamente quando o limiar de saldo não é mais suficiente.
  • GPU Cloud limites são definidos pelo escopo da conta. As configurações do seu painel mostram seu limite efetivo.
  • O tamanho do disco pode ser solicitado de 100 GB a 300 GB.

O catálogo retorna metadados seguros para o cliente da GPU, preços e disponibilidade atual.

GET
/v1/gpu/catalog
1curl https://api.empiriolabs.ai/v1/gpu/catalog
$curl https://api.empiriolabs.ai/v1/gpu/catalog
1{
2 "object": "list",
3 "data": [
4 {
5 "slug": "rtx-4090",
6 "name": "RTX 4090",
7 "vram_gb": 24,
8 "price_hourly": 0.65,
9 "available": true,
10 "available_count": 21,
11 "max_gpus": 8,
12 "regions": ["US", "EU"]
13 }
14 ]
15}
GET
/v1/gpu/catalog/:slug
1curl https://api.empiriolabs.ai/v1/gpu/catalog/rtx-4090

Implantar uma instância

A implantação começa a provisionar e retorna uma instância em status provisioning. A enquete GET /v1/gpu/instances/\{id\} até status running. Se a alocação ou configuração não puder ficar pronta a tempo, a instância passa para error e a alocação é cancelada automaticamente.

POST
/v1/gpu/instances
1curl -X POST https://api.empiriolabs.ai/v1/gpu/instances \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "gpu_slug": "rtx-4090"
6}'

Implantar um modelo

Passe um template_slug selecionado ou cole qualquer ID de repositório do Hugging Face. As implantações de modelos são atendidas a partir de um endpoint /v1 compatível com OpenAI na instância.

$curl https://api.empiriolabs.ai/v1/gpu/instances \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "gpu_slug": "rtx-4090",
> "mode": "model",
> "hf_id": "Qwen/Qwen2.5-7B-Instruct"
> }'

Para repositórios bloqueados, passe o token em env:

1{
2 "gpu_slug": "a100-80gb",
3 "mode": "model",
4 "hf_id": "meta-llama/Llama-3.1-8B-Instruct",
5 "env": { "HF_TOKEN": "hf_..." }
6}

Implante um template

Templates são ready-to-run ambientes. Os modelos disponíveis incluem PyTorch + JupyterLab, ComfyUI, Web Terminal e Ollama.

$curl https://api.empiriolabs.ai/v1/gpu/instances \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "gpu_slug": "rtx-4090",
> "mode": "template",
> "template_slug": "pytorch-jupyter",
> "disk_gb": 150
> }'

Implantar uma imagem Docker personalizada

Execute sua própria imagem CUDA. Imagens apenas de CPU podem falhar porque o tempo de execução espera um container compatível com GPU.

$curl https://api.empiriolabs.ai/v1/gpu/instances \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "gpu_slug": "rtx-4090",
> "mode": "custom",
> "image": "pytorch/pytorch:2.4.0-cuda12.1-cudnn9-runtime",
> "ports": [8000],
> "disk_gb": 150,
> "env": { "MY_VAR": "value" }
> }'

Gerencie o ciclo de vida

GET
/v1/gpu/instances
1curl https://api.empiriolabs.ai/v1/gpu/instances \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
GET
/v1/gpu/instances/:instance_id
1curl https://api.empiriolabs.ai/v1/gpu/instances/instance_id \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
POST
/v1/gpu/instances/:instance_id/:action
1curl -X POST https://api.empiriolabs.ai/v1/gpu/instances/instance_id/stop \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json" \
4 -d '{}'

Use refresh para resincronizar o status, stop liberar a alocação em execução e pausar a faturação, e start para reimplantar a especificação da instância salva.

$curl -X POST https://api.empiriolabs.ai/v1/gpu/instances/$ID/stop \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
DELETE
/v1/gpu/instances/:instance_id
1curl -X DELETE https://api.empiriolabs.ai/v1/gpu/instances/instance_id \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json" \
4 -d '{}'

Destruir uma instância para de cobrar permanentemente e não pode ser desfeito.

Status

StatusSignificado
provisioningA capacidade está sendo alocada.
loadingA carga de trabalho está começando ou esquentando.
runningA carga de trabalho é acessível pelo caminho de conexão e a cobrança está ativa.
stoppingEstá sendo aplicada uma operação de parar ou destruir.
stoppedO faturamento da GPU está pausado. O Start redistribui a especificação da instância salva com um disco de runtime novo.
errorProvisionamento ou configuração em tempo de execução falhavam, ou a alocação não ficava pronta a tempo. A instância pode ser atualizada ou destruída.
destroyedA instância foi removida permanentemente.

Conecte-se a uma instância em execução

Use o endpoint Connect com sua chave API do EmpirioLabs. Ele suporta OBTENÇÃO, POST, COLOCAÇÃO, PATCH, EXCLUSÃO e respostas de streaming.

GET
/v1/gpu/connect/:instance_id/:path
1curl https://api.empiriolabs.ai/v1/gpu/connect/instance_id/v1%2Fchat%2Fcompletions \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"

Para uma implantação de modelo, chame o endpoint compatível com OpenAI na instância:

$curl https://api.empiriolabs.ai/v1/gpu/connect/$ID/v1/chat/completions \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "model": "Qwen/Qwen2.5-7B-Instruct",
> "messages": [{ "role": "user", "content": "Hello!" }]
> }'
1from openai import OpenAI
2
3client = OpenAI(
4 base_url="https://api.empiriolabs.ai/v1/gpu/connect/INSTANCE_ID/v1",
5 api_key="EMPIRIOLABS_API_KEY",
6)
7
8resp = client.chat.completions.create(
9 model="Qwen/Qwen2.5-7B-Instruct",
10 messages=[{"role": "user", "content": "Hello!"}],
11)
12print(resp.choices[0].message.content)

Para JupyterLab, ComfyUI, Web Terminal ou Ollama, abra a URL de conexão da instância a partir do painel ou envie requisições para o caminho de conexão relevante.

Converse com seu modelo no painel

Quando você implanta um modelo (ou qualquer instância que atenda a uma API compatível com OpenAI), o painel te dá uma página de chat embutida para que você possa testar o modelo imediatamente, sem precisar escrever código. Abra a instância na página GPU Cloud e escolha Conversar com este modelo. A página de chat transmite respostas, suporta um prompt do sistema e os controles usuais de amostragem (temperatura, top-p, tokens máximos) e permite que você anexe imagens ou áudio para modelos multimodais. Ele roda contra o mesmo caminho de conexão autenticado da API, então não há configuração extra nem faturamento separado: a instância já é medida por segundo.

SSH e acesso ao shell

Use o template Web Terminal quando precisar de um shell dentro da carga de trabalho, ou exponha um serviço HTTP de um container personalizado e acesse ele pelo /v1/gpu/connect/\{instance_id\}/\{path\}.

Registros de uso e faturamento

O painel da GPU Cloud mostra o gasto em execução e o gasto vitalício da GPU. As respostas do ciclo de vida da API incluem o preço da instância, contagem de GPUs, status de faturamento e valor faturado para que você possa conciliar o uso a partir dos seus próprios sistemas.