摘要:Dify Workflow 因其用户友好的设置和强大的功能而广受欢迎。然而,之前的版本以串行方式执行各个步骤,等待每个节点完成后再转到下一个节点。虽提供清晰结构,但这会降低复杂任务的处理速度,增加延迟和响应时间。
Dify Workflow 因其用户友好的设置和强大的功能而广受欢迎。然而,之前的版本以串行方式执行各个步骤,等待每个节点完成后再转到下一个节点。虽提供清晰结构,但这会降低复杂任务的处理速度,增加延迟和响应时间。
Dify v0.8.0 通过引入并行处理功能解决了这些限制。Workflow 现在可以并发执行多个分支,从而能够同时处理不同的任务。这显著提高了执行效率,使 LLM 应用程序能够更快、更灵活地处理复杂的工作负载。
要在工作流中定义并行分支:
将鼠标悬停在节点上点击出现的 + 图标添加不同的节点类型各个分支将并行执行并合并其输出。请参阅文档以获取详细说明。
工作流包含多种并行场景。可尝试使用这些场景来加快流程。如已在早期版本构建工作流,请考虑用并行模式重构,提高性能。
1 简单并行基本场景,可从一个固定节点(如起始节点)创建多个并行分支。可同时处理类似的子任务,如翻译或模型比较。
模型比较工作流程中的简单并行性:
2 嵌套并行允许在工作流中实现多层级并行结构。从初始节点开始,工作流分支出多个并行路径,每个路径包含各自的并行流程。“科学写作助手”示例展示了两个嵌套层级:
概念解释(concept explanation)分支(框1)包括:
隐喻和类比分支可增强概念理解主题提取 | 第二级嵌套(框 2)用于详细的概念分析和内容生成第二级(框 2): 主题提取分支执行两个并行任务: a. 提取主题并搜索(提取主题 -> Serper)获取背景信息 b.提取主题并生成学习计划(学习计划->参数提取器->TavilySearch)这种多层嵌套并行结构非常适合诸如深入概念分析和科学传播内容创作等复杂、多阶段的任务。它能够同时处理不同的概念层面,包括基本解释、类比、背景研究和学习计划,从而提高处理效率和输出质量。
3 迭代并行涉及循环结构内的并行处理。“股票新闻情绪分析”演示这种方法:
该方法能够高效处理海量新闻文章,从多个角度分析情绪,帮助投资者做出明智的决策。迭代中的并行处理能够加速具有相似数据结构的任务,从而节省时间并提升性能。
4 条件并行条件分支并行根据条件运行不同的并行任务分支。“面试准备助手”示例展示了此设置:
这种 IF/ELSE 结构允许 Workflow 根据当前状态和需求灵活地运行不同的并行任务。(问题分类器节点可以实现类似的功能。)这在保持有序的同时提高了效率。它适用于需要根据各种条件同时执行复杂任务的情况,例如本面试准备流程。
5 受益于工作流并行这四种并行方法(简单、嵌套、迭代和条件)提升了 Dify Workflow 的性能。它们支持多模型协作,简化复杂任务,并动态调整执行路径。这些升级提升了效率,拓宽了应用范围,更好地处理棘手的工作情况。您可以在探索页面的配套模板中快速试用这些新功能。 Dify将继续增强 Workflow,提供更强大、更灵活的自动化解决方案。令人期待!
魔都架构师 | 全网30W技术追随者 大厂分布式系统/数据中台实战专家 主导交易系统百万级流量调优 & 车联网平台架构 AIGC应用开发先行者 | 区块链落地实践者 以技术驱动创新,我们的征途是改变世界! 实战干货:编程严选网来源:JavaEdge