System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于电力领域的数据查询,具体涉及一种基于kmdi(knowledgematching-distilling-injection,知识匹配、知识蒸馏和知识注入)链的电力领域sql智能体构建方法。
技术介绍
1、电力领域历经多年的信息化建设已构建了覆盖全面业务的信息化体系,是推动电力领域流程自动化和数字化转型的关键支撑。然而电力领域的各种数据都存储在结构化数据库中,只有受过专门训练且熟悉数据架构的技术人员才具备数据访问能力,业务人员无法直接访问数据。
2、为了便于业务人员直接访问业务数据,自然语言处理领域开始研究text-to-sql技术。研究人员起初利用深度学习技术(例如seq2seq模型等)结合注意力机制,通过大规模语料库训练,实现了将自然语言直接转换为sql查询的功能。然而由于模型参数的限制,在面对复杂的问题或训练语料无关的问题时,上述技术难以举一反三的思考进而准确的生成sql。
3、随着大语言模型及其应用的发展,将大语言模型与text-to-sql结合展现出了较好的前景。然而现有的text-to-sql技术应用在电力领域数据查询上具有明显的不足,面临以下问题:
4、(1)通用大语言模型的领域知识能力弱:尽管通用大语言模型在一般领域的推理能力上表现出色,但在电力营销等特定领域中的专业知识相对薄弱,缺乏对领域内特定术语、业务流程和行业规则的深度理解,导致模型难以理解领域术语表达的问题,无法准确生成符合实际需求的sql查询。
5、(2)业务场景对应的sql内容复杂:在电力营
6、(3)电力领域的业务数据库的复杂性高:电力行业的数据查询需求通常涉及企业级的大型数据库,由于术语相近导致的表名和字段名混淆,大语言模型在处理这些信息时容易出错,难以准确定位sql生成所需的库表和字段。此外,电力领域业务相关的数据库实现较为复杂。因为涉及到的数据库表和字段众多,在进行text-to-sql任务时输入大语言模型的schema信息冗长,容易引发通信瓶颈、理解不准确和注意力分散等问题,甚至可能超出大语言模型处理的输入tokens数量限制。
7、(4)查询问题描述与数据库内容无法匹配:通用大语言模型在生成sql时往往直接将查询问题中的部分内容作为sql的查询内容或条件。然而在电力领域业务数据库中,领域特征数据多以编码项形式存储,与用户查询时使用的业务术语不直接对应。这导致大模型无法理解领域本质需求,无法在生成的sql中将业务特征术语与数据库中的特征术语编码项进行匹配,从而导致sql不正确,无法获取所需数据。
技术实现思路
1、为了克服现有技术中的问题,本专利技术提出了一种基于kmdi链的电力领域sql智能体构建方法。
2、本专利技术解决上述技术问题的技术方案如下:
3、本专利技术提供了一种基于kmdi链的领域sql智能体构建方法,包括以下步骤:
4、步骤100:电力数据领域知识组织与知识库构建,所述知识库包括sql问答对知识库、数据库表结构知识库、表间关系知识库及编码映射关系知识库;
5、步骤200:知识匹配与决策:利用检索增强生成技术,基于用户数据查询问题从sql问答对知识库中检索相似问题案例,设计相似问答对等级判断提示词prompt模板,利用大语言模型的理解力判断相似问答对的相似度等级,根据相似度等级对有无相似案例进行决策,以进入不同的关键知识蒸馏路线;
6、步骤300:关键知识蒸馏:针对有相似问答对的数据查询问题,设计差异实体提取prompt模板,利用大语言模型提取的差异实体以及相似案例信息检索并获取相关知识;针对没有相似案例的数据查询问题,设计问题实体提取prompt模板提取数据查询问题中的关键实体,并基于局部敏感哈希和向量相似度的混合检索与定位方式,获取与查询问题最相关的数据库表信息;
7、步骤400:关键知识注入:依据关键知识蒸馏得到的领域知识结果,设计电力领域sql生成prompt模板与关键知识格式化方式,使大语言模型充分利用并理解知识的含义;将格式化的关键知识注入电力领域sql生成prompt模板中,获取具备查询问题所需电力数据领域知识的完整prompt,用于引导大语言模型生成满足查询需求、且符合实际的电力领域业务数据库逻辑的sql语句;
8、步骤500:电力领域sql智能体构建:将知识匹配与决策、关键知识蒸馏、关键知识注入组成的工作链环节作为智能体的思考流程,结合智能体环境交互、记忆与反馈的思想,设计sql执行动作与sql验证机制,构建电力领域sql智能体,通过智能体实现sql语句生成、sql语句执行与结果验证反馈的功能。
9、进一步地,所述步骤100中还包括:采集并组织电力领域业务中的数据查询sql问答对、数据库表结构、数据库表关联关系及数据编码映射关系,形成序号-问题知识文档、序号-问答对知识文档、数据库表结构知识文档、表间关系知识文档和数据编码映射关系知识文档,并对所述序号-问题知识文档、数据库表结构知识文档、表间关系知识文档和数据编码知识映射关系文档进行切分,对分割后的文本块数据进行向量嵌入处理,使其转换为机器可读的形式。
10、进一步地,所述步骤200具体包括:
11、步骤210:将查询问题进行向量嵌入,获取查询问题向量;
12、步骤220:计算所述查询问题向量与sql问答对知识库中每个文本块向量之间的相似性,得到相似度得分;并根据所述相似度得分返回最相似文本块中的内容作为检索匹配结果;
13、步骤230:设计案例知识决策prompt模板,通过上下文提示使大语言模型能够生成所需的输出:对每一个sql问答对,判断其相似性等级,并输出相关信息;
14、将案例知识决策prompt模板定义为元组,包括以下部分:
15、;
16、其中,g表示定义的任务角色目标,即给大语言模型制定一个明确的角色,并阐述角色的任务目标;st表示相似性判断的标准定义,共设计了四个相似性等级,其中等级1的相似性最小,等级4的相似性最大,代表完全匹配;cs表示候选相似sql问答对集合{cases};t代表生成sql的目标数据库类型{db_type};w表示重要提醒,包括在完成任务时的重要提示和约束;o表示任务的输出格式;
17、步骤240:根据相似度等级结果对有无相似案例进行决策,提取所需信息,并进入不同的关键知识蒸馏路线。
18、进一步地,所述步骤240中,若存在相似度等级大于等于3的案例,则转向有案例sql知识蒸馏路线;若最大相似度等级小于3,则转向无案例知识蒸馏路线。
19、进一步地,所述步骤300中,针对有相似问答对的数据查询问题,设计差异本文档来自技高网...
【技术保护点】
1.一种基于KMDI链的领域SQL智能体构建方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤100中包括:采集并组织电力领域业务中的数据查询SQL问答对、数据库表结构、数据库表关联关系及数据编码映射关系,形成序号-问题知识文档、序号-问答对知识文档、数据库表结构知识文档、表间关系知识文档和数据编码映射关系知识文档,并对所述序号-问题知识文档、数据库表结构知识文档、表间关系知识文档和数据编码映射关系知识文档进行切分,对分割后的文本块数据进行向量嵌入处理,使其转换为机器可读的形式。
3.根据权利要求2所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤200具体包括:
4.根据权利要求3所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤240中,若存在相似度等级大于等于3的案例,则转向有案例SQL知识蒸馏路线;若最大相似度等级小于3,则转向无案例知识蒸馏路线。
5.根据权利要求1所述的一种基于KMDI链的领域SQL智能体
6.根据权利要求5所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤330具体包括:
7.根据权利要求1所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤300中,针对没有相似案例的数据查询问题,设计问题实体提取prompt模板提取数据查询问题中的关键实体,并基于局部敏感哈希和向量相似度的混合检索与定位方式,获取与查询问题最相关的数据库表信息,具体包括:
8.根据权利要求5或7所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,还包括:对于编码映射关系检索结果进行过滤:
9.根据权利要求1所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤400中包括:
10.根据权利要求1所述的一种基于KMDI链的领域SQL智能体构建方法,其特征在于,所述步骤500包括:
...【技术特征摘要】
1.一种基于kmdi链的领域sql智能体构建方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于kmdi链的领域sql智能体构建方法,其特征在于,所述步骤100中包括:采集并组织电力领域业务中的数据查询sql问答对、数据库表结构、数据库表关联关系及数据编码映射关系,形成序号-问题知识文档、序号-问答对知识文档、数据库表结构知识文档、表间关系知识文档和数据编码映射关系知识文档,并对所述序号-问题知识文档、数据库表结构知识文档、表间关系知识文档和数据编码映射关系知识文档进行切分,对分割后的文本块数据进行向量嵌入处理,使其转换为机器可读的形式。
3.根据权利要求2所述的一种基于kmdi链的领域sql智能体构建方法,其特征在于,所述步骤200具体包括:
4.根据权利要求3所述的一种基于kmdi链的领域sql智能体构建方法,其特征在于,所述步骤240中,若存在相似度等级大于等于3的案例,则转向有案例sql知识蒸馏路线;若最大相似度等级小于3,则转向无案例知识蒸馏路线。
5.根据权利要求1所述的一种基于kmdi链的领域sql智...
【专利技术属性】
技术研发人员:于瑞强,陈本权,闫谷丰,喻魏贤,李晓宇,王明,李万勇,董伟锋,李慧霖,余振钊,潘超,
申请(专利权)人:烟台海颐软件股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。