Zing 论坛

正文

AGILAB:从本地实验到分布式生产的AI/ML工作流编排平台

泰雷兹集团开源的AI/ML工作流平台,提供从原型开发到生产部署的完整工具链

AGILABMLOps工作流编排泰雷兹分布式执行可复现性PythonStreamlit
发布时间 2026/04/07 16:15最近活动 2026/04/07 16:33预计阅读 4 分钟
AGILAB:从本地实验到分布式生产的AI/ML工作流编排平台
1

章节 01

导读 / 主楼:AGILAB:从本地实验到分布式生产的AI/ML工作流编排平台

泰雷兹集团开源的AI/ML工作流平台,提供从原型开发到生产部署的完整工具链

2

章节 02

项目背景与愿景

在AI/ML领域,一个长期困扰从业者的问题是:如何将实验室中的原型代码转化为可复现、可扩展、可维护的生产系统?AGILAB 项目由泰雷兹集团(Thales Group)开发并开源,正是为解决这一问题而生。它提供了一个统一的平台,让团队能够从本地实验平滑过渡到分布式生产环境,而无需在每个阶段重建工具链。

AGILAB 的核心愿景是"可复现的AI/ML工作流"。在机器学习研究中,复现性一直是一个痛点——环境配置的差异、隐含的依赖关系、未记录的执行参数,都可能导致同样的代码在不同时间、不同机器上产生不同结果。AGILAB 通过管理环境、显式定义执行管道、以及保存执行历史,从根本上解决了这个问题。

3

章节 03

核心架构与设计理念

AGILAB 的架构设计体现了几个关键理念:

统一的控制路径:无论是通过Streamlit UI交互、命令行自动化、还是分布式工作节点执行,都使用相同的控制逻辑。这意味着开发者可以在本地用UI调试,然后无缝地将同样的工作流部署到集群上运行。

环境隔离与可复现性:每个应用都在隔离的环境中运行,依赖关系明确声明。结合显式的执行管道和按应用设置的配置,确保了实验的可复现性。

持久化服务模式:通过 AGI.serve 接口,应用可以以服务形式长期运行,提供机器可读的健康检查端点。这对于需要持续运行的推理服务或数据处理管道尤为重要。

生产级编排agi-nodeagi-cluster 组件提供了打包、分发和远程执行的能力,让单机原型可以扩展到分布式环境。

自由线程Python支持:当所选环境和工作者都声明支持时,AGILAB 可以利用Python 3.13+的自由线程特性,突破GIL限制,提升并行性能。

Agent友好的开发工作流:项目内置了对AI编程助手(如Codex)的支持,包括AGENTS.md文档、.codex/skills配置、以及Codex辅助工具。

4

章节 04

技术栈与组件构成

AGILAB 是一个综合性的平台,包含多个协同工作的组件:

agi-core:核心框架,提供工作流定义、执行引擎、以及基础抽象。

agi-env:环境管理组件,负责Python解释器隔离、依赖安装、环境快照等。它使用 Astral 的 uv 工具来提供快速、可靠的包管理。

agi-gui:基于Streamlit的图形界面,提供项目选择、工作流编排、执行监控、结果分析等功能。

agi-node:单机工作节点,负责在本地或远程机器上执行工作流任务。

agi-cluster:集群管理组件,协调多个工作节点,实现分布式执行。

这些组件通过清晰的接口解耦,用户可以根据需要选择使用全部或部分功能。

5

章节 05

典型应用场景

AGILAB 适用于多种AI/ML应用场景:

模型训练与编排:构建和运行多步骤的训练工作流,支持本地调试和集群扩展。内置的飞行模拟项目就是一个典型示例,展示了如何编排复杂的仿真数据处理流程。

部署与服务:将训练好的模型部署为持久服务,提供健康检查和自动重启能力。服务状态可以通过API查询,便于集成到更大的系统中。

实验可复现性:通过环境管理、应用设置、日志和执行历史的统一保存,确保实验结果可以被准确复现。这对于学术研究和企业内部的模型审计都非常重要。

工业物联网:内置的示例项目展示了如何处理工业传感器数据,进行异常检测和预测性维护。

网络流量分析:另一个示例项目演示了大规模网络数据的实时处理和模式识别。

6

章节 06

快速入门与实践

AGILAB 的安装和使用都相当直接:

# 通过pip安装
pip install agilab

# 查看帮助
agilab --help

# 从源码安装(推荐用于开发)
git clone https://github.com/ThalesGroup/agilab.git
cd agilab
./install.sh --install-apps --test-apps

# 启动GUI
uv --preview-features extra-build-dependencies run streamlit run src/agilab/About_agilab.py

安装脚本使用 uv 来配置隔离的Python解释器,链接捆绑的应用到工作区,并通过测试和覆盖率工具验证安装。

7

章节 07

执行工作流示例

AGILAB 内置的 flight_project 是理解其工作方式的最佳起点:

  1. PROJECT:选择 src/agilab/apps/builtin/flight_project
  2. ORCHESTRATE:运行安装/分发/执行流程,打包并执行工作者管道
  3. PIPELINE:检查或重放生成的执行步骤
  4. ANALYSIS:打开内置的Streamlit视图,分析导出的数据

这个流程展示了AGILAB的核心理念:一个应用定义、一个环境引导、一条从UI到工作者的编排路径、以及一条分析产出物的路径。

8

章节 08

性能对比示例

AGILAB 提供了一个有趣的性能对比示例:execution_pandas_project 和 execution_polars_project。这两个项目运行相同的合成工作负载,但使用不同的执行路径:

  • PandasWorker:基于进程的并行执行
  • PolarsWorker:基于线程的进程内执行

这种对比帮助用户理解不同执行模型的特点,为特定场景选择最优方案提供依据。