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 call앱마다 머신 두 대
앱마다 빌드할 머신과 실행할 머신이 필요하고, 계속 켜 두면 둘 다 한 달 내내 비용이 듭니다. 여기서는 둘 다 잠듭니다: 샌드박스는 에이전트가 멈출 때, 큐브는 요청 사이에.
샌드박스에서 빌드하고, 큐브로 배포
에이전트는 개발 서버 링크가 있는 샌드박스에서 일하며, 시도할 때마다 포크합니다. 배포하는 것은 이미지이며, 고유 주소가 있는 큐브로 배포되어 요청이 오면 인스턴스가 깨어납니다.
제품에 제공되는 기능
샌드박스에서 빌드: 터미널, 개발 서버 링크, 시도마다 포크.
데이터베이스용 볼륨: 담긴 데이터만큼 과금합니다.
큐브로 배포: 배포마다 버전 하나, 고유 주소나 고객의 도메인에서.
열릴 때까지 잠든 상태: 요청이 멈추면 잠들고, 메모리를 그대로 둔 채 깨어납니다.
최종 사용자마다 인스턴스 하나: 요청에 담긴 키로 고릅니다.
고객별 사용량: 라벨로 읽고, 월 지출 한도를 둡니다.
이해를 돕기 위한 예시 그림
약속이 아닌 측정값
다른 작업이 없는 베어메탈에서 잰 중앙값입니다. 최선의 경우이며, 그렇다고 밝힙니다. 큐브 인스턴스는 샌드박스와 같은 종류입니다. 측정 방법
서비스가 열리면 직접 운영하는 앱에서도 확인할 수 있습니다. 인스턴스를 깨운 요청의 로그 줄에 깨우는 데 걸린 시간이 나옵니다.
glac cube logs todo -f
# one line a request; one that woke an instance says how long it took사용하는 제품
한 달 비용 계산
한 달에 앱 1,000개를 만들고 실행할 때를 정가로 계산했습니다. 직접 계산해 보기
사용 조건
- 앱 1,000개, 각각 에이전트가 2 vCPU, 4 GiB 샌드박스에서 30분 동안 빌드하며, CPU는 시간의 5분의 1만 일하고 메모리는 2 GiB를 씁니다. 샌드박스는 빌드 후 삭제합니다.
- 그다음 각 앱을 큐브로 실행해 한 달에 요청 30,000건에 응답하며, 요청마다 CPU 20 ms와 메모리 256 MiB를 쓰고, 응답은 20 KB입니다.
- 요청은 무작위로 들어오며, 인스턴스는 응답하는 동안 깨어 있다가 메모리에 10분 동안 일시 정지된 뒤 잠듭니다.
정가로 계산한 한 달
- CPU13.81억 CPU-밀리초 × $0.01 / 100만$13.81
- 메모리180,827 GiB-시간 × $0.008$1,446.61
- 요청3000만건 × $0.30 / 100만 건$9.00
- 송신 트래픽600 GB × $0.004$2.40
유료 요금제라면 이 한 달은 $1,468.82입니다. 기본료 $5에, 포함 사용량을 넘는 $1,463.82를 같은 가격으로 잔액에서 냅니다.
첫 앱 배포하기
키를 받고, 명령 하나로 이미지를 큐브로 배포하거나, 에이전트가 빌드할 샌드박스를 만드세요.