Pyruns CLI 详细指南 (CLI Guide)
当你在无头服务器 (Headless Server) 上运行模型,或者偏爱纯命令行操作,不想通过浏览器映射端口时,Pyruns 提供的 CLI 交互模式 能够为你提供与 Web UI 完全对等的功能体验。这不仅包括了任务生成、任务运行与后台排队调度,还包含彩色的独立日志流跟随和实时的图形化资源监视。
顶层入口先分清
在进入 cli 子命令之前,先把 pyr 顶层入口记清楚:
pyr- 直接打开当前目录的 shell workspace
- 适合先管理 shell / PowerShell / cmd / bash 命令任务
- 会直接进入 Web UI
pyr ui- 打开 launcher
- 适合先选脚本,再进入 script workspace
pyr <script.py>- 直接围绕某个 Python 脚本建立 script workspace
- 适合 argparse /
pyruns.load()风格脚本
pyr cli [script.py]- 进入交互式 CLI
- 适合无头服务器、SSH、纯终端场景
如果你想随时查看这些入口说明,也可以直接运行:
pyr help启动 CLI
你可以通过两种形式调用 CLI:
1. 携带目标脚本启动 (推荐)
pyr cli your_script.py若运行此命令,Pyruns 会分析你的脚本,并自动准备好它的所有运行时配置、参数解析。如果该脚本尚未初始化 _pyruns_ 工作区,CLI 也会贴心地自动帮你完成所有环境构建工作,接着进入交互终端。
2. 在既有工作区启动
cd /path/to/project
pyr cli如果你已经在包含 _pyruns_ 目录的项目根目录下(或者此前已经跑过 pyr your_script.py),直接输入 pyr cli 会自动定位到最近一次操作的脚本,唤出 CLI 交互终端。
不论何种方式进入,都将来到如下形态的 REPL:
Pyruns CLI (type 'help' for commands, 'exit' to quit)
pyruns>命令详解与操作手册
在 pyruns> 的提示符下,可使用的完整核心命令如下:
1. ls / list - 任务浏览
检索并排版当前项目内所有的历史任务执行记录。
- 基本用法:text
pyruns> ls - 带关键字检索: 允许使用参数过滤表单信息,或者针对任务名称进行纯文本高亮搜索。text
pyruns> ls lr 0.001 - 交互式搜索
-i: (强推) 如果你有超过 10+ 的任务记录,可以使用交互模式。类似fzf的实时选择界面,配合方向键浏览每一个任务的快照数据:textpyruns> ls -i
2. run - 运行/调度任务
控制任何 Pending (待处理) 或 Completed (已完成可重跑) 状态的任务。
单项任务: 根据列表中的序号或全名唤起:
textpyruns> run 1执行单个任务后,它不仅会被马上调度,CLI 还会自动调用
log进入该任务的全屏日志展示界面。你将能够实时看见所有输出 (包含tqdm进度条等 ANSI 色彩)。按q随时退回 CLI 且不中断后台任务运行!批量任务: 指定多个序号或名称:
textpyruns> run 2 3 4如果你传递了多个任务,CLI 会询问你并发的 Max Workers 数量(类似于 Web UI Manager 中右上角的线程调度设定)。输入完毕后,这批任务会被瞬间丢入后台隔离的执行池运行。
3. jobs - 活跃任务一览
检查当前状态为 queued 和 running 的活跃执行管线。它的输出格局更紧凑,仿造纯正的 Linux 作业终端表述:
pyruns> jobs4. log - 全屏运行日志查阅 (Interactive Log Viewer)
当你的后台中有多个任务正在并发运算时,你可以定向“切入”其中一个执行模块,在大屏界面下查阅隔离环境下的 runN.log 或崩溃异常 error.log 的实时动态:
pyruns> log 3提示: 支持分页、尾随读取。随时按
n/p切换该任务不同的历史运行批次,按q退出全屏日志模式,返回 REPL。这绝不会破坏或停止正在跑训练的进程!
5. gen / generate - 编辑与生成网格参数
在终端下唤起系统编辑器实现类似于 Web UI 参数表单的参数增添。
pyruns> gen- 运行此命令后,Pyruns 将会通过
$GIT_EDITOR/$VISUAL/vi或nano唤醒你的默认编辑器。如果在 VSCode 内测,会直接新建临时标签页。 - 文件内会展示提取出的
config_default.yaml骨架。 - 请自由利用由
|隔开的全排列或区间批量语法声明参数网络。 - 保存、关闭该文本!
- Pyruns 终端会自动捕捉文件保存事件,在提示确认后立即在后台切片出相应的批量 Task 队列。
6. delete / del / rm - 从列表移除
支持针对单开/错开的环境记录软删除 (实际进入了 .trash 回收站以防止误操作丢失研究记录):
pyruns> del 1 2 37. stat / status - 性能监控仪
脱离了 Web UI 的监视器后,在纯终端内 Pyruns 也提供基于 ANSI 的系统负载仪。
- 快照查看:text
pyruns> stat - Live 实时监控
-i: 将启动每秒刷新的监控画板,实时展现系统整体物理内存与各个 GPU (如果你安装了gpustat) 的 VRAM 和计算利用率柱状图!对于多路显卡服务器特别有用:text(按pyruns> stat -iCtrl+C退出)
与 Web UI 的联协使用
绝不冲突。 Pyruns 所有对于参数、状态与排队的处理都落在本地文件锁记录内,你完全可以:
- 在远端服务器使用
pyr cli train.py。 - 使用
gen创建 200 个任务并排队。 - 如果此时在另一台电脑通过 SSH 隧道映射了端口跑起了
pyr train.py,你将在 Web 界面的 Manager 栏中实时看见这 200 个任务从 Queue 被消化!反之同理。