高级:字段提取+ HTTP 模块
最后更新于
最后更新于
“字段提取”模块能够将输入的内容进行分析并提取出所需字段,“HTTP调用”工具,则可以连接到第三方,通过设置入参和出参,完成与第三方系统的通信,大大扩展 Agent 的使用场景。
在本次的案例中,我们将主要利用“字段提取”和“HTTP调用”模块进行一个简单的会议室预定 Agent 的搭建,实现通过自然语言的方式,借助 Agent 完成会议室的预定。
作为“会议室小预定” Agent,我们希望它能够实现查询会议室状态和预约会议室功能。其中查询和预约会议室的功能需要和现有的会议室预约系统通信,它的基本信息配置如下:
Agent 的大概思路是:通过“信息分类”模块判断用户意图(查询会议室/预约会议室/其他),根据不同的用户意图,触发不同的数据通信,并执行后面的步骤。
下方为“查询会议室”功能的规划图,核心流程是通过“信息分类”模块判断用户的意图,如果是“查询会议室”相关的请求,将触发接下来的“HTTP调用”,向会议室系统查询当前的会议室预约状态。
连线1:通过“用户提问”模块,获取用户输入信息,并通过“用户提问”输出
“信息分类”模块通过“信息输入”输入用户的问题,后会执行如下几个步骤:
将模块的 prompt 与 “用户提问”、聊天上下文进行传给天工大模型进行分类处理
判断用户信息的类型,返回分类处理结果,并触发下一个模块的功能
连线2:如果用户意图是“查询会议室”,将触发“HTTP调用”模块
“HTTP调用”模块中填写了“查询会议室”的请求链接,一方面接受查询(连线3),一方面输出查询结果(连线4),将目前会议室的状态信息传入下一个模块
连线4:“智能对话”模块接收会议室预约状态信息后,将通过
“智能对话”模块接受到以上 3 个信息输入后,后会执行如下几个步骤:
将提示词、用户提问及 HTTP 调用查询结果传给天工大模型
大模型进行加工处理,并根据提示词回复信息给用户
而在“预定会议室”模块中,通过“信息分类”模块判断用户的意图,如果是“预约会议室”相关的请求,将触发接下来的流程,具体连线及功能说明如下:
连线5:如果用户意图是“预约会议室”,将触发“字段提取”模块
“字段提取”模块的主要功能是将用户输入的信息进行结构化,并输出 JSON 格式的内容
例如输入“预约天空之门,13:00-18:00,预约人:小助手”,那么经过字段提取后的内容为“{"会议室名称":"天空之门","开始时间":"13:00","结束时间":"18:00","预约人姓名":"小助手"}”
连线6:为了更好的将预约信息传送给会议室预约系统,本次额外增加“信息加工”模块,希望将上方传入的 JSON 进一步处理成接口所需要的格式,通过 连线7 输出给“HTTP调用”模块,传入会议室预约系统。该步骤可根据实际需要选择性添加
连线8:一旦发起预约请求成功,会触发“智能对话模块”,提醒用户已预约完成,并同步用户预约信息(通过 连线9 将用户的预约信息同步)
连线10:会议室预约需要用户提供必要的用户信息,这里为了防止用户提供的信息缺失,设置了“提取缺失”的提示,提醒用户提供必要的信息
输入“查询会议室”后,Agent 可以返回当前会议室的相关预定情况
输入“预定会议室”后,Agent 会提示用户输入相关预定信息
输入“预约天空之门,下午四点,预约人小助手”后,Agent 会将信息发送给会议室预约系统,并在请求成功后,提示“预约成功”相关信息
以上就是一个简单的会议室预订 Agent 的搭建介绍,灵活利用“字段提取”模块与“HTTP调用”模块,创建出更多符合个人/工作场景的 Agent。