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 已被此集群上的作业使用。