当前位置: 首页 > news >正文

[leaf] 一个轻量易用且快速灵活的声明式执行框架,帮助管理并执行终端命令

Logo

leaf-flow (leaf², a lightweight easy fast and flexible execution framework) ,一个轻量的声明式执行框架,支持通过 YAML 配置快速为 CLI/TUI 工具生成结构化的交互界面,试图填补 Gradio 的“笨重” 与 ComfyUI 的“复杂” 之间的空白。

pre

经过不可思议的漫长6个月开发,leaf²的所有核心功能终于成型。最开始只是厌烦了在多个SVC项目之间来回切换,每次都要手动填写重复的命令行参数,于是想实现一个开源的、统一的SVC平台,还得轻量。后来我意识到,大多数UI本质上是为用户代劳——构建命令、执行命令。那为什么不更进一步,做一个能够管理、执行终端命令的通用框架——这就是leaf-flow。

Github: Stareven233/leaf-flow
演示: bilibili - leaf² | AI翻唱遇上"声明式": Gradio/ComfyUI之外的轻量选择
下载: github release
下载2: 百度网盘

亮点

为机器学习项目提供图形界面通常 Gradio 与 ComfyUI 是主流选择,但各有局限:

  • Gradio:开发快但启动慢,不灵活,依赖 Python
  • ComfyUI:很灵活但略显复杂,学习成本高,依赖 Python

leaf² 提供一个更好的平衡:

  • ⚡ 轻量快速,1秒启动
  • 🎨 简洁直观的表单交互
  • ✨ 多模块统一管理
  • 🔧 复用模块,简单工作流

核心概念

  • 模块 (Module): 最小可执行单元,对应一个任务,包含一条或多条命令
  • 项目 (Project): 模块的集合,一次选定一个模块执行
  • 分支 (Branch): 模块的另一种集合,一次串行执行多个模块
  • 流 (Flow): 分支的集合,一次选定一条分支执行
  • 蓝图 (Bud): leaf²可解析的yaml文件,组织上述项目(leaf)/流(sprig),渲染对应UI
  • 调度器 (Scheduler): 管理任务队列,保证命令串行执行

leaf²的整个流程可以总结为:
yaml —> ui —> commands

即 yaml编写蓝图(bud) —> leaf²据此渲染ui —> 用户调节参数 —> leaf²生成并执行命令

设计理念

leaf²选择只依赖命令行参数进行项目整合,而尽量修改代码,这种解耦设计使它能十分容易且迅速地集成各种不同的项目/程序。

目前推入的命令在leaf²中组织为队列,并按顺序取出,一次执行一条。这是考虑到通常机器/深度学习项目中对GPU的使用通常独占,依次执行的设计也更容易管理,不过后续可能会增加异步队列允许程序脱离leaf²执行。

局限性

leaf²追求轻量快速,从存储占用(本体仅16MB)、使用方式(绿色无依赖)、启动速度(秒开)、兼容性(理论跨平台),并尽可能做得易用。但仍有一些不足:

  1. 实现动态UI的“数据绑定“略复杂(ui无法绑定事件)
  2. 暂不支持拖动上传(避免临时文件写入)
  3. 流(flow)不允许comfyui那般多分支(简化mmap实现)
  4. 暂不支持图片、音频、视频的简单编辑、显示、试听

速览

基于 0.9.4 版本

最小例子

下面是一段最小的合法 leaf bud

name: 最小示例
modules:- key: introtemplate: 'echo "你好: #{name}"'arguments:- key: namename: 姓名value: Leaf²

leaf²会将其渲染为如下页面,有一个文本输入框,默认值为 "Leaf²"。点击右下角预览按钮会渲染出当前命令,点击执行按钮命令 echo "你好: Leaf²" 将被送到终端执行

minimum-example

蓝图卡片

leaf²启动后默认启动打开首页,将展示 bud/ 目录下的所有蓝图。卡片展示名称、简介(支持精简markdown)、模块tab(可点击)

home

执行历史

页面右上角提供执行历史列表,显示执行的模块、参数,点击后自动跳转填充。目前队列默认容量20,每个模块各自独立。

execution-history

任务队列

右上角任务详情按钮可以看到正在执行的命令输出与任务队列,支持对正在执行与等待的任务进行撤销

task-detail

Flow & 临时文件

flow支持连续执行多个模块(任务),对应的命令同样按顺序串行执行。输入输出支持临时文件(mmap方式),使数据在模块间更迅速地流动。

mmap-flow

post

目前的agent热潮似乎很多事情都可以让ai代劳,但总归是需要用户清晰描述意图。虽然在26年中的今天,一个完全不含ai的产品似乎有些与时代脱节,但leaf²希望提供的是一个简单的UI,在脑机接口普及之前,允许动用小手点一点来得到实在的结果。

http://www.jsqmd.com/news/740442/

相关文章:

  • 小米手机终极音频优化:Audio-Misc-Settings模块提升音质完全指南 [特殊字符]
  • Taotoken在多模型聚合调用中表现出的路由稳定性体验
  • 如何彻底掌控Alienware灯光与风扇系统:告别AWCC臃肿软件的高效解决方案
  • 支付宝立减金别等过期,1分钟变现不踩坑 - 米米收
  • 如何用PyTorch实现物理知情神经网络:5分钟掌握PINN核心原理与实战应用
  • 从业务视角看SAP供应源:采购订单、计划协议、框架协议,你的业务到底适合哪一种?
  • 实测 Taotoken 聚合接口在不同时段的响应延迟与稳定性
  • Go 开发者学 Rust:枚举、操作符体验如何?运行时与监控有何不同?
  • 别再手动拧旋钮了!用C++和NI-488.2驱动,5分钟搞定你的GPIB仪器自动化
  • SignatureTools安卓APK签名工具终极指南:3分钟完成专业签名
  • 八大网盘直链解析工具:告别下载限速的终极方案
  • python datasets
  • stm32开发者如何通过curl快速接入大模型api提升产品智能化
  • 2026年广州共享办公空间:设计引领未来趋势 - 速递信息
  • 终极指南:AI-Shoujo HF Patch 一站式游戏增强解决方案
  • 新手必看,从零开始使用curl命令调用Taotoken大模型API
  • 知乎内容备份工具:基于Selenium的完整知识资产保护方案
  • VScode使用ollama本地部署的模型
  • 如何在求职季实现日均50+精准投递?Boss直聘批量投递工具深度解析
  • 通过 curl 命令快速测试 Taotoken API 连通性与模型响应
  • VSCode AI调试器内测权限泄露事件(仅限前2000名认证开发者获取):深度解析2026版Context-Aware Error Healing核心算法
  • Competitive Companion:自动化竞赛题目解析的技术方案与高效集成实践
  • 实测Taotoken多模型API在创意生成任务中的响应速度与稳定性观感
  • 蓝奏云直链解析终极指南:3秒获取高速下载链接的完整方案
  • 2026年太阳能路灯厂家售后排行,这5家最靠谱! - 速递信息
  • 从NetworkManager到systemd-resolved:一文搞懂Ubuntu 20.04网络服务如何“打架”并吃掉你的DNS设置
  • Go 数据结构入门:线性表、顺序表、链表
  • AI Agents 开源 LLM 简报 (2026年5月2日)
  • 一次吃透LeetCode哈希表经典题:附完整思路与代码解析
  • 别再手动调网格了!Fluent自适应网格实战:从入门到精通,手把手教你用Cell Registers提升计算效率