Skip to main content
시뮬레이션은 제안된 fix의 근거를 만드는 방법입니다. 후보 변경을 큐레이션된 데이터셋에 돌리고, 결과 delta를 측정하고, 좋아 보이면 개선 큐에 promote해서 사람이 승인하게 합니다. PAT simulate 스코프로 인증합니다. 시뮬은 유료입니다. 데이터셋에 LLM 호출을 돌리고 워크스페이스 LLM 키로 과금됩니다.

budget은 필수

모든 실행에 budget필수입니다 (기본값 없음, 지출이 새면 안 되니까). 두 가지 모양:
  • budgetUsd: <n> USD 하드 캡.
  • budgetMinutes: <n> + confirmUsdCeiling: <n> 시간 캡 + SDK가 시작 전 확인할 예상 비용 상한.
SDK엔 사람이 없으므로, budgetMinutes만 주고 비용 상한을 안 주면 거절됩니다. 새는 지출을 멈출 방법이 없기 때문입니다.

Verb

시뮬은 장시간 실행입니다. runroundId를 즉시 돌려주고 폴링합니다.

estimate

LLM 호출은 없습니다. run에 넘길 config의 예상 비용과 소요 시간을 서버가 돌려줍니다. 게이팅에 씁니다. “예상이 X 초과면 돌리지 마.”

run(lineageId, opts)

시뮬을 시작합니다. lineageId는 테스트할 변경 계보를 가리킵니다. { roundId }를 즉시 반환합니다.

get(roundId)

라운드 전체 상태입니다. 진행, 케이스별 판정, 집계 delta, 프로바이더 에러(있으면)를 돌려줍니다. 완료까지 폴링하세요.

remaining(roundId)

남은 케이스 수만 돌려줍니다. get보다 가볍고, 진행 바에 적합합니다.

requery(roundId)

같은 케이스 결과를 다른 스코어 config로 재랭킹합니다. 무료입니다. 새 LLM 호출 없이 저장된 출력에 스코어링만 다시 돌립니다. “도움 됐나?” 답이 스코어 선택에 얼마나 민감한지 볼 때 씁니다.

promote(roundId)

완료된 라운드를 개선 제안으로 등록합니다. 개선 큐로 흘러 들어가 사람이 승인합니다. 시뮬은 근거, 승인이 배포입니다.

흔한 패턴

견적 → 게이트 → 실행

진행 바로 폴링

시간 예산 + 확인

벽시계만 신경 쓰인다면, budgetMinutes와 함께 SDK가 estimate 대조로 확인할 비용 상한을 짝지으세요.

시뮬레이션이 루프에서 앉는 자리

SDK는 simulations(근거 생성기)와 improvements(결정 큐)를 노출합니다. 군집에서 초기 개선 후보를 만드는 것은 루프의 내부가 하는 일이지 SDK verb가 아닙니다. 후보가 생긴 뒤에는 여기서 다시 시뮬을 돌려 근거를 갱신하고 큐로 promote할 수 있습니다.