亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

多輪會話交互方法及裝置與流程

文檔序號:12666540閱讀:290來源:國知局
多輪會話交互方法及裝置與流程

本發(fā)明的實施方式涉及人機(jī)交互領(lǐng)域,更具體地,本發(fā)明的實施方式涉及多輪會話交互方法、多輪會話交互裝置以及計算機(jī)可讀存儲介質(zhì)。



背景技術(shù):

本部分旨在為權(quán)利要求書中陳述的本發(fā)明的實施方式提供背景或上下文。此處的描述不因為包括在本部分中就承認(rèn)是現(xiàn)有技術(shù)。

基于一定的對話規(guī)則,允許人機(jī)進(jìn)行多輪會話,從而讓機(jī)器理解用戶的深層意圖并提供反饋一直是人機(jī)交互領(lǐng)域所努力的方向。

目前,已經(jīng)出現(xiàn)了少許人機(jī)多輪會話方法。典型地,現(xiàn)有技術(shù)中國發(fā)明專利申請CN104408639A公開了一種多輪會話交互方法和系統(tǒng),以實現(xiàn)系統(tǒng)動作具有樹形層次依賴關(guān)系的任務(wù)型會話。該多輪會話交互方法包括:接收用戶需求信息;將所述用戶需求信息向預(yù)置在本地的多個需求結(jié)構(gòu)樹中各節(jié)點包含的標(biāo)準(zhǔn)需求進(jìn)行映射,在所述需求結(jié)構(gòu)樹中,每個節(jié)點包含的標(biāo)準(zhǔn)需求是其子節(jié)點包含的標(biāo)準(zhǔn)需求的上位需求;若所述多個需求結(jié)構(gòu)樹中存在一個節(jié)點,其包含的所述標(biāo)準(zhǔn)需求被所述用戶需求信息命中,則輸出被命中的非葉子節(jié)點的子節(jié)點包含的標(biāo)準(zhǔn)需求內(nèi)容,或者輸出被命中的葉子節(jié)點對應(yīng)的會話信息。據(jù)專利申請文件記載,該專利申請的技術(shù)方案不僅實現(xiàn)了有樹形層次依賴關(guān)系的任務(wù)型會話任務(wù)交互,而且提高了標(biāo)準(zhǔn)需求被命中的可能性。

然而,專利申請CN104408639A公開的技術(shù)方案存在著明顯的不足。該技術(shù)方案中業(yè)務(wù)(即“需求”)與算法過于耦合,同樣的算法難以應(yīng)用于多個不同的業(yè)務(wù),編程人員需要針對不同的業(yè)務(wù)花費(fèi)大量編程時間。例如其中的關(guān)鍵環(huán)節(jié)“需求結(jié)構(gòu)樹”需要根據(jù)業(yè)務(wù)定制構(gòu)建。為實現(xiàn)多輪會話,需要針對不同的業(yè)務(wù)分別構(gòu)建不同的算法,這使得該種多輪會話交互方法難以大規(guī)模應(yīng)用。



技術(shù)實現(xiàn)要素:

由于現(xiàn)有技術(shù)中業(yè)務(wù)(即“需求”)與算法過于耦合,同樣的算法難以應(yīng)用于多個不同的業(yè)務(wù),編程人員需要針對不同的業(yè)務(wù)花費(fèi)大量編程時間,因此,現(xiàn)有技術(shù)很難實現(xiàn)拓展以及規(guī)?;瘧?yīng)用。

在現(xiàn)有技術(shù)中,必須根據(jù)不同的業(yè)務(wù)逐個定制算法,以盡可能實現(xiàn)多輪次的人機(jī)會話,這是非常令本領(lǐng)域技術(shù)人員煩惱的過程。

為此,非常需要一種新的多輪會話交互技術(shù)方案,以使多輪會話交互技術(shù)具備可拓展性,提高多輪會話的構(gòu)建效率,從而實現(xiàn)多輪會話交互技術(shù)的規(guī)?;瘧?yīng)用。

在本上下文中,本發(fā)明的實施方式期望提供一種多輪會話交互方法、裝置以及計算機(jī)可讀存儲介質(zhì)。

在本發(fā)明實施方式的第一方面中,提供了一種多輪會話交互方法,該方法包括:接收終端用戶需求信息;根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù);調(diào)用所述目標(biāo)函數(shù);獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

在本發(fā)明的一個實施例中,該多輪會話交互方法還包括:當(dāng)調(diào)用第N級關(guān)聯(lián)函數(shù)時,獲取所述第N級關(guān)聯(lián)函數(shù)的第N+1級關(guān)聯(lián)函數(shù),并獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第二觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第二觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第N+1級關(guān)聯(lián)函數(shù),其中,N為自然數(shù)。

在本發(fā)明的另一實施例中,該多輪會話交互方法還包括:根據(jù)終端用戶需求信息提取所述目標(biāo)函數(shù)的參數(shù)信息,如果終端用戶需求信息中缺少所述目標(biāo)函數(shù)的參數(shù)信息,則獲取所述目標(biāo)函數(shù)對應(yīng)的第一參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第一參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第一參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的該目標(biāo)函數(shù)的參數(shù)信息。

在本發(fā)明的又一個實施例中,該多輪會話交互方法還包括:根據(jù)終端用戶需求信息和N級關(guān)聯(lián)函數(shù)的處理結(jié)果,提取所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,如果終端用戶需求信息和N級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,則獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第二參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第二參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息。

優(yōu)選地,所述函數(shù)具有統(tǒng)一的定義規(guī)范。

更優(yōu)選地,所述統(tǒng)一的定義規(guī)范包括:所述函數(shù)本身、所述函數(shù)的觸發(fā)表達(dá)以及所述函數(shù)的參數(shù)獲取表達(dá)。

在本發(fā)明的再一個實施例中,該多輪會話交互方法還包括:通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。

優(yōu)選地,所述可視化編程的方式包括:在可視化編程界面中,響應(yīng)于連接線的拖拽操作,建立函數(shù)之間的關(guān)聯(lián)關(guān)系。

在本發(fā)明實施方式的第二方面中,提供了一種多輪會話交互裝置,包括:接收模塊,用于接收終端用戶需求信息;判斷模塊,用于根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù);調(diào)用模塊,用于調(diào)用所述目標(biāo)函數(shù);獲取模塊,用于獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá);第一關(guān)聯(lián)模塊,用于向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

在本發(fā)明的一個實施例中,該多輪會話交互裝置還包括:第二關(guān)聯(lián)模塊,用于當(dāng)調(diào)用第N級關(guān)聯(lián)函數(shù)時,獲取所述第N級關(guān)聯(lián)函數(shù)的第N+1級關(guān)聯(lián)函數(shù),并獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第二觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第二觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第N+1級關(guān)聯(lián)函數(shù),其中,N為自然數(shù)。

在本發(fā)明的另一個實施例中,該多輪會話交互裝置還包括:第一參數(shù)模塊,用于根據(jù)終端用戶需求信息提取所述目標(biāo)函數(shù)的參數(shù)信息,如果終端用戶需求信息中缺少所述目標(biāo)函數(shù)的參數(shù)信息,則獲取所述目標(biāo)函數(shù)對應(yīng)的第一參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第一參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第一參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的該目標(biāo)函數(shù)的參數(shù)信息。

在本發(fā)明的又一個實施例中,該多輪會話交互裝置還包括:第二參數(shù)模塊,用于根據(jù)終端用戶需求信息和N級關(guān)聯(lián)函數(shù)的處理結(jié)果,提取所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,如果終端用戶需求信息和N級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,則獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第二參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第二參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息。

優(yōu)選地,所述函數(shù)具有統(tǒng)一的定義規(guī)范。

更優(yōu)選地,所述統(tǒng)一的定義規(guī)范包括:所述函數(shù)本身、所述函數(shù)的觸發(fā)表達(dá)以及所述函數(shù)的參數(shù)獲取表達(dá)。

在本發(fā)明的再一個實施例中,該多輪會話交互裝置還包括:設(shè)置關(guān)聯(lián)關(guān)系模塊,用于通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。

優(yōu)選地,所述設(shè)置關(guān)聯(lián)關(guān)系模塊包括:拖拽子模塊,用于在可視化編程界面中,響應(yīng)于連接線的拖拽操作,建立函數(shù)之間的關(guān)聯(lián)關(guān)系。

在本發(fā)明實施方式的第三方面中,提供了一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,該程序被處理器執(zhí)行時實現(xiàn)下述步驟:接收終端用戶需求信息;根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù);調(diào)用所述目標(biāo)函數(shù);獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

根據(jù)本發(fā)明實施方式的多輪會話交互方法、多輪會話交互裝置以及計算機(jī)可讀存儲介質(zhì),通過將不同的業(yè)務(wù)關(guān)聯(lián)起來,實現(xiàn)了自定義的多業(yè)務(wù)組合;通過統(tǒng)一的函數(shù)定義規(guī)范去除了現(xiàn)有技術(shù)中業(yè)務(wù)與算法的高度耦合,從而實現(xiàn)了多輪會話交互技術(shù)的大規(guī)模、多場景應(yīng)用,極大地提高了多輪會話的構(gòu)建效率,將多輪會話交互技術(shù)提升到了一個新的高度。

附圖說明

通過參考附圖閱讀下文的詳細(xì)描述,本發(fā)明示例性實施方式的上述以及其他目的、特征和優(yōu)點將變得易于理解。在附圖中,以示例性而非限制性的方式示出了本發(fā)明的若干實施方式,其中:

圖1示意性地示出了根據(jù)本發(fā)明實施方式的可以在其中實現(xiàn)的應(yīng)用場景;

圖2示意性地示出了根據(jù)本發(fā)明一實施例的多輪會話交互方法的流程圖;以及

圖3示意性地示出了根據(jù)本發(fā)明一實施例的多輪會話交互裝置的結(jié)構(gòu)示意圖。

在附圖中,相同或?qū)?yīng)的標(biāo)號表示相同或?qū)?yīng)的部分。

具體實施方式

下面將參考若干示例性實施方式來描述本發(fā)明的原理和精神。應(yīng)當(dāng)理解,給出這些實施方式僅僅是為了使本領(lǐng)域技術(shù)人員能夠更好地理解進(jìn)而實現(xiàn)本發(fā)明,而并非以任何方式限制本發(fā)明的范圍。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。

本領(lǐng)域技術(shù)技術(shù)人員知道,本發(fā)明的實施方式可以實現(xiàn)為一種系統(tǒng)、裝置、設(shè)備、方法或計算機(jī)程序產(chǎn)品。因此,本公開可以具體實現(xiàn)為以下形式,即:完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等),或者硬件和軟件結(jié)合的形式。

根據(jù)本發(fā)明的實施方式,提出了一種多輪會話交互方法和多輪會話交互裝置。

在本文中,需要理解的是,所涉及的術(shù)語業(yè)務(wù)在一定環(huán)境下可以等同于人機(jī)對話領(lǐng)域的服務(wù)、需求以及功能等術(shù)語。此外,附圖中的任何元素數(shù)量均用于示例而非限制,以及任何命名都僅用于區(qū)分,而不具有任何限制含義。

下面參考本發(fā)明的若干代表性實施方式,詳細(xì)闡釋本發(fā)明的原理和精神。

本發(fā)明人發(fā)現(xiàn),在人機(jī)交互領(lǐng)域,現(xiàn)有技術(shù)存在著很多不足?,F(xiàn)有技術(shù)方案中業(yè)務(wù)(即“需求”)與算法過于耦合,同樣的算法難以應(yīng)用于多個不同的業(yè)務(wù),編程人員需要針對不同的業(yè)務(wù)花費(fèi)大量編程時間。例如現(xiàn)有技術(shù)中的關(guān)鍵環(huán)節(jié)“需求結(jié)構(gòu)樹”需要根據(jù)業(yè)務(wù)定制構(gòu)建。為實現(xiàn)多輪會話,需要針對不同的業(yè)務(wù)分別構(gòu)建不同的算法,這使得該種多輪會話交互方法難以大規(guī)模應(yīng)用。

為此,非常需要一種新的多輪會話交互技術(shù)方案,以使多輪會話交互技術(shù)具備可拓展性,提高多輪會話的構(gòu)建效率,從而實現(xiàn)多輪會話交互技術(shù)的規(guī)?;瘧?yīng)用。為實現(xiàn)此目的,本發(fā)明實施方式通過將不同的業(yè)務(wù)關(guān)聯(lián)起來,實現(xiàn)了自定義的多業(yè)務(wù)組合;本發(fā)明設(shè)置統(tǒng)一的函數(shù)定義規(guī)范去除了現(xiàn)有技術(shù)中業(yè)務(wù)與算法的高度耦合,從而實現(xiàn)了多輪會話交互技術(shù)的大規(guī)模、多場景應(yīng)用,極大地提高了多輪會話的構(gòu)建效率,將多輪會話交互技術(shù)提升到了一個新的高度。

在介紹了本發(fā)明的基本原理之后,下面具體介紹本發(fā)明的各種非限制性實施方式。

應(yīng)用場景總覽

首先參考圖1,示意性地示出了根據(jù)本發(fā)明實施方式在手機(jī)上實現(xiàn)的應(yīng)用場景。

圖1中,終端用戶在利用例如手機(jī)終端這樣的智能終端進(jìn)行人機(jī)交互。終端用戶通過語音或文字輸入需求信息后,手機(jī)終端通過訪問服務(wù)器或本地數(shù)據(jù)庫針對終端用戶輸入的需求信息進(jìn)行響應(yīng)。手機(jī)終端也能夠根據(jù)終端用戶輸入的需求信息輸出有關(guān)信息對終端用戶進(jìn)行引導(dǎo)。通過多輪次的信息交互,滿足終端用戶獲取目標(biāo)信息的需求。本發(fā)明不對智能終端的具體表現(xiàn)形式進(jìn)行限定,該智能終端可以表現(xiàn)為臺式計算機(jī)、筆記本電腦、手機(jī)、車載導(dǎo)航儀、智能手表等多種類型的智能終端。

示例性方法

下面結(jié)合圖1的應(yīng)用場景,參考圖2來描述根據(jù)本發(fā)明示例性實施方式的多輪會話交互方法。需要注意的是,上述應(yīng)用場景僅是為了便于理解本發(fā)明的精神和原理而示出,本發(fā)明的實施方式在此方面不受任何限制。相反,本發(fā)明的實施方式可以應(yīng)用于適用的任何場景。

圖2為本發(fā)明提供的多輪會話交互方法的一個實施例的方法流程圖,該方法的執(zhí)行主體可以是具有多輪會話功能的交互裝置。如圖2所示,該多輪會話交互方法具體可以包括:

S210,接收終端用戶需求信息。

需求信息本質(zhì)上是終端用戶輸入的信息,需求信息可以是各種形式的,例如,語音、文字以及圖片等中的一種或多種。作為示例,需求信息可能是終端用戶輸入的文字信息“幫我查下附近的酒店”,需求信息可能是終端用戶輸入的一幅圖像,也可能是終端用戶輸入的一段語音。

S220,根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù)。

以終端用戶輸入的文字信息“幫我查下附近的酒店”為例,在接收終端用戶需求信息“幫我查下附近的酒店”后,分析終端用戶的意圖以及根據(jù)該意圖判斷對應(yīng)的目標(biāo)函數(shù)。

根據(jù)終端用戶輸入的需求信息分析終端用戶的意圖(意圖分析,intention recognition)的實現(xiàn)方式可以有多種,本發(fā)明對此不進(jìn)行限定。例如,本發(fā)明中分析終端用戶的意圖可以通過深度學(xué)習(xí)實現(xiàn),也可以通過語義分析實現(xiàn),也可以通過其他任何意圖分析技術(shù)實現(xiàn)。

在分析需求信息“幫我查下附近的酒店”后,可以確定終端用戶意圖是“附近的酒店”。根據(jù)該終端用戶意圖,匹配與之對應(yīng)的目標(biāo)函數(shù),比如,酒店函數(shù)。其中,酒店函數(shù)可以是預(yù)先設(shè)定好的。具體的匹配方法可以是多樣的,可以根據(jù)終端用戶意圖“附近的酒店”進(jìn)行整體關(guān)聯(lián),也可以根據(jù)終端用戶意圖“附近的酒店”中的部分信息(例如,“酒店”)進(jìn)行關(guān)聯(lián)。

S230,調(diào)用所述目標(biāo)函數(shù)。

步驟S220中已經(jīng)確定了目標(biāo)函數(shù),即酒店函數(shù)。本步驟中,根據(jù)終端用戶需求信息和/或終端用戶意圖運(yùn)行確定了的目標(biāo)函數(shù)。以需求信息“幫我查下附近的酒店”和終端用戶意圖“附近的酒店”為例,酒店函數(shù)將據(jù)此執(zhí)行并調(diào)用相關(guān)酒店數(shù)據(jù)庫中的信息并輸出相關(guān)信息呈現(xiàn)給終端用戶,作為示例,輸出的相關(guān)信息可以是“最近的酒店是漢皇大酒店,位于新北區(qū)南浦路30號,聯(lián)系電話099-56450000”。相關(guān)信息呈現(xiàn)方式可以是語音、文字、圖片等一種或多種形式,本發(fā)明對此不進(jìn)行限定。

S240,獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá)。

其中,關(guān)聯(lián)函數(shù)是與目標(biāo)函數(shù)具有相關(guān)性的函數(shù)。這種相關(guān)性可以是人為設(shè)置的,也就是說目標(biāo)函數(shù)所對應(yīng)的關(guān)聯(lián)函數(shù)是可以任意設(shè)定的。

在S230中,目標(biāo)函數(shù)酒店函數(shù)運(yùn)行并輸出了相關(guān)信息“最近的酒店是漢皇大酒店,位于新北區(qū)南浦路30號,聯(lián)系電話099-56450000”。

例如,酒店函數(shù)的第1級關(guān)聯(lián)函數(shù)可以是撥號函數(shù)。雖然終端用戶沒有明確需要撥號預(yù)定酒店,但考慮到終端用戶有這種潛在需求,可以獲取該撥號函數(shù),并獲取該撥號函數(shù)對應(yīng)的觸發(fā)表達(dá)。作為示例,該觸發(fā)表達(dá)可以是“是否需要撥打酒店聯(lián)系電話?”

S250,向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

在步驟S240中,已經(jīng)獲取了目標(biāo)函數(shù)酒店函數(shù)的第1級關(guān)聯(lián)函數(shù)及其對應(yīng)的觸發(fā)表達(dá)。本步驟中,向終端用戶發(fā)送觸發(fā)表達(dá),以確定終端用戶是否需要這種潛在需求。以終端用戶需要撥號預(yù)定酒店這一潛在需求為例,可以向終端用戶發(fā)送觸發(fā)表達(dá)“是否需要撥打酒店聯(lián)系電話?”,如果終端用戶給出了肯定答復(fù)則調(diào)用撥號函數(shù),撥出酒店號碼“099-56450000”;否則不調(diào)用。

在本發(fā)明的一個實施方式中,本實施例還可以有步驟S310(未示出):

S310:當(dāng)調(diào)用第N級關(guān)聯(lián)函數(shù)時,獲取所述第N級關(guān)聯(lián)函數(shù)的第N+1級關(guān)聯(lián)函數(shù),并獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第二觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第二觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第N+1級關(guān)聯(lián)函數(shù),其中,N為自然數(shù)。

其中,第N級關(guān)聯(lián)函數(shù)是與第N+1級關(guān)聯(lián)函數(shù)具有相關(guān)性的函數(shù)。這種相關(guān)性可以是人為設(shè)置的,也就是說第N級關(guān)聯(lián)函數(shù)所對應(yīng)的關(guān)聯(lián)函數(shù)是可以任意設(shè)定的。

繼續(xù)以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。在終端用戶對觸發(fā)表達(dá)“是否需要撥打酒店聯(lián)系電話?”給予肯定答復(fù)并調(diào)用撥號函數(shù)時,可以獲取該第1級關(guān)聯(lián)函數(shù)撥號函數(shù)的第2級關(guān)聯(lián)函數(shù),并獲取該第2級關(guān)聯(lián)函數(shù)對應(yīng)的觸發(fā)表達(dá)。

作為示例,該第2級關(guān)聯(lián)函數(shù)可以是導(dǎo)航函數(shù);該第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)對應(yīng)的觸發(fā)表達(dá)可以是“是否需要從當(dāng)前位置至酒店的導(dǎo)航路線?”。

向終端用戶發(fā)送觸發(fā)表達(dá)“是否需要從當(dāng)前位置至酒店的導(dǎo)航路線?”以確定終端用戶是否需要這種潛在需求。如果終端用戶給出了肯定答復(fù)則調(diào)用第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù),呈現(xiàn)從終端用戶所在的當(dāng)前位置至酒店的導(dǎo)航路線。

依此規(guī)律,在調(diào)用第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)時,可以獲取第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的第3級關(guān)聯(lián)函數(shù),并獲取該第3級關(guān)聯(lián)函數(shù)的觸發(fā)表達(dá)。作為示例,該第3級關(guān)聯(lián)函數(shù)可以是娛樂函數(shù);該第3級關(guān)聯(lián)函數(shù)娛樂函數(shù)對應(yīng)的觸發(fā)表達(dá)可以是“是否需要了解酒店附近的娛樂場所?”。向終端用戶發(fā)送該觸發(fā)表達(dá)并獲得終端用戶肯定答復(fù)后,調(diào)用該第3級關(guān)聯(lián)函數(shù)娛樂函數(shù),將酒店周邊的娛樂場所信息呈現(xiàn)給終端用戶。

依此規(guī)律,可以繼續(xù)上述步驟,直至終端用戶停止會話。

在本發(fā)明的一個實施方式中,本實施例還可以有步驟S410(未示出):

S410:根據(jù)終端用戶需求信息提取所述目標(biāo)函數(shù)的參數(shù)信息,如果終端用戶需求信息中缺少所述目標(biāo)函數(shù)的參數(shù)信息,則獲取所述目標(biāo)函數(shù)對應(yīng)的第一參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第一參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第一參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的該目標(biāo)函數(shù)的參數(shù)信息。

很多時候,終端用戶給出的需求信息是零散的、不全面的。這個時候盡管能夠分析出終端用戶的意圖和實際需求,但仍難以給出符合終端用戶實際需要的準(zhǔn)確信息。因此,有必要向終端用戶確認(rèn)有關(guān)信息。

繼續(xù)以以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。盡管確定了終端用戶意圖是“附近的酒店”,但實際生活中,附近可能有多家星級不同的酒店。為準(zhǔn)確判斷終端用戶的需求層次,也為了提高會話效率,可以在酒店函數(shù)中設(shè)置星級參數(shù),從而過濾掉部分酒店信息。由于終端用戶沒有輸入任何有關(guān)酒店星級的信息,則可以獲取并向終端用戶發(fā)送酒店函數(shù)對應(yīng)的參數(shù)獲取表達(dá)“請問您需要查詢幾星級的酒店?”。隨后,可以根據(jù)終端用戶針對該參數(shù)獲取表達(dá)的回應(yīng),從中獲取酒店函數(shù)的星級參數(shù)信息。

在本發(fā)明的一個實施方式中,本實施例還可以有步驟S510(未示出):

S510:根據(jù)終端用戶需求信息和第N級關(guān)聯(lián)函數(shù)的處理結(jié)果,提取所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,如果終端用戶需求信息和第N級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,則獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第二參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第二參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息。

其中,在本發(fā)明中,當(dāng)N為0時,該N級關(guān)聯(lián)函數(shù)即為目標(biāo)函數(shù)。

繼續(xù)以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)可以設(shè)置有交通工具參數(shù)。第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息可以從終端用戶需求信息“幫我查下附近的酒店”和第1級關(guān)聯(lián)函數(shù)撥號函數(shù)的處理結(jié)果中獲取。由于第1級關(guān)聯(lián)函數(shù)撥號函數(shù)只有“電話已撥通”和“電話未撥通”兩種處理結(jié)果,因此終端用戶需求信息“幫我查下附近的酒店”和第1級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息。

此時,可以獲取第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)對應(yīng)的參數(shù)獲取表達(dá)“您打算以哪種交通工具前往酒店?”并向終端用戶發(fā)送,然后從終端用戶的回應(yīng)中獲取該缺少的第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息。

在本實施例中,目標(biāo)函數(shù)和第N級關(guān)聯(lián)函數(shù)(統(tǒng)稱為“函數(shù)”)都可以具有統(tǒng)一的函數(shù)定義規(guī)范。優(yōu)選地,這種統(tǒng)一的函數(shù)定義規(guī)范包括:函數(shù)本體、函數(shù)的觸發(fā)表達(dá)以及函數(shù)的參數(shù)獲取表達(dá)。此處,為說明之便,與函數(shù)相連的觸發(fā)表達(dá)、參數(shù)獲取表達(dá)可以理解為函數(shù)定義規(guī)范的一部分,盡管在理論上,與函數(shù)相連的觸發(fā)表達(dá)、參數(shù)獲取表達(dá)并不屬于函數(shù)的一部分。

例如,統(tǒng)一的函數(shù)定義規(guī)范可以如下:

//觸發(fā)表達(dá)

//參數(shù)獲取表達(dá)(如有參數(shù))

函數(shù)(類型1參數(shù)a,類型2參數(shù)b,...){

函數(shù)執(zhí)行主體;

返回數(shù)據(jù)結(jié)構(gòu)體(如有);

}

為方便說明,此處“//”并不是注釋語言,而是說明與函數(shù)相連的觸發(fā)表達(dá)和參數(shù)獲取表達(dá)(如有參數(shù))。

以導(dǎo)航業(yè)務(wù)為例,所需的一個參數(shù)信息可以是指定地點,函數(shù)執(zhí)行主體則會給出到指定地點的導(dǎo)航路徑。其中,觸發(fā)表達(dá)可以為“是否需要導(dǎo)航到這里?”;參數(shù)獲取表達(dá)可以為“請問是要去什么地方?”。

統(tǒng)一的函數(shù)定義規(guī)范解放了函數(shù)開發(fā)人員,借此函數(shù)開發(fā)人員不需要針對不同的業(yè)務(wù)分別構(gòu)建不同的算法。從而,本發(fā)明克服了現(xiàn)有技術(shù)中業(yè)務(wù)與算法高度耦合的重大缺陷,使得業(yè)務(wù)人員能夠?qū)W⒂跇I(yè)務(wù)邏輯的開發(fā)與定制、函數(shù)開發(fā)人員能夠?qū)W⒂趦?yōu)化函數(shù)規(guī)范本身。簡而言之,專業(yè)的人做專業(yè)的事使得人機(jī)對話的效率和質(zhì)量由此得以提升到新的高度。

在本發(fā)明的一個實施方式中,本實施例還可以有步驟S610(未示出):

S610:通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。

在本實施例中,可以通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。簡言之,也就是函數(shù)之間的關(guān)聯(lián)關(guān)系。

如前文所述,目標(biāo)函數(shù)和第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系可以是人為設(shè)定的,第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系也可以是人為設(shè)定的。這樣做的好處是,可以實現(xiàn)多輪會話的自定義業(yè)務(wù)組合。也就是說,業(yè)務(wù)人員以及函數(shù)開發(fā)人員可以根據(jù)業(yè)務(wù)需要在不同函數(shù)之間建立關(guān)聯(lián)關(guān)系,從而實現(xiàn)了多輪會話的擴(kuò)展應(yīng)用。作為一種優(yōu)選方案,在不同函數(shù)之間建立關(guān)聯(lián)關(guān)系可以通過可視化編程的方式實現(xiàn)。這里的“可視”,指的是無須編程,僅通過直觀的操作方式即可完成界面的設(shè)計、建立不同函數(shù)之間的關(guān)聯(lián)關(guān)系??梢暬幊痰幕局R為相關(guān)領(lǐng)域技術(shù)人員所熟知,本文對此不再贅述。

作為一種更優(yōu)選的方案,通過可視化編程的方式實現(xiàn)不同函數(shù)之間建立關(guān)聯(lián)關(guān)系可以在可視化編程界面中通過拖拽連接線等類似的操作,將函數(shù)之間的關(guān)聯(lián)關(guān)系建立起來。

優(yōu)選的,可以由函數(shù)開發(fā)人員(例如編程人員)按照上述統(tǒng)一的函數(shù)定義規(guī)范開發(fā)和提供函數(shù),由智能會話服務(wù)方將符合統(tǒng)一函數(shù)定義規(guī)范的函數(shù)提供給企業(yè)客戶(如上文中的業(yè)務(wù)人員)使用,由企業(yè)客戶根據(jù)自己的業(yè)務(wù)需求、選擇合適的函數(shù),并根據(jù)實際業(yè)務(wù)需求采用上述可視化編程的方式建立函數(shù)之間的關(guān)聯(lián)關(guān)系、定制符合業(yè)務(wù)需要的業(yè)務(wù)邏輯,智能會話服務(wù)方根據(jù)企業(yè)客戶定制的函數(shù)關(guān)聯(lián)關(guān)系,向企業(yè)客戶的終端用戶提供智能會話服務(wù),根據(jù)終端終端用戶的請求、為終端終端用戶提供智能會話服務(wù)。

優(yōu)選的,所述目標(biāo)函數(shù)可以有一個以上的第1級關(guān)聯(lián)函數(shù)、以及所述第N級關(guān)聯(lián)函數(shù)可以有一個以上的第N+1級關(guān)聯(lián)函數(shù),即目標(biāo)函數(shù)可以有多個第1級關(guān)聯(lián)函數(shù),第N級關(guān)聯(lián)函數(shù)可以有多個第N+1級關(guān)聯(lián)函數(shù);在這種情況下,系統(tǒng)判斷目標(biāo)函數(shù)有多個第1級關(guān)聯(lián)函數(shù)的情況下,可以將該多個第1級關(guān)聯(lián)函數(shù)分別對應(yīng)的觸發(fā)表達(dá)發(fā)送給終端用戶,由終端用戶進(jìn)行選擇,選擇其中一個或多個第1級關(guān)聯(lián)函數(shù)進(jìn)行觸發(fā);同理,系統(tǒng)判斷第N級關(guān)聯(lián)函數(shù)有多個第N+1級關(guān)聯(lián)函數(shù)的情況下,可以將該多個第N+1級關(guān)聯(lián)函數(shù)的情況下分別對應(yīng)的觸發(fā)表達(dá)發(fā)送給終端用戶,由終端用戶進(jìn)行選擇,選擇其中一個或多個第N+1級關(guān)聯(lián)函數(shù)進(jìn)行觸發(fā)。

示例性設(shè)備

在介紹了本發(fā)明示例性實施方式的方法之后,接下來,參考圖3對本發(fā)明示例性實施方式的多輪會話交互裝置進(jìn)行說明。

本發(fā)明一實施例的多輪會話交互裝置主要包括:接收模塊,用于接收終端用戶需求信息;判斷模塊,用于根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù);調(diào)用模塊,用于調(diào)用所述目標(biāo)函數(shù);獲取模塊,用于獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá);第一關(guān)聯(lián)模塊,用于向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。此外,該裝置還可以包括第二關(guān)聯(lián)模塊、第一參數(shù)模塊、第二參數(shù)模塊以及設(shè)置關(guān)聯(lián)關(guān)系模塊中的一個或多個。

如圖3所示,該多輪會話交互裝置主要包括:

接收模塊710,用于接收終端用戶需求信息。

需求信息本質(zhì)上是終端用戶輸入的信息,需求信息可以是各種形式的,例如,語音、文字以及圖片等中的一種或多種。作為示例,需求信息可能是終端用戶輸入的文字信息“幫我查下附近的酒店”,需求信息可能是終端用戶輸入的一幅圖像,也可能是終端用戶輸入的一段語音。

判斷模塊720,用于根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù)。

以終端用戶輸入的文字信息“幫我查下附近的酒店”為例,在接收終端用戶需求信息“幫我查下附近的酒店”后,分析終端用戶的意圖以及根據(jù)該意圖判斷對應(yīng)的目標(biāo)函數(shù)。

根據(jù)終端用戶輸入的需求信息分析終端用戶的意圖(意圖分析,intention recognition)的實現(xiàn)方式可以有多種,本發(fā)明對此不進(jìn)行限定。例如,本發(fā)明中分析終端用戶的意圖可以通過深度學(xué)習(xí)實現(xiàn),也可以通過語義分析實現(xiàn),也可以通過其他任何意圖分析技術(shù)實現(xiàn)。

在分析需求信息“幫我查下附近的酒店”后,可以確定終端用戶意圖是“附近的酒店”。根據(jù)該終端用戶意圖,匹配與之對應(yīng)的目標(biāo)函數(shù),比如,酒店函數(shù)。其中,酒店函數(shù)可以是預(yù)先設(shè)定好的。具體的匹配方法可以是多樣的,可以根據(jù)終端用戶意圖“附近的酒店”進(jìn)行整體關(guān)聯(lián),也可以根據(jù)終端用戶意圖“附近的酒店”中的部分信息(例如,“酒店”)進(jìn)行關(guān)聯(lián)。

調(diào)用模塊730,用于調(diào)用所述目標(biāo)函數(shù)。

判斷模塊720中已經(jīng)確定了目標(biāo)函數(shù),即酒店函數(shù)。在本模塊中,根據(jù)終端用戶需求信息和/或終端用戶意圖運(yùn)行確定了的目標(biāo)函數(shù)。以需求信息“幫我查下附近的酒店”和終端用戶意圖“附近的酒店”為例,酒店函數(shù)將據(jù)此執(zhí)行并調(diào)用相關(guān)酒店數(shù)據(jù)庫中的信息并輸出相關(guān)信息呈現(xiàn)給終端用戶,作為示例,輸出的相關(guān)信息可以是“最近的酒店是漢皇大酒店,位于新北區(qū)南浦路30號,聯(lián)系電話099-56450000”。相關(guān)信息呈現(xiàn)方式可以是語音、文字、圖片等一種或多種形式,本發(fā)明對此不進(jìn)行限定。

獲取模塊740,用于獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá)。

其中,關(guān)聯(lián)函數(shù)是與目標(biāo)函數(shù)具有相關(guān)性的函數(shù)。這種相關(guān)性可以是人為設(shè)置的,也就是說目標(biāo)函數(shù)所對應(yīng)的關(guān)聯(lián)函數(shù)是可以任意設(shè)定的。

在調(diào)用模塊730中,目標(biāo)函數(shù)酒店函數(shù)運(yùn)行并輸出了相關(guān)信息“最近的酒店是漢皇大酒店,位于新北區(qū)南浦路30號,聯(lián)系電話099-56450000”。

例如,酒店函數(shù)的第1級關(guān)聯(lián)函數(shù)可以是撥號函數(shù)。雖然終端用戶沒有明確需要撥號預(yù)定酒店,但考慮到終端用戶有這種潛在需求,可以獲取該撥號函數(shù),并獲取該撥號函數(shù)對應(yīng)的觸發(fā)表達(dá)。作為示例,該觸發(fā)表達(dá)可以是“是否需要撥打酒店聯(lián)系電話?”

第一關(guān)聯(lián)模塊750,用于向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

在獲取模塊740中,已經(jīng)獲取了目標(biāo)函數(shù)酒店函數(shù)的第1級關(guān)聯(lián)函數(shù)及其對應(yīng)的觸發(fā)表達(dá)。在本模塊中,向終端用戶發(fā)送觸發(fā)表達(dá),以確定終端用戶是否需要這種潛在需求。以終端用戶需要撥號預(yù)定酒店這一潛在需求為例,可以向終端用戶發(fā)送觸發(fā)表達(dá)“是否需要撥打酒店聯(lián)系電話?”,如果終端用戶給出了肯定答復(fù)則調(diào)用撥號函數(shù),撥出酒店號碼“099-56450000”;否則不調(diào)用。

在本發(fā)明的一個實施方式中,本實施例還可以有第二關(guān)聯(lián)模塊810:

第二關(guān)聯(lián)模塊810,用于當(dāng)調(diào)用第N級關(guān)聯(lián)函數(shù)時,獲取所述第N級關(guān)聯(lián)函數(shù)的第N+1級關(guān)聯(lián)函數(shù),并獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二觸發(fā)表達(dá);向所述終端用戶發(fā)送所述第二觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第二觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第N+1級關(guān)聯(lián)函數(shù),其中,N為自然數(shù)。

其中,第N級關(guān)聯(lián)函數(shù)是與第N+1級關(guān)聯(lián)函數(shù)具有相關(guān)性的函數(shù)。這種相關(guān)性可以是人為設(shè)置的,也就是說第N級關(guān)聯(lián)函數(shù)所對應(yīng)的關(guān)聯(lián)函數(shù)是可以任意設(shè)定的。

繼續(xù)以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。在終端用戶對觸發(fā)表達(dá)“是否需要撥打酒店聯(lián)系電話?”給予肯定答復(fù)并調(diào)用撥號函數(shù)時,可以獲取該第1級關(guān)聯(lián)函數(shù)撥號函數(shù)的第2級關(guān)聯(lián)函數(shù),并獲取該第2級關(guān)聯(lián)函數(shù)對應(yīng)的觸發(fā)表達(dá)。

作為示例,該第2級關(guān)聯(lián)函數(shù)可以是導(dǎo)航函數(shù);該第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)對應(yīng)的觸發(fā)表達(dá)可以是“是否需要從當(dāng)前位置至酒店的導(dǎo)航路線?”。

向終端用戶發(fā)送觸發(fā)表達(dá)“是否需要從當(dāng)前位置至酒店的導(dǎo)航路線?”以確定終端用戶是否需要這種潛在需求。如果終端用戶給出了肯定答復(fù)則調(diào)用第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù),呈現(xiàn)從終端用戶所在的當(dāng)前位置至酒店的導(dǎo)航路線。

依此規(guī)律,在調(diào)用第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)時,可以獲取第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的第3級關(guān)聯(lián)函數(shù),并獲取該第3級關(guān)聯(lián)函數(shù)的觸發(fā)表達(dá)。作為示例,該第3級關(guān)聯(lián)函數(shù)可以是娛樂函數(shù);該第3級關(guān)聯(lián)函數(shù)娛樂函數(shù)對應(yīng)的觸發(fā)表達(dá)可以是“是否需要了解酒店附近的娛樂場所?”。向終端用戶發(fā)送該觸發(fā)表達(dá)并獲得終端用戶肯定答復(fù)后,調(diào)用該第3級關(guān)聯(lián)函數(shù)娛樂函數(shù),將酒店周邊的娛樂場所信息呈現(xiàn)給終端用戶。

依此規(guī)律,可以繼續(xù)上述步驟,直至終端用戶停止會話。

在本發(fā)明的一個實施方式中,本實施例還可以有第一參數(shù)模塊:

第一參數(shù)模塊,用于根據(jù)終端用戶需求信息提取所述目標(biāo)函數(shù)的參數(shù)信息,如果終端用戶需求信息中缺少所述目標(biāo)函數(shù)的參數(shù)信息,則獲取所述目標(biāo)函數(shù)對應(yīng)的第一參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第一參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第一參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的該目標(biāo)函數(shù)的參數(shù)信息。

很多時候,終端用戶給出的需求信息是零散的、不全面的。這個時候盡管能夠分析出終端用戶的意圖和實際需求,但仍難以給出符合終端用戶實際需要的準(zhǔn)確信息。因此,有必要向終端用戶確認(rèn)有關(guān)信息。

繼續(xù)以以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。盡管確定了終端用戶意圖是“附近的酒店”,但實際生活中,附近可能有多家星級不同的酒店。為準(zhǔn)確判斷終端用戶的需求層次,也為了提高會話效率,可以在酒店函數(shù)中設(shè)置星級參數(shù),從而過濾掉部分酒店信息。由于終端用戶沒有輸入任何有關(guān)酒店星級的信息,則可以獲取并向終端用戶發(fā)送酒店函數(shù)對應(yīng)的參數(shù)獲取表達(dá)“請問您需要查詢幾星級的酒店?”。隨后,可以根據(jù)終端用戶針對該參數(shù)獲取表達(dá)的回應(yīng),從中獲取酒店函數(shù)的星級參數(shù)信息。

在本發(fā)明的一個實施方式中,本實施例還可以有第二參數(shù)模塊:

第二參數(shù)模塊,用于根據(jù)終端用戶需求信息和第N級關(guān)聯(lián)函數(shù)的處理結(jié)果,提取所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,如果終端用戶需求信息和第N級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息,則獲取所述第N+1級關(guān)聯(lián)函數(shù)對應(yīng)的第二參數(shù)獲取表達(dá);向所述終端用戶發(fā)送所述第二參數(shù)獲取表達(dá),并根據(jù)所述終端用戶針對所述第二參數(shù)獲取表達(dá)的回應(yīng),獲取缺少的所述第N+1級關(guān)聯(lián)函數(shù)的參數(shù)信息。

其中,在本發(fā)明中,當(dāng)N為0時,該N級關(guān)聯(lián)函數(shù)即為目標(biāo)函數(shù)。

繼續(xù)以上文中終端用戶輸入的需求信息“幫我查下附近的酒店”為例。第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)可以設(shè)置有交通工具參數(shù)。第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息可以從終端用戶需求信息“幫我查下附近的酒店”和第1級關(guān)聯(lián)函數(shù)撥號函數(shù)的處理結(jié)果中獲取。由于第1級關(guān)聯(lián)函數(shù)撥號函數(shù)只有“電話已撥通”和“電話未撥通”兩種處理結(jié)果,因此終端用戶需求信息“幫我查下附近的酒店”和第1級關(guān)聯(lián)函數(shù)的處理結(jié)果中缺少該第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息。

此時,可以獲取第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)對應(yīng)的參數(shù)獲取表達(dá)“您打算以哪種交通工具前往酒店?”并向終端用戶發(fā)送,然后從終端用戶的回應(yīng)中獲取該缺少的第2級關(guān)聯(lián)函數(shù)導(dǎo)航函數(shù)的交通工具參數(shù)信息。

在本實施例中,目標(biāo)函數(shù)和第N級關(guān)聯(lián)函數(shù)(統(tǒng)稱為“函數(shù)”)都可以具有統(tǒng)一的函數(shù)定義規(guī)范。優(yōu)選地,這種統(tǒng)一的函數(shù)定義規(guī)范包括:函數(shù)本體、函數(shù)的觸發(fā)表達(dá)以及函數(shù)的參數(shù)獲取表達(dá)。此處,為說明之便,與函數(shù)相連的觸發(fā)表達(dá)、參數(shù)獲取表達(dá)可以理解為函數(shù)定義規(guī)范的一部分,盡管在理論上,與函數(shù)相連的觸發(fā)表達(dá)、參數(shù)獲取表達(dá)并不屬于函數(shù)的一部分。

例如,統(tǒng)一的函數(shù)定義規(guī)范可以如下:

//觸發(fā)表達(dá)

//參數(shù)獲取表達(dá)(如有參數(shù))

函數(shù)(類型1參數(shù)a,類型2參數(shù)b,...){

函數(shù)執(zhí)行主體;

返回數(shù)據(jù)結(jié)構(gòu)體(如有);

}

為方便說明,此處“//”并不是注釋語言,而是說明與函數(shù)相連的觸發(fā)表達(dá)和參數(shù)獲取表達(dá)(如有參數(shù))。

以導(dǎo)航業(yè)務(wù)為例,所需的一個參數(shù)信息可以是指定地點,函數(shù)執(zhí)行主體則會給出到指定地點的導(dǎo)航路徑。其中,觸發(fā)表達(dá)可以為“是否需要導(dǎo)航到這里?”;參數(shù)獲取表達(dá)可以為“請問是要去什么地方?”

統(tǒng)一的函數(shù)定義規(guī)范解放了編程人員,借此編程人員不需要針對不同的業(yè)務(wù)分別構(gòu)建不同的算法。從而,本發(fā)明克服了現(xiàn)有技術(shù)中業(yè)務(wù)與算法高度耦合的重大缺陷,使得業(yè)務(wù)人員能夠?qū)W⒂跇I(yè)務(wù)開發(fā),編程人員能夠?qū)W⒂趦?yōu)化函數(shù)規(guī)范本身。簡而言之,專業(yè)的人做專業(yè)的事使得人機(jī)對話的效率和質(zhì)量由此得以提升到新的高度。

在本發(fā)明的一個實施方式中,本實施例還可以有設(shè)置關(guān)聯(lián)關(guān)系模塊:

設(shè)置關(guān)聯(lián)關(guān)系模塊,用于通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。

在本實施例中,可以通過可視化編程的方式建立所述目標(biāo)函數(shù)和所述第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系,和/或所述第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系。簡言之,也就是函數(shù)之間的關(guān)聯(lián)關(guān)系。

如前文所述,目標(biāo)函數(shù)和第1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系可以是人為設(shè)定的,第N級關(guān)聯(lián)函數(shù)和所述第N+1級關(guān)聯(lián)函數(shù)之間的關(guān)聯(lián)關(guān)系也可以是人為設(shè)定的。這樣做的好處是,可以實現(xiàn)多輪會話的自定義業(yè)務(wù)組合。也就是說,業(yè)務(wù)人員以及編程人員可以根據(jù)業(yè)務(wù)需要在不同函數(shù)之間建立關(guān)聯(lián)關(guān)系,從而實現(xiàn)了多輪會話的擴(kuò)展應(yīng)用。作為一種優(yōu)選方案,在不同函數(shù)之間建立關(guān)聯(lián)關(guān)系可以通過可視化編程的方式實現(xiàn)。這里的“可視”,指的是無須編程,僅通過直觀的操作方式即可完成界面的設(shè)計、建立不同函數(shù)之間的關(guān)聯(lián)關(guān)系??梢暬幊痰幕局R為相關(guān)領(lǐng)域技術(shù)人員所熟知,本文對此不再贅述。

優(yōu)選地,設(shè)置關(guān)聯(lián)關(guān)系模塊可以包括:

拖拽子模塊,用于在可視化編程界面中,響應(yīng)于連接線的拖拽操作,建立函數(shù)之間的關(guān)聯(lián)關(guān)系。

作為一種更優(yōu)選的方案,通過可視化編程的方式實現(xiàn)不同函數(shù)之間建立關(guān)聯(lián)關(guān)系可以在可視化編程界面中通過拖拽連接線等類似的操作,將函數(shù)之間的關(guān)聯(lián)關(guān)系建立起來。

優(yōu)選的,可以由函數(shù)開發(fā)人員(例如編程人員)按照上述統(tǒng)一的函數(shù)定義規(guī)范開發(fā)和提供函數(shù),由智能會話服務(wù)方將符合統(tǒng)一函數(shù)定義規(guī)范的函數(shù)提供給企業(yè)客戶(如上文中的業(yè)務(wù)人員)使用,由企業(yè)客戶根據(jù)自己的業(yè)務(wù)需求、選擇合適的函數(shù),并根據(jù)實際業(yè)務(wù)需求采用上述可視化編程的方式建立函數(shù)之間的關(guān)聯(lián)關(guān)系、定制符合業(yè)務(wù)需要的業(yè)務(wù)邏輯,智能會話服務(wù)方根據(jù)企業(yè)客戶定制的函數(shù)關(guān)聯(lián)關(guān)系,向企業(yè)客戶的終端用戶提供智能會話服務(wù),根據(jù)終端終端用戶的請求、為終端終端用戶提供智能會話服務(wù)。

優(yōu)選的,所述目標(biāo)函數(shù)可以有一個以上的第1級關(guān)聯(lián)函數(shù)、以及所述第N級關(guān)聯(lián)函數(shù)可以有一個以上的第N+1級關(guān)聯(lián)函數(shù),即目標(biāo)函數(shù)可以有多個第1級關(guān)聯(lián)函數(shù),第N級關(guān)聯(lián)函數(shù)可以有多個第N+1級關(guān)聯(lián)函數(shù);在這種情況下,系統(tǒng)判斷目標(biāo)函數(shù)有多個第1級關(guān)聯(lián)函數(shù)的情況下,可以將該多個第1級關(guān)聯(lián)函數(shù)分別對應(yīng)的觸發(fā)表達(dá)發(fā)送給終端用戶,由終端用戶進(jìn)行選擇,選擇其中一個或多個第1級關(guān)聯(lián)函數(shù)進(jìn)行觸發(fā);同理,系統(tǒng)判斷第N級關(guān)聯(lián)函數(shù)有多個第N+1級關(guān)聯(lián)函數(shù)的情況下,可以將該多個第N+1級關(guān)聯(lián)函數(shù)的情況下分別對應(yīng)的觸發(fā)表達(dá)發(fā)送給終端用戶,由終端用戶進(jìn)行選擇,選擇其中一個或多個第N+1級關(guān)聯(lián)函數(shù)進(jìn)行觸發(fā)。

本發(fā)明實施方式的計算機(jī)可讀存儲介質(zhì)一個具體例子例如為光盤,其上存儲有計算機(jī)程序(即程序產(chǎn)品),該程序被處理器執(zhí)行時,會實現(xiàn)上述方法實施方式中所記載的各步驟,其中包括:

接收終端用戶需求信息;

根據(jù)終端用戶需求信息判斷終端用戶意圖所對應(yīng)的目標(biāo)函數(shù);

調(diào)用所述目標(biāo)函數(shù);

獲取所述目標(biāo)函數(shù)的第1級關(guān)聯(lián)函數(shù),并獲取所述第1級關(guān)聯(lián)函數(shù)對應(yīng)的第一觸發(fā)表達(dá);

向所述終端用戶發(fā)送所述第一觸發(fā)表達(dá),并根據(jù)接收到的所述終端用戶針對所述第一觸發(fā)表達(dá)的回應(yīng),判斷是否調(diào)用所述第1級關(guān)聯(lián)函數(shù)。

應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了多輪會話交互裝置的若干模塊或子模塊,但是這種劃分僅僅并非強(qiáng)制性的。實際上,根據(jù)本發(fā)明的實施方式,上文描述的兩個或更多模塊的特征和功能可以在一個模塊中具體化。反之,上文描述的一個模塊的特征和功能可以進(jìn)一步劃分為由多個模塊來具體化。

此外,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實現(xiàn)期望的結(jié)果。附加地或備選地,可以省略某些步驟,將多個步驟合并為一個步驟執(zhí)行,和/或?qū)⒁粋€步驟分解為多個步驟執(zhí)行。

雖然已經(jīng)參考若干具體實施方式描述了本發(fā)明的精神和原理,但是應(yīng)該理解,本發(fā)明并不限于所公開的具體實施方式,對各方面的劃分也不意味著這些方面中的特征不能組合以進(jìn)行受益,這種劃分僅是為了表述的方便。本發(fā)明旨在涵蓋所附權(quán)利要求的精神和范圍內(nèi)所包括的各種修改和等同布置。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1