首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于多智能体交互的自然语言智能查询方法和装置 

申请/专利权人:浙江大学

申请日:2023-12-21

公开(公告)日:2024-05-10

公开(公告)号:CN118012900A

主分类号:G06F16/2452

分类号:G06F16/2452;G06F16/242;G06F16/2455;G06N3/006;G06N5/02

优先权:

专利状态码:在审-实质审查的生效

法律状态:2024.05.28#实质审查的生效;2024.05.10#公开

摘要:一种基于多智能体交互的自然语言智能查询方法和装置,基于大语言模型LLM的智能体负责在收到数据库相关结构描述以及自然语言描述的查询问题后输出对应的结构化数据查询语句SQL,其方法包括:1智能体验证者接收用户数据查询描述和数据库结构信息,构建提示词;2验证者将提示词发送至智能体执行者,执行者根据提示词生成SQL并执行;3执行者将包含SQL执行结果的二元组和SQL发送至验证者,验证者根据执行结果对SQL进行修正。本发明相比于原始LLM在自然语言到结构化查询语言的转换NL‑to‑SQL任务上有更优异的表现。

主权项:1.一种基于多智能体交互的自然语言智能查询方法,根据用户自然语言描述的数据查询需求将其转换为结构化查询语言并返回执行结果,包括以下步骤:1智能体验证者接收用户数据查询描述和数据库结构信息,构建提示词,包括以下步骤:11验证者将用户数据查询描述和数据库结构信息发送至知识库模块,知识库基于关键词掩蔽算法对数据查询描述中数据库相关关键词进行掩蔽操作;12知识库模块基于语义相似度从向量数据库中找出和掩蔽后的用户数据查询描述相似的数个历史查询记录以及对应的结构化查询语言SQL;13知识库模块根据当前用户名,从键值存储中取回用户的SQL生成偏好;14知识库模块将历史查询记录及用户生成偏好发送至验证者,验证者结合历史查询记录、用户生成偏好、用户数据查询描述和数据库结构信息生成提示词。15验证者将提示词发送至知识库模块,知识库模块记录该提示词作为LLM对话上下文;2验证者将提示词发送至智能体执行者,执行者根据提示词生成SQL并执行,包括以下步骤:21执行者将SQL发送至代码生成模块,代码生成模块调用LLM相关接口,基于生成的提示词指导LLM生成目标SQL;22执行者将SQL和数据库结构信息发送至执行器模块,执行器模块执行SQL并获取执行结果,包括以下步骤:221执行器模块根据数据库结构信息,选择对应的数据库,并与其建立连接;222执行器在数据上执行SQL,将执行结果以二元组的形式进行保存,二元组中包含一个判断SQL是否执行正确的布尔值,如果SQL执行正确则二元组中另一个值为SQL执行后返回的数据,否则为SQL执行错误信息;执行器将该二元组返回至智能体执行者;3执行者将包含SQL执行结果的二元组和SQL发送至验证者,验证者根据执行结果对SQL进行修正,包含以下步骤:31执行者将二元组和SQL发送至代码修正模块,由代码修正模块生成SQL修改建议,具体包括:311如果二元组中布尔值为假,则代码修正模块调用底层LLM接口,指导LLM针对二元组中SQL执行错误信息生成对应的自然语言描述,并基于该描述生成SQL修改建议;312如果二元组中布尔值为真,则代码修正模块调用底层LLM相关接口,指导LLM对SQL的执行语义进行解释,并输出对应的自然语言描述,将该描述和用户数据查询描述作为LLM的输入,指导LLM判断两者语义是否一致,如果不一致则输出对应的SQL修正建议,如果一致则输出对SQL执行语义的自然语言描述;32代码修正模块将以上步骤中由LLM生成的SQL修正建议发送至验证者,验证者根据修正建议的具体内容决定将结果返回给用户或进行SQL修正,进行以下步骤:321如果修正建议为空,验证者将SQL、SQL执行结果及其SQL的自然语言描述发送至用户,如果用户对生成结果满意,则智能查询流程终止。否则执行步骤322322当修正建议不为空或者步骤321中用户反馈不为空时,执行该步骤,验证者调用知识库模块接口获得LLM历史对话上下文,将修正建议或用户反馈作为新的对话内容拼接在其后作为新一轮SQL生成的提示词,然后跳转至步骤2,重复以上步骤直至达到最大迭代次数或查询流程在步骤321终止。

全文数据:

权利要求:

百度查询: 浙江大学 一种基于多智能体交互的自然语言智能查询方法和装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。