基于字符串相似度算法的智能客服搜索方法與系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于字符串相似度算法的智能客服搜索方法,包括接收來自于客戶端的搜索請求,在知識(shí)庫中進(jìn)行搜索;判斷知識(shí)庫中是否存在與搜索請求相匹配的關(guān)鍵詞,若存在,則將知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至客戶端;若不存在,則對陌生詞庫進(jìn)行搜索;判斷陌生詞庫中是否存在與搜索請求相匹配的關(guān)鍵詞,若存在,則將關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在陌生詞庫中新增與搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至客戶端。本發(fā)明還公開一種基于字符串相似度算法的智能客服搜索系統(tǒng)。本發(fā)明具有資源消耗低、匹配準(zhǔn)確率高的優(yōu)點(diǎn)。
【專利說明】基于字符串相似度算法的智能客服搜索方法與系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息檢索【技術(shù)領(lǐng)域】,尤其涉及一種基于字符串相似度算法的智能客服搜索方法。
【背景技術(shù)】
[0002]隨著經(jīng)濟(jì)的發(fā)展,國內(nèi)外正在往服務(wù)型社會(huì)轉(zhuǎn)變,要求社會(huì)的主體以人為本,具備更好地服務(wù)他人的理念,“智能客服”正是基于這個(gè)理念產(chǎn)生的。智能客服終端可以7天X24小時(shí)無間斷為用戶提供服務(wù),既減少了資源的投入,也滿足了用戶隨時(shí)訪問的需求,提高了便捷性。譬如,目前,通過“微信”公眾平臺(tái)、SMS(Short Message Service,短信服務(wù))等平臺(tái),用戶可以隨時(shí)將數(shù)據(jù)請求發(fā)送到服務(wù)平臺(tái)的智能客服端口,服務(wù)平臺(tái)的智能客服終端則需要根據(jù)用戶請求的關(guān)鍵字,找到最匹配的信息(如問題答案)回復(fù)給用戶。例如,用戶在“微信”公眾平臺(tái)關(guān)注了某航空公司的公眾賬號后,發(fā)送信息“行程單”到該公眾平臺(tái),智能客服終端可以檢測出該信息,并在其所在的數(shù)據(jù)庫中搜索出與該信息相關(guān)的行程內(nèi)容,并進(jìn)一步將這些內(nèi)容推薦給用戶,以滿足用戶獲取某種特定數(shù)據(jù)的需要,智能地將用戶請求與數(shù)據(jù)庫數(shù)據(jù)進(jìn)行匹配和推送。
[0003]目前的智能客服匹配大多是采用數(shù)據(jù)庫技術(shù),即在數(shù)據(jù)庫中查找出用戶請求搜索的提問語完全一致的關(guān)鍵詞,或者將在提問語中出現(xiàn)的某個(gè)或某些關(guān)鍵詞進(jìn)行匹配。但是,這種簡單的數(shù)據(jù)搜索方案無法做到“提問語與關(guān)鍵詞中有某一部分相同”時(shí)的數(shù)據(jù)搜索和匹配計(jì)算,并且其無法智能更新數(shù)據(jù)庫,因此難以做到真正的最優(yōu)匹配?;诖?,現(xiàn)有技術(shù)中提出了一些大數(shù)據(jù)量的數(shù)據(jù)匹配或搜索方案,雖然這種改進(jìn)方案能夠提高數(shù)據(jù)匹配搜索的準(zhǔn)確度,但是這種數(shù)據(jù)量巨大的數(shù)據(jù)搜索方案無疑需要投入大量的時(shí)間和資源才能完成,因而其適用范圍受到了限制。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題是,提供一種基于字符串相似度算法的智能客服搜索方法,如何降低數(shù)據(jù)搜索的復(fù)雜度并提高數(shù)據(jù)匹配的準(zhǔn)確度,從而提高智能客服的整體性能和拓寬其適用范圍。
[0005]為解決以上技術(shù)問題,一方面,本發(fā)明提供一種基于字符串相似度算法的智能客服搜索方法,
[0006]在知識(shí)庫或陌生詞庫對關(guān)鍵詞進(jìn)行搜索,所述方法包括以下步驟:
[0007]S1:接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索;
[0008]S2:判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行步驟S3,具體包括:
[0009]S21:將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組;
[0010]S22:將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值;
[0011]S23:逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù);
[0012]S24:判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則執(zhí)行步驟S3 ;
[0013]S3:對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端。
[0014]優(yōu)選地,所述步驟S24具體包括:
[0015]若當(dāng)前最大相似度值的個(gè)數(shù)為零時(shí),判定所述最大相似度值中不存在最優(yōu)值,并執(zhí)行所述步驟S3 ;
[0016]若當(dāng)前最大相似度值的個(gè)數(shù)不為零時(shí),判定所述最大相似度值存在最優(yōu)值,且檢測所述知識(shí)庫中是否存儲(chǔ)有在先搜索的最優(yōu)值;
[0017]若所述知識(shí)庫中存儲(chǔ)有在先搜索的最優(yōu)值,則將所述在先搜索的最優(yōu)值與當(dāng)前最大相似度值進(jìn)行比較,若不相等,則將所述在先搜索的最優(yōu)值與所述當(dāng)前最大相似度值中的較大值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若相等,則將所述在先搜索的最優(yōu)值的個(gè)數(shù)與當(dāng)前最大相似度值的個(gè)數(shù)進(jìn)行比較;
[0018]若所述在先搜索的最優(yōu)值的個(gè)數(shù)大于當(dāng)前最大相似度值的個(gè)數(shù),則將所述在先搜索的最優(yōu)值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若所述在先搜索的最優(yōu)值的個(gè)數(shù)小于當(dāng)前最大相似度值的個(gè)數(shù),則將所述當(dāng)前最大相似度值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);
[0019]將所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞判定為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端。
[0020]進(jìn)一步地,在所述步驟S3中,當(dāng)所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),還包括:
[0021]判斷與所述搜索請求相匹配的關(guān)鍵詞的提問次數(shù)是否大于跳變值;若是,則將與所述搜索請求相匹配的關(guān)鍵詞以及相應(yīng)的回復(fù)語錄入所述知識(shí)庫中。
[0022]另一方面,本發(fā)明還提供一種基于字符串相似度算法的智能客服搜索系統(tǒng),用于根據(jù)客戶端所發(fā)送的搜索請求對數(shù)據(jù)進(jìn)行搜索,所述系統(tǒng)包括智能客服搜索服務(wù)器、知識(shí)庫、陌生詞庫和智能客服管理服務(wù)器;
[0023]所述智能客服搜索服務(wù)器,用于接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索;判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端;
[0024]所述智能客服管理服務(wù)器,在所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì);在所述陌生詞庫中不存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞;
[0025]所述智能客服搜索服務(wù)器具體包括:
[0026]數(shù)據(jù)分割器,用于將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組;
[0027]數(shù)據(jù)處理器,用于將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值;
[0028]查找記錄器,用于逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù);
[0029]最優(yōu)匹配器,用于判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則觸發(fā)所述智能客服管理服務(wù)器對所述陌生詞庫進(jìn)行數(shù)據(jù)處理。
[0030]本發(fā)明提供的基于字符串相似度算法的智能客服搜索方法和系統(tǒng),根據(jù)關(guān)鍵詞的訪問熱度區(qū)分設(shè)置知識(shí)庫和陌生詞庫,降低數(shù)據(jù)查詢數(shù)據(jù)量和讀寫次數(shù),對知識(shí)庫中的關(guān)鍵字進(jìn)行分組后,采用字符串相似度算法在每組關(guān)鍵詞中搜索出與用戶端的提問語具有最大相似度值的關(guān)鍵詞,并在最大相似度值中確定最優(yōu)值及其對應(yīng)的最優(yōu)回復(fù)語;若未在知識(shí)庫中搜索到最優(yōu)值,則對陌生詞庫中進(jìn)行搜索,并在搜索到匹配的關(guān)鍵詞時(shí),對關(guān)鍵詞的提問次數(shù)進(jìn)行累計(jì),在搜索不到匹配的關(guān)鍵詞時(shí),則在陌生詞庫中錄入新的與提問語相匹配的關(guān)鍵詞。通過對知識(shí)庫或陌生詞庫中的關(guān)鍵詞的層層比較,以一種“關(guān)鍵詞分治”的形式搜索出與所述用戶請求最優(yōu)匹配的關(guān)鍵詞,無需設(shè)置數(shù)量繁多的服務(wù)器,從而節(jié)約了數(shù)據(jù)資源并提高了數(shù)據(jù)匹配的準(zhǔn)確度。因此,本發(fā)明提供的基于字符串相似度算法的智能客服搜索方法和系統(tǒng)具有更高的適用性。
【專利附圖】
【附圖說明】
[0031]圖1是本發(fā)明第一實(shí)施例提供的基于字符串相似度算法的智能客服搜索方法的流程示意圖;
[0032]圖2是本發(fā)明第一實(shí)施例所提供的方法在知識(shí)庫中查找最優(yōu)回復(fù)語的流程示意圖;
[0033]圖3是本發(fā)明第二實(shí)施例提供的一種基于字符串相似度算法的智能客服搜索系統(tǒng)的結(jié)構(gòu)示意圖;
[0034]圖4是本發(fā)明第二實(shí)施例提供的智能客服搜索服務(wù)器的一種結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0035]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。[0036]參見圖1,是本發(fā)明第一實(shí)施例提供的基于字符串相似度算法的智能客服搜索方法的結(jié)構(gòu)流程示意圖。
[0037]本發(fā)明提供的基于字符串相似度算法的智能客服搜索方法,在知識(shí)庫或陌生詞庫對關(guān)鍵詞進(jìn)行搜索,以獲得與客戶端所發(fā)出的提問語相匹配的回復(fù)語。具體地,所述方法包括以下步驟:
[0038]步驟S1:接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索,以獲得與所述搜索請求相匹配的關(guān)鍵詞及其對應(yīng)的回復(fù)語。
[0039]步驟S2:判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行步驟S3。
[0040]步驟S3:對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端。
[0041]進(jìn)一步地,在所述步驟S3中,當(dāng)所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),還包括:
[0042]判斷與所述搜索請求相匹配的關(guān)鍵詞的提問次數(shù)是否大于跳變值;若是,則將與所述搜索請求相匹配的關(guān)鍵詞以及相應(yīng)的回復(fù)語錄入所述知識(shí)庫中。
[0043]具體地,所述步驟S2可采用字符串相似度算法計(jì)算出客戶端的搜索請求與知識(shí)庫中已存有的關(guān)鍵字的相似度,并通過對關(guān)鍵字的層層分治比較,可快速獲得最優(yōu)值。
[0044]參看圖2,是本發(fā)明第一實(shí)施例所提供的方法在知識(shí)庫中查找最優(yōu)回復(fù)語的流程示意圖。
[0045]在一種可實(shí)現(xiàn)方式中,所述步驟S2具體包括:
[0046]步驟S21:將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組;具體實(shí)施時(shí),知識(shí)庫中的以數(shù)據(jù)列表的形式對關(guān)鍵詞進(jìn)行存儲(chǔ),通過以空格分隔符為區(qū)分標(biāo)志,將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組。
[0047]步驟S22:將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值;
[0048]步驟S23:逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù);
[0049]步驟S24:判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則執(zhí)行所述步驟S3。
[0050]在本實(shí)施例中,字符串相似度算法又稱為Levenshtein Distance (編輯距離)算法,字符串的相似度可以用Levenshtein距離來表示,其中Levenshtein距離是指兩個(gè)字符串之間,由一個(gè)轉(zhuǎn)成另一個(gè)所需的最少編輯操作次數(shù)。例如,客戶端發(fā)送“kitten”,若知識(shí)庫中存有“kitten”,則需要編輯次數(shù)為O,相似度最大;若知識(shí)庫中并沒有“kitten”這一關(guān)鍵詞,只錄入有關(guān)鍵詞“setting”和“witten”,則提問語“kitten”轉(zhuǎn)換成關(guān)鍵詞“setting”步驟:①sitten(k — s)②settin(i — e)③setting( — g)最少編輯操作次數(shù)為3 ;將提問語“kitten” 一字轉(zhuǎn)換成關(guān)鍵詞“witten”步驟:①witten (k — w)最少編輯操作次數(shù)為1,可見,關(guān)鍵詞“witten”相對于“setting”而言,其與“kitten”的相似度更高,即相似度值更大。若該相似度值符合系統(tǒng)設(shè)置的最優(yōu)值要求,則將“witten”關(guān)鍵詞對應(yīng)的回復(fù)內(nèi)容返回給客戶端。如果在知識(shí)庫中找不到適合的關(guān)鍵詞,則對陌生詞庫進(jìn)行查找。與以上所述的在知識(shí)庫中搜索最優(yōu)值的過程相同,在陌生詞庫中查找是否存在與客戶端提問語最優(yōu)匹配的關(guān)鍵詞,若在陌生詞庫中找到與客戶端提問語相似度大于設(shè)定最低相似值的關(guān)鍵詞(或陌生詞),則在對應(yīng)關(guān)鍵詞的提問次數(shù)上加1,并將默認(rèn)回復(fù)語(如:“提問語為陌生詞”)反饋給客戶端;若在陌生詞庫中查找不到適合的關(guān)鍵詞,就在陌生詞庫中新增一條關(guān)鍵詞,并設(shè)置其的提問次數(shù)為1,并將默認(rèn)回復(fù)語(如:“找不到對應(yīng)關(guān)鍵詞”)反饋給客戶端。進(jìn)一步地,當(dāng)陌生詞庫中的某一關(guān)鍵詞的提問次數(shù)超過某一設(shè)定數(shù)值(跳變值)時(shí),則在知識(shí)庫中錄入該關(guān)鍵詞及其對應(yīng)回復(fù)語,并在陌生詞庫中刪除該關(guān)鍵詞。
[0051]其中,所述步驟S24具體包括:
[0052]若當(dāng)前最大相似度值max的個(gè)數(shù)N為零時(shí),判定所述最大相似度值max中不存在最優(yōu)值,并執(zhí)行所述步驟S3;
[0053]若當(dāng)前最大相似度值max的個(gè)數(shù)N不為零時(shí),判定所述最大相似度值存在最優(yōu)值,且檢測所述知識(shí)庫中是否存儲(chǔ)有在先搜索的最優(yōu)值max_all (即在知識(shí)庫中對相同提問語的前一次搜索中所保存的最優(yōu)值)。
[0054]若所述知識(shí)庫中存儲(chǔ)有在先搜索的最優(yōu)值max_all,則將所述在先搜索的最優(yōu)值max_a 11與當(dāng)前最大相似度值max進(jìn)行比較,若不相等,則將所述在先搜索的最優(yōu)值max_all與所述當(dāng)前最大相似度值max中的較大值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí)(Identity,簡稱ID);若相等,則將所述在先搜索的最優(yōu)值max_all的個(gè)數(shù)M與當(dāng)前最大相似度值max的個(gè)數(shù)N進(jìn)行比較;
[0055]若所述在先搜索的最優(yōu)值max_all的個(gè)數(shù)M大于當(dāng)前最大相似度值max的個(gè)數(shù)N,則將所述在先搜索的最優(yōu)值max_all賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí)(Identity,簡稱ID);若所述在先搜索的最優(yōu)值max_all的個(gè)數(shù)M小于當(dāng)前最大相似度值max的個(gè)數(shù)N,則將所述當(dāng)前最大相似度值賦max為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí)(Identity,簡稱ID);
[0056]將所述最優(yōu)值的標(biāo)識(shí)ID所對應(yīng)的關(guān)鍵詞判定為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端。
[0057]優(yōu)選地,所述知識(shí)庫中的一個(gè)或多個(gè)關(guān)鍵詞對應(yīng)于同一個(gè)回復(fù)語,且每個(gè)所述關(guān)鍵詞之間采用空格分隔符進(jìn)行隔斷后存放在關(guān)鍵詞字段中。
[0058]本發(fā)明實(shí)施例還進(jìn)一步提供了一種基于字符串相似度算法的智能客服搜索系統(tǒng)。
[0059]參看圖3,是本發(fā)明第二實(shí)施例提供的一種基于字符串相似度算法的智能客服搜索系統(tǒng)的結(jié)構(gòu)示意圖。
[0060]本實(shí)施例提供的基于字符串相似度算法的智能客服搜索系統(tǒng),用于根據(jù)客戶端所發(fā)送的搜索請求對數(shù)據(jù)進(jìn)行搜索,所述系統(tǒng)包括智能客服搜索服務(wù)器100、知識(shí)庫200、陌生詞庫300和智能客服管理服務(wù)器400。
[0061]所述智能客服搜索服務(wù)器100,用于接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索;判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端;
[0062]所述智能客服管理服務(wù)器400,在所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì);在所述陌生詞庫中不存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵.
[0063]在本實(shí)施例中,從提問者與回答者的角度去看,客戶端代表提問者,智能客服最優(yōu)匹配搜索系統(tǒng)代表回答者。當(dāng)客戶端通過網(wǎng)站交互系統(tǒng)或通訊平臺(tái)提出問題后,該系統(tǒng)通過智能客服搜索服務(wù)器100處理,對知識(shí)庫200和/或陌生詞庫300進(jìn)行數(shù)據(jù)搜索或更新,并將搜索獲得的最優(yōu)匹配的回復(fù)語反饋給客戶端。
[0064]參看圖4,是本發(fā)明第二實(shí)施例提供的智能客服搜索服務(wù)器的一種結(jié)構(gòu)示意圖。在本實(shí)施例中,所述智能客服搜索服務(wù)器100具體包括:
[0065]數(shù)據(jù)分割器101,用于將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組;特別地,所述數(shù)據(jù)分割器用于:以空格分隔符為區(qū)分標(biāo)志,將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組。
[0066]數(shù)據(jù)處理器102,用于將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值;
[0067]查找記錄器103,用于逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù);
[0068]最優(yōu)匹配器104,用于判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則觸發(fā)所述智能客服管理服務(wù)器對所述陌生詞庫進(jìn)行數(shù)據(jù)處理。
[0069]具體實(shí)施時(shí),所述最優(yōu)匹配器104還用于:
[0070]若當(dāng)前最大相似度值的個(gè)數(shù)為零時(shí),判定所述最大相似度值中不存在最優(yōu)值,并執(zhí)行對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端;
[0071]若當(dāng)前最大相似度值的個(gè)數(shù)不為零時(shí),判定所述最大相似度值存在最優(yōu)值,且檢測所述知識(shí)庫中是否存儲(chǔ)有在先搜索的最優(yōu)值;
[0072]若所述知識(shí)庫中存儲(chǔ)有在先搜索的最優(yōu)值,則將所述在先搜索的最優(yōu)值與當(dāng)前最大相似度值進(jìn)行比較,若不相等,則將所述在先搜索的最優(yōu)值與所述當(dāng)前最大相似度值中的較大值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若相等,則將所述在先搜索的最優(yōu)值的個(gè)數(shù)與當(dāng)前最大相似度值的個(gè)數(shù)進(jìn)行比較;
[0073]若所述在先搜索的最優(yōu)值的個(gè)數(shù)大于當(dāng)前最大相似度值的個(gè)數(shù),則將所述在先搜索的最優(yōu)值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若所述在先搜索的最優(yōu)值的個(gè)數(shù)小于當(dāng)前最大相似度值的個(gè)數(shù),則將所述當(dāng)前最大相似度值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);
[0074]將所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞判定為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端。
[0075]進(jìn)一步地,所述智能客服管理服務(wù)器400還用于:
[0076]判斷與所述搜索請求相匹配的關(guān)鍵詞的提問次數(shù)是否大于跳變值;若是,則將與所述搜索請求相匹配的關(guān)鍵詞以及相應(yīng)的回復(fù)語錄入所述知識(shí)庫中。
[0077]優(yōu)選地,所述知識(shí)庫中的一個(gè)或多個(gè)關(guān)鍵詞對應(yīng)于同一個(gè)回復(fù)語,且每個(gè)所述關(guān)鍵詞之間采用空格分隔符進(jìn)行隔斷后存放在關(guān)鍵詞字段中。
[0078]本發(fā)明提供的基于字符串相似度算法的智能客服搜索方法和系統(tǒng),通過使用人工智能的服務(wù)器和消息搜索與推送引擎,使得用戶在提出問題后更加方便和快速地獲得回復(fù),降低數(shù)據(jù)讀寫次數(shù),節(jié)約系統(tǒng)資源。
[0079]具體地,根據(jù)關(guān)鍵詞的訪問熱度區(qū)分設(shè)置知識(shí)庫和陌生詞庫,降低數(shù)據(jù)查詢數(shù)據(jù)量和讀寫次數(shù),對知識(shí)庫中的關(guān)鍵字進(jìn)行分組后,采用字符串相似度算法在每組關(guān)鍵詞中搜索出與用戶端的提問語具有最大相似度值的關(guān)鍵詞,并在最大相似度值中確定最優(yōu)值及其對應(yīng)的最優(yōu)回復(fù)語;若未在知識(shí)庫中搜索到最優(yōu)值,則對陌生詞庫中進(jìn)行搜索,并在搜索到匹配的關(guān)鍵詞時(shí),對關(guān)鍵詞的提問次數(shù)進(jìn)行累計(jì),在搜索不到匹配的關(guān)鍵詞時(shí),則在陌生詞庫中錄入新的與提問語相匹配的關(guān)鍵詞。通過對知識(shí)庫或陌生詞庫中的關(guān)鍵詞的層層比較,以一種“關(guān)鍵詞分治”的形式搜索出與所述用戶請求最優(yōu)匹配的關(guān)鍵詞,無需設(shè)置數(shù)量繁多的服務(wù)器,從而節(jié)約了數(shù)據(jù)資源并提高了數(shù)據(jù)匹配的準(zhǔn)確度。因此,本發(fā)明提供的基于字符串相似度算法的智能客服搜索方法和系統(tǒng)具有更高的適用性。以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種基于字符串相似度算法的智能客服搜索方法,其特征在于,在知識(shí)庫或陌生詞庫對關(guān)鍵詞進(jìn)行搜索,所述方法包括以下步驟: S1:接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索; 52:判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行步驟S3,具體包括: 521:將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組; 522:將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值; 523:逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù); 524:判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則執(zhí)行步驟S3 ; 53:對所述陌生詞庫 進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端。
2.如權(quán)利要求1所述的基于字符串相似度算法的智能客服搜索方法,其特征在于,所述步驟S24具體包括: 若當(dāng)前最大相似度值的個(gè)數(shù)為零時(shí),判定所述最大相似度值中不存在最優(yōu)值,并執(zhí)行所述步驟S3 ; 若當(dāng)前最大相似度值的個(gè)數(shù)不為零時(shí),判定所述最大相似度值存在最優(yōu)值,且檢測所述知識(shí)庫中是否存儲(chǔ)有在先搜索的最優(yōu)值; 若所述知識(shí)庫中存儲(chǔ)有在先搜索的最優(yōu)值,則將所述在先搜索的最優(yōu)值與當(dāng)前最大相似度值進(jìn)行比較,若不相等,則將所述在先搜索的最優(yōu)值與所述當(dāng)前最大相似度值中的較大值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若相等,則將所述在先搜索的最優(yōu)值的個(gè)數(shù)與當(dāng)前最大相似度值的個(gè)數(shù)進(jìn)行比較; 若所述在先搜索的最優(yōu)值的個(gè)數(shù)大于當(dāng)前最大相似度值的個(gè)數(shù),則將所述在先搜索的最優(yōu)值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若所述在先搜索的最優(yōu)值的個(gè)數(shù)小于當(dāng)前最大相似度值的個(gè)數(shù),則將所述當(dāng)前最大相似度值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí); 將所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞判定為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端。
3.如權(quán)利要求1或2所述的基于字符串相似度算法的智能客服搜索方法,其特征在于,在所述步驟S3中,當(dāng)所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),還包括: 判斷與所述搜索請求相匹配的關(guān)鍵詞的提問次數(shù)是否大于跳變值;若是,則將與所述搜索請求相匹配的關(guān)鍵詞以及相應(yīng)的回復(fù)語錄入所述知識(shí)庫中。
4.如權(quán)利要求3所述的基于字符串相似度算法的智能客服搜索方法,其特征在于,所述知識(shí)庫中的一個(gè)或多個(gè)關(guān)鍵詞對應(yīng)于同一個(gè)回復(fù)語,且每個(gè)所述關(guān)鍵詞之間采用空格分隔符進(jìn)行隔斷后存放在關(guān)鍵詞字段中。
5.如權(quán)利要求4所述的基于字符串相似度算法的智能客服搜索方法,其特征在于,在所述步驟S21中,具體為: 以空格分隔符為區(qū)分標(biāo)志,將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組。
6.一種基于字符串相似度算法的智能客服搜索系統(tǒng),其特征在于,用于根據(jù)客戶端所發(fā)送的搜索請求對數(shù)據(jù)進(jìn)行搜索,所述系統(tǒng)包括智能客服搜索服務(wù)器、知識(shí)庫、陌生詞庫和智能客服管理服務(wù)器; 所述智能客服搜索服務(wù)器,用于接收來自于客戶端的搜索請求,在所述知識(shí)庫中進(jìn)行搜索;判斷所述知識(shí)庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述知識(shí)庫中相匹配的關(guān)鍵詞所對應(yīng)的回復(fù)語反饋至所述客戶端;若不存在,則執(zhí)行對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端; 所述智能客服管理服務(wù)器,在所述陌生詞庫中存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì);在所述陌生詞庫中不存在與所述搜索請求相匹配的關(guān)鍵詞時(shí),用于在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞; 所述智能客服搜索服務(wù)器具體包括: 數(shù)據(jù)分割器,用于將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組; 數(shù)據(jù)處理器,用于將每個(gè)數(shù)組中的所有關(guān)鍵詞與所述搜索請求的提問語進(jìn)行逐一比較,采用字符串相似度算法逐一計(jì)算出所述提問語與每個(gè)所述數(shù)組中所有關(guān)鍵詞的相似度值; 查找記錄器,用于逐一比較所述相似度值與門限值的大小,記錄大于所述門限值的相似度值;在大于所述門限值的相似度值中查找每個(gè)所述數(shù)組中的最大相似度值,并記錄所述最大相似度值在所述知識(shí)庫中所對應(yīng)的標(biāo)識(shí)以及所述最大相似度值的個(gè)數(shù); 最優(yōu)匹配器,用于判斷所述最大相似度值是否存在最優(yōu)值;若存在,則判定所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端;若不存在,則觸發(fā)所述智能客服管理服務(wù)器對所述陌生詞庫進(jìn)行數(shù)據(jù)處理。
7.如權(quán)利要求6所述的基于字符串相似度算法的智能客服搜索系統(tǒng),其特征在于,所述最優(yōu)匹配器還用于: 若當(dāng)前最大相似度值的個(gè)數(shù)為零時(shí),判定所述最大相似度值中不存在最優(yōu)值,并執(zhí)行對所述陌生詞庫進(jìn)行搜索;判斷所述陌生詞庫中是否存在與所述搜索請求相匹配的關(guān)鍵詞,若存在,則將所述關(guān)鍵詞所對應(yīng)的提問次數(shù)進(jìn)行累計(jì),并將默認(rèn)回復(fù)語反饋至所述客戶端;若不存在,則在所述陌生詞庫中新增與所述搜索請求相匹配的關(guān)鍵詞,并將默認(rèn)回復(fù)語反饋至所述客戶端; 若當(dāng)前最大相似度值的個(gè)數(shù)不為零時(shí),判定所述最大相似度值存在最優(yōu)值,且檢測所述知識(shí)庫中是否存儲(chǔ)有在先搜索的最優(yōu)值;若所述知識(shí)庫中存儲(chǔ)有在先搜索的最優(yōu)值,則將所述在先搜索的最優(yōu)值與當(dāng)前最大相似度值進(jìn)行比較,若不相等,則將所述在先搜索的最優(yōu)值與所述當(dāng)前最大相似度值中的較大值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若相等,則將所述在先搜索的最優(yōu)值的個(gè)數(shù)與當(dāng)前最大相似度值的個(gè)數(shù)進(jìn)行比較; 若所述在先搜索的最優(yōu)值的個(gè)數(shù)大于當(dāng)前最大相似度值的個(gè)數(shù),則將所述在先搜索的最優(yōu)值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí);若所述在先搜索的最優(yōu)值的個(gè)數(shù)小于當(dāng)前最大相似度值的個(gè)數(shù),則將所述當(dāng)前最大相似度值賦為當(dāng)前搜索的最優(yōu)值,并記錄所述最優(yōu)值的標(biāo)識(shí); 將所述最優(yōu)值的標(biāo)識(shí)所對應(yīng)的關(guān)鍵詞判定為與所述搜索請求相匹配的關(guān)鍵詞,且將所述相匹配的關(guān)鍵詞在所述知識(shí)庫中所對應(yīng)的回復(fù)語判定為最優(yōu)回復(fù)語并將其反饋至所述客戶端。
8.如權(quán)利要求6或7所述的基于字符串相似度算法的智能客服搜索系統(tǒng),其特征在于,所述智能客服管理服務(wù)器還用于: 判斷與所述搜索請求相匹配的關(guān)鍵詞的提問次數(shù)是否大于跳變值;若是,則將與所述搜索請求相匹配的關(guān)鍵詞以及相應(yīng)的回復(fù)語錄入所述知識(shí)庫中。
9.如權(quán)利要求8所述的基于字符串相似度算法的智能客服搜索系統(tǒng),其特征在于,所述知識(shí)庫中的一個(gè)或多個(gè)關(guān)鍵詞對應(yīng)于 同一個(gè)回復(fù)語,且每個(gè)所述關(guān)鍵詞之間采用空格分隔符進(jìn)行隔斷后存放在關(guān)鍵詞字段中。
10.如權(quán)利要求9所述的基于字符串相似度算法的智能客服搜索系統(tǒng),其特征在于,所述數(shù)據(jù)分割器用于: 以空格分隔符為區(qū)分標(biāo)志,將所述知識(shí)庫中的所有關(guān)鍵詞分割成多個(gè)數(shù)組。
【文檔編號】G06F17/30GK103914570SQ201410171685
【公開日】2014年7月9日 申請日期:2014年4月25日 優(yōu)先權(quán)日:2014年4月25日
【發(fā)明者】陸贊信 申請人:北京中訊愛樂科技有限公司