System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)屬于自然語言處理,具體而言涉及一種自動(dòng)生成sql語句的方法、裝置、設(shè)備和介質(zhì)。
技術(shù)介紹
1、自然語言處理(nlp)和數(shù)據(jù)庫查詢是現(xiàn)代信息管理和數(shù)據(jù)處理中的兩個(gè)關(guān)鍵技術(shù),根據(jù)自然語言問題生成結(jié)構(gòu)化查詢語言(sql)查詢可以大大提升數(shù)據(jù)訪問的便捷性和用戶體驗(yàn),這種轉(zhuǎn)換不僅簡化了用戶的操作,而且使沒有數(shù)據(jù)庫知識(shí)的用戶也能夠高效地查詢所需數(shù)據(jù)。
2、現(xiàn)有技術(shù)中利用大語言模型生成sql的方法中通常使用提示方法,提示方法通常預(yù)先定義一組樣本示例,通過簡單對(duì)比輸入問題與樣本示例中問題的關(guān)鍵詞的相關(guān)性,修改樣本示例的sql語句中的對(duì)應(yīng)字段,形成行的sql語句,存在準(zhǔn)確率低的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述的分析,本專利技術(shù)實(shí)施例旨在提供一種自動(dòng)生成sql語句的方法、裝置、設(shè)備和介質(zhì),用以解決現(xiàn)有技術(shù)中存在的上述問題中的一者或多者。
2、本專利技術(shù)的目的是這樣實(shí)現(xiàn)的:
3、本專利技術(shù)第一方面實(shí)施例提供一種自動(dòng)生成sql語句的方法,包括:
4、獲取用戶的輸入問題;
5、在數(shù)據(jù)庫中檢索并召回與所述輸入問題相似度最高的至少兩個(gè)樣本數(shù)據(jù),作為候選數(shù)據(jù),根據(jù)所述輸入問題與候選數(shù)據(jù)的相關(guān)性確定參考數(shù)據(jù);
6、根據(jù)所述參考數(shù)據(jù)的問題模板和解析模板對(duì)所述輸入問題進(jìn)行解析,得到輸入問題的解析結(jié)果;
7、根據(jù)所述輸入問題、解析結(jié)果和參考數(shù)據(jù)生成sql語句。
8、進(jìn)一步地,所述數(shù)據(jù)庫包括不同索引的樣本數(shù)據(jù),所
9、進(jìn)一步地,所述問題模板通過預(yù)訓(xùn)練的大語言模型生成,包括:將自然語言問題輸入大語言模型;識(shí)別所述自然語言問題的一級(jí)指標(biāo)和二級(jí)指標(biāo),所述一級(jí)指標(biāo)表示自然語言問題的目的,所述二級(jí)指標(biāo)表示自然語言問題的維度;根據(jù)所述二級(jí)指標(biāo)生成占位符,使用所述占位符替換自然語言問題中宏二級(jí)指標(biāo)對(duì)應(yīng)的部分,以形成所述問題模板。
10、進(jìn)一步地,所述解析模版通過預(yù)訓(xùn)練的大語言模型生成,包括:將自然語言問題、sql語句、一級(jí)指標(biāo)、二級(jí)指標(biāo)和問題模板輸入大語言模型;識(shí)別所述一級(jí)指標(biāo)、二級(jí)指標(biāo)以及sql語句中占位符對(duì)應(yīng)的字段;將識(shí)別到的信息編排成標(biāo)準(zhǔn)化的json格式,以形成所述解析模版。
11、進(jìn)一步地,所述在數(shù)據(jù)庫中檢索并召回與所述輸入問題相似度最高的至少兩個(gè)樣本數(shù)據(jù),包括:對(duì)所述輸入問題進(jìn)行向量化,得到輸入問題向量,對(duì)所述數(shù)據(jù)庫中樣本數(shù)據(jù)的自然語言問題進(jìn)行向量化,得到樣本問題向量;計(jì)算所述輸入問題向量與樣本問題向量之間的余弦相似度,將余弦相似度最高的至少兩個(gè)樣本問題向量對(duì)應(yīng)的樣本數(shù)據(jù)作為候選數(shù)據(jù),并返回候選數(shù)據(jù)在數(shù)據(jù)庫中的索引。
12、進(jìn)一步地,所述根據(jù)所述輸入問題與候選數(shù)據(jù)的相關(guān)性確定參考數(shù)據(jù),包括:根據(jù)所述候選數(shù)據(jù)在數(shù)據(jù)庫中的索引提取候選數(shù)據(jù)的問題模板和解析模版;計(jì)算所述輸入問題與候選數(shù)據(jù)的問題模板之間的第一相關(guān)度,計(jì)算所述輸入問題與候選數(shù)據(jù)的解析模板之間的第二相關(guān)度;將第一相關(guān)度和第二相關(guān)度之和最大的候選數(shù)據(jù)作為參考數(shù)據(jù)。
13、進(jìn)一步地,所述根據(jù)所述參考數(shù)據(jù)的問題模板和解析模板對(duì)所述輸入問題進(jìn)行解析,得到輸入問題的解析結(jié)果,包括:根據(jù)所述參考數(shù)據(jù)在數(shù)據(jù)庫中的索引提取參考數(shù)據(jù)的問題模板和解析模板;使用所述解析模版對(duì)所述輸入問題進(jìn)行解析,得到包括結(jié)構(gòu)化數(shù)據(jù)的解析結(jié)果。
14、本專利技術(shù)第二方面實(shí)施例提供一種自動(dòng)生成sql語句的裝置,包括:
15、獲取模塊,用于獲取用戶的輸入問題;
16、檢索召回模塊,用于在數(shù)據(jù)庫中檢索并召回與所述輸入問題相似度最高的至少兩個(gè)樣本數(shù)據(jù),作為候選數(shù)據(jù),根據(jù)所述輸入問題與候選數(shù)據(jù)的相關(guān)性確定參考數(shù)據(jù);
17、解析模塊,用于根據(jù)所述參考數(shù)據(jù)的問題模板和解析模板對(duì)所述輸入問題進(jìn)行解析,得到輸入問題的解析結(jié)果;
18、生成模塊,用于根據(jù)所述輸入問題、解析結(jié)果和參考數(shù)據(jù)生成sql語句。
19、本專利技術(shù)第三方面實(shí)施例提供一種電子設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)任一實(shí)施例所述的自動(dòng)生成sql語句的方法。
20、本專利技術(shù)第四方面實(shí)施例提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)任一實(shí)施例所述的自動(dòng)生成sql語句的方法。
21、與現(xiàn)有技術(shù)相比,本專利技術(shù)至少可實(shí)現(xiàn)如下有益效果:
22、本專利技術(shù)提供的自動(dòng)生成sql語句的方法,通過計(jì)算與輸入問題的相似度在數(shù)據(jù)庫中檢索并召回候選數(shù)據(jù),并進(jìn)一步確定更加精準(zhǔn)的參考數(shù)據(jù),根據(jù)參考數(shù)據(jù)中的問題模板和解析模板對(duì)輸入問題解析后,再根據(jù)輸入問題、解析結(jié)果和參考數(shù)據(jù)生成sql語句,從而提高了生成sql語句的準(zhǔn)確率。
本文檔來自技高網(wǎng)...【技術(shù)保護(hù)點(diǎn)】
1.一種自動(dòng)生成SQL語句的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的自動(dòng)生成SQL語句的方法,其特征在于,所述數(shù)據(jù)庫包括不同索引的樣本數(shù)據(jù),所述樣本數(shù)據(jù)包括自然語言問題、SQL語句、問題模板、解析模板、生成模板。
3.根據(jù)權(quán)利要求2所述的自動(dòng)生成SQL語句的方法,其特征在于,所述問題模板通過預(yù)訓(xùn)練的大語言模型生成,包括:
4.根據(jù)權(quán)利要求3所述的自動(dòng)生成SQL語句的方法,其特征在于,所述解析模版通過預(yù)訓(xùn)練的大語言模型生成,包括:
5.根據(jù)權(quán)利要求3所述的自動(dòng)生成SQL語句的方法,其特征在于,所述在數(shù)據(jù)庫中檢索并召回與所述輸入問題相似度最高的至少兩個(gè)樣本數(shù)據(jù),包括:
6.根據(jù)權(quán)利要求1所述的自動(dòng)生成SQL語句的方法,其特征在于,所述根據(jù)所述輸入問題與候選數(shù)據(jù)的相關(guān)性確定參考數(shù)據(jù),包括:
7.根據(jù)權(quán)利要求6所述的自動(dòng)生成SQL語句的方法,其特征在于,所述根據(jù)所述參考數(shù)據(jù)的問題模板和解析模板對(duì)所述輸入問題進(jìn)行解析,得到輸入問題的解析結(jié)果,包括:
8.一種自動(dòng)生成SQL語句的裝置,其特征在于,所
9.一種電子設(shè)備,其特征在于,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1-7任一項(xiàng)所述的自動(dòng)生成SQL語句的方法。
10.一種存儲(chǔ)介質(zhì),其特征在于,其上存儲(chǔ)有計(jì)算機(jī)程序,所述程序被處理器執(zhí)行時(shí),實(shí)現(xiàn)權(quán)利要求1-7任一項(xiàng)所述的自動(dòng)生成SQL語句的方法。
...【技術(shù)特征摘要】
1.一種自動(dòng)生成sql語句的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的自動(dòng)生成sql語句的方法,其特征在于,所述數(shù)據(jù)庫包括不同索引的樣本數(shù)據(jù),所述樣本數(shù)據(jù)包括自然語言問題、sql語句、問題模板、解析模板、生成模板。
3.根據(jù)權(quán)利要求2所述的自動(dòng)生成sql語句的方法,其特征在于,所述問題模板通過預(yù)訓(xùn)練的大語言模型生成,包括:
4.根據(jù)權(quán)利要求3所述的自動(dòng)生成sql語句的方法,其特征在于,所述解析模版通過預(yù)訓(xùn)練的大語言模型生成,包括:
5.根據(jù)權(quán)利要求3所述的自動(dòng)生成sql語句的方法,其特征在于,所述在數(shù)據(jù)庫中檢索并召回與所述輸入問題相似度最高的至少兩個(gè)樣本數(shù)據(jù),包括:
6.根據(jù)權(quán)利要求1所述的自...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:胡洪兵,柴思遠(yuǎn),張帆,平恒,孔永輝,
申請(qǐng)(專利權(quán))人:北京智譜華章科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。