Celebi开源 · Apache-2.0
面向高能物理的可复现分析管理系统
Celebi 将项目、数据、算法与任务组织成结构化的工作区,内置依赖追踪、来源记录与快照能力,让复杂的高能物理分析链条保持可复现、可追溯、可协作。
特性
结构化组织
项目、数据、算法与任务清晰分离,层次结构定义明确。
依赖追踪
数据、算法与任务之间的关系自动构成有向无环图(DAG),可查看、可重放。
Impression 快照
随时间记录重要结果、配置与对象状态 —— 内置的版本记忆。
可复现性
完整捕获工作流结构、参数、输入与执行环境。
灵活适应
修改算法或参数后,只重新运行受影响的下游任务。
协作共享
跨人员、跨机器、跨环境一致地共享项目与工作流。
示例分析
用 Celebi 构建的示例分析 —— 更多内容即将上线。
入门
Hello world 工作流
最小的两任务链条:创建算法、连接任务、提交运行,并封存你的第一个 impression。
进阶
模板拟合
带上游选择任务的模板拟合分析 —— 演示依赖追踪与选择性重跑。
高级
系统误差扫描
一个算法、多组参数变体 —— 展示任务如何展开,以及 impression 如何记录每个状态。
动态与路线
综合动态
版本更新
- 入口职责清晰:`celebi` 进入 shell,`celebi-cli` 执行命令,`celebi-git` 处理 Git
- 三种帮助形式:`helpme`、`help <command>`、`<command> --help`
- 生命周期感知、幂等且带受控重试的提交
- `register-data` 直接在 SSH runner 上登记数据 —— 远端算 MD5,零网络传输
- 数据命令改为方向性动词:`upload-data`、`attach-data`
- `cache_on_runner` 任务选项(取代 `use_eos`):REANA 上为 EOS,SSH 上为 runner impressions
- shell 支持项目根目录 @/ 相对路径,带 Tab 补全
- 按名称选择性操作:impress a b / submit a b;submit --runner <name>
- workaround --reference <algorithm> 与 --skip-input <task>
开发路线图
当前
- CelebiChrono 核心:项目、任务、算法、数据、impression
- CLI 支持项目根目录 @/ 路径与 Tab 补全
- VS Code 插件:项目树、任务提交、trace 可视化
- 桌面 UI:DAG 查看器、runner 管理、内置终端
近期
- PyPI 打包发布,简化安装流程
- 批处理与远程 runner(HTCondor、Slurm)
- 完善文档与教程
- Web 监控面板
远期
- 协作项目注册与共享中心
- 云端执行后端
- 面向具体实验的集成与模板