AI系统测试:LLM 在系统中负责什么,怎么测试?

前言:

在上一篇文章中,总结了 AI系统测试的六层模型:输入层、规则层、LLM层、Tool层、状态层、输出层。

本文重点讨论其中最核心的一层:LLM 决策层测试

很多人说"AI系统测试",只停留在:

  • 测 Prompt

  • 看回答对不对

实际项目里的 LLM,是在做 决策

复制代码
用户输入
↓
LLM理解意图
↓
判断是否调用Tool
↓
选择Tool
↓
生成Tool参数
↓
Tool执行
↓
生成回复

所以这一篇重点是:

LLM 在系统中到底负责什么,以及测试应该怎么做。


一、LLM 在 Agent 系统中到底负责什么

在很多 AI 应用中,LLM 似乎只是一个 回答问题的模型

但在 Agent 系统中,LLM 的角色更接近:

决策引擎。

典型流程:

复制代码
用户输入
↓
LLM理解意图
↓
判断是否调用Tool
↓
选择Tool
↓
生成调用参数
↓
返回结果

例如在 WorkLog Agent 项目中,LLM需要完成几个任务:

  • 理解用户输入

  • 判断用户意图

  • 决定是否调用工具

  • 提取工具参数

  • 生成最终回复

在测试时,需要验证的不只是 回答是否正确,而是:

决策是否正确。


二、为什么 LLM 决策层容易出问题

LLM 决策层的问题通常来自三个方面。


1 意图识别不稳定

例如用户输入:

复制代码
昨天干啥来着

模型可能理解为:

  • 查询日志

  • 让系统总结

  • 普通聊天

如果意图识别错误,就会导致系统行为异常。


2 Tool 调用错误

在 Agent 系统中,LLM需要决定:

复制代码
是否调用Tool
调用哪个Tool

例如用户输入:

复制代码
今天修复登录Bug

正确行为应该是:

复制代码
调用 record_fragment

但如果 LLM 判断错误,可能:

  • 不调用工具

  • 调错工具

  • 直接生成回答


3 参数提取错误

即使 Tool 调用正确,也可能出现:

复制代码
日期错误
内容错误
字段缺失

例如:

复制代码
昨天修复登录Bug

正确参数:

复制代码
date: 2025-03-10
content: 修复登录Bug

但模型可能输出:

复制代码
date: today

这会导致数据记录错误。


三、LLM 决策层测试重点

在测试中,需要重点关注三类问题。


1 意图识别测试

验证模型是否正确理解用户输入。

例如:

复制代码
昨天修复Bug
今天写接口测试
帮我看看昨天做了什么

系统应该分别识别为:

复制代码
记录日志
记录日志
查询日志

如果识别错误,就会影响整个 Agent 行为。


2 Tool 调用测试

验证 LLM 是否正确调用工具。

例如:

复制代码
今天写了接口测试

模型应该生成:

复制代码
tool_call: record_fragment

需要测试:

  • 是否调用

  • 调用哪个工具

  • 是否重复调用


3 参数提取测试

验证 LLM 是否能正确生成工具参数。

例如:

复制代码
昨天修复登录Bug

需要验证:

复制代码
date 是否正确
content 是否完整

如果参数提取错误,系统会记录错误数据。


四、LLM 决策层测试方法

可以通过 构建测试集 的方式验证模型行为。

例如设计一组测试输入:

复制代码
昨天修复Bug
今天写测试
帮我看看昨天干了啥

然后验证:

复制代码
意图是否正确
Tool是否正确
参数是否正确

这类测试可以:

  • 手工验证

  • 或通过脚本批量运行


五、经验

在 WorkLog Agent 项目中,LLM 决策层最容易出现的问题是:

1 Tool 未触发

用户输入明确,但模型没有调用工具。


2 Tool 参数不完整

例如缺少日期字段。


3 意图误判

例如把查询日志理解成普通聊天。


因此在系统设计中,引入:

规则优先 + LLM 兜底

也就是说:

高频、明确的请求由规则处理,

复杂输入才交给 LLM。

这样可以显著提高系统稳定性。


六、小结

在 Agent 系统中,LLM 的作用不仅是生成回答,更重要的是:

决策。

测试 LLM 决策层时,需要重点关注:

  • 意图识别

  • Tool 调用

  • 参数提取

而不是只验证回答是否正确。

梳理核心:

1️⃣ Agent 决策视角

2️⃣ Tool 调用测试

3️⃣ 规则优先 + LLM兜底


下一步继续梳理,

状态层测试:为什么 AI 系统最容易出 Bug 的是状态层

复制代码
JSONL 并发写入
↓
空行
↓
KeyError
相关推荐
Raink老师5 小时前
【AI面试临阵磨枪】Harness 的环境隔离(沙箱)如何设计?文件、网络、命令、权限四层隔离?
人工智能·ai 面试
FIT2CLOUD飞致云6 小时前
支持Hermes Agent与MongoDB管理,1Panel v2.1.9版本发布
ai·开源·1panel
人工智能AI技术6 小时前
Python 断言 assert 基础用法
人工智能
我是发哥哈6 小时前
横向评测:五款主流AI培训课程效果与选型分析
人工智能
吴文周6 小时前
告别重复劳动:一套插件让 AI 替你写代码、修Bug、做测试、上生产
前端·后端·ai编程
GetcharZp6 小时前
告别昂贵显卡!llama.cpp 终极指南:在你的电脑上满速运行大模型!
人工智能
AI木马人6 小时前
3.【Prompt工程实战】如何设计一个可复用的Prompt系统?(避免每次手写提示词)
linux·服务器·人工智能·深度学习·prompt
Agent产品评测局7 小时前
临床前同源性反应种属筛选:利用AI Agent加速筛选的实操方案 —— 2026企业级智能体选型与技术落地指南
人工智能·ai·chatgpt
Hanniel7 小时前
Claude CLI免费安装和配置
ai·claude
ting94520007 小时前
HunyuanOCR 全方位深度解析
人工智能·架构