[开源推荐] 百度百舸 LoongFlow:基于“知行合一”的 Agent 进化框架架构解析与实战
摘要:百度百舸团队开源的LoongFlow框架创新性地提出PES(Plan-Execute-Summarize)进化范式,突破传统进化算法的随机性局限。该框架通过规划者分析历史记忆、执行者实施改进、总结者提炼知识的闭环机制,实现AI Agent的定向进化。实验显示,LoongFlow在数学问题和机器学习任务中均取得突破性成果。开发者可通过模块化设计快速部署进化任务,为AI领域提供高效的自进化解决方
摘要:在 LLM Agent 从“可用”迈向“好用”的进程中,“自我进化”成为了新的技术高地。百度百舸团队近期开源的 LoongFlow 框架,摒弃了传统进化算法中的盲目随机性,提出了一种基于 PES(Plan-Execute-Summarize) 的新型进化范式。本文将从设计理念、核心架构、代码实现及实战案例四个维度,深入解读 LoongFlow 如何实现 Agent 的“龙场悟道”。
1. 背景:当 Agent 遇到进化瓶颈
目前的 AI Agent 开发中,我们常常面临一个困境:Prompt 工程和 Workflow 的优化极度依赖人工经验。
虽然学术界存在基于进化的算法(Evolutionary Algorithms, EA),试图让 Agent 自动迭代代码或 Prompt,但传统 EA 往往存在致命缺陷:
-
盲目性:依赖随机突变(Mutation),像“无限猴子打字机”,效率极低。
-
无记忆:每一代变异往往忽略了上一代的“失败教训”,导致重复错误。
LoongFlow 的诞生正是为了解决这个问题。它的核心哲学源自王阳明的“龙场悟道”(Enlightenment at Longchang),主张 “知行合一” —— 即利用大模型的认知能力(Thinking/Planning)来指导行动(Executing),再通过行动结果反哺认知,实现定向进化(Directed Evolution)。
2. 核心架构:PES 范式解析
LoongFlow 没有采用复杂的黑盒优化,而是构建了一个清晰的 PES(Plan-Execute-Summarize) 闭环。
2.1 架构图解
在这个架构中,Agent 不再是一个单向执行流,而是一个包含长短期记忆的动态系统。
-
P (Planner - 规划者):
-
角色:系统的“大脑”。
-
职责:它不直接写代码,而是观察当前的进化状态(State)和进化记忆(Memory)。它会分析历史的最佳实践和失败路径,制定下一步的改进方向(Direction)。
-
差异点:相比传统 ReAct 中的 Planner,这里的 Planner 具备跨周期的记忆能力。
-
-
E (Executor - 执行者):
-
角色:系统的“手”和“工匠”。
-
职责:接收 Planner 的指导,进行具体的代码编写、参数调整或 Prompt 优化。
-
能力:内置了 Evaluate(评估)和 Debug(调试)机制,确保持续输出可运行的解。
-
-
S (Summarizer - 总结者):
-
角色:系统的“复盘者”。
-
职责:在 Executor 执行完毕后,Summarizer 会对比预期与结果,提取“知识”,并将其更新到进化记忆中,供下一轮 Planner 使用。
-
2.2 底层支撑:ReAct 与 Hook 机制
在代码实现上,LoongFlow 具有高度的工程化水准。其底层基于模块化的 ReAct 引擎:
# 伪代码展示模块化设计
class EvolveAgent(BaseAgent):
def __init__(self, config):
# 核心组件可插拔
self.planner = PlannerWorker(...)
self.executor = ExecutorWorker(...)
self.summarizer = SummarizerWorker(...)
async def run(self):
while not converged:
plan = await self.planner.think()
result = await self.executor.act(plan)
knowledge = await self.summarizer.reflect(result)
self.memory.update(knowledge)
框架提供了丰富的 Hook 插桩,允许开发者在 pre_plan, post_execute 等环节注入自定义逻辑,非常适合科研实验和二次开发。
3. 应用场景与 SOTA 表现
LoongFlow 目前提供了两套成熟的进化策略实现:
3.1 General-Evolve(通用算法进化)
针对数学问题、算法竞赛等场景。
-
亮点:在数学家陶哲轩提出的 Open Problems 中,LoongFlow 在 11 个问题上打破了已知最佳结果。
-
原理:通过不断重写算法逻辑,寻找更优的数学解构。
3.2 ML-Evolve(机器学习自动进化)
针对 Kaggle、AutoML 场景。
-
亮点:在 OpenAI 发布的 MLE-Bench 基准测试中,LoongFlow 赢得了 14 枚金牌(共 20 个 Kaggle 竞赛)。
-
能力:它可以像一个数据科学家一样,自动进行 EDA(探索性数据分析)、特征工程构造、模型融合调优。
4. 开发者实战:从零启动一个进化任务
环境要求:Python 3.12+ (推荐使用 uv 管理依赖)
步骤一:环境配置
git clone https://github.com/baidu-baige/LoongFlow.git
cd LoongFlow
# 创建虚拟环境
uv venv .venv --python 3.12
source .venv/bin/activate
# 安装开发模式
uv pip install -e .
步骤二:配置任务
以经典的 “单位正方形圆堆积问题” 为例。我们需要关注 agents/general_evolve/examples/packing_circle_in_unit_square 目录。
-
修改
task_config.yaml:配置你的 LLM 后端。
llm_config:
model: "gpt-4o" # 建议使用强推理模型,如 GPT-4o 或 DeepSeek-R1
api_key: "sk-your-key"
url: "https://api.openai.com/v1"
evolution:
max_iterations: 20 # 进化代数
beam_width: 2 # 搜索宽度
-
定义评估函数 (
eval_program.py):这是进化的“指挥棒”。
# 这是一个简化示例,LoongFlow 会尝试优化这个函数生成的圆的坐标
def evaluate(circles):
# 计算圆是否重叠、是否在正方形内
# 返回分数:放入圆的数量 or 圆的半径大小
return score
步骤三:启动进化
# 安装该任务所需的特定依赖
uv pip install -r agents/general_evolve/examples/packing_circle_in_unit_square/requirements.txt
# 运行脚本
./run_task.sh packing_circle_in_unit_square
运行后,你会在日志中看到惊人的一幕:Agent 开始尝试不同的数学排列算法,最初可能报错,但随着 PES 循环的进行,代码越来越健壮,计算出的圆排列密度越来越高。
5. 总结与展望
LoongFlow 的开源,为 AI Agent 领域提供了一个高质量的 “自进化”基座。它证明了:结构化的认知流程(PES)比盲目的算力堆砌(Random Mutation)更有效。
对于广大开发者和研究人员,LoongFlow 是一个极佳的实验平台:
-
对于算法工程师:可以利用 ML-Evolve 自动化处理繁琐的特征工程。
-
对于 Agent 研究者:可以基于其 ReAct 框架研究新的记忆机制或规划算法。
-
对于业务开发者:可以尝试用它来进化业务逻辑代码或复杂 Prompt。
项目地址:https://github.com/baidu-baige/LoongFlow
欢迎关注我的 CSDN 博客,获取更多 AI 前沿技术解析。如果觉得本文有用,请点赞收藏!
更多推荐

所有评论(0)