ray.job_submission.JobSubmissionClient.submit_job#
- JobSubmissionClient.submit_job(*, entrypoint: str, job_id: str | None = None, runtime_env: Dict[str, Any] | None = None, metadata: Dict[str, str] | None = None, submission_id: str | None = None, entrypoint_num_cpus: int | float | None = None, entrypoint_num_gpus: int | float | None = None, entrypoint_memory: int | None = None, entrypoint_resources: Dict[str, float] | None = None) str [源代码]#
异步提交并执行作业。
当一个任务提交后,它会运行直至完成或失败。重试或使用不同参数的不同运行应由提交者处理。任务与 Ray 集群的生命周期绑定,因此如果集群关闭,该集群上所有正在运行的任务将被终止。
示例
>>> from ray.job_submission import JobSubmissionClient >>> client = JobSubmissionClient("http://127.0.0.1:8265") >>> client.submit_job( ... entrypoint="python script.py", ... runtime_env={ ... "working_dir": "./", ... "pip": ["requests==2.26.0"] ... } ... ) 'raysubmit_4LamXRuQpYdSMg7J'
- 参数:
entrypoint – 为此作业运行的 shell 命令。
submission_id – 此任务的唯一ID。
runtime_env – 安装和运行此作业的运行时环境。
metadata – 与此作业一起存储的任意数据。
job_id – 已弃用。此项已重命名为 submission_id
entrypoint_num_cpus – 为执行入口点命令保留的 CPU 核心数量,不包括由其启动的任何任务或角色。默认为 0。
entrypoint_num_gpus – 为执行入口点命令保留的GPU数量,不包括由其启动的任何任务或角色。默认为0。
entrypoint_memory – 为执行入口点命令预留的内存量,不包括由其启动的任何任务或角色。默认为0。
entrypoint_resources – 为执行入口点命令预留的自定义资源数量,不包括由其启动的任何任务或角色。
- 返回:
提交作业的提交ID。如果未指定,这是一个随机生成的唯一ID。
- 抛出:
RuntimeError – 如果向作业服务器发出的请求失败,或者指定的 submission_id 已被此集群上的作业使用。