更新时间:2025-09-20 GMT+08:00
分享

搭建智能助教工作流操作流程

前提条件

实名认证的华为账号或IAM用户。

准备工作

  • 本实践选用平台预置的“DeepSeek-V3”模型。
  • 搭建助教工作流前须完成语文知识库创建,详见创建语文知识库

操作流程

操作步骤

说明

创建工作流

通过填写必要的工作流基本信息,创建一个对话型的智能助教工作流。

编排工作流

配置生成问题节点、知识检索节点、判断节点、润色输出节点、AI输出节点、代码节点以及结束节点,以形成一个完整的工作流应用。

调试工作流

输入信息并运行工作流,查看大模型的响应结果,优化配置,确保工作流的正确性和有效性。同时,可以查看详细的调试结果和调用详情。

发布工作流

调试成功后可以发布工作流,发布后可在“发布管理”页面查看API调用接口信息。

创建工作流

  1. 登录Versatile智能体平台,在左侧导航栏“个人空间”区域,选择进入所需空间。

    如果已选择团队空间,界面显示为实际的团队空间名称,而非“个人空间”。

    图1 选择团队空间

  2. 单击左侧导航栏“开发中心 > 应用管理 > 工作流应用”,单击左上角“创建应用”
  3. “创建应用”页面,选择创建“对话型工作流”,配置工作流相关信息,具体如图2所示,参数如表1所示。

    图2 创建工作流
    表1 参数说明

    参数名称

    示例

    说明

    工作流名称

    智能助教

    在工作流应用界面中工作流名称不允许重复,支持中英文、数字、下划线、中划线和空格,长度2~64字符,且名称首尾不能有空格。

    英文名称

    intelligent_teaching_assistant

    输入内容只能包含英文字母、数字、下划线,并以字母开头,长度2~64字符,且名称不能以下划线收尾。

    描述

    本应用是一款基于人工智能技术,旨在减轻教师重复性工作负担、提供个性化教学支持、并提升学生学习效率的智能化辅助工具。

    描述工作流的功能,直观呈现给用户,长度0~256。

  4. 配置完成后单击“立即创建”,进入工作流编排页面。

编排工作流

在工作流编排页面,平台已预设了开始、大模型和结束节点。单击节点右上角的,可以对当前节点执行重命名、复制、删除操作。开始和结束节点为必选节点,不支持重命名、复制和删除。

图3 节点的重命名、复制、删除操作
  1. 配置“开始”节点。单击“开始”节点,该节点已默认配置query参数,表示用户输入的内容。当前场景下无需新增参数,单击“确定”。

    图4 配置开始节点

  2. 配置“大模型”节点,从用户输入中进行问题提取,解析出用户的问题,并用JSON格式输出。参考图5表2完成参数配置,单击“确定”

    图5 配置“大模型”节点
    表2 参数配置说明

    参数

    配置示例

    说明

    节点名称

    单击大模型名称旁边的,修改节点名称为“生成问题”,并单击名称后的

    只允许输入字母、数字、下划线,且不能以数字开头。

    模型配置

    选择模型为“DeepSeek-V3”,单击模型配置区域右上角的可设置模型的温度、核采样等参数,本实践保持默认值。

    选择模型接入模块已配置的大语言模型。

    输入参数

    定义以下输入参数。

    • 参数名称为“query”。
    • 类型、值:选择“引用>query”。query为“开始节点”的输出变量值。

    配置大模型处理需要的输入参数值, 这些值会动态添加到提示词中,默认设置的输入参数名为“query”

    输出参数

    单击输出区域右上角的,选择输出格式为“JSON”。单击,添加参数。

    定义以下输出参数,其余保持默认值即可。

    • question,类型为“String”
    • answer,类型为“String”

    用于解析大模型节点的输出,并提供给后续节点的输出参数引用。

    系统提示词

    输入如下系统提示词后单击“系统提示词”区域右上角的,进行提示词优化。
    你是问题解析专家,请从用户的对话中解析出用户的问题{question}和{answer},用JSON格式输出。
    注意,question一定有值,answer可能没值,如果answer没值,该字段输出空即可。

    配置输入给大模型的提示词,系统级提示词,用于指导模型按要求进行回复。支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

    用户提示词

    {{query}}

    配置输入给大模型的提示词,用户级提示器,作为当前用户问题的输入。配置提示词时,支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

  3. 配置“知识检索”节点,从预先上传的语文知识库中检索用户的问题,并返回匹配到的信息。

    1. 鼠标悬浮“生成问题”和“结束”节点中的连接线,单击,选择“知识检索”节点至编排页面,如图6所示。
      图6 连接“大模型”节点(生成问题)和“知识检索”节点

    2. 单击“知识检索”节点,参考图7图8完成参数配置,单击“确定”。
      • 输入参数

        参数名称:默认参数名称为query。

        类型、值:选择“引用>question”。question为“生成问题-大模型节点”的输出变量值。

      • 知识库可直接选择创建语文知识库章节创建的“语文知识库”
      图7 配置“知识检索”节点
      图8 设置知识库

  4. 配置“判断”节点,判定是否从预置的题库中检索到匹配的题目。

    1. 单击“添加节点”,选择“判断”,添加“判断”节点至编排页面,连接“知识检索”节点和“判断”节点。
      图9 连接“知识检索”节点和“判断”节点

    2. 单击“判断”节点,参考图10完成参数配置,单击“确定”。
      第一个分支,参数是“知识检索”节点输出的“output_list”,比较条件是“长度大于”,比较对象是“输入”,值为“0”
      图10 配置“判断”节点

  5. 配置“大模型”节点,对知识库检索到的结果进行润色,给出一个丰富的解答输出。

    1. 单击“添加节点”,选择“大模型”,添加“大模型”节点至编排页面,连接“判断”节点的第一个分支和“大模型”节点,这表明如果知识检索的召回数大于0的时候,将运行到该大模型节点。
      图11 连接“判断”节点的第一个分支和“大模型”节点

    2. 单击“大模型”节点,参考图12图2完成参数配置,单击“确定”。
      图12 配置“大模型”节点
      表3 参数配置说明

      参数

      配置示例

      说明

      节点名称

      单击大模型名称旁边的,修改节点名称为“润色输出”,并单击名称后的

      只允许输入字母、数字、下划线,且不能以数字开头。

      模型配置

      选择模型为“DeepSeek-V3”,单击模型配置区域右上角的可设置模型的温度、核采样等参数,本实践保持默认值。

      选择模型接入模块已配置的大语言模型。

      输入参数

      定义以下输出参数。

      • 参数名称为“input”。
      • 类型、值:选择“引用>output_list”。output_list为“知识检索”节点的输出变量值。
      • 参数名称为“query”。
      • 类型、值:选择“引用>question”。question为“生成问题”节点的输出变量值。

      配置大模型处理需要的输入参数值, 这些值会动态添加到提示词中,默认设置的输入参数名为“query”

      输出参数

      定义以下输出参数,其余保持默认值即可。

      参数名称为“raw_output”,类型为“String”,描述为“模型原始输出”。

      用于解析大模型节点的输出,并提供给后续节点的输出参数引用。

      系统提示词

      默认即可,可不填写。

      配置输入给大模型的提示词,系统级提示词,用于指导模型按要求进行回复。支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

      用户提示词

      你是经验丰富的小学语文老师,请依据“{{input}}”的结果,回答用户提出的问题:{{query}},润色一份非常丰富的解答输出。
      ## 输出示例
      问题:
      解题思路:
      答案:
      ##限制   不要输出其他无关内容。

      配置输入给大模型的提示词,用户级提示器,作为当前用户问题的输入。配置提示词时,支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

  6. 配置“大模型”节点。对用户的问题直接给出一份丰富的解答输出,并注明“(此回答由AI生成)”。

    1. 单击“添加节点”,选择“大模型”,将“大模型”节点至编排页面,连接“判断”节点的第二个分支和“大模型”节点,这表明如果知识检索没到召回任何答案的时候,将运行到该大模型节点。
      图13 连接“判断”节点的第二个分支和“大模型”节点

    2. 单击“大模型”节点,参考图14表4完成参数配置,单击“确定”。
      图14 配置“AI输出”大模型节点
      表4 参数配置说明

      参数

      配置示例

      说明

      节点名称

      单击大模型名称旁边的,修改节点名称为“AI输出”,并单击名称后的

      只允许输入字母、数字、下划线,且不能以数字开头。

      模型配置

      选择模型为“DeepSeek-V3”,单击模型配置区域右上角的可设置模型的温度、核采样等参数,本实践保持默认值。

      选择模型接入模块已配置的大语言模型。

      输入参数

      定义以下输出参数。

      • 参数名称:默认参数名称为input。
      • 类型、值:选择“引用>question”。question为“生成问题”节点的输出变量值。

      配置大模型处理需要的输入参数值, 这些值会动态添加到提示词中,默认设置的输入参数名为“query”

      输出参数

      定义以下输出参数,其余保持默认值即可。

      参数名称为“raw_output”,类型为“String”,描述为“模型原始输出”。

      用于解析大模型节点的输出,并提供给后续节点的输出参数引用。

      系统提示词

      输入如下系统提示词后单击“系统提示词”区域右上角的,进行提示词优化。
      你是经验丰富的小学语文老师,请对用户提出的问题做出一份非常丰富的解答输出,并且在回复的末尾,你需要加上“(此回答由AI生成)”。
      ##输出示例 
      问题:
      解题思路:
      答案:(此回答由AI生成)
      

      配置输入给大模型的提示词,系统级提示词,用于指导模型按要求进行回复。支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

      用户提示词

      {{query}}

      配置输入给大模型的提示词,用户级提示器,作为当前用户问题的输入。配置提示词时,支持使用{{variable}}格式引用当前节点输入参数中已定义好的参数。最终替换后的内容会传递给模型。

  7. 配置“代码”节点,对“润色输出”大模型节点和“AI输出”大模型节点的输出字符串使用代码,进行格式化处理。

    1. 单击“添加节点”,选择“代码”,添加“代码”节点至编排页面,连接“润色输出”大模型节点和“AI输出”大模型节点到代码节点。
      图15 连接“润色输出”大模型节点和“AI输出”大模型节点到代码节点
    2. 单击“代码”节点进行配置。编写代码,根据输入变量生成返回值,参考图16完成参数配置,单击“确定”。
      图16 配置“代码”节点
      表5 参数配置说明

      参数

      配置示例

      说明

      执行方式

      安全沙箱

      用于隔离程序运行的环境,以防止潜在的恶意代码对系统造成损害。

      输入参数

      定义以下输入参数,单击可添加参数。

      • 参数名称为str1,类型为引用,值为引用“润色输出”大模型节点的输出。
      • 参数名称为str2,类型为引用,值为引用“AI输出”大模型节点的输出。

      用于配置代码运行需要的输入参数。

      输出参数

      定义以下输出参数。

      参数名称为output,类型为String,描述为output。

      配置代码运行后需要输出的参数,需要与return返回的对象保持一致。

      代码

      编写python代码对输入变量进行处理。需要定义一个main函数,代码节点里面有个main函数的代码模板,在此基础上编写自己的代码。输入变量的获取需要使用arg.get方法。该工作流中,使用代码节点对上两个节点的输出进行合并和格式化。
      def main(args: dict) -> dict:
          str1= args.get('str1','')
          str2= args.get('str2','')
          answer= str1+str2
          ret = {
              "output": answer,
          }
          return ret

      编写Python代码片段,仅支持python系统库,不支持引入依赖包。

      说明:

      编写代码时不要更改第一行函数定义。

  8. 配置“结束”节点,输出最终结果。

    1. 连接“代码”节点到“结束”节点。
      图17 连接“代码”节点到“结束”节点
    2. 单击“结束节点”,如图18配置输入参数和回复。
      图18 配置“结束节点”
      表6 参数配置说明

      参数

      配置示例

      说明

      输入参数

      定义以下输入参数。

      参数名称为result,类型为引用,值为引用代码节点的输出。

      输入参数支持引用和输入两种类型,输入参数需要在指定回复的文本框中以{{variable_name}}的形式进行插入才能返回。

      输出参数

      -

      输出参数将以变量形式返回,支持引用和输入两种类型。

      指定回复

      {{result}}

      可以在文本框中编辑指定的回复内容,支持在文本中以{{variable_name}}的形式插入输入参数返回或直接返回输入参数。工作流的最终运行结果将按照指定回复中的内容返回。指定回复中不能插入输出参数。

调试工作流

  1. 编排工作流完成后,在工作流编排界面单击右上角
  2. 在对话框中直接与工作流进行交互,实时观察其执行过程和响应效果,并根据需要对配置进行优化和调整。

    检查节点设置是否有误,常见节点报错可参考《常见问题》进行解决。

    试运行界面支持文本输入、语音输入、文件输入:

    • 文本输入:在对话输入框输入对话后按Enter键或单击,查看应用响应结果。
    • 语音输入:“语音交互”开启时,用户可以通过语音进行输入。该功能支持多种语言(如中文、英文等),并提供语音识别、错误纠正和实时反馈等功能。
      • 首次使用语音输入须开通系统麦克风、扬声器权限,可在权限申请弹窗一键开通。
      • 语音输入最长为60秒,超时则取消语音输入状态,用户需重新录入。
    • 文件输入:用户可以通过上传文件进行提问,支持对文件进行解析,并根据文件内容和问题生成准确的答案。
      • 支持上传image、audio、excel、csv、docx等格式的文件。
      • 最多支持上传10个文件。
    图19 试运行

  3. 在试运行过程中,可以单击右上角查看调试结果,包括运行结果与调用详情。

    图20 运行结果
    图21 调用详情
    必要时也可以针对工作流中的某个节点单独进行调试,以保证节点的成功运行。以调试“AI输出”节点为例。
    1. 在工作流编排页面,单击“AI输出”节点的“”,进入节点的调试页面。
      图22 调试单节点
    2. 在节点的“配置信息”输入请求参数的值,单击“开始运行”。
      图23 配置节点调试任务
    3. 单节点调试成功后,将在该节点显示“运行成功”字样及其运行时间。
      图24 单节点调试结果

发布工作流

  1. 工作流试运行成功后,在工作流编排页面,单击右上角“发布”
  2. 输入版本号与描述,如图25所示,单击“发布”

    图25 发布工作流

  3. 发布完成后跳转至API调用页面,可看到发布的API调用接口信息。

    也可通过左侧导航栏中选择开发中心 > 应用管理 > 工作流应用单击目标应用,进入应用主页面,单击右上角“发布管理”按钮,可进入发布管理页面。
    图26 调用API

相关文档

  • 编排工作流时,画布相关的详细操作介绍,请参见创建工作流
  • 在创建和运行工作流时,可能会遇到的常见问题,请参见《常见问题》解决。

相关文档