课程学习助理常被问到作业什么时候交、在哪个教室上课,这些它自己不知道,得调用工具去查。本实验看它怎样从七个工具里挑工具、填参数,再动手改工具的描述,看选对的条数怎样变。
说明:智能体用简单规则模拟,描述和学生原话有几个字相同就得几分,最高分不少于 2 分才调用,课程数据是编好的。真实的大模型名字和描述都会看,描述写得越清楚越容易选对。
这一步看什么学生问一句话,智能体先挑一个工具、填好参数,程序照着去查,查到的结果交回给它,再由它写成回答。
第一条调用了查作业截止时间,参数是“人工智能”,查到作业周五 23:59 截止。“你好呀”不需要查任何东西,第 2、3 步没有发生,它看完得分就直接回答。
收起工具箱以后,它回答作业“一般是每周日 24:00 截止”,听起来合情合理,却和课程平台上的周五 23:59 对不上,这是它照常见的说法编的。
这一步看什么七个工具各有一句描述。描述和学生这句话有几个字相同,这个工具就得几分,只算连着两个字以上的片段,不管是不是一个词。
| 工具 | 得分 | 相同的片段 |
|---|
查上课教室的描述里有“在哪个教室上课”这一整段,和学生的话一字不差,得 7 分,别的工具都是 0 分,它被选中。
“帮我看看周五的课表”七个工具都是 0 分,一个都不调,因为查课表的描述“查询某个星期几要上哪几门课”里没有“课表”两个字。周二那一条三个工具并列 2 分,挑中排在最上面的查课程通知,选错了。工具叫什么名字不影响打分,能不能被选中全看描述。
这一步看什么七段描述都可以直接改。每改一个字,三十七条请求就重新挑一遍工具,右边随时显示选对了几条。
| 学生说的 | 该给 | 实际给了 |
|---|
原来的描述选对 28 条。加上“课表”以后,“帮我看看周五的课表”被接住,变成 29 条。删掉“包括什么时候截止”以后,查作业的几条请求不再被抢走,升到 32 条,可“数据结构最近发了什么公告”因为并列,被查作业截止时间接走了。再给查图书借阅加上“借得到吗”,就是 33 条。
词加得不合适,也会抢走别人的请求,比如给查课表加上“有什么课”,“人工智能这门课有什么通知吗”就会被它接走。描述既要写进学生会说的话,也要写清楚这个工具管什么。
这一步看什么这一步把工具固定为正确的那一个,只看参数。四条请求各有一个坑:一句话里有两门课、只说了简称、没说是哪门课、书名只说了一半。
“这门课的作业什么时候截止”没说是哪门课,它不去查,先问学生是哪门课,这样做是对的。“英语那门课”和“简史那本书”的参数填成了“英语”“简史”,工具查不到,学生一看就知道,还可以再问。
第一条最危险,它在句子里找到人工智能就填了进去,查到的是人工智能的真实作业,回复通顺具体,还带着来源。学生要是没留意课程名,就会按这个时间去交机器学习的作业。
前面四步的操作结果会自动写进报告。下面的题目按你实际看到的情况回答。
| 工具 | 你写的描述 |
|---|---|
| 没有改过描述 | |
| 学生说的 | 该填的参数 | 实际填的 | 工具返回 |
|---|---|---|---|
| 未记录 | |||