PAI客户

paicli的Python项目详细描述


PyPI versionPython versionLicense MIT

paicli

一个用于OpenPAI的cli工具,它支持列出作业、提交新作业、挂起正在运行的作业以及在正在运行的容器中执行ssh等基本操作。

demo

如何安装

可以从PyPI安装paicli。

$ pip install paicli

激励示例

可以利用和组合paicli子命令来实现多个实际操作。

一。ssh到正在运行的容器

当您想要ssh到一个正在运行的容器中时,只需键入pai ssh

$ pai ssh

然后,可以从正在运行的作业列表中选择容器。 不需要下载密钥并显式指定主机。 您还可以将正在运行的作业的作业名称作为参数:

$ pai ssh example_job_001

2.一行提交多个作业

我们可以使用pai submit和一些模板引擎,比如envsubst

$ head template.json -n 2{"jobName": "example_job_${JOBID}"
$ for i in `seq 13`;do cat example.json |JOBID=$i envsubst | pai submit;done

三。停止一行

的多个作业

一个人可以结合pai jobspai stop

$ pai jobs -u sotetsuk -s RUNNING | grep example_job | awk '{print $1}'| xargs pai stop

四。ssh到多个正在运行的容器中并运行相同的命令

我们可以把pai jobspai ssh结合起来。在本例中,它用一行显示多个作业中的python进程。

$ pai jobs -u sotetsuk -s RUNNING | grep example_job | awk '{print $1}'| xargs -n 1 pai ssh -c "ps -aux | grep python"

5个。在运行的作业中显示所有tensorboard url

可以组合pai jobspai host来显示所有的tensorboard url。可以使用一些浏览器扩展来打开所有url(例如OpenList

$ pai jobs -u sotetsuk -s RUNNING | grep example_job | xargs -n 1 pai host | grep tensorboard | awk '{printf "http://%s:%s\n",$2,$4}'
http://10.0.0.1:9999
http://10.0.0.2:9999
http://10.0.0.3:9999

基本用法

对于更详细的用法,可以为每个子命令(如pai config --help)使用--help选项。

$ pai --help
Usage: pai [OPTIONS] COMMAND [ARGS]...

  A CLI tool for OpenPAI.

Options:
  --help  Show this message and exit.

Commands:
  config  Write your configuration to a file.
  host    Show host information of the specified job.
  jobs    Show job list.
  ssh     SSH into a running container.
  stop    Stop a running job.
  submit  Submit your job.
  token   Generate a new access token

配置

在使用paicli子命令之前,必须初始化关于pai环境的配置。

  • config file:要初始化配置文件,请运行pai config。然后您的配置文件将位于$HOME/.paicli。您应该设置hostportusername。您可以使用--profile选项来使用多个pai环境。
  • access token:在提交/停止作业之前,应通过执行pai token并输入密码来颁发访问令牌。如果将密码直接写入配置文件(不推荐),则每次都可以跳过输入密码。

作者

小山田索特苏

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在IE10中重新加载另一个帧时,internet explorer Java小程序失败/消失   ThreadLocal变量的java性能   java系统。出来println不是打印输出   java从JAXB类获取元素属性   java组织。天啊。科尔巴。包裹。InvalidName:IDL:omg。org/CORBA/ORB/InvalidName:1.0   java有没有办法让非事务连接抛出异常?   java是否有任何方法可以使用JdbcTemplate和查询/条件Fluent API   javajpa级联类型。刷新不工作?   未考虑java Maven依赖关系管理   java MySQL MBR包含抛出MySQLExceptionError的语句   java验证整数并将其设为5位数   java发现了循环依赖的问题   java Hibernate left join fetch到使用@ManyToMany关联映射的softdeleted实体生成无效查询?   JavaH:commandButton多个操作:下载文件并呈现ajax表   Google Contacts API在Java、C#、Python或Ruby中是否有一个Hello World示例?