
# 在工作流中使用知识库
支持在AgentArts中添加引用知识库，以根据用户意图来检索召回对应的知识切片。
#### 前提条件
- 登录用户为空间所有者、空间管理员、开发工程师，详细信息请参考[管理团队空间成员](https://support.huaweicloud.com/usermanual-agentarts0/agentarts_05_0216.html)。
- 如果需要在工作流中使用本地知识库，请确保已[创建平台默认知识库](https://support.huaweicloud.com/usermanual-agentarts0/agentarts_05_0150.html)且知识库是启用状态。
- 如果需要在工作流中使用第三方知识库，请确保已[接入第三方知识库](https://support.huaweicloud.com/usermanual-agentarts0/agentarts_05_0164.html)且知识库是启用状态。
 
#### 配置知识库
1. 登录[AgentArts智能体开发平台](https://console.huaweicloud.com/versatile/#/home/overview)，在左侧导航栏"个人空间"区域，选择目标空间。
2. 单击左侧导航栏"开发中心 \> 智能体管理 "，单击左上角"工作流"页签，进入工作流应用管理界面，单击您创建的工作流。
3. 单击"添加节点"并选择"知识检索"节点。
4. 通过单击该节点打开节点配置页面。
5. 配置输入参数，请参见[表1]设置参数。
   
   图1输入参数   
   ![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002569342461.png)
    表1参数说明 
   | 参数名称 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 示例                                             |
   |:---|:---|:---|
   | 输入参数 | - 参数名称：输入参数固定只有1个，参数名称为query且不可修改，类型是字符串，表示待知识检索的问题。    - 类型、值：支持"引用"和"输入"两种类型。 - 引用：支持用户选择工作流中已包含的前置节点的输出变量值以及全局配置中的记忆变量，限制String类型，适用于需要从前置节点输出中获取知识检索问题的场景。  - 输入：支持用户自定义输入问题，适用于知识检索问题固定的场景。                                                                  | 类型：输入 值：1 |
   | 输出参数 | 知识检索节点的输出是一个对象数组，参数名是output_list，表示所有满足检索要求的知识切片。数组中对象有四个属性： - document_name，知识切片所在的知识文档名称。  - subtitle，知识切片子标题。  - content，知识切片的内容。  - score，知识切片的匹配度得分，output_list中的元素按照得分由高到低排序。   后续节点引用该输出参数，可以引用output_list，此时将获取全量的检索结果，包括文档名、切片子标题、切片内容和分数。也可以直接引用切片的属性，比如content，此时将获取output_list中第一条记录的切片内容。 | -                                              |
      
   
   
6. 在知识库区域单击![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002569342383.png)按钮，进入知识库添加页面。
7. 在"添加知识库"窗口，选择知识库类型，勾选目标知识库右侧的![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002538542630.png)进行添加，单击"确定"。
   
   图2添加知识库   
   ![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002538542606.png)
   
   
8. 在知识库区域单击![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002569422401.png)按钮，弹出检索参数配置页面。
9. 配置检索参数，完成后，单击其他位置退出弹窗。 
   图3配置检索参数
   ![](https://support.huaweicloud.com/usermanual-agentarts0/zh-cn_image_0000002538382742.png)
   表2参数说明 
   | 参数名称     | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 示例    |
   |:---|:---|:---|
   | 检索策略     | 文档检索的方式，有三种： - 语义检索：使用向量检索技术检索，对文档及结构化数据中知识进行检索，召回与用户意图相关性高的切片内容，推荐在需要结合上下文相关性、并对用户意图理解场景中使用。  - 关键词检索：使用倒排检索技术，对文档及结构化数据中知识进行检索，召回与Query关键词匹配度高的切片内容，推荐在需要用户提问关键词匹配度高的场景中使用。  - 混合检索：使用向量检索和关键词检索两种策略混合检索知识库，推荐在需要兼顾用户意图理解及关键词匹配度场景中使用。   | 语义检索  |
   | 相关度阈值    | 超过相关度阈值的搜索结果会提交给大模型进行总结，否则被过滤，可以参考知识库中命中测试的相关度分值调整该阈值。 取值范围：0\~1 默认值：0.5                                                                                                                                                                                                                                                                                                                                                                                                     | 0.100 |
   | topk召回数量 | 召回的相关性阈值top切片数量，如topk召回数量为5，则相关性阈值为前5的切片将被召回提交给大模型总结。 取值范围：1\~50 默认值：3                                                                                                                                                                                                                                                                                                                                                                                                          | 3     |
   | FAQ直出阈值  | FAQ检索超过阈值的结果将直接提交给大模型总结，不再进行文档检索。如果没有超过阈值的结果，将进行文档检索。 取值范围：0\~1 启用FAQ功能后，系统将优先检索FAQ数据。如果未命中结果，则会继续查询切片内容，可能会带来一定的性能开销。当FAQ检索结果超过预设阈值时，将直接提交给大模型进行总结，不再进行文档检索。如果未超过阈值，则将继续进行文档检索。                                                                                                                                                                                                                                                                                               | 0.100 |
   | 查看图片     | 开启后此功能后，当知识库支持图片检索时，可查看检索结果中的图片信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 开启    |
      
   
   
10. 在知识检索配置页面单击"确定"，完成知识检索节点配置。
 
