NL2SQL服務(wù)配置
查詢分析服務(wù)中的NL2SQL提供將自然語言查詢轉(zhuǎn)換為SQL語句的能力,本文介紹如何配置查詢分析-NL2SQL服務(wù)。
效果展示
Query:高一三班有哪些模范生? | Query:2024年結(jié)案數(shù)最多的是哪5個(gè)案由? |
如何配置
查詢分析服務(wù)中的NL2SQL提供將自然語言查詢轉(zhuǎn)換為SQL語句的能力,使用NL2SQL服務(wù),需要配置以下信息:
表基礎(chǔ)信息配置:配置接入NL2SQL服務(wù)依賴的業(yè)務(wù)數(shù)據(jù)表信息,包含字段名稱、字段類型、字段枚舉值、字段描述信息、字段映射以及表之間的關(guān)聯(lián)關(guān)系等。
學(xué)習(xí)樣本配置:將業(yè)務(wù)上使用的高頻問法、復(fù)雜問法及其對應(yīng)的SQL語句配置在此處,提升NL2SQL準(zhǔn)確性。同時(shí),在使用NL2SQL服務(wù)期間,如遇到生成SQL不符合預(yù)期時(shí),也可以將對應(yīng)問法和SQL語句配置在此處。
自定義規(guī)則配置(業(yè)務(wù)術(shù)語、概念等知識配置):用戶輸入的問法中,通常會包含一些業(yè)務(wù)術(shù)語、概念等知識,為了幫助模型理解業(yè)務(wù)知識、概念,需要將術(shù)語、概念及其對應(yīng)的解釋配置在此處。
如:
最近一周積水治理情況如何?涉及知識:積水治理包含雨水井蓋、道路積水事件。
模范生是指編號小于或者等于10的學(xué)生,體育生是指編號大于11的學(xué)生。
具體步驟
在AI搜索開放平臺選擇模型服務(wù)>服務(wù)配置,然后單擊創(chuàng)建。
服務(wù)類別、配置類型選擇默認(rèn)配置,輸入配置名稱,如xsxx(表示學(xué)生信息數(shù)據(jù)分析)。
單擊保存并進(jìn)入下一步,參照以下格式配置NL2SL服務(wù)所需要的數(shù)據(jù)表信息。
表基礎(chǔ)配置
[ { "table":"schools", "columns": [ { "column": "class", "description": "班級", "type": "string", "example": ["高一3班", "火箭班"], "value_mapping": [] }, { "column": "school", "description": "學(xué)校", "type": "string", "example": ["A市B一中學(xué)", "AA五中"], "value_mapping": [] } ] }, { "table":"students", "columns": [ { "column": "id", "description": "學(xué)號", "type": "int", "example": [1, 2], "value_mapping": [ [1,"張三"], [2,"李四"] ] }, { "column": "class", "description": "班級", "type": "string", "example": ["高一3班", "火箭班"], "value_mapping": [] } ] } ]
表名
table
以小寫字母開頭,僅支持小寫字母、數(shù)字或下劃線,且長度不超過30位。字段名
column
以小寫字母開頭,僅支持小寫字母、數(shù)字或下劃線,且長度不超過30位。字段類型
type
支持text、string、int8、uint8、int16、uint16、int32、int、uint32、int64、uint64、float、double、location、date、time、timestamp。表關(guān)聯(lián)配置
["students.class=schools.class"]
單擊下一步,配置自定義規(guī)則和學(xué)習(xí)樣本,提升NL2SQL的識別效果。
學(xué)習(xí)樣本配置:將業(yè)務(wù)側(cè)使用的高頻問法、復(fù)雜問法及其對應(yīng)的SQL語句配置在此處,提升NL2SQL準(zhǔn)確性。同時(shí),在使用NL2SQL服務(wù)期間,如遇到生成SQL不符合預(yù)期時(shí),也可以將對應(yīng)問法和SQL語句配置在此處。
[ { "query":"張三是哪個(gè)班的", "sql" : "SELECT class FROM students WHERE name = '張三'" } ]
自定義規(guī)則配置(業(yè)務(wù)術(shù)語、概念等知識配置):用戶輸入的問法中,通常會包含一些業(yè)務(wù)術(shù)語、概念等知識,為了幫助模型理解業(yè)務(wù)知識、概念,需要將術(shù)語、概念及其對應(yīng)的解釋配置在此處。
如:模范生是指學(xué)號(id)<=10的學(xué)生,體育生是指學(xué)號(id)>11的學(xué)生。
[ { "key":"模范學(xué)生", "value":"students.id <= 10" }, { "key":"體育生", "value":"學(xué)號大于11的學(xué)生" } ]
單擊下一步,單擊立即激活,頁面跳轉(zhuǎn)到服務(wù)配置列表,激活狀態(tài)處于激活中,系統(tǒng)對上述配置信息進(jìn)行格式校驗(yàn)。
激活狀態(tài)為已激活時(shí),表示服務(wù)配置可正常使用,可以通過體驗(yàn)中心測試NL2SQL效果。
后續(xù)步驟
如果您希望在業(yè)務(wù)代碼中集成NL2SQL服務(wù),請?jiān)L問NL2SQL API。