可解释的生信 Workflow 生成与编译系统
W3 产品外壳

AI-bioworkflow

从自然语言需求到结构化计划、Workflow IR 与可验证 WDL, 展示工具目录、静态分析、确定性渲染和诊断回放。

边界
LLM 负责规划
契约
Recipe Tool Plan -> Workflow IR
验证
Analyzer + WDL checker
确定性的规划到编译链路
01
自然语言请求

用户意图先进入规划层,不直接生成最终 WDL。

02
Recipe Tool Plan

Planner 输出受 recipe 和 tool catalog 的结构化 schema 约束。

03
Workflow IR

编译契约记录 steps、calls、scatter 和 workflow outputs。

04
Analyzer / Repairer

渲染前执行静态分析,并只做可确定的保守修复。

05
WDL Renderer

由模板和普通代码从 Workflow IR 生成 WDL 1.0。

06
Checker

通过 WOMtool 或 miniwdl 完成语法校验闭环。

工程边界

页面展示的不是聊天结果,而是 Python service layer 和 compiler graph 真实维护的结构化边界。

LLM 只到规划边界

模型可以辅助生成结构化 Recipe Tool Plan,但最终 WDL 由确定性编译器代码输出。

Catalog 控制工具选择

Recipe、命令模板、参数、输出、容器镜像和 trust status 都来自正式 catalog 定义。

验证过程可追踪

Workflow IR 分析、修复记录和 WDL checker 输出会作为 diagnostics 保留并展示。

RNA-seq 差异表达分析

一个具体的生信案例

构建一个 bulk RNA-seq 差异表达分析工作流,输入多个样本的 paired-end FASTQ 文件。每个样本先运行 fastp 做读段质控,再用 Salmon 做转录本定量,随后通过 tximport 汇总到基因层面,用 DESeq2 完成差异表达分析,并返回 MultiQC 质控报告。

fastp 质控
Salmon 定量
tximport 汇总
DESeq2 差异分析
MultiQC 报告
01
fastp 质控
02
Salmon 定量
03
tximport 汇总
04
DESeq2 差异分析
05
MultiQC 报告

系统视图

产品外壳围绕 workflow review 最重要的产物和可观测记录组织。

预览工作台

Plan JSON

展示 recipe、工具选择、参数和 workflow 级输入。

Workflow IR

作为编译器和 DAG 可视化共享的规范结构。

校验后的 WDL

由 Renderer 生成、可被机器消费的 WDL 1.0。

Diagnostics

汇总 Analyzer 发现、repair actions 和 checker messages。

Timeline

展示 run 从 created 到终态的生命周期事件。

DAG

查看 calls、scatter 分组、依赖边和节点详情。

技术栈

Web 层保持轻量并聚焦产品展示,编译器核心继续复用于 CLI 和 API 路径。

编译器核心

Python 3.13、LangGraph、Pydantic、Jinja2

API 层

FastAPI、SQLite 持久化、SSE 事件回放

Web 外壳

Next.js、TypeScript、Tailwind、shadcn-style 组件

工作流目标

Workflow IR、WDL 1.0、WOMtool / miniwdl 校验