
# 通过智能体评估持续优化
仅靠主观判断很难全面识别文档和配置问题，更难量化优化效果。AgentArts提供了完整的智能体评估功能，可以将智能体测试和调整工作从"凭经验改"升级为"用数据改"，形成可持续的优化闭环。
相关实践案例请参考[企业知识问答助手（RAG）智能体评估](https://support.huaweicloud.com/bestpractice-agentarts/agentarts_06_0092.html)。
#### 构建RAG评测集
评测集的质量直接决定评估能否真正暴露问题。在AgentArts中，RAG场景的评测集应包含以下核心字段：
- input：用户的提问，应覆盖常规问题（正向用例）、边界问题（意图模糊的提问）和对抗性问题（测试智能体的拒答能力，如询问知识库中明确不存在的内容）。
- reference_output：标准参考答案，应由业务专家审核，确保准确且完整。
- context：该问题对应的知识库检索切片原文，是幻觉现象和引用相关性评估器的关键输入依据。如果评测集中不包含context字段，这两类评估器将无法正常工作。
不同评估目的对应不同的评测集设计：
表1评测集与评估器字段说明 
| 评估目的            | 必须字段                           | 说明                          |
|:---|:---|:---|
| 常规问答正确性（正确性评估器） | input、reference_output         | 对比实际输出和标准答案。                |
| RAG防幻觉评估（幻觉评估器） | input、reference_output、context | context是知识库的切片原文，幻觉判断的核心依据。 |
| 引用准确性（引用相关性评估器） | input、context、actual_output    | 验证引用是否能在原文中溯源。              |
| 格式规范（格式检查评估器）   | input                          | 仅校验输出格式，不需要参考答案。            |
   
对于RAG知识库场景，建议每个业务场景至少准备30～50条测试数据，题目覆盖常规必答题、陷阱题和边界题。智能体上线运营后，应持续将线上用户真实提问中的BadCase通过AgentArts的观测功能提取出来，补充进评测集，用真实发生的痛点持续打磨知识库质量。
#### 评估RAG智能体
可以将智能体评估理解为一次"模拟考试"：评测集（考卷）决定考察哪些知识边界，评估器（阅卷官）决定用什么标准打分，评估任务（模考）是每次优化后验证效果的量化手段。在RAG场景下，评估结果直接反映了知识库文档质量和配置状况：
- 正确性评估器：衡量智能体回答与标准答案的一致程度，得分低通常意味着召回切片语义匹配度不足，或切片内容不完整。
- 幻觉现象评估器：检验智能体是否脱离了检索到的参考切片自行编造内容，得分低直接指向文档中的定义缺失、指代歧义或内容矛盾问题。
- 引用相关性评估器：检验智能体引用的内容是否能在原始切片中溯源，得分低通常对应文档中的术语混用或步骤编号错乱问题。
 
#### 分析BadCase
评估任务完成后，按照以下步骤分析结果：
1. 查看整体得分，判断主要问题方向 通过评估报告的总体得分和各维度评分，判断当前知识库最突出的问题类型。例如：如果"正确性"得分较高但"幻觉现象"得分偏低，说明召回内容相关性尚可，但存在明显的文档定义缺失或指代歧义，导致大模型无据可查时自行编造。
   
2. 定位BadCase，逐条阅读评分理由 在评估详情中，重点查看得分为0.0的数据，仔细阅读评估器的评分理由。
   
3. 人工标注，对BadCase进行分类归因
AgentArts评估功能支持对评估结果进行人工标注，可为每个BadCase打上自定义标签，并进行人工改分以校准评估数据的准确性：
表2标签填写建议 
| 标签    | 含义                        | 对应优化方向                   |
|:---|:---|:---|
| 知识库缺失 | 知识库中不存在回答该问题所需的文档内容。      | 补充对应主题文档，或拆分大型文档提升切片命中率。 |
| 术语歧义  | 文档中的术语定义缺失或前后不一致。         | 补充术语定义文档，制定术语统一规范。       |
| 切片不完整 | 召回的切片被截断，缺少关键信息。          | 调整分段策略，或优化文档结构使切片边界更合理。  |
| 内容矛盾  | 知识库中存在对同一问题描述相互矛盾的文档版本。   | 清理过时文档，统一相关内容的表述。        |
| 表述模糊  | 文档中存在代词指代不明或多义词无上下文的问题。   | 消歧处理，替换代词为具体名词。          |
| 配置问题  | 阈值设置不合理导致相关切片被过滤或无关切片被召回。 | 调整相关度阈值或topk召回数量。        |
   
分析BadCase的失败原因，采取对应的优化措施：
- 幻觉/知识编造：检查知识库中是否存在该问题对应的文档；若存在但召回内容与问题不符，检查是否存在指代歧义或术语不一致；在提示词中补充强约束规则，如"当检索不到相关信息时，请明确回复当前知识库中暂无该信息，不得自行编造答案"。
- 工具调用参数错误：检查并完善工作流中知识检索节点的参数引用配置，确保上游节点正确提取并传递了用户的核心问题。
- 切片召回不准确：先通过命中测试验证该问题的实际召回结果，再根据命中分值调整相关度阈值；若召回切片本身内容质量低，应返回文档写作层面进行优化。
 
#### 回归测试
完成文档优化或配置调整后，将修订后的文档重新上传至知识库，等待解析完成后创建新的评估任务，使用与优化前相同的评测集和评估器进行评估。通过前后两次报告的得分对比，量化验证优化方案的实际效果：
- 若幻觉现象评分提升、知识库缺失类BadCase减少，说明文档优化方向正确。
- 若效果不显著，应重新审查BadCase的评分理由，进一步定位是文档问题、配置问题还是提示词问题。
通过"评估 → 分析 → 优化（文档 / 配置）→ 回归验证"持续优化智能体的质量。
