SoluçõesVibe coding
Cada prompt, uma aplicação rodando
Seu agente constrói cada aplicação em um sandbox, com um link para a prévia, e depois a publica como um Cubo que dorme até alguém abri-la.
from glac import Glac, AGENTS
glac = Glac()
sbx = glac.sandboxes.create(image=AGENTS, env=model_keys)
sbx.agent("claude").run("Make a todo app on port 3000")
print(sbx.url(3000)) # preview: a link to the port
image = "ghcr.io/you/todo:1" # what your build pushed
app = glac.cube.deploy(image, name="todo", port=3000)
print(app.url) # its own HTTPS address
app.rollback(1) # back a version in one callDuas máquinas para cada aplicação
Toda aplicação precisa de uma máquina para ser construída e de outra para rodar, e cada uma é paga o mês inteiro se for mantida rodando. Aqui, as duas dormem: o sandbox quando o agente para, o Cubo entre as requisições.
Construa em um sandbox, publique como um Cubo
O agente trabalha em um sandbox, com um link para o servidor de desenvolvimento e um fork para cada tentativa. O que ele publica é uma imagem, que vira um Cubo em um endereço próprio, com instâncias que acordam para as requisições.
O que o seu produto recebe
Construa em um sandbox: um terminal, um link para o servidor de desenvolvimento, um fork para cada tentativa.
Um volume para o banco de dados, cobrado pelos dados que contém.
Publique como um Cubo: cada deploy vira uma versão, no endereço dele ou no domínio do seu cliente.
Dormindo até ser aberta: ela dorme quando as requisições acabam e acorda com a memória.
Uma instância por usuário final, escolhida por uma chave na requisição.
Uso por cliente, consultado pelo rótulo de cada um, com um limite mensal de gastos.
Prévias ilustrativas
Medido, não prometido
Medianas em bare metal sem mais nada rodando: o melhor caso, e dizemos isso. A instância de um Cubo é do mesmo tipo que um sandbox. Como medimos
- para acordar uma instância adormecida2
- 3.5 ms
- para a chamada que acordou a máquina, do envio à resposta2
- 6.7 ms
- para colocar a máquina para dormir, com a memória e os processos2
- 2.3 ms
Veja isso nas suas próprias aplicações quando o serviço abrir: a linha do log de uma requisição que acordou uma instância diz quanto tempo levou para acordar.
glac cube logs todo -f
# one line a request; one that woke an instance says how long it tookOs produtos usados
- SandboxUm computador próprio para cada agenteOnde o agente constrói e gera prévias, com um fork para cada tentativa.
- CuboQualquer imagem de contêiner como uma aplicação que dorme entre as requisiçõesOnde cada aplicação roda depois de publicada, no seu próprio endereço, dormindo entre as requisições.
- VolumeOs discos do Cubo, que sobrevivem à sua instânciaUm disco para o banco de dados da própria aplicação.
- Postgres sem servidorEm brevePostgres que dorme quando ocioso e acorda ao receber uma conexãoPostgres gerenciado para as aplicações, dormindo quando ocioso, a partir do lançamento.
Um mês na ponta do lápis
Mil aplicações criadas e executadas em um mês, a preços de tabela. Faça a sua estimativa
O cenário
- 1 000 aplicações, cada uma construída pelo agente em um sandbox de 2 vCPUs e 4 GiB durante meia hora, com a CPU ocupada um quinto do tempo e 2 GiB em uso; o sandbox é excluído depois.
- Cada aplicação vira então um Cubo que responde a 30 000 requisições no mês, com 20 ms de CPU cada, 256 MiB em uso e 20 KB por resposta.
- Requisições chegando em momentos aleatórios; uma instância acordada enquanto responde e depois pausada na memória por 10 minutos antes de dormir.
Um mês a preços de tabela
- CPU1.38 bilhão × $0.01 por milhão de ms de CPU$13.81
- Memória180 827 GiB-h × $0.008$1,446.61
- Requisições30 milhões × $0.30 por milhão$9.00
- Tráfego de saída600 GB × $0.004$2.40
No Pago, este mês sai por $1,468.82: a mensalidade de $5 e $1,463.82 além do que as franquias cobrem, debitados do seu saldo aos mesmos preços.
Publique a primeira aplicação
Uma chave e, depois, uma imagem publicada como um Cubo com um único comando, ou um sandbox onde o seu agente vai construir.