工作流应用

更新时间: 2025-08-14 19:59:09

工作流应用将复杂的任务拆分成一系列有序执行的步骤,以降低系统复杂度。在阿里云百炼,通过工作流组合使用大模型、API和函数计算等节点,可有效降低编码成本。本文介绍如何创建工作流。

应用介绍

为什么使用工作流应用

工作流是一种将复杂任务拆分为一系列有序步骤的方法,旨在简化系统复杂度,提高工作效率。在现代软件开发和业务流程管理中,工作流应用变得尤为重要。通过在阿里云百炼平台上创建工作流应用,可以清晰地定义任务的执行顺序、责任分配以及各步骤之间的依赖关系,从而实现自动化和优化。

工作流应用有许多使用场景,如:

  • 旅行规划:用户可通过工作流插件选择目的地等参数,自动生成旅行计划,包括航班、住宿、景点推荐等。

  • 报告分析:针对复杂数据集,通过组合数据处理、分析和可视化插件,生成结构化和格式化的分析报告,满足不同业务需求。

  • 客服支持:通过自动化工作流处理客户咨询,包括问题分类等,提高客服响应速度和准确性。

  • 内容创作:实现文章、市场营销文案等内容的生成,用户只需输入主题和要求,系统自动生成符合要求的文稿。

  • 教育培训:通过工作流设计个性化学习方案,包括学习进度跟踪、测评等,实现学生的自主学习。

  • 医疗问诊:根据患者输入的症状,通过组合多种分析工具生成初步诊断或推荐相关检查,辅助医生进行进一步判断。

具体案例

案例一

本案例以创建一个判断短信是否涉及电信诈骗的工作流应用为例进行说明,需要用到开始节点、大模型节点和结束节点。

  1. 访问应用管理页面,单击新增应用 > 工作流应用 > 立即创建,进入工作流配置页面。

  1. 配置开始节点:单击开始节点,删除默认的city和date参数。输入节点已经预置了一个变量query用来接收用户输入,此处不需要再添加其他变量。

    配置完成后关闭面板即可,系统将自动保存已有修改结果。

  1. 添加大模型节点,用于识别诈骗信息。

    将左侧大模型节点拖入画布配置页面,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,再连接开始节点和大模型节点。

    • 模型配置: 选择通义千问-Plus

    • 提示词:

      分析并判断所给信息是否存在诈骗嫌疑。给出肯定答案,是否存在诈骗嫌疑。
       处理要求:细致审查信息内容,关注关键词汇和典型诈骗模式,如请求紧急转账、提供个人信息、承诺不切实际的利益等。 
      操作步骤: 
      1. 识别信息中的关键要素,包括但不限于发件人身份、提出的请求、承诺的回报及任何紧迫性表述。 
      2. 对比已知的诈骗案例特征,检查信息中是否有类似的操作手法或语言模式。 
      3. 评估信息的整体合理性,考虑所提要求是否符合常规逻辑和常规流程。 
      4. 若信息中包含链接或附件,不要直接点击或下载,以避免潜在的安全风险,并提醒用户注意此类内容的危险性。 
      输出格式:明确指出该信息是否展现出诈骗的特征,并简要说明判断依据。如果存在诈骗嫌疑,提供一些建议或预防措施以保护用户安全。
    • 用户提示词:

      判断“${sys.query}”该信息是否涉嫌诈骗信息。

p910525

  1. 连接大模型节点和结束节点。再单击结束节点,在其配置面板的编辑框中输入/插入变量大模型1/result,未提及的参数保持默认即可。

p910524

配置样例:

image

  1. 单击右上角测试,输入你的包裹已在驿站存放多日未提取,请抽空过来取件,单击image。等待工作流运行结束后,查看输出结果。

image

  1. 继续输入你有一条中奖100万的信息,请查收,单击image。等待工作流运行结束后,查看输出结果。

image

  1. 如果当前工作流应用可以正常工作,请单击右上角发布应用,以备后续调用。

案例二

本案例将使用工作流创建一个智能导购员,可帮助用户选购手机、电视和冰箱,需要用到开始节点、意图分类节点、大模型节点和结束节点。

  1. 访问应用管理页面, 单击新增应用 > 工作流应用 > 立即创建,进入工作流配置页面。

  1. 配置开始节点:单击开始节点,在其配置面板中添加节点描述信息,并删除默认的city和date参数。输入节点已经预置了一个变量query用来接收用户输入,此处不需要再添加其他变量。

    配置完成后关闭面板即可,系统将自动保存已有修改结果。

  1. 将左侧意图分类节点拖入画布,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,再连接开始节点和意图分类节点。

    • 输入变量:选择内置变量query

    • 模型选择:选择通义千问-Plus

    • 意图分类:单击添加意图,分别添加以下3个意图

      • 消费者想选购电视

      • 消费者想选购手机

      • 消费者想选购冰箱

p910523

  1. 将左侧大模型节点拖入画布,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,连接意图分类的消费者想选购冰箱大模型节点。

    • 模型配置:选择通义千问-Plus

    • 提示词

      你是负责给顾客推荐冰箱的智能导购员。
      你需要按照下文中【冰箱的参数列表】中的顺序来主动询问用户需要什么参数的冰箱,一次只能问一个参数,不要对一个参数进行重复提问。
      如果用户告诉了你这个参数值,你要继续询问剩余的参数。
      如果用户询问这个参数的概念,你要用你的专业知识为他解答,并继续向他询问需要哪个参数。
      如果用户有提到不需要继续购买商品,请输出:感谢光临,期待下次为您服务。
      【冰箱的参数列表】
      1.使用场景:【家用、小型商用、大型商用】
      2.容量:【200L、300L、400L、500L】
      3.能效等级:【一级能效、二级能效、三级能效】
      如果【参数列表】中的参数都已收集完毕,你要问他:“请问您是否确定购买?”并同时将顾客选择的参数信息输出,如:用于小型商用|300L|一级能效。问他是否确定需要这个参数的冰箱。如果顾客决定不购买,要问他需要调整哪些参数。
      如果顾客确定这个参数符合要求,你要按照以下格式输出:
      【使用场景:家用,容量:300L,能效等级:一级能效】。请你只输出这个格式的内容,不要输出其它信息。

    • 用户提示词

      用户的问题是:${sys.query}

p910522

  1. 将左侧大模型节点拖入画布,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,连接意图分类的消费者想选购电视大模型节点。

    • 模型配置:选择通义千问-Plus

    • 提示词

      你是负责给顾客推荐电视的智能导购员。
      你需要按照下文中【电视的参数列表】中的顺序来主动询问用户需要什么参数的电视,一次只能问一个参数,不要对一个参数进行重复提问。
      如果用户告诉了你这个参数值,你要继续询问剩余的参数。
      如果用户询问这个参数的概念,你要用你的专业知识为他解答,并继续向他询问需要哪个参数。
      如果用户有提到不需要继续购买商品,请输出:感谢光临,期待下次为您服务。
      【电视的参数列表】
      1.屏幕尺寸:【50英寸、70英寸、80英寸】
      2.刷新率:【60Hz、120Hz、240Hz】
      3.分辨率:【1080P、2K、4K】
      如果【电视的参数列表】中的参数都已收集完毕,你要问他:“请问您是否确定购买?”,并同时将顾客选择的参数信息输出,如:50英寸|120Hz|1080P。问他是否确定需要这个参数的电视。如果顾客决定不购买,要问他需要调整哪些参数。
      如果顾客确定这个参数符合要求,你要按照以下格式输出:
      【屏幕尺寸:50英寸,刷新率:120Hz,分辨率:1080P】。请你只输出这个格式的内容,不要输出其它信息。
    • 用户提示词

      用户的问题是:${sys.query}

p910521

  1. 将左侧大模型节点拖入画布,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,连接意图分类的消费者想选购手机大模型节点。

    • 模型配置:选择通义千问-Plus

    • 提示词

      你是负责给顾客推荐手机的智能导购员。
      你需要按照下文中【手机的参数列表】中的顺序来主动询问用户需要什么参数的手机,一次只能问一个参数,不要对一个参数进行重复提问。
      如果用户告诉了你这个参数值,你要继续询问剩余的参数。
      如果用户询问这个参数的概念,你要用你的专业知识为他解答,并继续向他询问需要哪个参数。
      如果用户提到不需要继续购买商品,请输出:感谢光临,期待下次为您服务。
      【手机的参数列表】
      1.使用场景:【游戏、拍照、看电影】
      2.屏幕尺寸:【6.4英寸、6.6英寸、6.8英寸、7.9英寸折叠屏】
      3.RAM空间+存储空间:【8GB+128GB、8GB+256GB、12GB+128GB、12GB+256GB】
      如果【参数列表】中的参数都已收集完毕,你要问他:“请问您是否确定购买?”,并同时将顾客选择的参数信息输出,如:用于拍照|8GB+128GB|6.6英寸。问他是否确定需要这个参数的手机。如果顾客决定不购买,要问他需要调整哪些参数。
      如果顾客确定这个参数符合要求,您要按照以下格式输出:
      【使用场景:拍照,屏幕尺寸:6.8英寸,存储空间:128GB,RAM空间:8GB】。请你只输出这个格式的内容,不要输出其它信息。
    • 用户提示词

      用户的问题是:${sys.query}

p910519

  1. 将左侧变量处理节点拖入画布,在其配置面板中配置以下参数。未提及的参数保持默认即可。配置完成后关闭面板,连接意图分类节点的默认意图和变量处理节点。

    • 输出模式:选择文本输出

    • 在编辑框中输入:

      您好!请直接告诉我,您想购买电视、冰箱还是手机呢?

p910518

  1. 将三个大模型节点和变量处理节点都连接到结束节点。再单击结束节点,在其配置面板的编辑框中分别输入/插入4个变量大模型1/result大模型2/result大模型3/result变量处理1/result,未提及的参数保持默认即可。

p910518

配置样例:

image

  1. 单击右上角测试,在对话框输入给我介绍一下你们的冰箱,我要家用的?,单击image。等待工作流运行结束后,查看输出结果。可继续追问,在对话框输入介绍一下200L的家用冰箱?

image

  1. 如果当前工作流应用可以正常工作,请单击右上角发布应用,以备后续调用。

会话变量

会话变量作为全局变量,能够在当前工作流的全生命周期内记录参数信息,并可在各个节点中进行引用。

可在画布配置页面的右上角单击image图标进行配置。

image

节点说明

节点是工作流应用的核心功能单元,各自承担特定任务,如执行操作、触发条件、处理数据或决定流程走向。它们就像积木般灵活拼接,共同构建高效、智能的自动化流程。

开始/结束

  • 何时使用

    • 在设计工作流时,您需要确定输入/输出参数的结构和内容,并填入开始/结束节点。

  • 如何使用

    • 开始节点

      组件

      说明

      自定义变量

      模型会解析并拆解用户query,并将其填入相应的自定义变量中。其他节点调用自定义变量时,获取的是拆解后的用户query,而非用户query的原始内容。

      单击添加变量新增变量。

      • 变量名:输入具有语义的名称。不支持中文字符。

      • 类型:变量的数据类型。当前支持 String、Boolean、Number、Object、Array(String、Boolean、Number、Object)。

      • 描述:对变量的功能和使用场景进行简要说明,请使用自然语言进行描述,帮助模型理解变量的含义。例如,工作流中添加了多个插件节点时,能帮助模型判断当前用户query需要调用哪个插件实现相应功能。

      预置变量

      系统预置变量query用于接收用户query的原始内容。

      还内置了一些实用变量:

      • historyList

        对话历史列表,用于应用自动维护对话历史记录,提供多轮对话体验。

      • imageList

        图片列表,用于存储测试窗用户上传的图片,目前仅支持存储单张图片。

    • 结束节点

      组件

      说明

      输出模式

      文本输出:适合输出非结构化的内容。在输入框中支持输入固定内容或输入/引用变量,以确定最终返回给用户的执行结果。变量可来源于工作流中任意节点的执行结果或会话变量。通过合理配置输出变量,用户能够清晰地掌控整个工作流的数据流向,并确保最终呈现的信息准确、完整。

      JSON输出:按照 JSON 格式编排输出内容,适合输出结构化的内容。可自定义变量名,支持输入文本或引用变量。

      流式输出

      流式输出开关仅对文本模式生效。

      开启时,可以逐字流式输出大模型节点、应用组件节点的内容。关闭时,回复内容将全部生成后一次性输出。

      结果返回

      该功能即将下线。

      仅在 API 调用应用时生效,用于决定是否输出节点内容。如需了解该组件的用途,请参阅通过“结果返回”控制节点内容的方法

大模型

  • 为什么使用它

    这是整个工作流的“智慧大脑”——能读懂语言、生成文字、分析图像,还能参与多轮对话。你可以用它写文案、做文本总结、甚至对图片内容做分析(如果是 VL 系列模型)。

  • 功能特性

    • 既支持一次性处理一个输入,也能批量处理大量数据。

    • 可以配置不同大模型(如通义千问-Plus),根据性能、速度或其他特性的需求选择合适的模型。

  • 节点参数配置

    参数名

    参数说明

    模式选择

    单次处理模式:调用一次大模型。

    批次处理模式:在批处理模式中,节点会多次运行。每次运行时,列表中的一个项目会被依次分配给批处理变量。这个过程会一直持续,直到处理完列表中的所有项目或达到设定的最大批处理次数为止。

    批处理配置

    • 批处理次数上限(范围1-100,普通用户默认100):批处理运行的次数上限。

      说明

      实际批次处理次数取决于用户输入数组中的最小长度,若没有输入变量,则取决于配置中的批次数量。

    • 并行运行数量(范围1-10):批处理的并发限制,设置为1表示串行执行所有任务。

    模型配置

    选择合适的大模型,支持模型参数调整。模型的支持情况以界面显示为准。

    如需了解模型的详细介绍,请参阅模型列表与价格

    如需了解各模型的 API 调用速率限制,请参阅限流

    参数配置

    温度系数:用于调节生成内容的多样性。较高的温度值将增加生成文本的随机性,产生更多独特的输出;而较低的温度值会使生成内容更为保守和一致。

    DeepSeek R1 系列模型和QVQ系列模型暂不支持此项配置

    最长回复长度:限制模型生成文本的最大长度(不包括Prompt)。该限制因模型类型而异,具体最大值可能会有所不同。

    开启搜索:启用后,允许大模型在互联网上搜索相关信息。如果您没有看到该参数,则代表当前模型不支持开启搜索开关。

    以下参数仅选择 Qwen3 模型时支持:

    • 思考模式:开启后模型具备思考能力。

      开启后,模型的反思能力更强,任务执行和调度效果更好,但耗时较长。适用于逻辑推理、数学、编码等复杂任务。
    • 思考长度:思维链的最大输出tokens数量。

      如果模型思考过程生成的Token数超过思考长度限制,智能体会截断思考内容,并立刻开始生成最终回复。

    以下参数仅选择通义千问VL、QVQ模型时:

    • 模型入参:vlImageUrl可引用参数或输入图片链接。

    • 图片来源

      • 图片集:模型会认为上传的图片是独立的,会根据问题匹配对应图片进行理解。

        单张图片可以直接传入。例如:https://****.com/****.jpg

        多张图片可列表传入。例如:["URL","URL","URL"]

      • 视频帧:模型会认为上传的图片来源于同一个视频,会把图片按序看作一个整体来理解,视频帧需不少于4张。

    提示词

    为模型提供系统级的指令,可用于设定模型的角色、任务、输出格式等内容,如“你是一个数学专家,专业解决数学问题,请输出符合格式的数学解题过程和结果”。

    用户提示词

    用户和模型的交互内容,如要求、指令等。支持配置Prompt模板或变量插入,大模型将根据Prompt的配置进行处理和生成。

    记忆

    记忆等同于上下文信息,指多轮场景下模型对历史对话的记忆能力。

    • 本节点缓存:以本节点的输出作为上下文信息,模型只会记得本节点内发生的上下文信息。

      • 记忆轮次:代表记忆的轮次,一次输入+输出代表一轮。

    • 自定义缓存:以指定的上下文变量作为上下文信息。

      • 上下文变量:选择上下文信息来源。

    输出变量

    输出本节点处理结果的变量名,用于后续节点识别和处理本节点的结果。

    DeepSeek R1 系列模型和QVQ系列模型支持输出深度思考过程(reasoningContent)。

    失败时重试

    关闭后,若发生错误,本节点将停止执行。

    开启后,若发生错误,本节点将根据配置的重试次数和重试间隔尝试重新执行。

    • 最大重试次数:请求失败时的最大重试次数。

    • 重试间隔:每次重试的时间间隔,单位为毫秒。

    异常处理

    关闭后,若发生错误,本节点将按照系统预设的错误处理机制进行处理。

    开启后,若发生错误,本节点将依据配置执行自定义的处理逻辑。

    • 默认值:发生异常时输出result中的内容。

    • 异常分支:当发生异常时,执行异常分支。您需要为异常分支配置处理流程。

      image

    返回结果

    该功能即将下线。

    仅在 API 调用应用时生效,用于决定是否输出节点内容。如需了解该组件的用途,请参阅应用调用

    说明

    如需通过API集成应用到您的业务,请参阅应用调用

知识库

  • 为什么使用它

    想象一下,你有一座巨大的“知识宝库”,里面存放了海量文档、FAQ、产品资料。这个节点能帮你从海量信息里提取“最相关”的内容,为后续 AI 问答做好准备。

  • 功能与用法

    • 通过搜索一个或多个知识库来得到相关文档片段,让 AI 能“读到”更多上下文,回答更专业或精准。常常与大模型节点结合使用。

    • 在构建对话型工作流、智能客服系统时尤其常用。

  • 参数配置

    参数名

    参数说明

    输入

    需要从知识库中匹配的信息。

    • content:可直接输入文本,可引用前置节点输出的变量或会话变量 。

    • imageList:支持图片搜索,可直接输入图片链接,可引用前置节点输出的变量或会话变量 。

    知识库

    • 选择知识库:您需要先创建知识库。然后指定要在哪些知识库里进行检索(支持多选)。

    • topK:从每个知识库中召回的与输入信息相似度最高的文本片段个数。

    输出变量

    本节点的输出结果存储在哪个参数中,可作为变量被后续节点引用。

    • result:输出结果。

      • chunkList:召回的文本片段列表。

        • content:召回文本片段的原始内容。

        • title:原始内容在文档中的哪个标题下。

        • documentName:文档名称。

        • score:文本片段的相似度得分。得分越高代表匹配度越强,可以在后续节点里对结果做过滤、排序或组合。

      • rewriteQuery:改写后的用户query。

API

说明

为确保 API 节点能成功访问目标服务,请将百炼应用服务 IP 地址(47.93.216.1739.105.109.77)添加到您目标服务器的安全组(或防火墙)的入方向规则白名单中。

  • 定义

    通过POST、GET、PUT、PATCH、DELETE的方式,调用自定义API服务,输出API调用结果。

  • 参数配置

    参数名

    参数说明

    API地址

    设置API的请求地址URL。

    • 请求方式:

      • POST:用于向服务器提交数据,以创建新资源。

      • GET:用于获取资源,不会对服务器上的数据进行修改。

      • PUT:用于向服务器更新指定资源,或者在服务器上创建新资源。

      • PATCH:用于向服务器部分更新资源。

      • DELETE:用于从服务器删除指定资源。

    • URL:在编辑框中输入完整的API地址。支持直接输入或插入变量引用之前节点的值。例如 https://dashscope.aliyuncs.com/compatible-mode/v1/files

    Header设置

    设置HTTP请求头,比如Content-Type、Authorization等。支持直接输入或引用之前节点的值。

    Param设置

    请求地址URL中的路径参数。支持直接输入或引用之前节点的值。

    例如,https://dashscope.aliyuncs.com/compatible-mode/v1/files?limit=5中的limit

    Body设置

    请根据API的要求选择正确的类型。

    • none:无请求体,适用于GET请求。

    • form-data:表单数据,文件上传或键值对。

    • raw:直接输入原始文本,如 JSON、XML。

    • JSON:自动格式化的JSON对象。

    超时设置(秒)

    请求等待响应的最长时间,超过这个时间就会报超时错误。

    失败时重试

    关闭后,若发生错误,本节点将停止执行。

    开启后,若发生错误,本节点将根据配置的重试次数和重试间隔尝试重新执行。

    • 最大重试次数:请求失败时的最大重试次数。

    • 重试间隔:每次重试的时间间隔,单位为毫秒。

    异常处理

    关闭后,若发生错误,本节点将按照系统预设的错误处理机制进行处理。

    开启后,若发生错误,本节点将依据配置执行自定义的处理逻辑。

    • 默认值:发生异常时输出result中的内容。

    • 异常分支:当发生异常时,执行异常分支。您需要为异常分支配置处理流程。

    输出

    将API的响应结果存储到指定变量中,以便后续节点引用。

    说明

    如需通过API集成应用到您的业务,请参阅应用调用

  • 节点示例

    使用POST方法,调用接口。以查询文件列表中的HTTP代码为例进行配置,返回5个文件。

    curl -X GET https://dashscope.aliyuncs.com/compatible-mode/v1/files?limit=5 \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY"

    节点配置

    输出

    image

    screenshot_2025-07-22_16-33-02

意图分类

  • 定义

    根据意图描述智能分类匹配,选择其中一个链路执行。

  • 参数配置

    参数名

    参数说明

    输入变量

    输入本节点需要处理的变量,用于识别需要处理的内容。支持直接输入变量值或引用前置节点变量及会话变量。

    模型选择

    支持通义千问-Plus和意图分类模型。

    意图分类

    需要模型来判断的意图,需要输入不同的意图。模型将根据不同的意图描述匹配后续链路。如:“用于数学题的计算”,“关于天气相关的知识问答”。

    其他意图

    当模型判断输入的所有意图分类均不满足时执行该分支。

    意图模式

    • 单选模式:大模型将从现有的意图配置中挑选最合适的意图作为输出。

    • 多选模式:大模型将从现有的意图配置中挑选所有匹配的意图作为输出。

    思考模式

    • 快速模式:该模式能够避免输出复杂的推理过程,从而提升处理速度,适用于简单场景。

    • 效果模式:该模式通过逐步思考,能够更准确地匹配相应的分类。

    记忆

    记忆等同于上下文信息,指多轮场景下模型对历史对话的记忆能力。

    • 本节点缓存:以本节点的输出作为上下文信息,模型只会记得本节点内发生的上下文信息。

      • 记忆轮次:代表记忆的轮次,一次输入+输出代表一轮。

    • 自定义缓存:以指定的上下文变量内容作为上下文信息。

      • 上下文变量:选择上下文信息来源。

    提示词

    为意图识别模型提供额外的要求或约束。在此,您可以输入更多限制条件或提供更多案例,从而使模型的分类结果更符合您的要求。

    示例

    假设您正在开发一个电商平台的客服系统,用户可能会提出各种关于订单查询、退换货、支付的问题。为了确保模型准确分类,可以在高级配置中添加相关提示和示例。

    请根据以下示例进行意图分类:
    案例1:用户输入“我想退还刚买的这件外套”,分类为“退换货”。
    案例2:用户输入“请帮我查询订单的发货状态”,分类为“订单查询”。
    限制条件:仅处理与订单相关的查询,忽略支付和技术问题。

    效果:

    用户输入:“我上周在你们网站订购的那本书什么时候可以送到我家?”

    分类结果:“订单查询”

    在该实例中,通过提供具体的分类案例,引导模型将“查询送达时间”归类为“订单查询”意图,同时限定了分类范围,排除了其他无关问题。

    输出

    输出本节点处理结果的变量名,用于后续节点识别和处理本节点的结果。

    说明

    运行该节点将消耗Token,并在运行时显示其消耗数量。

函数计算

  • 定义

    授权阿里云函数计算服务,调用函数计算中自定义的服务。

  • 参数配置

    参数名

    参数说明

    输入

    输入本节点需要处理的变量,用于识别需要处理的内容,支持引用前置节点变量或直接输入变量值。

    Region

    选择函数计算服务所在的地域:杭州北京上海

    服务配置

    选择要调用的函数计算服务。您需要先创建函数计算服务。

    创建函数计算服务的账号需与当前登录的阿里云百炼平台账号一致,或隶属于同一阿里云主账号。

    输出

    将本节点的处理结果存储到指定变量中,以便后续节点引用。

  • 节点示例:

    1. 在北京地域,参考使用函数计算部署通义千问大模型实现AI对话创建并测试函数计算服务,确保函数计算服务正常运行。

    2. 配置函数计算节点。

      image

MCP

  • 定义

    MCP 节点可以为工作流接入海量 MCP 服务工具,帮助您快速接入外部资源。每个 MCP 节点可以接入一个工具。

  • 前提条件

    阿里云百炼预置了常用的 MCP 服务,您可以引用这些官方MCP服务,也可以引用开源社区或自己开发的自定义 MCP 服务。

  • 参数配置

    参数名称

    参数说明

    配置示例

    输入

    本节点需要处理的内容,变量会随工具变化。选择MCP服务后,会自动加载MCP服务自带的变量。

    您可以前往MCP管理页面,单击MCP服务卡片进入服务详情页,然后在工具页签查看变量说明及填写方法。

    以官方MCP服务Weather为例。选择get_weather工具。

    image

    工具页签查看get_weather工具的变量填写方法:

    image

    输出

    输出本节点处理结果的变量,用于后续节点识别和处理本节点的处理结果。

应用组件

  • 定义

    智能体或工作流应用可发布为模块化的组件,供其他智能体或工作流应用接入使用,实现功能复用,加速复杂 AI 应用开发。您也可以将智能体或工作流应用发布为组件,详情请参考使用智能体或工作流作为组件

  • 参数配置

    配置项

    配置内容

    输入变量

    用于识别本节点需要处理的内容。支持直接输入或引用前置节点的变量。

    记忆

    记忆等同于上下文信息,指多轮场景下模型对历史对话的记忆能力。

    • 本节点缓存:以本节点的输出作为上下文信息,模型只会记得本节点内发生的上下文信息。

      • 记忆轮次:代表记忆的轮次,一次输入+输出代表一轮。

    • 自定义缓存:以指定的上下文变量作为上下文信息。

      • 上下文变量:选择上下文信息来源。

    流式输出

    开启时,节点的来源于大模型的内容将会逐字流式输出在对话中。关闭时,回复内容将全部生成后一次性输出。

    输出变量

    输出本节点处理结果的变量,用于后续节点识别和处理本节点的处理结果。

变量处理

  • 定义

    用于文本内容的转换与处理,如抽取特定内容、格式转换等,支持模板模式。

  • 参数配置

    参数名

    参数说明

    输出模式

    • 文本输出:将输入内容转换为文本类型进行输出。在编辑框中直接输入待处理的内容,或通过插入变量的方式输入前置节点或会话变量的待处理内容。

    • JSON输出:将输入的变量以格式化JSON类型进行输出。

    • 聚合分组:按照分组策略对分组内的值进行返回控制。可以返回每个分组中第一个或最后一个非空的值。

    输出变量

    本节点的输出结果存储在哪个参数中,可作为变量被后续节点引用。

    返回结果

    该功能即将下线。

    仅在 API 调用应用时生效,用于决定是否输出本节点内容。如需了解该组件的用途,请参阅应用调用

脚本

  • 定义

    通过脚本代码处理,将输入内容转化为特定格式的模板或输出形式。该过程包括对输入数据的解析、转换和格式化,以实现一致性和可读性。

  • 参数配置

    参数名

    参数说明

    输入

    该节点的输入数据。支持输入固定值、引用前置节点的变量或会话变量。

    代码

    编写核心逻辑代码,支持 JavaScript 和 Python 两种语言。

    • 获取输入:请使用内置的 params 对象获取输入参数,格式为params.输入参数的变量名 。例如params.input1

    • 返回输出:处理函数 main 必须 return 一个 字典/对象,其键值对将构成节点的输出。

    输出

    节点的代码逻辑所产生的结果。代码中 return 的字典将作为本节点的输出。

    例如,若返回 {'result': '处理成功'},下游节点就可以通过 本节点名.result 来获取“处理成功”这个字符串。

    失败时重试

    关闭后,若发生错误,本节点将停止执行。

    开启后,若发生错误,本节点将根据配置的重试次数和重试间隔尝试重新执行。

    • 最大重试次数:请求失败时的最大重试次数。

    • 重试间隔:每次重试的时间间隔,单位为毫秒。

    异常处理

    关闭后,若发生错误,本节点将按照系统预设的错误处理机制进行处理。

    开启后,若发生错误,本节点将依据配置执行自定义的处理逻辑。

    • 默认值:发生异常时输出result中的内容。

    • 异常分支:当发生异常时,执行异常分支。您需要为异常分支配置处理流程。

条件判断

  • 定义

    设置条件分支。当变量满足条件后,流程将选择相应的后续链路。支持且/或条件配置,多个条件是从上而下按顺序执行。

  • 参数配置

    参数名

    参数说明

    条件分支

    填写条件判断语句。

    不同条件组之间为“或”的关系,同一个条件组中不同的条件为“且”的关系。

    其他

    不需要条件判断的可从此输出。

AppFlow

  • 定义

    授权阿里云AppFlow服务,调用AppFlow自定义的服务。

    说明

    关于AppFlow的相关文档,请参见产品简介,关于AppFlow的具体应用,请参见实践教程

  • 参数配置

    参数名

    参数说明

    输入

    输入本节点需要处理的变量,用于识别需要处理的内容。支持直接输入变量值或引用前置节点变量及会话变量。

    服务配置

    选择要调用的AppFlow服务。您需要先创建创建连接流

    创建AppFlow服务的账号需与当前登录的阿里云百炼平台账号一致,或隶属于同一阿里云主账号。

    输出

    将本节点的处理结果存储到指定变量中,以便后续节点引用。

插件

  • 定义

    您可以将插件节点配置到工作流应用中以拓展应用能力,执行更复杂的任务。阿里云百炼提供了一系列官方插件,例如夸克搜索、计算器、Python代码解释器等,您也可以根据特定需求创建自定义插件。

    更多信息,请参见插件概述
  • 前提条件

    • 如果要引用官方插件或三方插件,您需要先申请开通插件。具体操作,请参见插件概述

    • 如果要引用自定义插件,您需要先创建自定义插件

  • 参数配置

    参数名称

    参数说明

    输入

    本节点需要处理的内容,变量随所选的插件变化。选择插件后,会自动加载插件自带的变量。

    您可以前往官方插件和三方插件自定义插件页面,单击插件卡片,查看变量的填写方法。

    输出

    输出本节点处理结果的变量,用于后续节点识别和处理本节点的处理结果。

    失败时重试

    关闭后,若发生错误,本节点将停止执行。

    开启后,若发生错误,本节点将根据配置的重试次数和重试间隔尝试重新执行。

    • 最大重试次数:请求失败时的最大重试次数。

    • 重试间隔:每次重试的时间间隔,单位为毫秒。

    异常处理

    关闭后,若发生错误,本节点将按照系统预设的错误处理机制进行处理。

    开启后,若发生错误,本节点将依据配置执行自定义的处理逻辑。

    • 默认值:发生异常时输出result中的内容。

    • 异常分支:当发生异常时,执行异常分支。您需要为异常分支配置处理流程。

循环

  • 定义

    循环节点是工作流中用于处理重复任务的组件。循环体作为子画布,包含固定的开始和结束节点。您可根据具体场景,自行添加不同节点到循环体中。

  • 参数配置

    参数名称

    参数说明

    循环类型

    • 使用数组循环:输入必须是数组(List)类型数据,循环会按照数组的索引顺序执行,遍历数组中的每个元素。循环次数与数组长度有关。有多个数组时以最短长度为准,每次循环传入对应项。

    • 指定循环次数:按指定次数循环。

      循环次数上限为100次,大于100次可联系客服进行加白处理。

    中间变量

    通过中间变量在循环间共享数据,并配合变量赋值节点动态修改变量值。

    终止条件

    循环退出条件,通过变量赋值节点更新循环体中间变量达成用户提前设置的终止条件的方式,让循环体提前结束循环,当未设置循环终止条件时,会根据循环类型判断退出。

    输出变量

    将循环结果存储到指定变量中,以便后续节点引用。

    输出也是数组形式,依据实际循环次数生成。每次循环前检查终止条件,满足则结束。

变量赋值

  • 定义

    仅支持在循环节点中使用,可以将特定的值赋予循环体的中间变量,从而实现变量值的动态更新与传递,使工作流能够根据实时数据进行相应处理。

  • 参数配置

    参数名

    参数说明

    设置变量

    • 变量:需要赋值的参数,支持选择循环节点的中间变量或会话变量。

    • 设置值:可输入固定值或引用前置节点的变量。

批处理

  • 定义

    批量节点是工作流中用于处理批量任务的功能节点。批处理节点的子画布包含固定的开始节点和结束节点,标识一次批处理的开始和结束。您可根据具体场景,自行添加不同节点到批处理节点中。

  • 参数配置

    参数名称

    参数说明

    批处理设置

    • 批处理次数上限:整个批处理循环的最大执行次数。即使任务未处理完,也会在达到指定次数后终止。

    • 并行运行数量:在每次循环中同时运行的任务数量。

    批处理数组

    用于定义需要批量处理的数据源,支持直接输入或引用其他变量。批处理的输入必须是数组(List)类型数据,流程会按照数组的索引顺序执行。

    可以添加多个数组,最终批处理次数由传入数组长度的最小值与批处理次数上限中较小的值决定。

    输出变量

    将批处理结果存储到指定变量中,以便后续节点引用。

    输出格式为数组形式,该数组长度取决于批处理执行次数。

流程输出

  • 定义

    本节点用于在工作流执行过程中的任意位置输出指定的内容,非工作流执行完毕后的最终输出结果。

    流程输出节点可用于以下场景:

    • 如果工作流的输出内容较多时,可以在工作流中插入流程输出节点将输出内容分成两部分,一部分通过流程输出节点输出,一部分通过结束节点输出。

    • 获取中间信息。例如,可以在工作流的关键路径上插入该节点,输出变量值、流程状态等信息,从而更直观地跟踪工作流的执行过程,提高排查问题的效率。

    • 添加到工作流中间的某个节点,用于输出一段临时消息,避免用户长时间等待。特别是在执行耗时较长的操作之前或之中,通过向用户反馈当前的处理状态或提示信息,让用户了解系统正在运行,而非“卡住”或无响应状态。例如,在调用外部API、进行复杂计算、批量数据处理等操作期间,可以插入一个流程输出节点,显示如“正在加载数据,请稍候…”、“系统正在处理您的请求,请勿关闭窗口”等提示语句。

  • 参数配置

    参数名称

    参数说明

    输出内容

    支持输入固定内容或输入/引用前置节点的变量及会话变量。

    流式输出

    开启时,节点的来源于大模型的生成内容将会逐字流式输出在对话中。关闭时,回复内容将全部生成后一次性输出。

  • 配置示例

    例如,在工作流中调用应用组件获取不同城市的天气情况时,可能会等待较长时间。因此,可以在应用组件节点之前插入流程输出节点,指定一段输出内容,使用户了解系统正在进行处理。

    image

    节点配置

    输出

    开始节点

    删除预置的自定义变量。

    image

    image

    流程输出节点

    指定要输出的内容“正在加载数据,请稍后...”。

    image

    应用组件节点

    引用已经配置的天气分析智能体组件。

    image

    结束节点

    引用应用组件节点的输出。

    image

参数提取

  • 定义

    通过模型提取一段文本中的结构化参数。

  • 参数配置

    参数描述

    参数说明

    输入

    需要进行参数提取的文本内容。

    模型选择

    用于参数提取的模型,根据业务情况自行选择即可。

    提取参数

    模型将根据名称、类型以及描述从输入中提取参数。

    提示词

    用于辅助模型进行参数提取的额外规则。

    记忆

    记忆等同于上下文信息,指多轮场景下模型对历史对话的记忆能力。

    • 本节点缓存:以本节点的输出作为上下文信息,模型只会记得本节点内发生的上下文信息。

      • 记忆轮次:代表记忆的轮次,一次输入+输出代表一轮。

    • 自定义缓存:以指定的上下文变量作为上下文信息。

      • 上下文变量:选择上下文信息来源。

    输出

    模型提取的参数将作为输出参数返回,可作为变量被后续节点引用。

检查清单

在检查清单中可以查看为确保工作流成功运行所需进行的配置。

可在画布配置页面的右上角单击image图标查看。

image

发布应用

发布后的应用可以被API调用,也可以通过Web页面分享给同一主账号下的RAM子账号使用。您可以单击智能体应用管理界面右上角的发布按钮。

通过API调用

您可以在工作流应用发布渠道页签,单击API调用右侧的查看API,查看通过API调用智能体应用的方法。

注:您需用您的API KEY对DASHSCOPE_API_KEY进行替换才可发起调用。

image

关于API调用的相关问题总结:

目前不支持在工作流中调用析言服务,可以通过API节点调用自定义的API服务。

说明

API调用的超时时间为 300 秒,暂不支持修改。

发布为组件

您可以将工作流应用发布为组件,以供其他智能体或工作流应用使用。详细的组件配置方法请参考使用智能体或工作流作为组件

发布应用为组件

  1. 发布应用:前往智能体或工作流应用的编辑界面,点击发布应用

  2. 发布组件:在发布应用时选择发布应用组件

    image

    也可以随时在发布渠道里创建组件。

    image

在管理面板发布组件

控制台提供了组件管理,您可以点击创建组件来将已有的智能体发布为组件,您也可以查看、修改或删除应用组件。

image

其他调用方式

其他分享方式,请参见应用分享

音视频对话

功能简介

阿里云百炼可以将工作流应用发布为音视频实时对话应用,并提供了便捷的调试窗口,支持通过H5/APP快速体验demo效果,也可以通过音视频SDK集成到用户的Web/iOS/Android应用中。

功能亮点

  • 全球高可用、低延迟:依托阿里云的实时音视频网络体系,全球3200+节点覆盖和QoS优化,使得用户可以在全球范围内与 AI 智能体完成音视频通话。

  • 高度拟人化:通过持续迭代智能降噪、智能打断、智能断句等功能,使智能体在互动行为上更接近于人类,CosyVoice模型提供更加逼真的人声。

  • 易调试:提供体验窗与调试信息展示,全流程可观测、可修改、可调试。

  • 易体验、易集成:集成方式可参见集成方案

说明

DeepSeek V3、R1 系列模型不支持视频对话功能。

用法说明

  1. 首先,请选择开始节点、大模型节点和结束节点,配置一个可正常执行的工作流

    • 开始节点:删除city和date参数。

    • 大模型节点:配置以下参数参数,其余参数保持默认值。

      • 模型配置:选择通义千问-Plus模型。

      • 提示词

        # 角色  
        你是一个口语练习专家。你会首先使用中文对用户的英文输入进行点评,给出优化建议、纠错及润色。之后使用英文维持继续对话,不要加入多余的中文翻译。
        
        # 执行步骤  
        1. 如果用户用中文交流,让用户重新用英文对话。  
        2. 针对用户的英文输入,使用中文进行评价,给出优化建议。  
        3. 使用英文开启下一轮对话,不要说出中文意思。  
        4. 不要输出占位符等无法被转换为语音的文本信息。
      • 用户提示词:输入/插入变量内置变量/query

    • 结束节点:输入/插入变量大模型1/result

      连接大模型节点和结束节点之后,才能选到变量大模型1/result

image

  1. 然后,请通过测试 > 文本对话,先在文本对话中调试出符合预期的应用效果。

    输入:Let's get some conversation.

image

  1. 文本会话效果满意后,切换到语音互动视频互动,再单击去配置配置API Key用于调用应用。

image

  1. 进行音视频设置,配置参数后,再点击拨打调试音视频互动效果。

    其中语音转文字可进行语种选择

    image

    文字转语音可进行语音模型选择音色选择

    image

image

  1. 效果测试满意后,点击右上角体验按钮,生成临时体验二维码,通过手机微信/钉钉/浏览器扫码体验交互效果。二维码有效期为24小时。

image

  1. 效果确认后,点击发布按钮,发布应用。再进入发布渠道,完成智能媒体服务开通和SLR授权后,创建互动智能体。

image.png

说明

计费模式:阿里云百炼与视频云分别产生应用调用的账单。

  • 阿里云百炼按照应用API调用计费(如果TTS选择阿里云百炼CosyVoice,则模型调用也会计费),详情请参见大模型产品计费说明

  • 视频云按照AI实时互动计费模式计费,AI实时互动每日为未订阅套餐包的用户赠送20通免费电话额度用于产品体验。详情请参见AI实时互动计费说明

导入或导出工作流应用的DSL

在工作流配置页面顶部点击配置后,您可以按需选择导出DSL导入DSL

image

查看工作流应用版本

  1. 点击工作流配置页面右上角的发布,在发布对话框中输入版本信息(例如:1.0.0)后,点击确定

image

  1. 点击页面顶部的版本管理,您可以在历史版本面板按需查看或使用(点击覆盖当前草稿回到当前版本)当前工作流应用的不同版本。

    您也可以点击顶部的DSL导出该版本,导出所选历史版本工作流的DSL。

image

  1. 可选:在工具栏查看或搜索当前画布节点。

image

删除与复制工作流应用

您可以在应用管理找到已发布的应用卡片,单击image图标,进行删除与复制工作流、修改应用名操作。

image

常见问题

工作流应用相关

怎么把工作流运行的结果写入数据库?

使用脚本转换节点,可将上一节点的内容写入数据库。

阿里云百炼构建工作流应用,如何上传文件?

您可以在工作流应用中加入一个API节点来实现文件上传功能。

如何上传图片?

使用VL模型,通过指定参数传入图片URL地址。

能否在工作流应用里使用异步任务API?

工作流应用超时时间为300秒,不建议在流程里使用异步任务API。

阿里云百炼工作流前端应该怎么调用API并且流式输出呢

暂时不支持前端调用

阿里云百炼工作流无法导入单独的.yaml文件

不支持单独导入.yaml文件,需提供包含md5文件的压缩包,建议重新生成MD5

阿里云百炼工作流变量名可以为中文吗?

变量名不支持使用中文

对话记录存储问题

工作流应用仅保存一个月数据,需自行保存对话记录,session_id有效时间为一小时

节点相关

若意图分类节点开启上下文,运行报错?

若意图分类节点开启上下文,则您传入该节点的变量类型需为List类型。

使用API调用节点使用流式输出报错?

工作流中使用的API节点不支持,HTTP API本身是支持的,建议使用智能体编排应用调用其他智能体应用,实现流式返回结果。

如何处理阿里云百炼工作流中条件判断节点响应速度慢?

  1. 检查工作流配置:确保工作流中的每个节点配置正确,尤其是条件判断节点,避免不必要的复杂计算或数据处理,这可能会减少响应时间。

  2. 优化代码逻辑:如果条件判断中涉及自定义脚本,尝试优化脚本逻辑,减少不必要的循环或数据处理,以提高执行效率。

  3. 批量测试:批量测试当前工作流的平均响应时间,以确定是否存在特定条件下的性能瓶颈。

大模型节点流式如何输出思考过程?

需要在大模型节点后添加文本转换节点并配置reasoning_content变量,打开结果返回开关。返回条件需要结束节点接收。

大模型节点输出参数无法自定义?

  1. 使用脚本节点处理输出:在大模型节点之后添加一个脚本节点,通过脚本处理大模型节点的输出,将其转换为您需要的格式或添加额外的输出参数。

  2. 配置批量节点:如果您在批量节点中使用大模型节点,可以在批量节点的配置中选择大模型节点的输出作为最终输出。具体步骤如下:

    • 添加大模型节点到批量节点中。

    • 在批量节点的配置中,选择大模型节点的输出作为最终输出 resultList

更多详细信息,请参考 应用的参数传递

工作流API调用节点无返回结果及参数传递问题

确认API-Key和Base URL正确。确认输入参数配置正确,调整字段输入类型,通过模型观测查看模型使用详情。

调用知识库的Excel数据问题

无法直接调用本地文件,可通过MCP实现本地调用;知识库节点输出需自行处理文字内容,建议增加大模型完成表格转换后再传入脚本处理。

上一篇: 智能体编排应用