手动搭建知识库问答工作流-j9九游会登录
案例概述
在实际业务中,经常需要创建一个带有知识库的ai助手来回答特定领域的问题(如企业规章、行业报告),通过引入知识库功能,可以解决大模型在面对垂直领域或私有数据时出现的知识缺失与事实性错误问题。
本章节的案例中,构建一个“旅游景点介绍知识库”,随后编排知识库问答工作流,并通过大模型进行内容总结。
操作旅程总览
搭建知识库问答工作流流程如下,仅需五步即可完成知识库问答助手的搭建。
|
操作步骤 |
说明 |
|---|---|
|
注册华为账号并开通华为云、完成实名认证,开通agentarts服务。 |
|
|
创建知识库并上传文档,执行命中测试以确保系统能准确召回文档中的关键信息。 |
|
|
新建一个“工作流”类型的应用,并进入工作流编排画布,准备编排工作流。 |
|
|
搭建知识库问答工作流的核心逻辑,通过 “知识检索”节点连接您的知识库,并将检索结果流转至 “大模型”节点进行总结与回答。工作流包含以下四个节点: 开始-->知识检索-->大模型-->结束 |
|
|
验证知识问答工作流的结果是否符合预期。 |
准备工作
在使用agentarts智能体平台前,需要参考如下内容,提前申请华为账号并完成实名认证。
- 进入,单击页面右上角的“注册”。
- 参考注册华为账号并开通华为云中操作,完成注册。
- 注册成功后,进行实名认证。
如果您使用的是iam用户,也可使用该账户开通agentarts服务。
- 登录,参考开通agentarts开通服务。
步骤一:创建知识库
本章节将指导您创建知识库并上传演示文档(),通过命中测试验证文档召回能力,为后续的工作流提供支撑。
- 登录。
- 在左侧导航栏中选择“开发中心 > 组件库”,在“知识库”页签,单击页面右上角“创建知识库”,并选择“默认”知识库后单击“确定”。
图3 创建知识库
- 在“新建知识库”弹窗中根据表1配置知识库参数,填写完成后单击“确定”创建知识库。
图4 配置知识库参数
表1 参数说明 参数
配置示例
说明
知识库名称
填写“景点介绍知识库”。
用于标识知识库。
描述
填写“景点介绍知识库,提供全国各地景点介绍”。
图5 配置示例
用于对知识库内容和用途进行简要说明。
向量模型
选择“pangu_embedding”。
向量模型是一种将文本、图像等非结构化数据转换为数值向量的模型。例如,在文本处理阶段,用于对文本文档进行切片,转换成向量化表示;在知识检索阶段,根据用户输入的信息对切片进行召回。
精排模型
选择“pangu_rerank”。
图6 配置示例
精排模型是一种用于对检索结构进行精细排序的模型。针对用户输入的信息,对向量模型召回的切片进行从高到低的相关度排序,把相关度最高的前几个信息呈现给用户。
解析配置
不配置
用于设置文档解析时是否调用文字识别(ocr)服务、是否包含页眉页脚 / 目录页以及如何处理图片。当需要解析含表格 / 扫描件的文档、保留页眉页脚或目录页信息,或需提取图片中的文字(如图片含关键文本)、保留原图用于图文问答时使用。
拆分设置
选择“自动分段”。
通过自动分段、长度分段、层级分段方式,将文档切分为符合需求的片段(可设置分段长度、标题处理规则等),当需要将长文档拆解为便于向量化存储、知识检索的小片段,或需按文档结构(如标题层级)、特定符号(如句号、空格)规范片段划分时使用。
- 创建好的知识库将自动显示到知识库列表中,单击知识库名称,进入知识库详情页。
- 下载演示文档(),并上传至知识库。
图7 上传演示文档
- 等待文档状态显示为“成功”后,单击页面右上角“命中测试”。
图8 命中测试
- 输入与演示文档()内容相关的问题,如“上海有哪些景点”。检查知识库的召回情况,并记录召回的相似度分值。
该分值在后续步骤三:编排工作流节点中,要作为“搜索召回”节点参数的取值参考。
图9 命中测试演示
步骤二:创建工作流应用
应用是承载业务的主体。在编排工作流节点之前,需要先创建一个工作流应用,并进入工作流编辑界面。
- 返回至“开发中心 > 智能体管理”页面,进入“工作流”页签,单击页面右上角“创建工作流”。
图10 创建工作流
- 选择“对话型工作流”,并设置展示名称、名称、描述。
- 展示名称:知识库问答助手
- 名称:knowledgebaseassistant
- 描述:知识库问答助手
图11 创建对话型工作流
- 单击右下角“立即创建”。
创建完成后会进入工作流编辑页面,请参考步骤三:编排工作流节点执行后续操作。
步骤三:编排工作流节点
这是构建知识库问答工作流的核心环节。通过可视化拖拽的方式,依次连接 “开始 -> 知识检索 -> 大模型 -> 结束” 四个关键节点,并进行参数设置,将静态的知识库与大模型推理能力串联起来,实现“先检索、后生成”的业务逻辑。
- 工作流默认展示“开始 -> 大模型 -> 结束”节点。鼠标指向在开始节点、大模型节点中间,单击
,添加“知识检索”节点。
图12 添加知识检索节点
- 单击节点,可展开节点的参数配置页面,参考表2依次设置各节点参数。
每个节点配置完成后,均需要单击右下角的“确定”,节点配置才可以生效。

表2 工作流节点参数表 节点类型
参数修改说明
开始节点
使用默认的“query”参数,用于提取用户问题。
不进行改动。
图13 开始节点配置示例
知识检索节点
对知识库检索节点的以下参数进行设置:
- 输入参数
引用开始节点的“query”参数,表示将用户问题传递给知识库进行搜索。
图14 输入参数配置示例
- 知识库
添加知识库,选择先前创建的“景点介绍知识库”。
图15 添加知识库
- 知识库设置
单击知识库右侧按钮,配置知识库参数。检索策略设置为“混合检索”;相关度阈值设置为0.2,防止出现问题与知识库内容相似度低,召回为空的情况发生。
图16 配置知识库参数
大模型节点
对大模型节点的以下参数进行设置:
- 模型配置
选择一个模型,如“deepseek-v3”。
图17 模型配置示例
- 输入参数
- 大模型需要读取搜索召回的内容进行总结。因此需要引用“知识检索”节点的输出参数。为方便区分参数的流转关系,将大模型的输入参数,改成与知识检索的输出参数一样的名称output_list。
图18 输入参数配置示例
- 单击输入参数右侧
,新增一个query参数,引用开始节点的query参数值。后续模型总结时,需要将用户原始问题、知识检索的召回一并传给大模型进行总结。
图19 新增输入参数
- 大模型需要读取搜索召回的内容进行总结。因此需要引用“知识检索”节点的输出参数。为方便区分参数的流转关系,将大模型的输入参数,改成与知识检索的输出参数一样的名称output_list。
- 系统提示词
输入下面的内容
# 角色定义 你是一名专业的**内容分析总结师**,擅长提炼各类文档片段关键信息,也能基于问题本身进行专业解答。 # 核心任务 理解用户提问,优先依托知识库检索返回的相关文档片段提取信息、生成回答;若检索无结果或信息不完整,直接基于问题本身作答。 # 处理原则 1. 优先用知识库检索内容,筛选核心相关信息,舍弃无关内容,不编造原文未提及的信息; 2. 整合多片段信息,合并重复内容、补全关联信息,保证事实准确; 3. 检索内容不足或无检索结果时,直接围绕问题核心给出专业解答。 # 输出规范 - 语言简洁专业,避免口语化 - 不透露知识库相关技术细节
- 用户提示词
输入下面的内容
## 用户原始问题 {{query}} ## 知识库检索返回的文档片段 {{output_list}} 请根据以上文档片段,回答用户问题。图20 系统提示词、用户提示词示例
结束节点
输入参数引用大模型节点的输出内容,其余参数使用默认配置。
图21 结束节点配置示例
- 输入参数
步骤四:调试使用工作流
工作流编排完成后,必须通过实际运行来验证逻辑的正确性。本章节将引导您输入具体的测试问题,检查工作流能否准确检索到文档片段,并验证大模型是否能基于检索结果生成符合预期的回答。
- 单击工作流页面右上角“试运行”,此时系统会自动检测工作流参数是否设置正确。如果某一节点报错,请参考步骤三:编排工作流节点检查节点参数。
- 输入测试内容,如“国内有哪些景点”,检查工作流是否有产生回答。
图22 调试工作流
注意:测试过程中,如果发现回答截断,请检查“大模型”节点的“最大回复长度”是否设置过小,导致模型回答不完整。更新节点配置后,需单击右下角“确定”使配置生效。
图23 优化大模型节点回复长度
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨