人工智能腳本工具的制作方法
【專利摘要】本發(fā)明為技術(shù)和非技術(shù)用戶提供創(chuàng)建交互式合成角色內(nèi)容的系統(tǒng)和方法。在一些實施例中,會話編輯器可以被配置為用于通過接收來自用戶的一組會話規(guī)則以創(chuàng)建交互式合成角色的遍歷腳本。這些規(guī)則可以被用于匹配用戶說話或鍵入的特定詞語或短語,或監(jiān)測用戶或合成角色的物理動作。每個會話可以包括由交互式合成角色所執(zhí)行的回應。回應可以包括,例如,為合成角色產(chǎn)生可聽的或文本的語音,執(zhí)行一個或多個動畫,播放一個或多個聲音效果,從一個或多個數(shù)據(jù)源取得數(shù)據(jù)等。當由允許動態(tài)交互的合成角色執(zhí)行該會話規(guī)則組時,遍歷腳本可以從該會話規(guī)則組生成。在一些實施例中,遍歷腳本可以由使用與會話規(guī)則相關(guān)的一個或多個導航指令的狀態(tài)引擎來導航。
【專利說明】人工智能腳本工具
[0001] 相關(guān)申請的交叉引用
[0002] 本申請要求2012年7月25日提交的美國專利申請?zhí)?3/558,206的優(yōu)先權(quán),其全 部內(nèi)容通過引用方式被合并于此。
【技術(shù)領(lǐng)域】
[0003] 本發(fā)明的各種實施例通常涉及創(chuàng)建交互式合成角色的內(nèi)容。更具體地,本發(fā)明的 各種實施例涉及人工智能(Al)腳本工具。
【背景技術(shù)】
[0004] 玩具已經(jīng)存在了幾千年。埃及、希臘和羅馬的孩子玩的玩具,由石器、陶器、蠟、木 材和其他原始材料制成。最近,玩具由較新的材料,如塑料制成。然而,這些玩具是靜態(tài)的, 留下孩子們用自己的想象力形成玩具的動態(tài)或個性。當孩子拉著線或按下按鈕時,其他玩 具包括機械特性,允許簡單的機械運動或一個單詞或短語的朗誦。
[0005] 隨著計算機、執(zhí)行器和處理技術(shù)的普及,互動玩具和電腦游戲已經(jīng)變得越來越普 遍。這些玩具能夠感測環(huán)境,作出判斷,并與孩子互動。然而,許多的玩具僅提供有限的簡 單的線性互動。為這些玩具和游戲創(chuàng)建更復雜的內(nèi)容仍然是困難的,因為有許多可能的輸 入,每個可能需要不同的回應。
[0006] 創(chuàng)建可以接受這些輸入并做出判斷、推理、發(fā)展、交流,以及操控對象的系統(tǒng)在計 算機科學和機器人的分支廣泛地被研宄。雖然目前一些玩具有更多的交互特性,這些玩具 仍然缺乏在人類中發(fā)現(xiàn)的各種性格特征。創(chuàng)建具有各種個性特征的合成角色更加困難。創(chuàng) 建腳本和內(nèi)容的傳統(tǒng)工具太簡單以至于不能允許復雜的交互內(nèi)容的高效創(chuàng)建。例如,常見 的腳本編寫工具往往是線性的,不便于動態(tài)互動。正因為如此,許多挑戰(zhàn)和低效在用于為人 工智能系統(tǒng),諸如玩具和游戲創(chuàng)建內(nèi)容的工具中被發(fā)現(xiàn)。
[0007] 概述
[0008] 本發(fā)明描述了使用人工智能腳本工具創(chuàng)建交互式合成角色的系統(tǒng)和方法。在一些 實施例中,一種方法包括:在顯示設(shè)備上顯示會話編輯器。會話編輯器可以被配置用于創(chuàng)建 交互式合成角色的遍歷腳本。一組會話規(guī)則可以從用戶接收。在一些實施例中,這些規(guī)則 可以由會話編輯器引導。談話規(guī)則可以包括一個或多個交互的實體(例如,其他玩具,兒童 等)之間的多路通信。
[0009] 根據(jù)各種實施例,每個會話規(guī)則可以包括一個或多個回應,其可以包括由交互式 合成角色執(zhí)行的動作。該回應可以包括,例如,合成角色說的可聽或書寫的單詞,執(zhí)行一個 或多個動畫,播放一個或多個聲音效果,從一個或多個數(shù)據(jù)源取得數(shù)據(jù)等。此外,在一些實 施例中,各種類別和/或年齡范圍可以被分配到允許根據(jù)最終用戶年齡產(chǎn)生不同的回應的 會話規(guī)則。
[0010] 遍歷腳本可以從一組會話規(guī)則生成。當由合成角色執(zhí)行時,該腳本允許該動態(tài)互 動可根據(jù)多個變量和/或隨時間變化。在一些實施例中,遍歷腳本可以由使用與會話規(guī)則 相關(guān)的一個或多個導航指令的狀態(tài)引擎導航。一旦被創(chuàng)建,該腳本可以被存儲在可以由各 種玩具和/或程序訪問的數(shù)據(jù)庫中。
[0011] 本發(fā)明的各種實施例提供了用于開發(fā)交互式合成角色內(nèi)容的計算機執(zhí)行的方法。 根據(jù)一些實施例,用戶界面屏幕可以被顯示在終端上(例如,計算機、移動設(shè)備等)。用戶界 面屏幕可包括用于創(chuàng)建會話的會話規(guī)則編輯器。與用戶輸入(例如,動作、語音模式、互動 等)匹配的第一對話規(guī)則可從用戶接收并且在用戶界面屏幕上顯示。在一些實施例中,基 于第一對話規(guī)則的第二會話規(guī)則可動態(tài)地填充在用戶界面屏上。在其他實施例中,用戶可 以輸入第二會話規(guī)則。編輯器還可以允許用戶將年齡或年齡范圍、類別、導航指令、基于時 間的規(guī)則相關(guān),和/或其它用于創(chuàng)建交互式體驗的特征關(guān)聯(lián)。
[0012] 在一些實施例中,用戶界面屏幕可以包括允許用戶瀏覽交互式聊天創(chuàng)建的會話的 模擬器。這個模擬器還可以提供的功能,允許用戶調(diào)試當前會話,諸如通過每個規(guī)則和回應 視覺上步進,在會話中將斷點設(shè)置在某些點,或迫使會話進入特定的路徑。
[0013] 本發(fā)明的實施例還包括包含指令集的計算機可讀存儲介質(zhì),以使一個或多個處理 器執(zhí)行本文所描述的方法、方法的變型,以及其它操作。
[0014] 本發(fā)明的各種實施例包括包括顯示設(shè)備、輸入/輸出設(shè)備、存儲器和處理器的系 統(tǒng)。處理器可以與顯示輸入/輸出設(shè)備通信和可操作于執(zhí)行存儲在存儲器中的指令。在一 些實施例中,處理器可執(zhí)行指令可以使處理器傳送顯示數(shù)據(jù)到顯示輸入/輸出設(shè)備以使圖 形用戶界面在顯示設(shè)備上顯示。圖形用戶界面可以包括交互式腳本編輯器,其中一組定制 規(guī)則和回應可以由用戶輸入。交互式腳本編輯器可用于在視覺上指示定制規(guī)則組之間的關(guān) 系,每個具有由交互式合成角色執(zhí)行的回應或由交互式合成角色觀察的環(huán)境刺激。每個由 交互式合成角色執(zhí)行的回應可以在視覺上與具有觸發(fā)回應的環(huán)境刺激(例如,數(shù)據(jù)輸入、 環(huán)境觀察,或者與交互式合成角色的互動)的相應的定制規(guī)則相關(guān)。
[0015] 本發(fā)明的一些實施例提供腳本編寫應用,其被配置用于在圖形用戶界面窗口中呈 現(xiàn)會話規(guī)則。每個會話規(guī)則可以與合成角色執(zhí)行的回應相關(guān)(例如,產(chǎn)生可聽或文本的語 音、播放媒體剪輯、開始動畫等)。圖形用戶界面窗口可以包括同一會話的多個視覺表示。 例如,在一個表示中,會話規(guī)則可分層呈現(xiàn)。在另一個表示中,對話模擬器能夠使用狀態(tài)引 擎來瀏覽被呈現(xiàn)的會話規(guī)則。腳本編寫應用也可以包括建議引擎,其被配置用于接收會話 規(guī)則并且呈現(xiàn)對進一步會話規(guī)則的建議。
[0016] 隨著多個實施例被公開,本發(fā)明的其它實施例從以下的詳細說明對于本領(lǐng)域技術(shù) 人員將變得顯而易見,其中顯示并描述了本發(fā)明的說明性實施例。將要認識到的是,本發(fā)明 能夠在不脫離本發(fā)明范圍的情況下在各個方面做出修改。因此,附圖和具體實施例應被認 為是說明性的而非限制性的。
【專利附圖】
【附圖說明】
[0017] 本發(fā)明的實施例將通過使用附圖被描述并說明,其中:
[0018] 圖1示出了用于為交互式合成角色創(chuàng)建腳本的計算環(huán)境,其中本發(fā)明的一些實施 例可于其中被利用;
[0019] 圖2是根據(jù)本發(fā)明的一個或多個實施例的示例性腳本編輯器的屏幕截圖;
[0020] 圖3是根據(jù)本發(fā)明的各種實施例,示出人工智能腳本編寫工具的示例性組件的框 圖;
[0021] 圖4是根據(jù)本發(fā)明的一些實施例,示出用于創(chuàng)建交互式體驗的示例性操作集的流 程圖;
[0022] 圖5是根據(jù)本發(fā)明的一個或多個實施例,用于創(chuàng)建對話框的示例性的腳本編輯器 的屏幕截圖;
[0023]圖6是根據(jù)各種本發(fā)明的實施例的示例性樹編輯器的屏幕截圖;
[0024] 圖7是根據(jù)本發(fā)明一些實施例,創(chuàng)建動畫對話框的示例性樹編輯器工具的屏幕截 圖;
[0025] 圖8是根據(jù)本發(fā)明的一些實施例,示出用于生成遍歷腳本的示例性的操作集的流 程圖;
[0026] 圖9A和9B是根據(jù)本發(fā)明一些實施例,創(chuàng)建動畫對話框的示例性的會話編輯器的 屏幕截圖;
[0027] 圖IOA和IOB是根據(jù)本發(fā)明一些實施例的不例性的同義詞和填充窗口的屏幕截 圖;
[0028] 圖IlA和IlB是根據(jù)本發(fā)明的一些實施例,用于創(chuàng)建角色元數(shù)據(jù)和管理錄制的內(nèi) 容的示例性編輯器的屏幕截圖;以及
[0029] 圖12示出了本發(fā)明的一些實施例可利用的計算機系統(tǒng)的一個示例。
[0030] 附圖并不必然按比例繪制。例如,附圖中一些元件的尺寸可以擴大或縮小,以幫助 改善對本發(fā)明的實施例的理解。同樣,出于對本發(fā)明的一些實施例的討論的目的,一些組件 和/或操作可被分成不同的塊或組合成單個的塊。此外,雖然本發(fā)明可修改為各種修改和 替換形式,具體的實施例已通過附圖中的示例的方式示出,并在之后被詳細描述。然而,這 并不旨在將本發(fā)明限制于所描述的特定實施例。與此相反,本發(fā)明意在涵蓋由所附權(quán)利要 求限定的落入本發(fā)明的范圍之內(nèi)的所有修改、等同物和替代。 具體實施例
[0031] 本發(fā)明的各種實施例通常涉及為交互式合成角色創(chuàng)建內(nèi)容。更具體地,本發(fā)明的 各種實施例涉及人工智能腳本工具的系統(tǒng)和方法。腳本工具允許內(nèi)容創(chuàng)造者更簡便地產(chǎn)生 分層互動,以有效地模擬合成角色中的各種人類特征和能力(例如,交流,動作,知識等)。 其結(jié)果是,交互式合成角色對于最終用戶變得更加有趣。
[0032] 根據(jù)本發(fā)明的一些實施例中,腳本工具可以包括各種編輯器、插件、模塊和特性, 以幫助用戶創(chuàng)建交互式內(nèi)容。這些工具可用于創(chuàng)建分層腳本,其具有不同狀態(tài)可以根據(jù)存 在的不同的條件進行遍歷不同的狀態(tài)。各種引擎和模塊可以用于組合可用信息,包括不確 定和/或不完整的信息,并且確定如何遍歷腳本。例如,不同的確定性和概率方法(例如, 貝葉斯網(wǎng)絡(luò),馬爾科夫鏈,以及卡爾曼濾波方法)也可以使用。此外,神經(jīng)網(wǎng)絡(luò)和模糊邏輯 可以在一些實施例中使用。
[0033] 根據(jù)一些實施例,腳本工具可以包括樹編輯器,其提供了分層會話的"樹狀"圖。 例如,編輯器可以允許多個輸入,諸如用戶說:"你好,你怎么樣? "和"嗨"。根據(jù)輸入,不 同的回應可以被創(chuàng)建。例如,在"嗨"的情況下,"你好!"的回應可被使用。在"你好,你怎 么樣? "的情況下,更詳細的談話可以通過詢問用戶他們怎么樣,接著識別各種反應,諸如 "好"、"壞",或退回匹配其他(以給予一些回應,當我們的不理解用戶所說的話的情況下) 回應來創(chuàng)建。
[0034] 在一些實施例中,腳本工具允許關(guān)鍵詞被從提供的短語被選出。然后AI系統(tǒng)或角 色可以尋找AI系統(tǒng)或角色的用戶的講話中的這些關(guān)鍵詞。這使得創(chuàng)意性的作家寫出實際 的短語,然后只指定用于模式識別的關(guān)鍵詞。短語中剩余的單詞可以完全忽略或以其他方 式不再強調(diào)。例如,如果只有單詞"愛"和"你"被強調(diào),那么系統(tǒng)將從用戶識別任何短語, 使用以此順序的單詞,諸如"哦,嗨,我是真的愛你的全部。"這提供了有用的技術(shù),讓創(chuàng)意用 戶指定AI系統(tǒng)的模式匹配。
[0035] 一些實施例包括可用于通過使用不同的視覺和互動機制編輯相同底層數(shù)據(jù)的腳 本編輯器。腳本編輯器可允許從屏幕頂部向下穿過每個會話線程的對話自上而下顯示。在 每個垂直層面,多個選項可以呈現(xiàn),即會話可以采取不同音軌。腳本編輯器的一個優(yōu)點是, 編輯器可以產(chǎn)生從屏幕頂部本到底部的線性腳本,并且對話框可以左右滑動,讓用戶向下 選擇不同音軌的分層話。因此通過分層數(shù)據(jù)集呈現(xiàn)更加線性的圖對是創(chuàng)意工作者而言比較 熟悉。
[0036] 盡管為了方便起見,本發(fā)明的實施例參照玩具和游戲的交互式合成角色被描述, 本發(fā)明的實施例同樣適用于具有商業(yè)、軍事、教育和/或其它應用的各種其它AI系統(tǒng)。這 里介紹的技術(shù)可以被實施為專用硬件(例如,電路),或者作為可編程電路與軟件和/或固 件適當編程,或者作為專用和可編程電路的組合。因此,實施例可以包括計算機可讀介質(zhì), 其上存儲有可用于對計算機(或其他電子設(shè)備)編程以執(zhí)行處理的指令。機器可讀介質(zhì)可 以包括,但不限于,軟盤、光盤、光盤只讀存儲器(CD-ROM),以及磁光盤、只讀存儲器(ROM)、 隨機存取存儲器(RAM)、可擦除可編程只讀存儲器(EPROM)、電可擦除可編程只讀存儲器 (EEPROM)、磁卡或光卡、閃存,或其他類型的適于存儲電子指令的介質(zhì)/機器可讀介質(zhì)。
[0037] 術(shù)語
[0038] 術(shù)語的簡要定義、縮寫,以及在整個申請中使用的短語在下面給出。
[0039] 術(shù)語"連接"或"連結(jié)"和有關(guān)術(shù)語以操作感被使用,并不必然限制直接的物理連 接或連結(jié)。因此,例如,兩個設(shè)備可直接或通過一個或多個中間通道或設(shè)備連結(jié)。作為另一 示例,設(shè)備可以以這樣的方式連結(jié),信息傳遞其間,而沒有彼此共享任何物理連接。基于本 文提供的公開,本領(lǐng)域的普通技術(shù)人員之一將理解各種方式,其中連接或連結(jié)根據(jù)上述定 義存在。
[0040] 短語"在一些實施例中"、"根據(jù)各種實施例"、"示出的實施例中"、"在其他實施例 中"等通常指特定的特征、結(jié)構(gòu)或特性,如下短語被包括在本發(fā)明至少一種實施例中,并且 可以被包括在本發(fā)明一個以上的實施例中。此外,這些短語并不必然指代相同的實施例或 不同的實施例。
[0041] 如果說明書規(guī)定組件或特性"可能(may) "、"可以(can) "、"可以(could) "或"可 能(might) "被包括或有特點,特定的組件或特性并不需要被包括或有特點。
[0042] 術(shù)語"模塊"是指廣義上的軟件、硬件或固件(或其任何組合)的組件。模塊通常 是功能組件,其可以通過使用指定的輸入生成有用的數(shù)據(jù)或其他輸出。模塊可以是或可以 不是獨立的。應用程序(也稱為"應用")可以包括一個或多個模塊,或者一個模塊可以包 括一個或多個應用程序。
[0043] 概述
[0044] 圖1示出了用于為交互式合成角色創(chuàng)建腳本的計算環(huán)境100,其中本發(fā)明的一些 實施例可于其中被利用。圖1示出的實施例顯示多個客戶端IlOa-IlOn運行能夠為交互式 合成角色創(chuàng)造定制的內(nèi)容的腳本編寫應用120a-120n。客戶端IlOa-IlOn可以是web瀏覽 器、應用或能夠使用網(wǎng)絡(luò)130來訪問人工智能(Al)服務(wù)器140的系統(tǒng)。AI服務(wù)器140可 以運行的服務(wù)器端應用程序150,其被通信地連結(jié)到腳本數(shù)據(jù)庫160和聲音數(shù)據(jù)庫170。月艮 務(wù)器端應用程序150也可用于促進腳本編寫應用120a-120n所需的一些或全部的處理。此 夕卜,服務(wù)器端應用150可以承載基于附加訂閱的組件以增強腳本編寫應用120a-120n中的 特性。
[0045] 腳本數(shù)據(jù)庫160可以被用于存儲由腳本編寫應用120a_120n創(chuàng)建的內(nèi)容。各種玩 具、游戲或系統(tǒng)可以從腳本數(shù)據(jù)庫160經(jīng)由網(wǎng)絡(luò)130取得。聲音數(shù)據(jù)庫中170存儲錄音(例 如,媒體剪輯,演員朗讀各種短語或?qū)υ挷糠值匿浺?,或聲音效果)。存儲在腳本數(shù)據(jù)庫160 中的內(nèi)容可以鏈接到這些錄音中的一個,或者可以包括副本。
[0046] 網(wǎng)絡(luò)130可以是任何一組能夠交換信息的互連設(shè)備。在一些實施例中,網(wǎng)絡(luò)130 可以少到局域網(wǎng)(LAN)上若干個人計算機或大到因特網(wǎng)。在一些情況下,網(wǎng)絡(luò)130可以包 括多個網(wǎng)絡(luò)(私人和/或公共),即使多個異構(gòu)網(wǎng)絡(luò),諸如一個或多個邊界網(wǎng)絡(luò)、語音網(wǎng)絡(luò)、 寬帶網(wǎng)絡(luò)、服務(wù)提供商網(wǎng)絡(luò)、互聯(lián)網(wǎng)服務(wù)提供商(ISP)網(wǎng)絡(luò)和/或公共交換電話網(wǎng)(PSTN), 經(jīng)由可操作于促進不同網(wǎng)絡(luò)之間的通信的網(wǎng)關(guān)相互連接。
[0047] 圖2是根據(jù)本發(fā)明的一個或多個實施例的示例性腳本編輯器200的屏幕截圖。腳 本編輯器200可以是桌面應用或云計算應用。腳本編輯器200的各種實施例允許用戶在視 覺上一組角色制作會話內(nèi)容。為此應用程序可以包括以下功能的一個或多個:1)深度基于 主題的會話(支持嵌套規(guī)則和回應,或答辯狀);2)匹配一系列用戶輸入的靈活規(guī)則(例 如,"我愛你"匹配"嘿,我真的愛你");3)用戶提問和陳述之間的差異;4)處理否定的規(guī)則, 所以"我愛你"不匹配"我不愛你"(例如,排除"不");5)支持特定年齡的對話;6)支持不 同玩具的個性(例如,情感模式、海盜模式、運動模式等);7)處理重復(即,用戶重復同樣 的事情);8)支持退回主題,試圖重新取回對主題的控制或者引導講故事;9)支持同義詞或 概念,即,"肉"也匹配"雞肉"、"牛肉"或"豬肉";10)支持基于時間的規(guī)則,允許玩具的性格 隨使用時間演變;11)支持指定對作為用戶移動玩具的物理姿態(tài)的回應;12)支持觸發(fā)動畫 或聲音效果;13)管理需要由配音員錄制的所有短語;和/或14)版本控制,包括存儲在非 現(xiàn)場數(shù)據(jù)庫的內(nèi)容。
[0048] 如圖2中所示的實施例,腳本編輯器200中的主窗口可以包括會話規(guī)則編輯器 210、類別列表220,以及聊天窗口 230。會話規(guī)則編輯器210允許用戶為當前所選的類別創(chuàng) 建所有會話規(guī)則和回應。會話規(guī)則編輯器210能夠是用戶輸入規(guī)則匹配用戶說的事物,其 次是AI系統(tǒng)或角色可以提供的潛在回應。每個這些回應可包括后續(xù)規(guī)則和回應以繼續(xù)會 話。在分層視圖中示出的規(guī)則代表可被作為腳本的單個主題的會話的各種線程。
[0049] 分類列表220允許所有單個角色的內(nèi)容可以跨任何數(shù)量的類別,諸如介紹、游戲、 故事、數(shù)學等。聊天窗口 230允許用戶通過鍵入單詞來測試最新的內(nèi)容,以及看玩具將以給 定的會話規(guī)則如何作出回應。各種按鈕可以用來快速創(chuàng)建內(nèi)容。此外,搜索框240可用于 跨一些或全部類別進行搜索,以找到特定的互動。腳本編輯器200可以不被用于將所有內(nèi) 容作為腳本。例如,在一些實施例中,一些內(nèi)容可以直接使用底層存儲格式,諸如XML腳本。
[0050] 圖3是根據(jù)本發(fā)明的各種實施例,示出人工智能腳本編寫工具的示例性組件的框 圖300。如圖3所示,用戶310 (例如,工程師、劇作家、小說家、作家或藝術(shù)家)可以通過圖 形用戶界面320訪問AI腳本工具。AI腳本工具可以訪問各種功能,允許用戶更便捷地創(chuàng) 建內(nèi)容。會話規(guī)則模塊330和回應模塊340可以允許腳本工具的用戶創(chuàng)建定制會話規(guī)則或 從一組預編程規(guī)則中選擇。例如,會話規(guī)則模塊330和回應模塊340可以被用于允許腳本 工具的用戶在合成角色中創(chuàng)建一個或多個動作以回應已被偵測到的一系列情況、回應或輸 入。
[0051] 在一些實施例中,角色模塊350可以為腳本工具的用戶提供創(chuàng)建不同類型的角色 或特定內(nèi)容的指南。例如,如果用戶正在創(chuàng)建海盜主題的角色,角色模塊350可以提供關(guān)于 會話風格、流和方向的模板或指南。在一些情況下,一個或多個聲音效果(例如,媒體剪輯、 錄制的短語等)可以從聲音效果數(shù)據(jù)庫360取得。這可以用于為用戶提供可創(chuàng)建的內(nèi)容類 型。此外,腳本工具的用戶能夠重用新使已經(jīng)被創(chuàng)建的媒體剪輯。對于教育角色,一組特定 的教育內(nèi)容,可能被需要或要求(例如,由第三方)包括合成角色的內(nèi)容。圖形用戶接口 320還可以提供視覺指示,哪些內(nèi)容已被包括和哪些內(nèi)容仍需要被包括。
[0052] 建議模塊370可以通過圖形用戶界面320為腳本工具的用戶提供建議的會話規(guī) 貝1J。建議模塊370可以具有來自角色模塊350的輸入或包含已經(jīng)在腳本工具中被創(chuàng)建的任 何內(nèi)容(例如,一個或多個先前會話規(guī)則)。建議也可以是來自于用戶與AI系統(tǒng)先前的互 動。此外,在一些情況下,腳本工具可以允許為用戶提供會話中會話流或特定內(nèi)容點的大 綱。這些也可以作為對建議模塊370的輸入被提供。通過使用一種或多種這些輸入或信息, 建議模塊370可以生成可被呈現(xiàn)給腳本工具的用戶的建議的會話規(guī)則或模板。用戶可以忽 略、選擇或編輯建議的會話規(guī)則或模板。
[0053] 一旦用戶已經(jīng)完成生成該會話規(guī)則,腳本生成器380可以將規(guī)則轉(zhuǎn)換成可以由合 成角色遵循的腳本。這些腳本可以存儲在數(shù)據(jù)庫390中。由腳本生成器380創(chuàng)建的腳本可 具有與回應關(guān)聯(lián)的多個狀態(tài)。一組條件或?qū)Ш街噶钆c每個狀態(tài)相關(guān)。為了從一個狀態(tài)到另 一個過渡或?qū)Ш?,導航指令必須令人滿意。腳本生成器380可以提供各種一致性檢查。例 如,腳本生成器380可以檢查腳本中沒有狀態(tài)孤立于其他(即,在腳本使用期間,它永遠不 會被達到)。如果發(fā)生這種情況,它可以被標記到腳本工具的用戶310。
[0054] 圖4是根據(jù)本發(fā)明的一些實施例,示出用于創(chuàng)建交互式體驗的示例性操作集400 的流程圖。圖4中示出的操作可以由本文公開的一個或多個硬件組件、處理器、引擎或模塊 執(zhí)行。例如,一個或多個操作可以由建議模塊370執(zhí)行。
[0055] 顯示操作410期間,具有腳本編輯器的圖形用戶界面屏幕可被顯示在顯示設(shè)備 上。在接收操作420期間,指令從用戶接收以創(chuàng)建會話規(guī)則。接收會話后,在建議操作430 期間,第二規(guī)則可以被動態(tài)地建議。許多不同的因素和/或輸入可以被用于確定被建議的 會話規(guī)則。示例包括,但不限于,合成角色的用戶的年齡范圍、角色類型、內(nèi)容類型、先前會 話規(guī)則、合成角色的能力、特定內(nèi)容點、內(nèi)容需求、從與AI系統(tǒng)的先前的用戶互動收集的輸 入,和/或其它輸入或因素。在編輯操作440期間,用戶可以根據(jù)需要編輯會話規(guī)則。
[0056] 圖5是根據(jù)本發(fā)明的一個或多個實施例,用于創(chuàng)建對話框的示例性的腳本編輯器 500的屏幕截圖。如圖5所示,腳本編輯器500包括會話規(guī)則編輯器,提供了一些列以定制 規(guī)則如何被匹配,或何時回應可以被使用。在圖5所示的實施例中,腳本編輯器500提供了 視覺和交互機制用于創(chuàng)建內(nèi)容。有從屏幕頂部向下穿過每個會話線的會話自上而下顯示。 在每一個垂直的水平,我們顯示所有可用的選項,即會話可以采用不同的音軌。
[0057] 在這個示例中,用戶已經(jīng)選擇句子"我真的很抱歉聽到這些"(第四行),并且系統(tǒng) 顯示(例如,高亮、色彩或以其他方式強調(diào))將用戶帶到那個敘述的所有對話框條目。這個 工具的一個優(yōu)點是,該工具可以制造從屏幕的頂部到底部的線性外觀,左右滑動對話框,讓 用戶選擇不同分層會話向下的音軌。它也可以沿著使得它們在彼此的頂部垂直地堆疊的路 徑對齊所有規(guī)則和回應。
[0058] 圖6是根據(jù)各種本發(fā)明的實施例的示例性樹編輯器600的屏幕截圖。腳本工具的 各種實施例可包括樹編輯器600,它提供分層會話的"樹狀"圖。例如,編輯器可以允許多個 輸入,諸如用戶說:"你好,你怎么樣? "和"嗨"。根據(jù)輸入,不同的回應可以被創(chuàng)建。例如, 在"嗨"的情況下,"你好"可被使用。在"你好,你怎么樣? "的情況下,更詳細的談話可以 通過詢問用戶他們怎么樣,接著識別各種反應,諸如"好"、"壞",或退回匹配其他(以給予一 些回應,當我們的不理解用戶所說的話的情況下)回應來創(chuàng)建。
[0059] 在一些實施例中,關(guān)鍵字可以從提供的短語選出。由AI系統(tǒng)生成的合成角色可以 在用戶所說的內(nèi)容中尋找關(guān)鍵詞。這種關(guān)鍵字選擇的類型允許創(chuàng)意性作家寫出來實際的短 語,然后只指定用于模式識別的關(guān)鍵詞。短語中剩余的單詞可以完全忽略或不再強調(diào)。例 如,如果只有單詞"愛"和"你"被強調(diào),那么系統(tǒng)將從用戶識別任何短語,使用以此順序的 單詞,諸如"哦,嗨,我是真的愛你的全部。"這提供了有用的技術(shù),讓創(chuàng)意用戶指定AI系統(tǒng) 的模式匹配。
[0060] 圖7是根據(jù)本發(fā)明一些實施例,創(chuàng)建動畫對話框的示例性樹編輯器工具700的屏 幕截圖。圖7中的樹編輯工具700顯示了用于在應用中執(zhí)行操作,在屏幕上播放動畫或播 放聲音樣本的附加的線。作為本發(fā)明的各種實施例允許被腳本化地所有類型的內(nèi)容,而且 在許多情況下,該內(nèi)容不僅包括對話框,還包括完整的多媒體體驗。
[0061] 圖8是根據(jù)本發(fā)明的一些實施例,示出用于生成遍歷腳本的示例性的操作集800 的流程圖。這些操作的一個或多個,用于生成可由處理器、模塊和/或組件諸如腳本生成器 380。在接收操作810期間,一組會話規(guī)則從用戶接收。會話規(guī)則定義具有回應(例如,講 話、播放媒體剪輯、動畫等)的不同狀態(tài)和條件用于在狀態(tài)之間移動的情況(或?qū)Ш街噶睿?br>
[0062] 確定操作820確定導航指令組。在本生成操作830期間,遍歷腳本從這些生成。 確定操作840確定是否需要任何更新。例如,腳本可以進行審查,以確定一組需要的內(nèi)容是 否已被包括。在其他情況下,腳本可以進行審查,以確保與特定的角色類型或年齡組的一致 性。盡管如此,確定操作850還可以確定腳本中達到一個或多個狀態(tài)是否有任何問題。如 果需要任何更新,那么確定操作840分支到請求要求操作850,其中請求被生成為用戶更新 會話規(guī)則。如果確定操作840判定為不需要更新,則確定操作840分支到存儲操作860,其 中腳本是存儲在數(shù)據(jù)庫中。
[0063] 圖9A和9B是根據(jù)本發(fā)明一些實施例,創(chuàng)建動畫對話框的示例性的會話編輯器的 屏幕截圖。如這些實施例所示,會話規(guī)則編輯器可以提供多個列以定制規(guī)則如何匹配,或何 時回應當可被使用。例如,用戶可以指定通過使用特定年齡的用戶的特定的回應,或者為特 定的玩具個性(刻薄、善良、可憎等)提供回應。
[0064] 圖IOA和IOB是根據(jù)本發(fā)明一些實施例的不例性的同義詞和填充窗口的屏幕截 圖。圖IOA中的同義詞窗口允許用戶為匹配規(guī)則的單詞指定所有同義詞(或概念)。選擇 那些能在規(guī)則匹配的話。這個特征的一個優(yōu)點是,它允許用戶編寫可以匹配許多不同的變 化的單獨的規(guī)則。同義詞可以在每個規(guī)則中通過使用特殊字符(例如,?)重復使用。如 示例中所示,規(guī)則中的文本"?肉"也將匹配"牛肉"、"豬肉"、"羊肉"、"雞肉",以及"肉"本 身。
[0065] 會話填充窗口允許用戶創(chuàng)建各種填充單詞或短語使合成角色可以任意使用以解 決技術(shù)限制,諸如網(wǎng)絡(luò)滯后、機器人語音合成、聽不到用戶回應等。一些填充類別可以由腳 本工具來定義,用戶簡單地為每個類別提供了一組可能說的事物。在其他實施例中,定制的 類別可以由用戶創(chuàng)建。
[0066] 圖IlA和IlB是根據(jù)本發(fā)明的一些實施例,用于創(chuàng)建角色元數(shù)據(jù)和管理錄制的內(nèi) 容的示例性編輯器。圖IlA示出了角色屬性編輯器,允許用戶指定描述角色的不同的元數(shù) 據(jù)。編輯器也可以用于為合成角色指定默認狀態(tài),諸如將要定制內(nèi)容,初始的個性或默認年 齡范圍(直到它知道用戶的實際年齡)。
[0067] 圖IlB示出了預錄制內(nèi)容編輯器,其可被用于管理合成角色可以說的所有事物的 預錄制音頻內(nèi)容。預錄制內(nèi)容編輯器能夠搜索并找到需要被錄制的所有回應。在一些實施 例中,預錄制內(nèi)容編輯器可以顯示錄制的所有回應、所有那些已經(jīng)被記錄,以及偵測可能是 副本的短語的方法,和可以被合并以減少數(shù)錄音數(shù)量的錄制列表。
[0068] 也許在不同的編輯器中,附加功能可以被使用簡化錄制內(nèi)容的過程,將其切割成 各個MP3文件,剪切,改變比特率,以及將每個文件與適當?shù)幕貞P(guān)聯(lián)。在很多情況下,這里 所描述的各種腳本工具可能并不負責所有腳本對話內(nèi)容。在腳本工具之外創(chuàng)建的其他元素 可能包括:1)自動生成的規(guī)則,諸如從有/無問題的列表;2)需要編碼技能的邏輯謎題,如 數(shù)學游戲或猜我想到的數(shù)字;和/或3)涉及的可被下載的數(shù)據(jù)表的游戲,諸如知道世界所 有首都。根據(jù)一個或多個實施例,腳本工具可以提供插入、編輯,或與外部內(nèi)容交互的界面。 在一些實施例中,腳本工具可以提供對我們從用戶收集的轉(zhuǎn)錄錄音組的訪問,以建議會話 主題。
[0069] 示例性計算機系統(tǒng)概述
[0070] 本發(fā)明的實施例包括各種步驟和操作,這已在上面描述。各種的這些步驟和操作 可以由硬件部件執(zhí)行,或者可以在機器可執(zhí)行指令中體現(xiàn),其可以被用于使以指令編程的 通用或?qū)S锰幚砥鲌?zhí)行的步驟??商娲?,這些步驟可以通過硬件、軟件和/或固件的組合 來執(zhí)行。因此,圖12示出了本發(fā)明的一些實施例可利用的計算機系統(tǒng)的一個示例。根據(jù)這 個示例,該計算機系統(tǒng)包括總線1205、至少一個處理器1210、至少一個通信端口 1215、主存 儲器1220、可移動存儲介質(zhì)1225、只讀存儲器1230,以及大容量存儲1235。
[0071] 處理器1210可以是任何已知的處理器,諸如,但不限于,1】批丨@安騰?或 Itanium2? 處理器,或AMD? Opieron?或AthlonMP?處理器,或Moloro丨a?處理 器產(chǎn)品線。通信端口 1215可以是任何一個RS-232端口,與基于調(diào)制解調(diào)器的撥號連接、 10/100以太網(wǎng)端口,或者使用銅纜或光纖的千兆端口一起使用。通信端口 1215可以根據(jù)網(wǎng) 絡(luò),諸如局域網(wǎng)(LAN)、廣域網(wǎng)(WAN),或者計算機系統(tǒng)1200連接任何網(wǎng)絡(luò)進行選擇。
[0072] 主存儲器1220可以是隨機存取存儲器(RAM),或本領(lǐng)域中公知的任何其它動態(tài)存 儲設(shè)備。只讀存儲器1230可以是任何靜態(tài)存儲設(shè)備,諸如可編程只讀存儲器(PROM)芯片, 用于存儲靜態(tài)信息諸如用于處理器1210的指令。
[0073] 大容量存儲設(shè)備1235可以被用于存儲信息和指令。例如,硬盤,如SCSI驅(qū)動器、 光盤的Adaptec?家族,磁盤陣列,如RAID驅(qū)動器的Adaptec?家族,或者任何其他大容量 存儲設(shè)備的陣列。
[0074] 總線1205可通信地將處理器1210與其他內(nèi)存、存儲和通信模塊連結(jié)。根據(jù)所使 用的存儲設(shè)備,總線1205可以是PCI/PCI-X或基于SCSI的系統(tǒng)總線。
[0075] 可移動存儲介質(zhì)1225可以是任何類型的外部硬盤驅(qū)動器、軟盤驅(qū)動器、 IOMEGA?Zip驅(qū)動器、只讀存儲器-光盤(CD-ROM)、可重復擦寫-光盤(CD-RW)、只讀存 儲器-數(shù)字視頻盤(DVD-ROM)。
[0076] 以上描述的組件意在例舉某些類型的可能性。它們僅是示例性的實施例,上述示 例決不應該限制本發(fā)明的范圍。
[0077] 總之,本發(fā)明提供了新穎的系統(tǒng)、方法和布置用于為合成角色創(chuàng)建定制的交互內(nèi) 容。雖然本發(fā)明的一個或多個實施例的詳細描述已經(jīng)在上面給出,各種替代、修改和等同 物,在不改變本發(fā)明精神的情況下,對本領(lǐng)域技術(shù)人員將是顯而易見的。例如,雖然上面描 述的實施例涉及具體的特征,本發(fā)明的范圍還包括具有特征的不同組合的實施例,以及不 包括所有描述的特征的實施例。因此,本發(fā)明的范圍旨在涵蓋落在本權(quán)利要求書的范圍之 內(nèi)的所有這樣的替代、修改和變化,以及所有的等同物。因此,以上描述不應被視為限制由 所附的權(quán)利要求書限定的本發(fā)明的范圍。
【權(quán)利要求】
1. 一種系統(tǒng),用于為交互式合成角色創(chuàng)建定制腳本,所述系統(tǒng)包括: 顯示設(shè)備,可操作于顯示圖形用戶界面; 顯示輸入/輸出設(shè)備,與所述顯示設(shè)備通信; 處理器,與所述顯示輸入/輸出設(shè)備通信,并且可操作于執(zhí)行存儲在存儲器中的指令; 以及 所述存儲器具有處理器可執(zhí)行指令,其中所述處理器可執(zhí)行指令使所述處理器傳送顯 示數(shù)據(jù)到所述顯示輸入/輸出設(shè)備,以使所述圖形用戶界面被顯示在所述顯示設(shè)備上,其 中所述圖形用戶界面包括交互式腳本編輯器,透過所述交互式腳本編輯器一組定制規(guī)則和 回應可由用戶輸入,其中每個所述定制規(guī)則代表可能引起零個或更多回應的環(huán)境刺激,并 且其中所述交互式腳本編輯器的一部分在視覺上地表示由所述交互式合成角色所執(zhí)行的 所述定制規(guī)則組和所述相關(guān)的回應之間的關(guān)系。
2. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述環(huán)境刺激因素包括數(shù)據(jù)輸入、環(huán)境觀察,或與 所述交互式合成角色的互動。
3. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中數(shù)據(jù)輸入包括從遠程源收集的當前天氣狀況,一 天中的時間,一周中的日期,位置,孩子的年齡,或以前的互動模式。
4. 權(quán)利要求2所述的系統(tǒng),其中所述環(huán)境觀測包括多個觀察的聲音、當前噪聲水平、物 件存在,或第二交互式合成角色的偵測。
5. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述回應包括聲音效果。
6. 根據(jù)權(quán)利要求5所述的系統(tǒng),其中聲音效果包括所述定制回應、媒體剪輯,或現(xiàn)場揚 聲器組中的一個的文本的語音模擬閱讀。
7. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述圖形用戶界面進一步包括字符界面以根據(jù)所 選字符建議腳本的方向。
8. 根據(jù)權(quán)利要求1所述的方法,其中所述回應包括動畫。
9. 一種用于開發(fā)交互式合成角色內(nèi)容的計算機執(zhí)行的方法,所述方法包括: 在終端上顯示用戶界面屏幕,所述用戶界面屏幕包括用于創(chuàng)建會話的會話規(guī)則編輯 器; 接收來自用戶的第一會話規(guī)則,以與用戶輸入進行匹配; 在所述用戶界面屏幕上顯示所述第一會話規(guī)則;以及 動態(tài)填充所述用戶界面屏幕上的第二會話規(guī)則,其中所述第二會話規(guī)則最初基于所述 第一會話規(guī)則,并且可以由用戶編輯。
10. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述第二會話規(guī)則包括由交 互式合成角色所執(zhí)行的回應。
11. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述第一會話規(guī)則包括年齡 相關(guān)。
12. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述第一會話規(guī)則包括環(huán)境 刺激。
13. 根據(jù)權(quán)利要求12的方法所述的計算機執(zhí)行方法,其中所述環(huán)境刺激包括由所述交 互式合成角色觀察的語音。
14. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述第一會話規(guī)則包括導航 指令,以指示狀態(tài)引擎將從第一會話規(guī)則移動到另一會話規(guī)則的條件。
15. 根據(jù)權(quán)利要求13的方法所述的計算機執(zhí)行方法,其中所述導航指令包括基于時間 的規(guī)則,以允許所述狀態(tài)引擎隨時間導航到不同會話規(guī)則。
16. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述用戶界面屏幕允許所述 用戶將類別與所述會話關(guān)聯(lián)。
17. 根據(jù)權(quán)利要求9的方法所述的計算機執(zhí)行方法,其中所述用戶界面屏幕包括模擬 器輸入,以允許所述用戶導航為所述交互式合成角色所創(chuàng)建的會話內(nèi)容。
18. -種方法包括: 在顯示設(shè)備上顯示被配置用于為交互式合成角色創(chuàng)建遍歷腳本的會話編輯器; 接收來自用戶的一組會話,其中每個會話規(guī)則包括由所述交互式合成角色執(zhí)行的一個 或多個回應; 生成來自所述會話規(guī)則組的所述遍歷腳本,其中所述遍歷腳本可以由狀態(tài)引擎導航; 以及 在數(shù)據(jù)庫中存儲所述遍歷腳本。
19. 權(quán)利要求18的方法,其中會話規(guī)則組包括多于一個交互實體的多路通信。
20. 根據(jù)權(quán)利要求18所述的方法,進一步包括當所述狀態(tài)引擎將過渡到另一會話規(guī)則 時,將導航指令與每個會話規(guī)則指示條件關(guān)聯(lián)。
21. 根據(jù)權(quán)利要求18所述的方法,還包括確定一個或多個回應何時包括由配音員所錄 制的短語。
22. 根據(jù)權(quán)利要求18所述的方法,進一步包括將類別與所述遍歷腳本關(guān)聯(lián)。
23. 根據(jù)權(quán)利要求18所述的方法,進一步包括將年齡范圍與每個所述會話規(guī)則或回應 關(guān)聯(lián)。
24. 根據(jù)權(quán)利要求18所述的方法,其中由所述交互式合成角色執(zhí)行的一個或多個回應 包括為所述交互式合成角色產(chǎn)生可聽或文本語音,執(zhí)行一個或多個動畫,或播放一個或多 個聲音效果。
25. -種配置用于呈現(xiàn)人工智能(AI)系統(tǒng)的會話的腳本編寫應用,其包括圖形用戶界 面窗口中的會話規(guī)則和回應,其中每個會話規(guī)則與由所述AI系統(tǒng)所執(zhí)行的零個或更多回 應,或行動相關(guān)。
26. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述圖形用戶界面窗口被配置用于通 過能夠使用狀態(tài)引擎導航所述會話規(guī)則的對話框模擬器分層地呈現(xiàn)所述會話的第一視覺 表示,或呈現(xiàn)所述會話的第二視覺表示。
27. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述圖形用戶界面由創(chuàng)意性非技術(shù)的 用戶使用。
28. 根據(jù)權(quán)利要求27所述的腳本編寫應用,其中所述創(chuàng)意性非技術(shù)的用戶是劇本作 家、小說家、作家,或藝術(shù)家。
29. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中當回應中的一個超過特定的長度時, 所述圖形用戶界面給用戶提供視覺反饋。
30. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述圖形用戶界面提供反饋給用戶以 表明一個或多個回應可能不能夠由所述AI系統(tǒng)顯示其全部。
31. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述回應包括監(jiān)測特定語音輸入。
32. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述回應包括使所述AI系統(tǒng)執(zhí)行行動 或動作。
33. 根據(jù)權(quán)利要求25所述的腳本編寫應用,其中所述反應包括播放媒體剪輯。
34. 根據(jù)權(quán)利要求25所述的腳本編寫應用,進一步包括被配置用于接收所述會話規(guī) 貝1J,并且在所述圖形用戶界面窗口呈現(xiàn)建議插件的建議引擎,其中所述建議插件被配置用 于為進一步的會話規(guī)則提供建議。
35. 根據(jù)權(quán)利要求25所述的腳本編寫應用,進一步配置用于創(chuàng)建和再使用會話規(guī)則和 回應、或模板的泛型集合,其中所述模板提供初始起點以為所述AI系統(tǒng)創(chuàng)建新內(nèi)容。
36. 根據(jù)權(quán)利要求25所述的腳本編寫應用,進一步配置用于為所述AI系統(tǒng)中的一個或 多個所述回應創(chuàng)建、導入或關(guān)聯(lián)多個包含配音員錄制的音頻文件。
【文檔編號】G06F3/048GK104508629SQ201380039543
【公開日】2015年4月8日 申請日期:2013年7月25日 優(yōu)先權(quán)日:2012年7月25日
【發(fā)明者】馬丁·雷迪, 奧倫·M·雅各布, 羅伯特·G·坡德斯塔, 盧卡斯·R·A·艾夫斯, 凱瑟琳·黑爾 申請人:托伊托克有限公司