- request_timeout_seconds: API 응답을 기다리는 시간 (클라이언트 측)
- max_lifetime_seconds: 샌드박스가 자동으로 종료되기 전까지 실행되는 시간 (서버 측) 설정하지 않으면 백엔드에서 기본 실행 시간을 결정합니다.
container_image(str) : 샌드박스 컨테이너에 사용할 도커 이미지입니다. 기본값:DEFAULT_CONTAINER_IMAGE.command(str) : 실행할 엔트리포인트 명령입니다. 기본값:DEFAULT_COMMAND.args(tuple[str, ...]) : 명령에 전달되는 인수입니다. 기본값:DEFAULT_ARGS.base_url(str) : CWSandbox API endpoint URL입니다. 기본값:DEFAULT_BASE_URL.auth(AuthConfig | None) : 인증 방식을 선택합니다.AuthStrategy, 확인된AuthHeaders또는AuthProvider를 받습니다.None이면 레거시 프로세스 전역 재정의가 설치된 경우 이를 유지하고, 그렇지 않으면AuthStrategy.COREWEAVE_API_KEY를 사용합니다. 기본값:field(default=None, repr=False).request_timeout_seconds(float) : 대부분의 RPC에 적용되는 클라이언트 측 HTTP timeout(초)입니다. 폴링 조회 RPC에는 이 값 대신poll_rpc_timeout_seconds가 적용됩니다. 기본값:DEFAULT_REQUEST_TIMEOUT_SECONDS.poll_retry_budget_seconds(float) : 재시도 버스트(안정 상태에 도달하기까지의 한 번의 과정)당 허용되는 실제 경과 시간 예산입니다. 예산은 응답이 성공할 때마다 초기화되므로, 오래 실행되는 샌드박스가 일시적 오류에서 복구된 뒤 한참 후에 다시 오류가 발생하더라도 매번 새 예산을 받습니다. 재시도 대상인 일시적 오류 코드는 UNAVAILABLE, DEADLINE_EXCEEDED, RESOURCE_EXHAUSTED입니다. 재시도를 완전히 비활성화하려면 0.0으로 설정하세요. 기본값:DEFAULT_POLL_RETRY_BUDGET_SECONDS.poll_rpc_timeout_seconds(float) : 폴링 조회 RPC의 호출당 timeout입니다.request_timeout_seconds와 별도로 관리되므로, 멈춘 폴링이 더 긴 요청 timeout 동안 대기하지 않고 빠르게 실패합니다. 기본값:DEFAULT_POLL_RPC_TIMEOUT_SECONDS.max_lifetime_seconds(float | None) : 서버 측 샌드박스 수명 제한(초)입니다. None이면 백엔드가 기본값을 결정합니다. 기본값:DEFAULT_MAX_LIFETIME_SECONDS.temp_dir(str) : 샌드박스 내부의 임시 디렉터리 경로입니다. 기본값:DEFAULT_TEMP_DIR.tags(tuple[str, ...]) : 샌드박스를 필터링하고 정리하는 데 사용하는 태그입니다. 기본값:field(default_factory=tuple).runner_ids(tuple[str, ...] | None) : 특정 러너 ID(CKS)로 제한합니다. 기본값을 명시적으로 지우려면 빈 목록을 전달하고, 설정된 기본값을 상속하려면 None(기본값)을 전달하세요. serverless 배치와 함께 사용할 수 없습니다.placement_mode(PlacementMode | str | None) :PlacementMode(serverless/cks) 또는 문자열입니다.placement_spillover(PlacementSpillover | str) : 기본(primary) 모드가 스필 가능한 용량/배치 사유로 실패했을 때 대체 모드에서 생성을 한 번 재시도할지 결정하는PlacementSpillover정책입니다. 기본값은STRICT(스필 없음)입니다. 템플릿 샌드박스에는STRICT를 사용해야 합니다. 기본값:PlacementSpillover.STRICT.resources(ResourceOptions | dict[str, Any] | None) : 리소스 설정입니다. requests/limits를 별도로 지정하려면ResourceOptions를, 이전 버전과 호환되는 Guaranteed QoS를 사용하려면 평면 dict를 전달하세요.network(NetworkOptions | None) :NetworkOptions로 지정하는 거부 플래그 네트워크 옵션 및 선택적 생성 시점 호스트 이름 허용 설정입니다.services(tuple[Service, ...] | None) : PUBLIC/PRIVATE/CUSTOM용 타입 지정 서비스 포트(Service)입니다.volumes(tuple[ScratchVolumeOptions | RegisteredVolumeOptions, ...] | None) : 스크래치 볼륨 또는 등록된 볼륨(ScratchVolumeOptions또는RegisteredVolumeOptions)입니다.runtime_class(str | None) : 고정할 runtime-class입니다(선택, 예:"gvisor").security_context(SecurityContext | dict[str, Any] | None) : 단일 컨테이너 경로의 게스트 내부 권한입니다.containers=또는defaults.containers를 사용하는 경우에는 적용되지 않습니다.working_dir(str | None) : 단일 컨테이너 경로의 작업 디렉터리입니다. 컨테이너 목록을 사용하는 경우에는 적용되지 않습니다.object_storage_access(ObjectStorageAccess | dict[str, Any] | None) : 임시 오브젝트 스토리지 자격 증명입니다.file_system_snapshot(FileSystemSnapshotOptions | dict[str, Any] | None) :FileSystemSnapshotOptions로 지정하는 편의용 단일 마운트 FSS 옵션입니다. 공유 가능한 마운트 기본값(mount_path, size)이며,run()에 값을 명시하면 이 값 전체가 대체됩니다. 여러 볼륨을 구성할 때는volumes=를 사용하는 것이 좋습니다.containers(tuple[Container, ...] | None) : 선택적 다중 container 사양 (Container).Sandbox.run()의 단일 container 필드와 상호 배타적입니다. 이 목록을 사용하면secrets,environment_variables,security_context,working_dir는 이러한 defaults에 적용되지 않습니다. 각Container에 설정하세요.secrets(tuple[Secret, ...] | None) : 단일 container 경로의 시크릿입니다.containers=또는defaults.containers를 사용할 때는 적용되지 않습니다.environment_variables(dict[str, str]) : 단일 container 경로의 환경 변수입니다. container 목록을 사용할 때는 적용되지 않습니다. Default:field(default_factory=dict).annotations(dict[str, str]) : Kubernetes 파드 어노테이션 (키-값 문자열 쌍). 샌드박스별 어노테이션과 병합되며, 명시적 값은 defaults를 오버라이드합니다. 민감하지 않은 메타데이터에만 사용하세요. Default:field(default_factory=dict).data_plane_mode(DataPlaneMode | str) : exec, logs, file operations에 대한 Transport policy.auto(default)는 direct mTLS를 우선하고 게이트웨이로 폴백합니다.gateway는 직접 액세스를 비활성화합니다.direct는 이를 요구합니다. Default:DataPlaneMode.AUTO.
메서드
merge_tags
merge_environment_variables
merge_annotations
with_overrides
from_dict
SandboxDefaults를 구축하면서 중첩된 필드의 타입을 강제 변환합니다.
일반 딕셔너리 또는 OmegaConf DictConfig 객체를 허용합니다. 알 수 없는
키는 별도의 알림 없이 무시되므로 호출자는 추가 필드가 포함된 설정 섹션을 전달할 수 있습니다.
적용되는 강제 변환:
network딕셔너리 ->NetworkOptionssecrets딕셔너리 목록 ->Secret튜플services딕셔너리 목록 ->Service튜플volumes딕셔너리 목록 -> 스크래치/등록된 볼륨 옵션 튜플containers딕셔너리 목록 ->Container튜플security_context딕셔너리 ->SecurityContextobject_storage_access딕셔너리 ->ObjectStorageAccessargs,tags,runner_ids,services,volumes,containers목록 -> 튜플resources,environment_variables-> 일반dict