Skip to main content

View the source code

W&B Launch ์‹คํ—˜์„ ๋Œ€๊ธฐ์—ด์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. source uri, job ๋˜๋Š” docker_image ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
launch_add(
    uri: Optional[str] = None,
    job: Optional[str] = None,
    config: Optional[Dict[str, Any]] = None,
    template_variables: Optional[Dict[str, Union[float, int, str]]] = None,
    project: Optional[str] = None,
    entity: Optional[str] = None,
    queue_name: Optional[str] = None,
    resource: Optional[str] = None,
    entry_point: Optional[List[str]] = None,
    name: Optional[str] = None,
    version: Optional[str] = None,
    docker_image: Optional[str] = None,
    project_queue: Optional[str] = None,
    resource_args: Optional[Dict[str, Any]] = None,
    run_id: Optional[str] = None,
    build: Optional[bool] = (False),
    repository: Optional[str] = None,
    sweep_id: Optional[str] = None,
    author: Optional[str] = None,
    priority: Optional[int] = None
) -> "public.QueuedRun"
์ธArguments์ˆ˜Description
uri์‹คํ–‰ํ•  ์‹คํ—˜์˜ URI. wandb run uri ๋˜๋Š” Git ์ €์žฅ์†Œ URI์ž…๋‹ˆ๋‹ค.
jobwandb.Job ์— ๋Œ€ํ•œ ๋ฌธ์ž์—ด ์ฐธ์กฐ (์˜ˆ: wandb/test/my-job:latest)
configrun์— ๋Œ€ํ•œ ์„ค์ •์„ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์ž…๋‹ˆ๋‹ค. โ€œresource_argsโ€ ํ‚ค ์•„๋ž˜์— ๋ฆฌ์†Œ์Šค ํŠน์ • ์ธ์ˆ˜๋ฅผ ํฌํ•จํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
template_variablesrun queue์— ๋Œ€ํ•œ ํ…œํ”Œ๋ฆฟ ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์ž…๋‹ˆ๋‹ค. {"VAR_NAME": VAR_VALUE} ํ˜•์‹์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.
project์‹คํ–‰๋œ run์„ ๋ณด๋‚ผ ๋Œ€์ƒ project
entity์‹คํ–‰๋œ run์„ ๋ณด๋‚ผ ๋Œ€์ƒ entity
queuerun์„ ๋Œ€๊ธฐ์—ด์— ์ถ”๊ฐ€ํ•  queue์˜ ์ด๋ฆ„
priority์ž‘์—…์˜ ์šฐ์„ ์ˆœ์œ„ ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค. 1์ด ๊ฐ€์žฅ ๋†’์€ ์šฐ์„ ์ˆœ์œ„์ž…๋‹ˆ๋‹ค.
resourcerun์— ๋Œ€ํ•œ ์‹คํ–‰ ๋ฐฑ์—”๋“œ: W&B๋Š” โ€œlocal-containerโ€ ๋ฐฑ์—”๋“œ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
entry_pointproject ๋‚ด์—์„œ ์‹คํ–‰ํ•  entry point. wandb URI์˜ ๊ฒฝ์šฐ ์›๋ž˜ run์—์„œ ์‚ฌ์šฉ๋œ entry point๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ git ์ €์žฅ์†Œ URI์˜ ๊ฒฝ์šฐ main.py๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
namerun์„ ์‹œ์ž‘ํ•  run ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
versionGit ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ์˜ ๊ฒฝ์šฐ ์ปค๋ฐ‹ ํ•ด์‹œ ๋˜๋Š” branch ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
docker_imagerun์— ์‚ฌ์šฉํ•  docker ์ด๋ฏธ์ง€์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
resource_args์›๊ฒฉ ๋ฐฑ์—”๋“œ์— run์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ๋ฆฌ์†Œ์Šค ๊ด€๋ จ ์ธ์ˆ˜์ž…๋‹ˆ๋‹ค. resource_args ์•„๋ž˜์˜ ๊ตฌ์„ฑ๋œ launch config์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
run_id์‹œ์ž‘๋œ run์˜ ID๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์„ ํƒ์  ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.
build์„ ํƒ์  ํ”Œ๋ž˜๊ทธ๋กœ ๊ธฐ๋ณธ๊ฐ’์€ false์ž…๋‹ˆ๋‹ค. build์ธ ๊ฒฝ์šฐ queue๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  job Artifacts๊ฐ€ ์ƒ์„ฑ๋˜๋ฉฐ ํ•ด๋‹น job Artifacts์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ queue๋กœ ํ‘ธ์‹œ๋ฉ๋‹ˆ๋‹ค.
repository์ด๋ฏธ์ง€๋ฅผ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋กœ ํ‘ธ์‹œํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ด๋ฆ„์„ ์ œ์–ดํ•˜๋Š” ์„ ํƒ์  ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.
project_queuequeue์— ๋Œ€ํ•œ project ์ด๋ฆ„์„ ์ œ์–ดํ•˜๋Š” ์„ ํƒ์  ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ project ๋ฒ”์œ„ queue์™€์˜ ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ:

from wandb.sdk.launch import launch_add

project_uri = "https://github.com/wandb/examples"
params = {"alpha": 0.5, "l1_ratio": 0.01}
# W&B ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์—์„œ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ docker ํ™˜๊ฒฝ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
api = wandb.apis.internal.Api()
launch_add(uri=project_uri, parameters=params)
๋ฐ˜ํ™˜ ๊ฐ’
queued run์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” wandb.api.public.QueuedRun ์ธ์Šคํ„ด์Šค์ด๊ฑฐ๋‚˜, wait_until_started ๋˜๋Š” wait_until_finished๊ฐ€ ํ˜ธ์ถœ๋œ ๊ฒฝ์šฐ ๊ธฐ๋ณธ Run ์ •๋ณด์— ๋Œ€ํ•œ ์—‘์„ธ์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
์˜ˆ์™ธDescription
์‹คํŒจํ•œ ๊ฒฝ์šฐ wandb.exceptions.LaunchError