TW202307644A - 用於助理系統的主動監聽 - Google Patents
用於助理系統的主動監聽 Download PDFInfo
- Publication number
- TW202307644A TW202307644A TW111115051A TW111115051A TW202307644A TW 202307644 A TW202307644 A TW 202307644A TW 111115051 A TW111115051 A TW 111115051A TW 111115051 A TW111115051 A TW 111115051A TW 202307644 A TW202307644 A TW 202307644A
- Authority
- TW
- Taiwan
- Prior art keywords
- user
- assistant
- certain embodiments
- client system
- user input
- Prior art date
Links
- 230000000007 visual effect Effects 0.000 claims abstract description 125
- 238000000034 method Methods 0.000 claims abstract description 97
- 230000004044 response Effects 0.000 claims description 72
- 230000015654 memory Effects 0.000 claims description 59
- 239000004984 smart glass Substances 0.000 claims description 53
- 230000003190 augmentative effect Effects 0.000 claims description 9
- 230000001965 increasing effect Effects 0.000 claims description 8
- 239000011521 glass Substances 0.000 claims description 7
- 230000009471 action Effects 0.000 description 123
- 230000006855 networking Effects 0.000 description 84
- 239000003795 chemical substances by application Substances 0.000 description 46
- 230000008569 process Effects 0.000 description 44
- 238000004891 communication Methods 0.000 description 40
- 238000012545 processing Methods 0.000 description 38
- 230000006870 function Effects 0.000 description 35
- 230000008901 benefit Effects 0.000 description 28
- 230000003993 interaction Effects 0.000 description 28
- 230000000875 corresponding effect Effects 0.000 description 21
- 230000000694 effects Effects 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 16
- 238000004458 analytical method Methods 0.000 description 12
- 238000012790 confirmation Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 11
- 238000013518 transcription Methods 0.000 description 11
- 230000035897 transcription Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 9
- 230000033001 locomotion Effects 0.000 description 8
- 238000013475 authorization Methods 0.000 description 7
- 239000003550 marker Substances 0.000 description 7
- 230000005236 sound signal Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000001976 improved effect Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 230000000116 mitigating effect Effects 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000001755 vocal effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- HCHKCACWOHOZIP-UHFFFAOYSA-N Zinc Chemical compound [Zn] HCHKCACWOHOZIP-UHFFFAOYSA-N 0.000 description 2
- 125000002015 acyclic group Chemical group 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000005352 clarification Methods 0.000 description 2
- 230000019771 cognition Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000001073 episodic memory Effects 0.000 description 2
- 238000005562 fading Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 235000013550 pizza Nutrition 0.000 description 1
- 238000011045 prefiltration Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback of the input speech
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在一實施例中,一種方法包含從第一客戶端系統接收第一使用者輸入,其包括和助理機器人相關的喚醒單詞、設定所述助理機器人進入監聽模式,其中當所述助理機器人在所述監聽模式中,連續非視覺回授經由所述第一客戶端系統來提供、當所述助理機器人在所述監聽模式中,從所述第一客戶端系統接收第二使用者輸入,其包括使用者發聲、根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束、以及設定所述助理機器人進入不活躍模式,其中當所述助理機器人在所述不活躍模式中,所述非視覺回授經由所述第一客戶端系統而被中斷。
Description
此揭露內容大致有關於網路環境內的資料庫以及檔案管理,並且尤其是有關用於智慧型助理系統的硬體及軟體。
優先權
此申請案主張2021年4月21日申請的美國臨時專利申請案號63/177812的益處,其被納入在此作為參考。
助理系統可為使用者的利益而根據使用者輸入、位置感知、以及獲取來自各種線上來源的資訊(例如天氣狀況、交通擁塞、新聞、股票價格、使用者的行事曆、零售價格、等等)的能力的組合來提供資訊或服務。所述使用者輸入可包含尤其是在即時通訊應用程式或其它應用程式中的文本(例如,線上聊天)、語音、影像、動作、或是其之組合。所述助理系統可根據所述使用者輸入來執行管理員類型的服務(例如,預約晚餐、購買活動票券、安排旅行)或是提供資訊。所述助理系統亦可在無使用者起始或互動下,根據線上資訊及事件來執行管理或資料處理的工作。那些可藉由助理系統執行的工作的例子可包含行事曆管理(例如,傳送有關晚餐約會使用者由於交通狀況而快遲到的警告、更新每一方的行事曆、以及更改餐廳的預約時間)。所述助理系統可藉由計算裝置、應用程式介面(API)、以及應用程式在使用者裝置上的普及的組合而被致能。
社群網路系統(其可包含社群網路網站)可致能其使用者(例如個人或團體)來和其互動以及透過其來彼此互動。所述社群網路系統可在來自使用者的輸入下,在所述社群網路系統中產生及儲存和所述使用者相關的使用者簡檔(profile)。所述使用者簡檔可包含人口統計資訊、通訊通道資訊、以及有關使用者個人的興趣資訊。所述社群網路系統亦可在來自使用者的輸入下,產生及儲存所述使用者與所述社群網路系統的其他使用者的關係記錄,並且提供服務(例如個人資料/新聞動態消息貼文、相片分享、活動社團、消息傳遞、遊戲、或是廣告)以促進在兩個或多個使用者之間的社交互動。
所述社群網路系統可透過一或多個網路,傳送相關其服務的內容或訊息至使用者的行動或其它計算裝置。使用者亦可在所述使用者的行動或其它計算裝置上安裝軟體應用程式,以用於存取在所述社群網路系統之內的所述使用者的使用者簡檔及其它資料。所述社群網路系統可以產生一組個人化內容物件以顯示給使用者,例如連接到所述使用者的其他使用者的匯總報導的新聞動態消息。
在特定實施例中,所述助理系統可協助使用者獲得資訊或服務。所述助理系統可致能所述使用者在有狀態及多回合對話中經由各種模式的使用者輸入(例如,音訊、語音、文本、影像、視訊、姿勢、動作、位置、方位)來和所述助理系統互動,以從所述助理系統得到協助。舉例且非限制性的,所述助理系統可支援單模態輸入(例如,只有語音輸入)、多模態輸入(例如,語音輸入及文本輸入)、混合/多模態輸入、或是其之任意組合。由使用者提供的使用者輸入可以是和特定相關助理的工作相關,並且例如可包含使用者請求(例如,口頭請求一動作的資訊或執行)、使用者和所述助理系統相關的一助理應用程式的互動(例如,經由觸碰或姿勢的UI元素的選擇)、或是所述助理系統可偵測及理解的任何其它類型的適當使用者輸入(例如,藉由所述使用者的客戶端裝置偵測到的使用者移動)。所述助理系統可產生及儲存使用者簡檔,其包括和所述使用者相關的個人以及情境資訊(contextual information)兩者。在特定實施例中,所述助理系統可利用自然語言理解技術(NLU)來分析所述使用者輸入。所述分析可以是根據所述使用者的使用者簡檔,以獲得更加個人化及情境感知的理解。所述助理系統可根據所述分析來解析和所述使用者輸入相關的實體。在特定實施例中,所述助理系統可和不同代理互動,以獲得和所解析出的實體相關的資訊或服務。所述助理系統可針對於所述使用者,藉由利用自然語言生成技術(NLG)來產生一有關所述資訊或服務的響應。透過和所述使用者的互動,所述助理系統可使用對話管理技術來管理及推進與所述使用者的談話流程。在特定實施例中,所述助理系統可藉由概述所述資訊來進一步協助所述使用者有效用且有效率地消化所獲得的資訊。所述助理系統亦可藉由提供幫助使用者和一線上社群網路互動的工具(例如,產生貼文、評論、訊息),來協助所述使用者更加參與所述線上社群網路。所述助理系統額外可協助所述使用者管理不同工作,例如是追蹤活動。在特定實施例中,所述助理系統可在無使用者輸入下,根據所述使用者簡檔來在一相關所述使用者的時間主動地執行相關使用者興趣及偏好的工作。在特定實施例中,所述助理系統可檢查隱私設定,以確保存取一使用者的簡檔或是其他使用者資訊並且執行不同工作是所述使用者的隱私設定所容許的主題。
在特定實施例中,所述助理系統可經由建構在客戶側的程序以及伺服器側的程序兩者上的一混合架構來協助所述使用者。所述客戶側的程序以及所述伺服器側的程序可以是兩個用於處理一使用者輸入的平行工作流程,並且提供協助給所述使用者。在特定實施例中,所述客戶側的程序可在和一使用者相關的一客戶端系統上,本地加以執行。對比之下,所述伺服器側的程序可在一或多個計算系統上,遠端地加以執行。在特定實施例中,在所述客戶端系統上的一仲裁器可協調接收使用者輸入(例如,一音訊信號),決定是否使用一客戶側程序、一伺服器側程序、或是兩者以響應於所述使用者輸入,並且分析來自每一個程序的處理結果。所述仲裁器可根據前述分析來指示在所述客戶側或是伺服器側上的代理來執行和所述使用者輸入相關的工作。所述執行結果可進一步被呈現為輸出至所述客戶端系統。藉由利用客戶側及伺服器側的程序兩者,所述助理系統可在計算資源的最佳利用下有效地協助使用者,同時保護使用者隱私且強化安全性。
在特定實施例中,當一助理致能裝置的麥克風正在監聽一使用者而且所述使用者正在說話時,在所述使用者說一喚醒單詞至所述助理致能裝置之後,所述助理系統可提供主動非視覺回授(例如,音訊及觸覺)至所述使用者。連續非視覺回授可藉由給予使用者指出所述助理系統正主動地監聽他們的發聲來改善所述使用者的體驗。在所述助理致能裝置與一隨附裝置配對(例如,智慧型眼鏡配對一智慧型手機)的情形中,此特點亦可有降低/消除因為在所述配對的隨附裝置上執行的助理隨附應用程式的作業系統所造成的阻礙的益處。儘管此揭露內容描述藉由特定系統用一特定方式來提供特定回授,但是此揭露內容思及藉由任何適當系統以任何適當方式來提供任何適當回授。
在特定實施例中,所述助理系統可從一第一客戶端系統接收一第一使用者輸入,其包括和一助理機器人相關的一喚醒單詞。所述助理系統接著可設定所述助理機器人進入一監聽模式。相應地,當所述助理機器人在所述監聽模式中,一連續非視覺回授可經由所述第一客戶端系統來加以提供。在特定實施例中,當所述助理機器人在所述監聽模式中,所述助理系統可從所述第一客戶端系統接收一第二使用者輸入,其包括一使用者發聲。所述助理系統接著可根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束。所述助理系統可進一步設定所述助理機器人進入一不活躍(inactive)模式。在特定實施例中,當所述助理機器人在所述不活躍模式中,所述非視覺回授可透過所述第一客戶端系統來中斷。在特定實施例中,所述第一及第二使用者輸入可能包括和所述助理系統的整個對話會談、或者可以是和所述助理系統的多回合對話會談的部分。
某些技術上的挑戰存在於利用增大的操作能力來主動監聽。一技術上的挑戰可能包含當一客戶端系統被鎖住時,增加在所述客戶端系統上的助理系統的操作能力。由在此揭露實施例所提出以解決此挑戰的解決方案可以是透過所述客戶端系統所提供的連續非視覺回授,因為所述作業系統可增加所述計算能力,所述助理系統可在不解鎖所述客戶端系統下響應於所述非視覺回授來加以利用。另一技術上的挑戰可能包含避免阻礙使用者輸入一語音命令的感知能力。由在此揭露實施例所提出以解決此挑戰的解決方案可以是不明顯且非中斷的新設計背景聲音,其不會造成有關所述使用者何時應該發出所述語音命令的混淆。
在此揭露的某些實施例可提供一或多個技術上的優點。所述實施例的一技術上的優點可包含改善在一使用者以及所述助理系統之間由所述使用者感知的來回互動的節奏,因為所述連續的聲音可藉由消除在所述互動中的靜默停頓來最小化所述互動延遲或延時的感知。此於是可作用以改善整體的使用者體驗以及感知效率。所述實施例的另一技術上的優點可包含改善的使用者感知回授,因為當所述連續非視覺及/或視覺回授存在時,使用者可在所述助理系統正在主動地監聽並且處理輸入上具有較高可信度。在此揭露的某些實施例可提供以上技術上的優點的全無、某些、或是全部。一或多個其它技術上的優點對於有鑑於本揭露內容的圖式、說明及請求項的熟習此項技術者而言可以是相當明顯。
在此揭露的實施例只是例子而已,因而此揭露內容的範疇並不限於它們。特定實施例可包含在此揭露的實施例的構件、元件、特點、功能、操作、或是步驟的全部、部分或是全無。根據本發明的實施例是特別揭露在所附的請求項中,其針對於方法、儲存媒體、系統以及電腦程式產品,其中在一請求項類型(例如方法)中被提及的任何特點都也可在另一請求項類型(例如系統)中主張。在所附請求項中的向前依附或參照只是為了格式的原因來選擇。然而,任何產生自刻意的參考回到任何先前的請求項之標的(尤其是多重依附)也都可主張,因而請求項及其之特點的任意組合被揭示並且可主張,而不論在所附請求項中所選的依附為何。可主張的標的不只包括如同在所附請求項中陳述的特點的組合,而且亦包括在所述請求項中的特點的任何其它組合,其中在所述請求項中提及的每一個特點可和任何在所述請求項中的其它特點或是其它特點的組合來加以組合。再者,在此敘述或描繪的實施例及特點的任一個都可在一個別請求項中主張,且/或用與在此敘述或描繪的任何實施例或特點、或是與所附請求項的特點的任一個的任意組合來主張。
圖1描繪和一助理系統相關的一範例的網路環境100。網路環境100包含藉由一網路110來彼此連接的一客戶端系統130、一助理系統140、一社群網路系統160、以及一第三方系統170。儘管圖1描繪一客戶端系統130、一助理系統140、一社群網路系統160、一第三方系統170、以及一網路110的一特定配置,但是此揭露內容思及一客戶端系統130、一助理系統140、一社群網路系統160、一第三方系統170、以及一網路110的任何適當的配置。舉例且非限制性的,一客戶端系統130、一社群網路系統160、一助理系統140、以及一第三方系統170中的兩個或多個可略過網路110來直接彼此連接。作為另一例子的是,一客戶端系統130、一助理系統140、一社群網路系統160、以及一第三方系統170中的兩個或多個可整體或部分地實體或邏輯上彼此並置在一起。再者,儘管圖1描繪一特定數量的客戶端系統130、助理系統140、社群網路系統160、第三方系統170、以及網路110,但是此揭露內容思及任何適當數量的客戶端系統130、助理系統140、社群網路系統160、第三方系統170、以及網路110。舉例且非限制性的,網路環境100可包含多個客戶端系統130、助理系統140、社群網路系統160、第三方系統170、以及網路110。
此揭露內容思及任何適當的網路110。舉例且非限制性的,一網路110的一或多個部分可包含一特用網路、一內部網路、一外部網路、一虛擬私人網路(VPN)、一區域網路(LAN)、一無線LAN(WLAN)、一廣域網路(WAN)、一無線WAN(WWAN)、一都會區域網路(MAN)、網際網路的一部分、公共交換電信網路(PSTN)的一部分、一蜂巢式技術為基礎的網路、一衛星通訊技術為基礎的網路、其它網路110、或是兩個或多個此種網路110的組合。
鏈路150可連接一客戶端系統130、一助理系統140、一社群網路系統160、以及一第三方系統170至一通訊網路110、或是連接至彼此。此揭露內容思及任何適當的鏈路150。在特定實施例中,一或多個鏈路150包含一或多個有線的(例如數位用戶線路(DSL)或是有線電纜資料服務介面規範(DOCSIS))、無線的(例如Wi-Fi或是全球互通微波存取(WiMAX))、或是光學的(例如同步光纖網路(SONET)或是同步數位階層(SDH))連結。在特定實施例中,一或多個鏈路150分別包含一臨時網路、一內部網路、一外部網路、一VPN、一LAN、一WLAN、一WAN、一WWAN、一MAN、網際網路的一部分、PSTN的一部分、一蜂巢式技術為基礎的網路、一衛星通訊技術為基礎的網路、其它鏈路150、或是兩個或多個此種鏈路150的一組合。鏈路150並不一定需要遍及網路環境100都相同。一或多個第一鏈路150可在一或多個方面與一或多個第二鏈路150不同。
在特定實施例中,一客戶端系統130可以是任何適當的電子裝置,其包含硬體、軟體、或是內嵌的邏輯構件、或是兩個或多個此種構件的組合,並且可以是能夠實行藉由一客戶端系統130所實施或支援的功能。舉例且非限制性的,所述客戶端系統130可包含例如是桌上型電腦、筆記型電腦或膝上型電腦的電腦系統、小筆電、平板電腦、電子書閱讀器、GPS裝置、相機、個人數位助理(PDA)、手持式電子裝置、行動電話、智慧型手機、智慧型揚聲器、智慧型手錶、智慧型眼鏡、擴增實境(AR)智慧型眼鏡、虛擬實境(VR)頭戴式裝置、其它適當的電子裝置、或是其之任何適當的組合。在特定的實施例中,所述客戶端系統130可以是一智慧型助理裝置。更多有關智慧型助理裝置的資訊可見於2018年4月9日申請的美國專利申請案號15/949011、2018年10月5日申請的美國專利申請案號16/153574、2018年1月3日申請的美國設計專利申請案號29/631910、2018年1月2日申請的美國設計專利申請案號29/631747、2018年1月3日申請的美國設計專利申請案號29/631913、以及2018年1月3日申請的美國設計專利申請案號29/631914中,所述美國專利申請案的每一個被納入作為參考。此揭露內容思及任何適當的客戶端系統130。在特定實施例中,一客戶端系統130可致能在一客戶端系統130的一網路使用者能夠利用一網路110。所述客戶端系統130亦可致能所述使用者能夠和在其它客戶端系統130的其他使用者通訊。
在特定實施例中,一客戶端系統130可包含一網路瀏覽器132,並且可具有一或多個附加元件、外掛、或是其它延伸功能。在一客戶端系統130的使用者可輸入一統一資源定位符(URL)或是其它位址,其導引一網路瀏覽器132至一特定伺服器(例如伺服器162、或是和一第三方系統170相關的一伺服器),並且所述網路瀏覽器132可產生一超文本傳輸協定(HTTP)請求,並且傳遞所述HTTP請求至伺服器。所述伺服器可接受所述HTTP請求,並且響應於所述HTTP請求來傳遞至一客戶端系統130一或多個超文本標記語言(HTML)檔案。所述客戶端系統130可根據來自所述伺服器的HTML檔案來顯現一網路介面(例如一網頁),以用於呈現給使用者。此揭露內容是思及任何適當的來源檔案。舉例且非限制性的,一網路介面可根據特定需求,從HTML檔案、可延伸超文本標記語言(XHTML)檔案、或是可延伸標記語言(XML)檔案來加以呈現。此種介面亦可執行腳本、標記語言及腳本的組合、與類似者。在此,對於一網路介面的參照包含一或多個對應的來源檔案(一瀏覽器可利用其以顯現所述網路介面),並且在適當情況反之亦然。
在特定實施例中,一客戶端系統130可包含安裝在所述客戶端系統130之上的一社群網路應用程式134。在一客戶端系統130的使用者可利用所述社群網路應用程式134來接達線上社交網路。在所述客戶端系統130的使用者可利用所述社群網路應用程式134來和所述使用者的社交聯繫(例如,朋友、追蹤者、追蹤的帳號、聯絡人、等等)通訊。在所述客戶端系統130的使用者亦可利用所述社群網路應用程式134來和在所述線上社群網路上的複數個內容物件(例如,貼文、新聞報導、限時動態、等等)互動。舉例且非限制性的,使用者可利用所述社群網路應用程式134來瀏覽趨勢話題以及新聞快報。
在特定實施例中,一客戶端系統130可包含一助理應用程式136。在一客戶端系統130的使用者可利用所述助理應用程式136來和所述助理系統140互動。在特定實施例中,所述助理應用程式136可包含一助理機器人(xbot)功能,以作為用於和所述客戶端系統130的使用者互動的一前端介面,其包含接收使用者輸入以及呈現輸出。在特定實施例中,所述助理應用程式136可包括一獨立應用程式。在特定實施例中,所述助理應用程式136可被整合到所述社群網路應用程式134或是另一適當的應用程式(例如,一消息傳遞應用程式)中。在特定實施例中,所述助理應用程式136亦可被整合到所述客戶端系統130、一助理硬體裝置、或是任何其它適當的硬體裝置中。在特定實施例中,所述助理應用程式136亦可以是所述助理系統140的部分。在特定的實施例中,所述助理應用程式136可經由所述網路瀏覽器132來加以利用。在特定實施例中,使用者可藉由透過各種模式(例如,音訊、語音、文字、視覺、影像、視頻、姿勢、動作、活動、位置、方位)來提供使用者輸入至所述助理應用程式136來和所述助理系統140互動。所述助理應用程式136可傳遞(例如,經由所述助理機器人)所述使用者輸入至所述助理系統140。根據所述使用者輸入,所述助理系統140可產生響應。所述助理系統140可傳送所產生的響應至所述助理應用程式136。所述助理應用程式136接著可經由各種模式(例如,音訊、文字、影像、以及視頻)來呈現所述響應給在所述客戶端系統130的使用者。舉例且非限制性的,使用者可經由所述客戶端系統130的麥克風,藉由提供一使用者輸入(例如,一口頭請求有關附近的車輛交通的目前狀態的資訊)至所述助理機器人來和所述助理系統140互動。所述助理應用程式136接著可以透過網路110來傳遞所述使用者輸入至所述助理系統140。所述助理系統140於是可分析所述使用者輸入、根據所述使用者輸入的分析(例如,從一第三方來源獲得的車輛交通資訊)來產生一響應、以及傳遞所產生的響應回到所述助理應用程式136。所述助理應用程式136接著可用任何適當方式(例如,在所述客戶端系統130的一顯示器上顯示一文字為基礎的推送通知、及/或描繪附近的車輛交通的本地地圖的影像)來呈現所產生的響應給所述使用者。
在特定實施例中,一客戶端系統130可實施喚醒詞偵測技術以容許使用者利用和助理系統140相關的一或多個喚醒詞來便利地啟動所述助理系統140。舉例且非限制性的,在客戶端系統130上的系統音訊API可持續地監視在所述客戶端系統130接收到的包括音訊資料(例如,語音資料的訊框)的使用者輸入。在此例子中,和所述助理系統140相關的一喚醒詞可以是所述語音短語“嘿助理”。在此例子中,當在客戶端系統130上的系統音訊API在所監測的音訊資料中偵測到所述語音短語“嘿助理”時,所述助理系統140可被啟動以用於後續和所述使用者的互動。在替代的實施例中,類似偵測技術可被實施來啟動所述助理系統140,其利用和所述助理系統140相關的特定非音訊的使用者輸入。例如,所述非音訊的使用者輸入可以是藉由客戶端系統130的一低功率感測器(例如,相機)偵測到的特定的視覺信號。舉例且非限制性的,所述視覺信號可以是一靜態影像(例如,條碼、QR碼、通用產品代碼(UPC))、所述使用者的位置(例如,所述使用者朝向客戶端系統130的注視)、一使用者動作(例如,所述使用者指向一物體)、或是任何其它適當的視覺信號。
在特定實施例中,一客戶端系統130可包含一顯現裝置137以及選配的一隨附裝置138。所述顯現裝置137可被配置以顯現藉由所述助理系統140所產生的輸出給所述使用者。所述隨附裝置138可被配置以在特定情況中(例如,當所述顯現裝置137無法執行所述計算時),在所述隨附裝置138上本地(亦即,在裝置上)執行和特定工作相關的計算(例如,和所述助理系統140的通訊)。在特定的實施例中,所述客戶端系統130、所述顯現裝置137、及/或所述隨附裝置138分別可以是一適當電子裝置,其包含硬體、軟體、或內嵌的邏輯構件、或是兩個或多個此種構件的組合,並且可以是能夠個別或合作地實行藉由在此所述的客戶端系統130所實施或支援的功能。舉例且非限制性的,所述客戶端系統130、所述顯現裝置137、及/或所述隨附裝置138分別可包含例如是桌上型電腦、筆記型電腦或膝上型電腦的電腦系統、小筆電、平板電腦、電子書閱讀器、GPS裝置、相機、個人數位助理(PDA)、手持式電子裝置、行動電話、智慧型手機、智慧型揚聲器、虛擬實境(VR)頭戴式裝置、擴增實境(AR)智慧型眼鏡、其它適當的電子裝置、或是其之任何適當的組合。在特定的實施例中,所述客戶端系統130、所述顯現裝置137、以及所述隨附裝置138中的一或多個可運作為一智慧型助理裝置。舉例且非限制性的,所述顯現裝置137可包括智慧型眼鏡,而所述隨附裝置138可包括一智慧型手機。舉另一例子且非限制性的,所述顯現裝置137可包括一智慧型手錶,而所述隨附裝置138可包括一智慧型手機。舉又一例子且非限制性的,所述顯現裝置137可包括智慧型眼鏡,而所述隨附裝置138可包括用於所述智慧型眼鏡的一智慧型遙控器。舉又一例子且非限制性的,所述顯現裝置137可包括一VR/AR頭戴式裝置,而所述隨附裝置138可包括一智慧型手機。
在特定實施例中,使用者可個別或組合地利用所述顯現裝置137或是所述隨附裝置138來和所述助理系統140互動。在特定實施例中,所述客戶端系統130、所述顯現裝置137、以及所述隨附裝置138中的一或多個可實施一多階段喚醒詞偵測模型,以藉由持續地監視和助理系統140相關的一或多個喚醒詞來致能使用者能夠便利地啟動所述助理系統140。在所述喚醒詞偵測模型的一第一階段,所述顯現裝置137可接收音訊的使用者輸入(例如,語音資料的訊框)。若在所述顯現裝置137以及所述隨附裝置138之間的無線連線是可利用的,則在所述顯現裝置137上的應用程式可經由所述無線連線來傳遞所接收到音訊的使用者輸入至所述隨附裝置138上的隨附應用程式。在所述喚醒詞偵測模型的一第二階段,在所述隨附裝置138上的隨附應用程式可處理所接收到音訊的使用者輸入以偵測和所述助理系統140相關的一喚醒詞。在所述隨附裝置138上的隨附應用程式接著可經由無線網路110來傳遞所偵測到的喚醒詞至和所述助理系統140相關的一伺服器。在所述喚醒詞偵測模型的一第三階段,和所述助理系統140相關的伺服器可在所偵測到的喚醒詞上執行一關鍵詞驗證,以驗證所述使用者是否打算啟動所述助理系統140並且從所述助理系統140接受協助。在替代的實施例中,所述處理、偵測、或是關鍵詞驗證的任一個都可藉由所述顯現裝置137及/或所述隨附裝置138來加以執行。在特定實施例中,當所述助理系統140已經被所述使用者啟動時,在所述顯現裝置137上的一應用程式可被配置以從所述使用者接收使用者輸入,並且在所述隨附裝置138上的一隨附應用程式可被配置以處理藉由在所述顯現裝置137上的應用程式接收到的使用者輸入(例如,使用者請求)。在特定實施例中,所述顯現裝置137以及所述隨附裝置138可經由一或多個無線通訊協定(例如,藍芽)來和彼此相關聯的(亦即,配對的)。
以下範例的工作流程描繪一顯現裝置137以及一隨附裝置138如何可處理由一使用者提供的一使用者輸入。在此例子中,在所述顯現裝置137上的一應用程式可接收一使用者輸入,其包括被導引至所述顯現裝置137的一使用者請求。在所述顯現裝置137上的應用程式接著可判斷在所述顯現裝置137以及所述隨附裝置138之間的一無線的連線的狀態(亦即,繫連狀態)。若在所述顯現裝置137以及所述隨附裝置138之間的無線連線是不可利用的,則在所述顯現裝置137上的應用程式可經由所述網路110來傳遞所述使用者請求(選配地包含所述顯現裝置137可利用的額外資料及/或情境資訊)至所述助理系統140。所述助理系統140接著可對於所述使用者請求產生一響應,並且傳遞所產生的響應回到所述顯現裝置137。所述顯現裝置137接著可用任何適當的方式來呈現所述響應給所述使用者。或者是,若在所述顯現裝置137以及所述隨附裝置138之間的一無線連線是可利用的,則在所述顯現裝置137上的應用程式可經由所述無線連線來傳遞所述使用者請求(選配地包含所述顯現裝置137可利用的額外資料及/或情境資訊)至所述隨附裝置138上的隨附應用程式。在所述隨附裝置138上的隨附應用程式接著可經由所述網路110來傳遞所述使用者請求(選配地包含所述隨附裝置138可利用的額外資料及/或情境資訊)至所述助理系統140。所述助理系統140接著可對於所述使用者請求產生一響應,並且傳遞所產生的響應回到所述隨附裝置138。在所述隨附裝置138上的隨附應用程式接著可傳遞所產生的響應至所述顯現裝置137上的應用程式。所述顯現裝置137接著可用任何適當的方式來呈現所述響應給所述使用者。在前述範例的工作流程中,所述顯現裝置137以及所述隨附裝置138分別可在所述工作流程的每一個別步驟執行一或多個計算及/或程序。在特定的實施例中,在此揭露的計算及/或程序的執行可適應性被切換在所述顯現裝置137以及所述隨附裝置138之間,其至少部分根據所述顯現裝置137及/或所述隨附裝置138的裝置狀態、和所述使用者輸入相關的一工作、及/或一或多個額外因素。舉例且非限制性的,一因數可以是在所述顯現裝置137以及所述隨附裝置138之間的所述無線連線的信號強度。例如,若在所述顯現裝置137以及所述隨附裝置138之間的所述無線連線的信號強度是強的,則所述計算以及程序可適應性被切換成實質藉由所述隨附裝置138來執行的,以便於例如受益於所述隨附裝置138的CPU的較大處理能力。或者是,若在所述顯現裝置137以及所述隨附裝置138之間的所述無線連線的信號強度是弱的,則所述計算及程序可適應性被切換成實質藉由所述顯現裝置137以一獨立方式來執行的。在特定實施例中,若所述客戶端系統130並不包括隨附裝置138,則前述的計算及程序可單獨藉由所述顯現裝置137以一獨立方式來執行。
在特定實施例中,一助理系統140可協助使用者於各種相關助理的工作。當執行這些相關助理的工作時,所述助理系統140可和所述社群網路系統160及/或所述第三方系統170互動。
在特定實施例中,所述社群網路系統160可以是一網路可定址計算系統,其可代管一線上社群網路。所述社群網路系統160可產生、儲存、接收、並且傳送社群網路資料,例如使用者簡檔資料、概念簡檔資料、社交圖的資訊、或是其它相關所述線上社群網路的適當資料。所述社群網路系統160可藉由網路環境100的其它構件直接或是經由一網路110來加以接達。舉例且非限制性的,一客戶端系統130可利用一網路瀏覽器132或是和所述社群網路系統160相關的一原生應用程式(例如,一行動社群網路應用程式、一消息傳遞應用程式、其它適當應用程式、或是其之任意組合)直接或是經由一網路110來接達所述社群網路系統160。在特定實施例中,所述社群網路系統160可包含一或多個伺服器162。每一個伺服器162可以是單一伺服器、或是跨越多個電腦或多個資料中心的一分散式伺服器。舉例且非限制性的,每一個伺服器162可以是一網路伺服器、一新聞伺服器、一郵件伺服器、一訊息伺服器、一廣告伺服器、一檔案伺服器、一應用程式伺服器、一交換伺服器、一資料庫伺服器、一代理伺服器、其它適合用於執行在此所述的功能或程序的伺服器、或是其之任意組合。在特定實施例中,每一個伺服器162可包含硬體、軟體、或是內嵌的邏輯構件、或是兩個或多個此種構件的組合,以用於實行藉由伺服器162所實施或支援的適當功能。在特定實施例中,所述社群網路系統160可包含一或多個資料儲存庫164。資料儲存庫164可被用來儲存各種類型的資訊。在特定實施例中,被儲存在資料儲存庫164中的資訊可根據特定資料結構來組織。在特定實施例中,每一個資料儲存庫164可以是一關聯式、列式、關聯性、或是其它適當的資料庫。儘管此揭露內容是描述或描繪特定類型的資料庫,但是此揭露內容思及任何適當類型的資料庫。特定實施例可提供介面,其致能一客戶端系統130、一社群網路系統160、一助理系統140、或是一第三方系統170能夠管理、擷取、修改、增加、或是刪除在資料儲存庫164中所儲存的資訊。
在特定實施例中,所述社群網路系統160可在一或多個資料儲存庫164中儲存一或多個社交圖。在特定的實施例中,一社交圖可包含多個節點,其可包含多個使用者節點(分別對應於一特定的使用者)或是多個概念節點(分別對應於一特定概念)、以及多個連接所述節點的邊緣。所述社群網路系統160可提供所述線上社群網路的使用者和其他使用者通訊及互動的能力。在特定實施例中,使用者可經由所述社群網路系統160來加入所述線上社群網路,並且接著增加連結(例如,關係)至他們想要連結到的所述社群網路系統160的一些其他使用者。在此,所述術語“朋友”可以是指使用者已經經由所述社群網路系統160來和其形成連結、關聯、或是關係的所述社群網路系統160的任何其他使用者。
在特定實施例中,所述社群網路系統160可提供使用者在藉由所述社群網路系統160所支援的各種類型的項目或物件上採取動作的能力。舉例且非限制性的,所述項目及物件可包含所述社群網路系統160的使用者可隸屬的群組或社群網路、使用者可能感興趣的事件或日曆項目、使用者可利用的電腦為基礎的應用程式、容許使用者能夠經由所述服務來購買或販售物品的交易、和使用者可能執行的廣告互動、或是其它適當的項目或物件。使用者可和能夠在所述社群網路系統160中或是藉由一第三方系統170的一外部系統來代表的任何事物互動,所述第三方系統170與所述社群網路系統160分開的,並且經由一網路110來耦接至所述社群網路系統160。
在特定實施例中,所述社群網路系統160可以是能夠連結各種實體。舉例且非限制性的,所述社群網路系統160可致能使用者和彼此互動,並且從第三方系統170或其它實體接收內容、或是容許使用者能夠透過一應用程式介面(API)或其它通訊通道來和這些實體互動。
在特定實施例中,一第三方系統170可包含一或多種類型的伺服器、一或多個資料儲存庫、一或多個包含但不限於API的介面、一或多個網路服務、一或多個內容來源、一或多個網路、或是例如伺服器可和其通訊的任何其它適當的構件。一第三方系統170可藉由一不同於操作所述社群網路系統160的實體之實體來操作。然而,在特定實施例中,所述社群網路系統160以及第三方系統170可彼此結合地運作,以提供社群網路服務給所述社群網路系統160或是第三方系統170的使用者。從此意思上說,所述社群網路系統160可提供一平台或骨幹,而其它例如是第三方系統170的系統可利用來提供社群網路服務及功能給橫跨網際網路的使用者。
在特定實施例中,一第三方系統170可包含一第三方內容物件提供者。一第三方內容物件提供者可包含一或多個內容物件的來源,其可被傳遞至一客戶端系統130。舉例且非限制性的,內容物件可包含有關使用者感興趣的事物或活動的資訊,例如是電影放映時間、電影評論、餐廳評論、餐廳菜單、產品資訊及評論、或是其它適當的資訊。舉另一例子且非限制性的,內容物件可包含鼓勵性質的內容物件,例如是優惠券、折扣票、禮券、或是其它適當的鼓勵性質物件。在特定實施例中,一第三方內容提供者可利用一或多個第三方代理以提供內容物件及/或服務。一第三方代理可以是被代管及執行在所述第三方系統170上的一實施方式。
在特定實施例中,所述社群網路系統160亦包含使用者產生的內容物件,其可強化使用者和所述社群網路系統160的互動。使用者產生的內容可包含使用者可增加、上載、傳送、或是“貼文”至所述社群網路系統160的任何事物。舉例且非限制性的,使用者從一客戶端系統130傳遞貼文至所述社群網路系統160。貼文可包含資料,例如狀態更新或其它文字資料、位置資訊、照片、視頻、連結、音樂或是其它類似的資料或媒體。內容亦可藉由一第三方透過一“通訊通道”,例如新聞動態消息或串流而被加到所述社群網路系統160。
在特定實施例中,所述社群網路系統160可包含各種伺服器、子系統、程式、模組、日誌、以及資料儲存庫。在特定的實施例中,所述社群網路系統160可包含以下的一或多個:一網路伺服器、動作登錄器、API請求伺服器、相關性及排名引擎、內容物件的分類器、通知控制器、動作日誌、第三方的內容物件的接觸日誌、推論模組、授權/隱私伺服器、搜尋模組、廣告定位模組、使用者介面模組、使用者簡檔儲存庫、連結儲存庫、第三方的內容儲存庫、或是位置儲存庫。所述社群網路系統160亦可包含適當構件,例如網路介面、安全機構、負載平衡器、故障切換伺服器、管理及網路操作控制台、其它適當的構件、或是其之任何適當的組合。在特定實施例中,所述社群網路系統160可包含一或多個用於儲存使用者簡檔的使用者簡檔儲存庫。一使用者簡檔例如可包含傳記資訊、人口統計的資訊、行為資訊、社交資訊、或是其它類型的描述資訊,例如是工作經驗、學歷、嗜好或偏好、興趣、喜好、或是位置。興趣資訊可包含相關於一或多個種類的興趣。種類可以是一般或特定的。舉例且非限制性的,若使用者“喜歡”有關一鞋子品牌的物品,則所述類型可以是所述品牌、或是“鞋子”或“衣服”的一般的類型。一連結儲存庫可被使用於儲存有關使用者的連結資訊。所述連結資訊可指出擁有類似或共同的工作經驗、群組成員、嗜好、學歷、或是以任何方式相關或共享共同屬性的使用者。所述連結資訊亦可包含使用者定義的在不同使用者及內容(內部及外部的)之間的連結。一網路伺服器可被使用於經由一網路110來連接所述社群網路系統160至一或多個客戶端系統130或是一或多個第三方系統170。所述網路伺服器可包含一郵件伺服器或是其它消息傳遞的功能,以用於接收及指定路由給在所述社群網路系統160以及一或多個客戶端系統130之間的訊息。一API請求伺服器例如可容許一助理系統140或是一第三方系統170能夠藉由呼叫一或多個API以從所述社群網路系統160存取資訊。一動作登錄器可被用來接收來自一網路伺服器的通訊有關一使用者在所述社群網路系統160上或是離開其的動作。結合所述動作日誌,一第三方內容物件日誌可備存使用者接觸第三方內容物件。一通知控制器可提供有關內容物件的資訊至一客戶端系統130。資訊可作為通知而被推送至一客戶端系統130、或是資訊可響應於包括從一客戶端系統130接收到的一使用者請求的一使用者輸入而從一客戶端系統130抽出。授權伺服器可被用來執行所述社群網路系統160的使用者的一或多個隱私設定。一使用者的一隱私設定可決定和一使用者相關的特定資訊是如何可共享的。所述授權伺服器可容許使用者能夠選擇同意或是選擇不同意使其動作被所述社群網路系統160登錄、或是和其它系統(例如,一第三方系統170)共享的,其例如藉由設定適當的隱私設定。第三方內容物件儲存庫可被用來儲存從第三方(例如一第三方系統170)接收到的內容物件。位置儲存庫可被使用於儲存從和使用者相關的客戶端系統130接收到的位置資訊。廣告價格模組可結合社交資訊、目前時間、位置資訊、或是其它適當資訊以提供相關廣告(以通知形式)至一使用者。
助理系統
圖2描繪所述助理系統140的一範例的架構200。在特定實施例中,所述助理系統140可協助使用者獲得資訊或服務。所述助理系統140可經由在有狀態及多回合對話中的各種模式(例如,音訊、語音、文字、視覺、影像、視頻、姿勢、動作、活動、位置、方位)的使用者輸入,致能所述使用者和所述助理系統140互動,以從所述助理系統140得到協助。舉例且非限制性的,一使用者輸入可包括根據所述使用者的語音(例如,一口頭命令)的一音訊輸入,其可藉由在客戶端系統130上的一系統音訊API(應用程式介面)來加以處理。所述系統音訊API可執行包含回音消除、雜訊去除、波束成形、自使用者語音啟動、發話人識別、語音活動偵測(VAD)的技術、及/或任何其它適當的聲波技術,以便於產生容易可藉由所述助理系統140處理的音訊資料。在特定實施例中,所述助理系統140可支援單模態輸入(例如,只有語音輸入)、多模態輸入(例如,語音輸入及文字輸入)、混合/多模態輸入、或是其之任意組合。在特定實施例中,一使用者輸入可以是在單回合中被傳送至所述助理系統140的一使用者產生的輸入。由一使用者提供的使用者輸入可以是和特定相關助理工作相關的,並且例如可包含使用者請求(例如,口頭請求一動作的資訊或執行)、使用者和所述助理系統140相關的助理應用程式136的互動(例如,UI元素經由觸碰或姿勢的選擇)、或是可藉由所述助理系統140偵測及理解的任何其它類型的適當的使用者輸入(例如,藉由所述使用者的客戶端裝置130偵測到的使用者移動)。
在特定實施例中,所述助理系統140可產生及儲存一使用者簡檔,其包括和所述使用者相關的個人以及情境資訊。在特定實施例中,所述助理系統140可利用自然語言理解技術(NLU)技術來分析所述使用者輸入。所述分析可至少部分是根據所述使用者的使用者簡檔,以獲得更個人化且情境感知的理解。所述助理系統140可根據所述分析來解析和所述使用者輸入相關的實體。在特定實施例中,所述助理系統140可和不同代理互動,以獲得和所解析出的實體相關的資訊或服務。所述助理系統140可藉由利用自然語言生成技術(NLG)來產生有關所述資訊或服務的一響應給所述使用者。透過和所述使用者互動,所述助理系統140可利用對話管理技術來管理及轉傳和所述使用者的談話流程。在特定實施例中,所述助理系統140可藉由概述所述資訊來進一步協助所述使用者有效用且有效率地消化所獲得的資訊。所述助理系統140亦可藉由提供幫助所述使用者和一線上社群網路互動的工具(例如,產生貼文、評論、訊息)來協助所述使用者更加參與所述線上社群網路。所述助理系統140可額外協助所述使用者管理不同的工作,例如追蹤活動。在特定實施例中,所述助理系統140可在無使用者輸入下,在一相關所述使用者的時間主動地執行根據所述使用者簡檔而相關於使用者興趣及偏好的預先被授權的工作。在特定實施例中,所述助理系統140可檢查隱私設定,以確保利用一使用者的簡檔或是其他使用者資訊以及執行不同工作是所述使用者的隱私設定所容許的主題。更多有關協助使用者受到隱私設定的資訊可見於2018年11月6日申請的美國專利申請案號16/182542中,其被納入作為參考。
在特定實施例中,所述助理系統140可經由建構在可運作在各種操作模式的客戶側的程序以及伺服器側的程序上的一架構來協助使用者。在圖2中,所述客戶側程序被描繪在虛線202之上,而所述伺服器側程序被描繪在虛線202之下。一第一操作模式(亦即,裝置上模式)可以是一工作流程,其中所述助理系統140藉由主要或唯一在所述客戶端系統130上本地執行客戶側的程序來處理一使用者輸入並且提供協助給所述使用者。例如,若所述客戶端系統130並未連接至網路110(亦即,當客戶端系統130是離線的),則所述助理系統140可以在只利用客戶側的程序的所述第一操作模式中處理一使用者輸入。一第二操作模式(亦即,雲端模式)可以是一工作流程,其中所述助理系統140藉由主要或唯一在一或多個遠端的伺服器上(例如,和助理系統140相關的一伺服器)執行伺服器側的程序來處理一使用者輸入並且提供協助給所述使用者。如同在圖2中所繪的,一第三操作模式(亦即,混合模式)可以是一平行工作流程,其中所述助理系統140藉由在所述客戶端系統130上本地執行客戶側的程序,結合在一或多個遠端的伺服器上(例如,和助理系統140相關的一伺服器)執行伺服器側的程序來處理一使用者輸入並且提供協助給所述使用者。例如,所述客戶端系統130以及和助理系統140相關的伺服器都可執行自動話音辨識(ASR)以及自然語言理解技術(NLU)的程序,但是所述客戶端系統130可委派對話、代理、以及自然語言生成技術(NLG)的程序來藉由和助理系統140相關的伺服器加以執行。
在特定實施例中,一操作模式的選擇可以是至少部分根據一裝置狀態、和一使用者輸入相關的一工作、及/或一或多個額外因素。舉例且非限制性的,如上所述,一因數可以是針對於客戶端系統130的網路連接狀態。例如,若所述客戶端系統130並未連接至網路110(亦即,當客戶端系統130是離線的),則所述助理系統140可在所述第一操作模式中(亦即,裝置上模式)處理一使用者輸入。舉另一例子且非限制性的,另一因數可根據用於所述客戶端系統130的可利用電池電力(亦即,電池狀態)的量測。例如,若客戶端系統130有需要節約電池電力(例如,當客戶端系統130只有最小可利用的電池電力、或是使用者已經指出希望節約所述客戶端系統130的電池電力時),所述助理系統140可在所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)處理一使用者輸入,以便於在所述客戶端系統130上執行較不電力密集型的操作。舉又一例子且非限制性的,另一因數可以是一或多個隱私限制(例如,指明的隱私設定、可適用的隱私策略)。例如,若一或多個隱私限制限制或排除特定資料被發送至遠端伺服器(例如,和所述助理系統140相關的一伺服器),則所述助理系統140可在所述第一操作模式中(亦即,裝置上模式)處理一使用者輸入以便於保護使用者隱私。舉又一例子且非限制性的,另一因數可以是在所述客戶端系統130以及一遠端伺服器(例如,和助理系統140相關的伺服器)之間的去同步的情境資料。例如,所述客戶端系統130以及和助理系統140相關的伺服器可能被判斷為具有不一致的、遺失的、及/或未取得一致的情境資料,所述助理系統140可所述第三操作模式中(亦即,混合模式)處理一使用者輸入,以降低和所述使用者輸入相關的不足分析的可能性。舉又一例子且非限制性的,另一因數可以是針對於在客戶端系統130以及一遠端伺服器(例如,和助理系統140相關的伺服器)之間的連線延遲的一量測。例如,若和一使用者輸入相關的一工作可顯著地受益於及/或需要提示或是立即執行(例如,捕捉照片的工作),則所述助理系統140可在所述第一操作模式中(亦即,裝置上模式)處理所述使用者輸入,以確保所述工作用及時方式被執行。舉又一例子且非限制性的,另一因數可以是針對相關於和一使用者輸入相關的一工作的一特點,所述特點是否只由一遠端伺服器(例如,和助理系統140相關的伺服器)所支援。例如,若在所述使用者輸入之際,所述相關特點需要只藉由和助理系統140相關的伺服器所支援的先進技術功能(例如,高功率處理功能、快速更新週期),而未被客戶端系統130所支援,則所述助理系統140可在所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)處理所述使用者輸入,以便受益於所述相關特點。
在特定實施例中,在所述客戶端系統130上的一裝置上協調器(orchestrator)206可協調接收一使用者輸入,並且可在一範例的工作流程中的一或多個決策點決定上述的操作模式中的哪一個應該被用來處理或是繼續處理所述使用者輸入。如上所論述,一操作模式的選擇可至少部分是根據一裝置狀態、和一使用者輸入相關的一工作、及/或一或多個額外因素。舉例且非限制性的,參考在圖2中所描繪的工作流程架構,在從一使用者接收到一使用者輸入之後,所述裝置上協調器206可在決策點(D0)205決定是否開始在所述第一操作模式(亦即,裝置上模式)、所述第二操作模式(亦即,雲端模式)、或是所述第三操作模式(亦即,混合模式)中處理所述使用者輸入。例如,在決策點(D0)205,若所述客戶端系統130並未連接至網路110(亦即,當客戶端系統130是離線的)、若一或多個隱私限制明確地需要裝置上處理(例如,在使用者之間的一私人通話增加或移除另一人)、或是若所述使用者輸入和一並不需要或未受益於伺服器側的程序的工作相關的(例如,設定一鬧鐘或是呼叫另一使用者),則所述裝置上協調器206可選擇所述第一操作模式(亦即,裝置上模式)。作為另一例子的是,在決策點(D0)205,若所述客戶端系統130有需要節約電池電力(例如,當客戶端系統130只有最小可利用的電池電力、或是所述使用者已經指出希望節約所述客戶端系統130的電池電力)、或是有需要限制計算資源的額外利用(例如,當操作在客戶端裝置130上的其它程序需要高的CPU利用率(例如,SMS消息傳遞應用程式)時),則所述裝置上協調器206可選擇所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)。
在特定實施例中,若所述裝置上協調器206在決策點(D0)205判斷所述使用者輸入應該利用所述第一操作模式(亦即,裝置上模式)或是所述第三操作模式(亦即,混合模式)來加以處理,則所述客戶側程序可如同在圖2中所繪地繼續。舉例且非限制性的,若所述使用者輸入包括語音資料,則所述語音資料可在所述客戶端系統130上的一本地的自動話音辨識(ASR)模組208a被接收到。所述ASR模組208a可容許使用者口述並且使得語音被轉錄為書面文字、使得一文件被合成為一音訊串流、或是發出藉由所述系統所辨識成為的命令。
在特定實施例中,所述ASR模組208a的輸出可被傳送至一本地的自然語言理解技術(NLU)模組210a。所述NLU模組210a可執行命名實體解析(NER)、或是命名實體解析可藉由如同在以下敘述的實體解析模組212a來加以執行。在特定實施例中,一意圖、一槽位、或是一領域中的一或多個可以是所述NLU模組210a的一輸出。
在特定實施例中,所述使用者輸入可包括非語音資料,其可在一本地的情境引擎220a被接收到。舉例且非限制性的,所述非語音資料可包括位置、視覺元素、觸碰、姿勢、世界更新、社交更新、情境資訊、相關大眾的資訊、活動資料、及/或任何其它適當類型的非語音資料。所述非語音資料可進一步包括藉由客戶端系統130的感測器(例如,麥克風、相機)所接收到的感知資料,其可在隱私限制下被存取,並且進一步藉由電腦視覺技術來分析。在特定實施例中,所述電腦視覺技術可包括物件偵測、場景辨識、手勢追蹤、眼睛追蹤、及/或任何其它適當的電腦視覺技術。在特定實施例中,所述非語音資料可以是受到幾何作圖的,其可包括利用藉由一客戶端系統130收集的任何適當類型的資料來建構圍繞一使用者的物件。舉例且非限制性的,一使用者可能正穿戴AR眼鏡,因而幾何作圖可被利用以判斷表面及項目(例如,一地板、一牆壁、一使用者的手)的空間位置。在特定實施例中,所述非語音資料可以是藉由AR眼鏡或是一VR頭戴式裝置所捕捉的慣性資料,並且其可以是資料和線性及角動作(例如,和一使用者的身體移動相關的量測)相關的。在特定實施例中,所述情境引擎220a可根據所述非語音資料來決定各種類型的活動及情境。
在特定實施例中,所述NLU模組210a及/或所述情境引擎220a的輸出可被傳送至一實體解析模組212a。所述實體解析模組212a可解析和藉由NLU模組210a輸出的一或多個槽位相關的實體。在特定的實施例中,每一個被解析出的實體可以是和一或多個實體解析符相關的。舉例且非限制性的,一識別符可包括對應於一特定使用者的一唯一使用者識別符(ID)(例如,用於所述社群網路系統160的一唯一使用者名稱或是使用者ID號碼)。在特定實施例中,每一個被解析出的實體亦可以是和一信賴分數相關的。更多有關解析實體的資訊可見於2018年7月27日申請的美國專利號10,803,050、以及2018年7月27日申請的美國專利申請案號16/048072中,所述美國專利案的每一個被納入作為參考。
在特定實施例中,在決策點(D0)205,所述裝置上協調器206可能決定一使用者輸入應該在所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)中處理。在這些操作模式中,所述使用者輸入可藉由某些伺服器側模組,以一種類似上述的客戶側程序的方式來處理。
在特定實施例中,若所述使用者輸入包括語音資料,則所述使用者輸入的語音資料可在一遠端伺服器上(例如,和助理系統140相關的伺服器)的一遠端的自動話音辨識(ASR)模組208b被接收到。所述ASR模組208b可容許使用者口述並且使得語音被轉錄為書面文字、使得一文件被合成為一音訊串流、或是發出藉由所述系統所辨識成為的命令。
在特定實施例中,所述ASR模組208b的輸出可被傳送至一遠端的自然語言理解技術(NLU)模組210b。在特定實施例中,所述NLU模組210b可執行命名實體解析(NER)、或是命名實體解析可藉由如同在以下敘述的對話管理器模組216b的實體解析模組212b來加以執行。在特定的實施例中,一意圖、一槽位、或是一領域中的一或多個可以是所述NLU模組210b的一輸出。
在特定實施例中,所述使用者輸入可包括非語音資料,其可在一遠端的情境引擎220b被接收到。在特定實施例中,遠端的情境引擎220b可根據所述非語音資料來判斷各種類型的活動及情境。在特定實施例中,所述NLU模組210b及/或所述情境引擎220b的輸出可被傳送至一遠端的對話管理器216b。
在特定實施例中,如上所論述,在所述客戶端系統130上的一裝置上協調器206可協調接收一使用者輸入,並且可在一範例的工作流程中的一或多個決策點決定上述的操作模式中的哪一個應該被用來處理或是繼續處理所述使用者輸入。如同以上進一步論述的,一操作模式的選擇可至少部分根據一裝置狀態、和一使用者輸入相關的一工作、及/或一或多個額外因素。舉例且非限制性的,繼續參考至圖2中所描繪的工作流程架構,在所述實體解析模組212a產生一輸出或是一空輸出之後,所述裝置上協調器206可在決策點(D1)215決定是否繼續在所述第一操作模式(亦即,裝置上模式)、所述第二操作模式(亦即,雲端模式)、或是所述第三操作模式(亦即,混合模式)中處理所述使用者輸入。例如,在決策點(D1)215,若一被識別出意圖和一延遲敏感的處理工作相關的(例如,照相、暫停馬錶),則所述裝置上協調器206可選擇所述第一操作模式(亦即,裝置上模式)。舉另一例子且非限制性的,若一消息傳遞工作並不被所述客戶端系統130上的裝置上處理所支援,則所述裝置上協調器206可選擇所述第三操作模式(亦即,混合模式)以處理和一消息傳遞請求相關的使用者輸入。舉又一例子,在決策點(D1)215,若正被處理的工作需要存取並未被儲存在所述客戶端系統130上的一社交圖、一知識圖譜、或是一概念圖,則所述裝置上協調器206可選擇所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)。或者是,若包含用於所述工作的必需資訊的一充分版本的一資訊圖存在於所述客戶端系統130上(例如,一較小及/或自助的(bootstrapped)版本的一知識圖譜),則所述裝置上協調器206可選擇所述第一操作模式(亦即,裝置上模式)。
在特定實施例中,若所述裝置上協調器206在決策點(D1)215判斷處理是應該繼續利用所述第一操作模式(亦即,裝置上模式)或是所述第三操作模式(亦即,混合模式),則所述客戶側程序可如同在圖2中所繪地繼續。舉例且非限制性的,來自所述實體解析模組212a的輸出可被傳送至一裝置上對話管理器216a。在特定的實施例中,所述裝置上對話管理器216a可包括一對話狀態追蹤器218a以及一動作選擇器222a。所述裝置上對話管理器216a可具有複雜對話邏輯以及產品相關的商業邏輯,以管理在所述使用者以及所述助理系統140之間的談話的對話狀態以及流程。所述裝置上對話管理器216a可包含用於端到端整合以及多回合支援的完整功能(例如,確認、消除歧義)。所述裝置上對話管理器216a亦可以是有關計算限制以及包含記憶體、計算(CPU)、以及二進位尺寸的資源限制為輕量型。所述裝置上對話管理器216a亦可以是可擴充的,以改善開發者體驗。在特定的實施例中,所述裝置上對話管理器216a可幫助所述助理系統140,其例如藉由提供離線支援以減輕網路連線問題(例如,不穩定或是無法利用的網路連線)、藉由利用客戶側的程序以避免隱私敏感的資訊從客戶端系統130被發送離開、以及藉由在高度延遲敏感情節中提供穩定的使用者體驗。
在特定實施例中,所述裝置上對話管理器216a可進一步進行假觸發減輕。假觸發減輕的實施可偵測及避免來自使用者輸入的假觸發,否則將會喚起所述助理系統140(例如,一非計劃中的喚醒詞),並且其可進一步避免所述助理系統140根據所述假觸發而產生資料記錄,其可能是不正確的及/或受隱私限制的。舉例且非限制性的,若一使用者是在一語音通話中,則所述使用者在所述語音通話期間的談話可被視為隱私的,因而所述假觸發減輕可限制對於藉由所述使用者的客戶端系統130本地接收到的音訊的使用者輸入的喚醒詞偵測。在特定實施例中,所述裝置上對話管理器216a可根據一無意義話偵測器來實施假觸發減輕。若所述無意義話偵測器在高可信度下判斷一接收到的喚醒詞在其從所述使用者接收到的時點,在邏輯及/或在情境上不是合理的,則所述裝置上對話管理器216a可判斷所述使用者並不欲喚起所述助理系統140。
在特定實施例中,由於所述客戶端系統130有限的計算能力,所述裝置上對話管理器216a可根據特別針對於客戶端系統130調適的學習演算法來進行裝置上學習。舉例且非限制性的,聯盟式(federated)學習技術可藉由所述裝置上對話管理器216a來實施。聯盟式學習是一特定類型的分散式機器學習技術,其可利用在終端裝置(例如,行動電話)上儲存的去中心化資料來訓練機器學習模型。在特定實施例中,所述裝置上對話管理器216a可利用聯盟式使用者的表示學習模型,以延伸現有的神經網路的個人化技術至聯盟式學習藉由所述裝置上對話管理器216a的實施。聯盟式使用者的表示學習可藉由學習工作特有的使用者表示(亦即,嵌入)及/或藉由個人化模型權重,來個人化聯盟式學習模型。聯盟式使用者的表示學習是簡單、可擴充、保存隱私、以及資源有效率的。聯盟式使用者的表示學習可將模型參數分成聯盟及私人參數。私人參數(例如私人使用者嵌入)可在一客戶端系統130上本地訓練,而不是被轉移到一遠端伺服器(例如,和助理系統140相關的伺服器)、或是藉由遠端伺服器平均。相對地,聯盟參數可以在所述伺服器上遠端地訓練。在特定的實施例中,所述裝置上對話管理器216a可利用一主動聯盟式學習模型,其可發送在所述遠端伺服器上訓練的一全域的模型至客戶端系統130,並且在所述客戶端系統130上本地計算梯度。主動聯盟式學習可致能所述裝置上對話管理器216a最小化和下載模型及上載梯度相關的發送成本。對於主動聯盟式學習而言,在每一回合中,客戶端系統130可用半隨機方式,至少部分根據所述客戶端系統130上的目前模型及資料的一機率而被選擇,以便於最佳化用於訓練所述聯盟式學習模型的效率。
在特定實施例中,所述對話狀態追蹤器218a可隨著時間過去,追蹤當一使用者與世界互動、以及所述助理系統140與所述使用者互動時的狀態改變。舉例且非限制性的,在可適用的隱私策略下,所述對話狀態追蹤器218a例如可追蹤所述使用者正談論什麼、所述使用者和誰在一起、所述使用者位在何處、目前進行中的工作為何、以及所述使用者注視在何處。
在特定實施例中,在決策點(D1)215,所述裝置上協調器206可決定為了所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)而轉傳所述使用者輸入至所述伺服器。舉例且非限制性的,若特定功能或程序(例如,消息傳遞)並未在所述客戶端系統130上被支援,則所述裝置上協調器206可在決策點(D1)215決定使用所述第三操作模式(亦即,混合模式)。在特定實施例中,所述裝置上協調器206可使得來自所述NLU模組210a、所述情境引擎220a、以及所述實體解析模組212a的輸出,經由一對話管理器代理224而被轉傳至遠端的對話管理器216b的一實體解析模組212b,以繼續所述處理。所述對話管理器代理224可以是用於在所述客戶端系統130以及所述伺服器之間的資訊/事件交換的一通訊通道。在特定實施例中,所述對話管理器216b可額外包括一遠端的仲裁器226b、一遠端的對話狀態追蹤器218b、以及一遠端的作用選擇器222b。在特定實施例中,所述助理系統140可能已經在決策點(D0)205開始在所述第二操作模式(亦即,雲端模式)下處理一使用者輸入,並且所述裝置上協調器206在決策點(D1)215可決定繼續根據所述第二操作模式(亦即,雲端模式)來處理所述使用者輸入。於是,來自所述NLU模組210b以及所述情境引擎220b的輸出可在所述遠端的實體解析模組212b被接收到。遠端的實體解析模組212b可具有與本地的實體解析模組212a類似的功能,其可包括解析和所述槽位相關的實體。在特定實施例中,所述實體解析模組212b在解析所述實體時可存取所述社交圖、所述知識圖譜、或是所述概念圖中的一或多個。來自所述實體解析模組212b的輸出可在所述仲裁器226b被接收到。
在特定實施例中,遠端的仲裁器226b可負責在客戶側以及伺服器側的上游結果(例如,來自所述NLU模組210a/b的結果、來自所述實體解析模組212a/b的結果、以及來自所述情境引擎220a/b的結果)之間做選擇。所述仲裁器226b可傳送所選的上游結果至遠端的對話狀態追蹤器218b。在特定實施例中,類似於本地的對話狀態追蹤器218a,遠端的對話狀態追蹤器218b可利用工作規範來轉換所述上游結果成為候選工作,並且利用實體解析來解析引數。
在特定實施例中,在決策點(D2)225,所述裝置上協調器206可決定是否繼續根據所述第一操作模式(亦即,裝置上模式)來處理所述使用者輸入、或是轉傳所述使用者輸入至所述伺服器以用於所述第三操作模式(亦即,混合模式)。所述決策例如可依據所述客戶側程序是否能夠成功地解決所述工作及槽位、是否存在具有一特定特點支援的一有效工作策略、及/或在所述客戶側程序以及所述伺服器側程序之間的情境差異而定。在特定實施例中,在決策點(D2)225所做的決策可以是用於多回合情節。在特定實施例中,可以有至少兩個可能情節。在一第一情節中,所述助理系統140可能已經在所述第一操作模式中(亦即,裝置上模式),利用客戶側對話狀態來開始處理一使用者輸入。若所述助理系統140在某個時點決定切換成使得所述遠端伺服器處理所述使用者輸入,則所述助理系統140可產生具有目前工作狀態的一程式化/預先定義工作,並且將其轉傳至所述遠端伺服器。針對於後續回合,所述助理系統140可在所述第三操作模式(亦即,混合模式)中利用所述伺服器側對話狀態來繼續處理。在另一情節中,所述助理系統140可能已經開始在所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)中處理所述使用者輸入,並且對於所有後續回合可能實質依賴伺服器側對話狀態。若所述裝置上協調器206判斷繼續根據所述第一操作模式(亦即,裝置上模式)來處理所述使用者輸入,則來自所述對話狀態追蹤器218a的輸出可在所述動作選擇器222a被接收到。
在特定的實施例中,在決策點(D2)225,所述裝置上協調器206可決定轉傳所述使用者輸入至所述遠端伺服器,並且在所述第二操作模式(亦即,雲端模式)或是所述第三操作模式(亦即,混合模式)中繼續處理所述使用者輸入。所述助理系統140可產生具有目前工作狀態的一程式化/預先定義工作,並且將其轉傳至所述伺服器,其可在所述動作選擇器222b被接收到。在特定實施例中,所述助理系統140可能已經開始在所述第二操作模式(亦即,雲端模式)中處理所述使用者輸入,並且所述裝置上協調器206在決策點(D2)225可決定繼續在所述第二操作模式(亦即,雲端模式)中處理所述使用者輸入。於是,來自所述對話狀態追蹤器218b的輸出可在所述動作選擇器222b被接收到。
在特定實施例中,所述動作選擇器222a/b可執行互動管理。所述動作選擇器222a/b可決定及觸發一組一般可執行動作。所述動作可在所述客戶端系統130上、或是在所述遠端伺服器被執行。舉例且非限制性的,這些動作可包含提供資訊或建議給所述使用者。在特定實施例中,所述動作可和代理228a/b、使用者、及/或所述助理系統140本身互動。這些動作可包括包含一槽位請求、一確認、一消除歧義、或是一代理執行中的一或多個的動作。所述動作可與所述動作選擇器222a/b的基礎實施方式無關。對於更複雜情節而言,例如多回合工作或是具有複雜商業邏輯的工作,所述本地的動作選擇器222a可呼叫一或多個本地的代理228a,並且所述遠端的動作選擇器222b可呼叫一或多個遠端的代理228b以執行所述動作。代理228a/b可經由工作ID而被喚起,因而任何動作都可利用該工作ID而被指定路由至正確的代理228a/b。在特定實施例中,一代理228a/b可被配置以作為橫跨針對於一領域的複數個內容提供者的一中介者(broker)。一內容提供者可以是負責實行和一意圖相關的一動作、或是完成和所述意圖相關的一工作的一實體。在特定實施例中,代理228a/b可提供數個功能給所述助理系統140,其例如包含原生樣版產生、工作特有商業邏輯、以及查詢外部API。當執行針對於一工作動作時,代理228a/b可利用來自所述對話狀態追蹤器218a/b的情境,並且亦可更新所述對話狀態追蹤器218a/b。在特定實施例中,代理228a/b亦可從一對話動作產生部分的酬載。
在特定實施例中,所述本地的代理228a可針對於不同平台(例如,智慧型眼鏡相對於VR頭戴式裝置)而使得不同實施方式被編譯/註冊。在特定實施例中,多個裝置特有的實施方式(例如,用於一客戶端系統130的即時的通話、或是在所述客戶端系統130上的一消息傳遞應用程式)可藉由單一代理228a內部地處理。或者是,裝置特有實施方式可藉由和多個域相關的多個代理228a來處理。舉例且非限制性的,呼叫智慧型眼鏡上的一代理228a可用與呼叫智慧型手機上的一代理228a不同的方式來實施。不同平台亦可利用不同數量的代理228a。所述代理228a亦可以是跨平台的(亦即,在所述客戶端系統130上的不同作業系統)。此外,所述代理228a可具有最小化的起動時間或是二進位尺寸的影響。本地的代理228a可適合用於特定使用案例。舉例且非限制性的,一使用案例可以是在所述客戶端系統130上的緊急通話。舉另一例子且非限制性的,另一使用案例可以是在無網路連線下響應於一使用者輸入。舉又一例子且非限制性的,另一使用案例可以是特定領域/工作可能是隱私敏感的,因而可禁止使用者輸入被傳送至所述遠端伺服器。
在特定實施例中,所述本地的動作選擇器222a可呼叫本地的傳送系統230a以用於執行所述動作,並且所述遠端的動作選擇器222b可呼叫遠端的傳送系統230b以用於執行所述動作。所述傳送系統230a/b可在從所述對話狀態追蹤器218a/b接收觸發信號之後,藉由執行對應動作來傳遞一預定義事件。所述傳送系統230a/b可確保事件在一活動連線下被傳遞至一主機。舉例且非限制性的,所述傳送系統230a/b可廣播至屬於一使用者的所有線上裝置。舉另一例子且非限制性的,所述傳送系統230a/b可傳遞事件至目標特有裝置。所述傳送系統230a/b可進一步利用最新裝置情境來顯現一酬載。
在特定實施例中,所述裝置上對話管理器216a可額外包括個別本地的動作執行模組,並且所述遠端的對話管理器216b可額外包括個別遠端的動作執行模組。所述本地的執行模組以及所述遠端的動作執行模組可具有類似的功能。在特定實施例中,所述動作執行模組可呼叫所述代理228a/b以執行工作。所述動作執行模組可額外執行藉由所述動作選擇器222a/b所決定的一組一般可執行動作。所述一組可執行動作可經由所述傳送系統230a/b來和代理228a/b、使用者、以及所述助理系統140本身互動。
在特定實施例中,若所述使用者輸入利用所述第一操作模式(亦即,裝置上模式)來處理,則來自所述代理228a及/或所述傳送系統230a的結果可被回傳至所述裝置上對話管理器216a。所述裝置上對話管理器216a接著可根據這些結果來指示一本地的仲裁器226a以產生一最終響應。所述仲裁器226a可集合所述結果,並且評估它們。舉例且非限制性的,所述仲裁器226a可排名及選擇一最佳結果以用於響應於所述使用者輸入。若所述使用者請求是在所述第二操作模式(亦即,雲端模式)中處理,則來自所述代理228b及/或所述傳送系統230b的結果可被回傳至所述遠端的對話管理器216b。所述遠端的對話管理器216b可根據這些結果,經由所述對話管理器代理224來指示所述仲裁器226a以產生最終響應。類似地,所述仲裁器226a可分析所述結果並且選擇最佳結果以提供給所述使用者。若所述使用者輸入根據所述第三操作模式(亦即,混合模式)來處理,則所述客戶側結果以及伺服器側結果(例如,來自代理228a/b及/或傳送系統230a/b)可分別藉由所述裝置上對話管理器216a以及遠端的對話管理器216b而都被提供至所述仲裁器226a。所述仲裁器226接著可在所述客戶側以及伺服器側的結果之間做選擇,以決定被呈現給所述使用者的最終結果。在特定實施例中,在這些結果之間做決定的邏輯可依據特定的用案例而定。
在特定實施例中,所述本地的仲裁器226a可根據所述最終結果來產生一響應,並且傳送其至一顯現輸出模組232。所述顯現輸出模組232可決定如何以一種適合用於所述客戶端系統130的方式來顯現所述輸出。舉例且非限制性的,對於VR頭戴式裝置或是AR智慧型眼鏡,所述顯現輸出模組232可決定以利用一視覺為基礎的模態(例如,一影像或是一視頻短片)來顯現所述輸出,其可經由所述VR頭戴式裝置或是AR智慧型眼鏡來顯示。作為另一例子的是,所述響應可被顯現為音訊信號,其可被所述使用者經由VR頭戴式裝置或是AR智慧型眼鏡來加以播放。作為又一例子,所述響應可被顯現為擴增實境資料,以用於強化使用者體驗。
在特定實施例中,除了決定一操作模式以處理所述使用者輸入,所述裝置上協調器206亦可決定是否在所述顯現裝置137上處理所述使用者輸入、在所述隨附裝置138上處理所述使用者輸入、或是在所述遠端伺服器上處理所述使用者請求。所述顯現裝置137及/或所述隨附裝置138分別可用一種類似如同以上所揭露的方式來利用所述助理堆疊,以處理所述使用者輸入。舉例且非限制性的,所述裝置上協調器206可決定所述處理的部分應該在所述顯現裝置137上完成、所述處理的部分應該在所述隨附裝置138上完成、以及其餘處理應該在所述遠端伺服器上完成。
在特定的實施例中,所述助理系統140可具有各種功能,其包含音訊認知、視覺認知、信號情報、推理、以及記憶體。在特定實施例中,音訊認知的功能可致能所述助理系統140例如理解和不同語言中的各種領域相關的一使用者輸入、理解及總結一談話、執行裝置上音訊認知以獲得複雜命令、藉由語音來識別使用者、從一談話抽取出話題以及自動標記所述談話的段落、在無喚醒詞下致能音訊互動、從環境雜訊及對話過濾出且放大使用者語音、及/或若多個客戶端系統130在附近,則理解一使用者正向哪一個客戶端系統130說話。
在特定實施例中,視覺認知的功能例如可致能所述助理系統140執行臉部偵測及追蹤、辨認一使用者、以不同角度來辨認在主要都會區中所關注的人們、透過現有機器學習模型以及一次性學習的組合來辨認在世界中有興趣的物件、辨認一有興趣時刻並且自動捕捉它、在橫跨不同時段的多個視覺訊框上達成語義理解、提供用於人們、地方、或物件識別上的額外功能的平台支援、辨認一整組的設定以及包含個人化位置的微位置、辨認複雜活動、辨認複雜姿勢以控制一客戶端系統130、處理來自自我中心的相機(例如,在運動、捕捉角度、解析度下)的影像/視頻、達成類似有關具有較低解析度的影像的程度的正確性及速度、進行人們、地方及物件的一次性套合及識別、及/或執行在一客戶端系統130上的視覺識別。
在特定實施例中,所述助理系統140可充分利用電腦視覺技術以達成視覺認知。除了電腦視覺技術之外,所述助理系統140可探索能夠補充這些技術以提高物件識別的選項。在特定實施例中,所述助理系統140可以利用補充信號,例如一物件的標籤的光學字元辨識(OCR)、用於地方辨識的GPS信號、及/或來自一使用者的客戶端系統130的信號以識別所述使用者。在特定實施例中,所述助理系統140可執行一般場景識別(例如,家庭、工作、公共空間)以對於所述使用者設定一情境,並且縮減電腦視覺的搜尋空間以識別可能的件或人們。在特定實施例中,所述助理系統140可導引使用者來訓練所述助理系統140。例如,群眾外包(crowdsourcing)可被用來使得多個使用者標示物件並且幫助所述助理系統140隨著時間過去辨認更多的物件。作為另一例子的是,當利用所述助理系統140時,使用者可註冊其個人物件作為一最初設置的部分。所述助理系統140可進一步容許使用者對於和其互動的物件提供正/負信號,以訓練及改善用於其的個人化模型。
在特定實施例中,信號情報的功能例如可致能所述助理系統140判斷使用者位置、理解日期/時間、判斷家人位置、理解使用者的日曆及未來所要位置、整合更豐富的聲音理解以單獨透過聲音來識別設定/情境、及/或建構在執行階段的信號情報模型,其可被個人化成為一使用者的個別常式。
在特定實施例中,推理功能例如可致能所述助理系統140在未來的任何時點提取先前的談話線程、合成所有信號以理解微情境及個人化情境、從使用者的歷史行為學習互動模式及偏好且精確地建議他們可能重視的互動、根據微情境理解來產生高度預測的主動建議、理解一使用者在一天的何時可能想要看到的何種內容、及/或理解在一場景中的改變以及其是如何可能影響所述使用者所要的內容。
在特定實施例中,記憶體的功能例如可致能所述助理系統140記住一使用者先前呼叫或互動的哪些社交聯繫、隨意寫入記憶體及詢問記憶體(亦即,開放口述以及自動標籤)、根據先前互動以及長期學習來抽取出更豐富的偏好、記住一使用者的生活史、從自我中心資料串流以及自動目錄抽取出豐富的資訊、及/或用結構形式來寫入記憶體以形成豐富的短期記憶、片段記憶、以及長期記憶。
圖3描繪所述助理系統140的一範例的流程圖300。在特定實施例中,一助理服務模組305可在接收一使用者輸入之後訪問一請求管理器310。在特定實施例中,所述請求管理器310可包括一情境抽取器312以及一談話理解物件產生器(CU物件產生器)314。所述情境抽取器312可抽取出和所述使用者輸入相關的情境資訊。所述情境抽取器312亦可根據在所述客戶端系統130上執行的助理應用程式136來更新情境資訊。舉例且非限制性的,情境資訊的更新可包括被顯示在所述客戶端系統130上的內容項目。舉另一例子且非限制性的,情境資訊的更新可包括一警報是否被設定在所述客戶端系統130上。舉另一例子且非限制性的,情境資訊的更新可包括一首歌是否在所述客戶端系統130上播放。所述CU物件產生器314可產生相關於所述使用者輸入的特定CU物件。所述CU物件可包括對話-會話資料以及和所述使用者輸入相關的特點,其可與所述助理系統140的所有模組共用的。在特定實施例中,所述請求管理器310可將所述情境資訊以及所產生CU物件儲存在一資料儲存庫320中,其是被實施在所述助理系統140中的一特定資料儲存庫。
在特定實施例中,所述請求管理器310可傳送所產生CU物件至所述NLU模組210。所述NLU模組210可執行複數個步驟以處理所述CU物件。所述NLU模組210首先可透過一允許名單/阻擋名單330來執行所述CU物件。在特定實施例中,所述允許名單/阻擋名單330可包括匹配所述使用者輸入的解釋資料。所述NLU模組210接著可執行所述CU物件的特徵化332。所述NLU模組210接著可根據從所述特徵化332產生的特點,在使用者輸入上執行領域分類/選擇334以分類所述使用者輸入到預先定義領域中。在特定實施例中,一領域可表示一互動社交情境(例如,教育)、或是用於一組意圖的一命名空間(例如,音樂)。所述領域分類/選擇的結果可進一步根據兩個相關的程序來處理。在一程序中,所述NLU模組210可利用一元意圖(meta-intent)分類器336a來處理所述領域分類/選擇的結果。所述元意圖分類器336a可判斷描述所述使用者的意圖的種類。一意圖可以是在語義的意圖的一預先定義分類法(taxonomy)中的一元素,其可指出一使用者和所述助理系統140互動的一目的。所述NLU模組210a可分類一使用者輸入到所述預先定義分類法的一成員中。例如,所述使用者輸入可以是“播放貝多芬第5號交響曲”,因而所述NLU模組210a可分類所述輸入為具有所述意圖[IN:play_music]。在特定實施例中,多個領域共同的意圖可藉由所述元意圖分類器336a來加以處理。舉例且非限制性的,所述元意圖分類器336a可以是根據一機器學習模型,其可採用所述領域分類/選擇的結果作為輸入,並且計算所述輸入和一特定的預先定義元意圖相關的機率。所述NLU模組210接著可利用一元槽位標記器338a來對於來自所述元意圖分類器336a的分類結果註釋一或多個元槽位。一槽位可以是對應於所述使用者輸入之內的一字元串的一命名子串,其代表一基本語義實體。例如,一針對於“披薩”的槽位可以是[SL:dish]。在特定實施例中,一組有效或預期命名槽位前提可以是所述被分類意圖。舉例且非限制性的,對於所述意圖[IN:play_music],一有效槽位可以是[SL:song_name]。在特定實施例中,所述元槽位標記器338a可標記一般的槽位,例如對於項目的參照(例如,第一個)、槽位的類型、所述槽位的值、等等。在特定實施例中,所述NLU模組210可利用一意圖分類器336b來處理所述領域分類/選擇的結果。所述意圖分類器336b可判斷和所述使用者輸入相關的所述使用者的意圖。在特定實施例中,每一個領域可有一意圖分類器336b以判斷在一給定領域中最可能的意圖。舉例且非限制性的,所述意圖分類器336b可根據一機器學習模型,其可採用所述領域分類/選擇的結果作為輸入,並且計算所述輸入是和一特定的預先定義意圖相關的機率。所述NLU模組210接著可利用一槽位標記器338b來註釋和所述使用者輸入相關的一或多個槽位。在特定實施例中,所述槽位標記器338b可註釋用於所述使用者輸入的n元語法的一或多個槽位。舉例且非限制性的,一使用者輸入可包括“兌換在我的帳戶內的500美元成日元”。所述意圖分類器336b可採用所述使用者輸入作為輸入,並且將其制定成為一向量。所述意圖分類器336b接著可根據在代表所述使用者輸入的向量以及代表不同預先定義意圖的向量之間的向量比較,來計算所述使用者輸入和不同預先定義意圖相關的機率。以一種類似方式,所述槽位標記器338b可採用所述使用者輸入作為輸入,並且制定每一個單詞成為一向量。所述意圖分類器336b接著可根據在代表所述單詞的向量以及代表不同預先定義槽位的向量之間的向量比較,來計算每一個單詞和不同預先定義槽位相關的機率。所述使用者的意圖可被分類為“兌換外幣”。所述使用者輸入的槽位可包括“500”、“美元”、“帳戶”、以及“日元”。所述使用者的元意圖可被分類為“金融服務”。所述元槽位可包括“金融”。
在特定實施例中,所述自然語言理解技術(NLU)模組210可額外從一社交圖、一知識圖譜、或是一概念圖中的一或多個抽取出資訊,並且可擷取在所述客戶端系統130上本地儲存的一使用者的簡檔。所述NLU模組210可在分析所述使用者輸入時額外考量情境資訊。所述NLU模組210可進一步處理來自這些不同來源的資訊,其藉由識別及匯總資訊、註釋所述使用者輸入的n元語法、根據所述匯總資訊來利用信賴分數排名所述n元語法、以及制定所述排名的n元語法成為可被所述NLU模組210使用於理解所述使用者輸入的特點。在特定實施例中,所述NLU模組210可用一個人化及情境感知方式,從所述使用者輸入識別一領域、一意圖、或是一槽位中的一或多個。舉例且非限制性的,一使用者輸入可包括“給我看看如何到達咖啡館”。所述NLU模組210可根據所述使用者的個人資訊以及相關情境資訊,來識別所述使用者想要去的一特定咖啡館。在特定實施例中,所述NLU模組210可包括一特定語言詞典、一語法分析器、以及文法規則,以分割句子成為一內部表示。所述NLU模組210亦可包括一或多個執行素樸語義學或是隨機語義分析的程式,並且可進一步使用語用學(pragmatics)來理解使用者輸入。在特定實施例中,所述語法分析器可以是根據一深度學習架構,其包括多個長短期記憶(LSTM)網路。舉例且非限制性的,所述語法分析器可以是根據一循環神經網路文法(RNNG)模型,其是一種類型的循環及遞迴LSTM演算法。更多有關自然語言理解技術(NLU)的資訊可見於2018年6月18日申請的美國專利申請案號16/011062、2018年7月2日申請的美國專利申請案號16/025317、以及2018年7月17日申請的美國專利申請案號16/038120中,所述美國專利申請案的每一個都被納入作為參考。
在特定實施例中,所述NLU模組210的輸出可被傳送至所述實體解析模組212,以解析相關實體。實體例如可包含獨特的使用者或概念,其分別可具有唯一識別符(ID)。所述實體可包含一真實世界實體(來自一般知識庫)、一使用者實體(來自使用者的記憶)、一情境實體(裝置情境/對話情境)、或是一值解析度(數字、日期時間、等等)中的一或多個。在特定實施例中,所述實體解析模組212可包括領域實體解析340以及一般實體解析342。所述實體解析模組212可執行一般及領域特有的實體解析。所述一般實體解析342可藉由分類所述槽位以及元槽位到不同的一般話題來解析所述實體。所述領域實體解析340可藉由分類所述槽位以及元槽位到不同領域來解析所述實體。舉例且非限制性的,響應於詢問一特定品牌的電動車的優點的輸入,所述一般實體解析342可解析所參照的品牌的電動車為交通工具,而所述領域實體解析340可解析所參照的品牌的電動車為電動車。
在特定實施例中,實體可根據有關世界及所述使用者的知識350而被解析出。所述助理系統140可從所述圖352抽取出本體(ontology)資料。舉例且非限制性的,所述圖352可包括一知識圖譜、一社交圖、或是一概念圖中的一或多個。所述本體資料可包括在不同槽位/元槽位以及領域之間的結構關係。所述本體資料亦可包括所述槽位/元槽位是如何可在其中較高階包括所述領域的階層之內被分組、相關的資訊,並且根據相似以及差異之處來細分。例如,所述知識圖譜可包括複數個實體。每一個實體可包括和一或多個屬性值相關的單一記錄。所述特定記錄可以是和唯一實體識別符相關。每一個記錄可具有用於所述實體的一屬性的各式各樣值。每一個屬性值可是和一信賴機率及/或一語義的權重相關的。用於一屬性值的一信賴機率代表用於所給定屬性的所述值是正確的機率。考量所有可利用的資訊,用於一屬性值的一語義權重可代表所述值在語義上有多適合用於所給定屬性。例如,所述知識圖譜可包括名稱為“BookName”的一本書的實體,其可包含從多個內容來源(例如,一線上社群網路、線上百科全書、書評來源、媒體資料庫、以及娛樂內容來源)抽取出的資訊,其可被重複資料刪除、解析、以及合併來產生用於所述知識圖譜的單一唯一記錄。在此例子中,所述名稱為“BookName”的實體可以是和用於一“類型”實體屬性的一“幻想”屬性值相關的。更多有關所述知識圖譜的資訊可見於2018年7月27日申請的美國專利申請案號16/048049、以及2018年7月27日申請的美國專利申請案號16/048101中,所述美國專利申請案的每一個都被納入作為參考。
在特定實施例中,所述助理使用者記憶體(AUM)354可包括使用者情節的記憶,其有助於決定如何更有效地協助使用者。所述AUM 354可以是用於在使用者資料上儲存、擷取、編入索引、以及搜尋的中心地。舉例且非限制性的,所述AUM 354可儲存例如聯絡人、照片、提醒事項、等等的資訊。此外,所述AUM 354可自動地同步化資料至所述伺服器以及其它裝置(只有針對於非敏感的資料)。舉例且非限制性的,若所述使用者在一裝置上對於一聯絡人設定一暱稱,則所有裝置可根據所述AUM 354來同步化並且獲得該暱稱。在特定實施例中,所述AUM 354首先可準備事件、使用者狀態、提醒事項、以及觸發狀態以用於儲存在一資料儲存庫中。記憶體節點識別符(ID)可被產生以在所述AUM 354中儲存項目物件,其中一項目可以是某件有關所述使用者的資訊(例如,照片、提醒事項、等等)。舉例且非限制性的,所述記憶體節點ID的前幾個位元可指出這是一記憶體節點ID類型,後面幾個位元可以是所述使用者ID,而後面幾個位元可以是產生的時間。所述AUM 354接著可將這些資料編索引以用於視需要地取出。索引ID可為了此種目的而被產生。在特定實施例中,給定一“索引鍵”(例如,PHOTO_LOCATION)以及“索引值”(例如,“舊金山”),所述AUM 354可獲得一表列的記憶體ID,其具有該屬性(例如,在舊金山的照片)。舉例且非限制性的,所述前幾個位元可指出這是一索引ID類型,後面幾個位元可以是所述使用者ID,而後面幾個位元可編碼一“索引鍵”以及“索引值”。所述AUM 354可進一步利用一彈性查詢語言來進行資訊取出。關係索引ID可為了此種目的而被產生。在特定實施例中,給定一來源記憶體節點以及一邊緣類型,所述AUM 354可獲得具有該類型的從所述來源外向邊緣的所有目標節點的記憶體ID。舉例且非限制性的,所述前幾個位元可指出這是一關係索引ID類型,後面幾個位元可以是所述使用者ID,而後面幾個位元可以是一來源節點ID以及邊緣類型。在特定實施例中,所述AUM 354可有助於偵測不同事件的同時更新。更多有關情節記憶的資訊可見於2019年8月27日申請的美國專利申請案號16/552559中,其被納入作為參考。
在特定實施例中,所述實體解析模組212可利用不同技術來解析不同類型的實體。針對於真實世界的實體,所述實體解析模組212可利用一知識圖譜來解析所述範圍至所述實體,例如是“音軌”、“電影”、等等。針對於使用者實體,所述實體解析模組212可利用使用者記憶或是某些代理來解析所述範圍至使用者特有的實體,例如“聯絡人”、“提醒事項”、或是“關係”。針對於情境實體,所述實體解析模組212可根據來自所述情境引擎220的資訊以執行共指(coreference),以解析在所述情境中的所述參照至實體,例如“他”、“她”、“第一個”、或是“最後一個”。在特定實施例中,針對於共指,所述實體解析模組212可產生參照給藉由所述NLU模組210所判斷的實體。所述實體解析模組212接著可正確地解析這些參照。舉例且非限制性的,一使用者輸入可能包括“幫我找出最近雜貨店並且指引我到那邊”。根據共指,所述實體解析模組212可解釋“那邊”為“最近雜貨店”。在特定實施例中,共指可依據來自所述情境引擎220以及所述對話管理器216的資訊而定,以便於在改善的正確性下解釋參照。在特定實施例中,所述實體解析模組212可在所述情境(裝置情境或是對話情境)下額外解析一實體,例如,在螢幕上展示的實體、或是來自最後一個談話歷史的一實體。針對於值解析度,所述實體解析模組212可將所提到內容解析至具有標準化形式的確切值,例如數值、日期時間、地址、等等。
在特定實施例中,所述實體解析模組212首先可在可適用的隱私限制上執行檢查,以便於保證執行實體解析並不違反任何可適用的隱私策略。舉例且非限制性的,將被解析的一實體可能是另一使用者,其在其隱私設定中指明其身分不應該在所述線上社群網路上可供搜尋的。在此例中,所述實體解析模組212可避免響應於一使用者輸入而回傳該使用者的實體識別符。藉由利用從所述社交圖、所述知識圖譜、所述概念圖、以及所述使用者簡檔獲得的敘述資訊,並且藉由符合任何可適用的隱私策略,所述實體解析模組212可用個人化、情境感知、以及隱私受保護的方式來解析和一使用者輸入相關的實體。
在特定實施例中,所述實體解析模組212可和所述ASR模組208一起工作以執行實體解析。以下例子描繪所述實體解析模組212是如何可解析一實體名稱。所述實體解析模組212首先可展開和一使用者相關的名稱成為其個別標準化文字形式為語音輔音表示,其可利用一雙元音素(double metaphone)演算法而在語音上被轉錄。所述實體解析模組212接著可決定一組n個最佳候選轉錄,並且在所述組的n個最佳候選轉錄中的所有語音轉錄上執行一平行理解程序。在特定實施例中,解析出相同意圖的每一個轉錄接著可被合併成為單一意圖。每一個意圖接著可被指定一對應於針對該意圖的最高得分的候選轉錄得分。在所述合併期間,所述實體解析模組212可識別和每一個槽位相關的各種可能文字轉錄,其藉由和所述槽位的轉錄相關的邊界時序偏移而為相關聯的。所述實體解析模組212接著可對於每一個槽位從複數個(例如,1000個)候選轉錄抽取出可能的候選轉錄的一子集合,而不論它們是否被分類到相同意圖。以此種方式,所述槽位及意圖可以是片語得分表列。在特定實施例中,一個能夠處理所述意圖的新工作或是執行工作可被識別,並且被提供所述意圖(例如,用於傳送一訊息至另一使用者的一意圖的一訊息編製工作)。所述識別出的工作接著可藉由提供所述實體解析模組212和其槽位中之一相關的所述得分的片語表列、以及其被解析應該對照的種類,來觸發所述實體解析模組212。舉例且非限制性的,若一實體屬性被指明為“朋友”,則所述實體解析模組212可透過可在匹配程序的編輯時間執行的相同擴充套件來執行每一個候選表列的術語。所述術語的每一個候選擴充套件可在預編譯的字典樹(trie)匹配結構中加以匹配。匹配可利用一至少部分根據所述被轉錄的輸入、匹配形式、以及朋友名稱的函數而被評分。舉另一例子且非限制性的,若一實體屬性被指明為“名人/引人注意的人”,則所述實體解析模組212可對照所述知識圖譜來執行平行搜尋對於從所述ASR模組208輸出的槽位的每一組候選的術語。所述實體解析模組212可根據匹配的人的聲望以及ASR提供的得分信號來評分匹配。在特定實施例中,當所述記憶類型被指明時,所述實體解析模組212可對照使用者記憶來執行相同的搜尋。所述實體解析模組212可向後緩慢通過使用者記憶並且嘗試匹配每一個記憶(例如,近來在談話中提及、或是經由視覺信號看過及辨認的人、等等)。對於每一個實體,所述實體解析模組212可類似於朋友是如何匹配的(亦即,語音的)來利用匹配。在特定實施例中,評分可包括和所述名稱先前被提及的新近度相關的一時間衰減因數。所述實體解析模組212可進一步結合、分類、以及去重複所有匹配。在特定實施例中,所述工作可接收所述組的候選者。當多個高評分候選者存在時,所述實體解析模組212可執行方便使用者的消除歧義(例如,從使用者獲得在這些候選者上的即時使用者回饋)。
在特定實施例中,所述情境引擎220可協助所述實體解析模組212改善實體解析。所述情境引擎220可包括離線聚合器以及一線上推論服務。所述離線聚合器可處理從一先前時間窗收集的和所述使用者相關的複數個資料。舉例且非限制性的,所述資料可包含新聞動態消息貼文/評論、和新聞動態消息貼文/評論的互動、搜尋歷史、等等,其在一預設時間範圍期間(例如,從一先前90天的時間窗)收集的。所述處理結果可被儲存在所述情境引擎220中,以作為所述使用者簡檔的部分。所述使用者的使用者簡檔可包括使用者簡檔資料,其包含和所述使用者相關的人口統計的資訊、社交資訊、以及情境資訊。所述使用者簡檔資料亦可包含使用者在複數個話題上的興趣及偏好,其透過有關新聞動態消息、搜尋日誌、消息傳遞平台、等等的對話而被匯總的。一使用者簡檔的使用可受到隱私限制,以確保一使用者的資訊只可為了他/她的益處而被利用,並且不與其他任何人共享的。更多有關使用者簡檔的資訊可見於2018年4月30日申請的美國專利申請案號15/967239中,其被納入作為參考。在特定實施例中,所述線上推論服務可分析藉由所述助理系統140在目前時間接收到的和所述使用者相關的談話的資料。所述分析結果可被儲存在所述情境引擎220中,亦作為所述使用者簡檔的部分。在特定實施例中,所述離線聚合器以及線上推論服務都可從所述複數個資料抽取出個人化特點。所抽取出的個人化特點可被所述助理系統140的其它模組使用,以更佳理解使用者輸入。在特定實施例中,所述實體解析模組212可在以下步驟中,根據自然語言處理(NLP)來處理來自所述情境引擎220的資訊(例如,一使用者簡檔)。在特定實施例中,所述實體解析模組212可根據NLP藉由文本正規化來斷詞文本、從文本抽取出語法特點、以及從文本抽取出語義特點。所述實體解析模組212可額外從情境資訊抽取出特點,所述情境資訊從在一使用者以及所述助理系統140之間的對話歷史獲取的。所述實體解析模組212可進一步根據所述情境資訊來進行全域單詞嵌入、領域特有嵌入、及/或動態嵌入。所述處理結果可藉由一實體標記器而被註釋實體。根據所述註釋,所述實體解析模組212可產生字典。在特定實施例中,所述字典可包括全域字典特點,其可離線動態地被更新。所述實體解析模組212可排名藉由所述實體標記器標記的實體。在特定實施例中,所述實體解析模組212可和包含所述社交圖、所述知識圖譜、或是所述概念圖中的一或多個的不同圖352通訊,以抽取出相關於從所述情境引擎220擷取的資訊的本體資料。在特定實施例中,所述實體解析模組212可進一步根據所述使用者簡檔、所述排名實體、以及來自所述圖352的資訊來解析實體。
在特定實施例中,所述實體解析模組212可藉由所述工作(對應於一代理228)而被驅動。當這樣做是明顯且適當時,此處理順序的倒置可使得存在於一工作中的領域知識被施加以預過濾或偏移所述組的解析目標是可能的。舉例且非限制性的,對於發聲“誰是John?”,在所述發聲中並未暗示明確類型。因此,所述實體解析模組212可對照一切來解析“John”。舉另一例子且非限制性的,對於發聲“傳送一訊息給John”,所述實體解析模組212可輕易地判斷“John”是指吾人可傳送訊息的一個人。因此,所述實體解析模組212可偏移所述解析至一朋友。舉另一例子且非限制性的,對於發聲“John最有名的專輯為何?”,為了解析“John”,所述實體解析模組212首先可判斷對應於所述發聲的工作,其為找出一音樂專輯。所述實體解析模組212可判斷相關於音樂專輯的實體包含歌手、製作人、以及錄音工作室。因此,所述實體解析模組212可在一音樂領域中的這些類型的實體間搜尋來解析“John”。
在特定實施例中,所述實體解析模組212的輸出可被傳送至所述對話管理器216,以推進與所述使用者的談話的流程。所述對話管理器216可以是一非同步狀態機,其反覆地更新狀態並且根據新狀態來選擇動作。所述對話管理器216可額外儲存在所述使用者以及所述助理系統140之間的先前對話。在特定實施例中,所述對話管理器216可進行對話最佳化。對話最佳化是有關於理解及識別在和一使用者的一對話中最可能分支選項的挑戰。舉例且非限制性的,所述助理系統140可實施對話最佳化技術以避免需要確認一使用者想要打電話給誰,因為所述助理系統140可以高可信度判斷根據情境以及可利用資料所推論的一個人是所要收話者。在特定實施例中,所述對話管理器216可實施增強學習框架以改善所述對話最佳化。所述對話管理器216可包括對話意圖解析356、所述對話狀態追蹤器218、以及所述動作選擇器222。在特定實施例中,所述對話管理器216可執行所選動作並且接著再次呼叫所述對話狀態追蹤器218,直到所選動作需要一使用者響應、或是不再有動作要執行為止。每一個所選動作可依據來自先前動作的執行結果而定。在特定實施例中,所述對話意圖解析356可根據在所述使用者以及所述助理系統140之間的對話歷史,來解析和目前對話會談相關的使用者意圖。所述對話意圖解析356可映射藉由所述NLU模組210所判斷的意圖至不同對話意圖。所述對話意圖解析356可進一步根據來自所述NLU模組210的信號、所述實體解析模組212以及在所述使用者以及所述助理系統140之間的對話歷史來排名對話意圖。
在特定實施例中,所述對話狀態追蹤器218可利用一組運算子來追蹤所述對話狀態。所述運算子可包括必要資料及邏輯以更新所述對話狀態。每一個運算子可作用為在處理一進入使用者輸入之後的對話狀態的差量。在特定實施例中,所述對話狀態追蹤器218可包括一工作追蹤器,其可根據工作規格以及不同規則。所述對話狀態追蹤器218亦可包括一槽位追蹤器以及共指構件,其可以是基於規則的、及/或基於新近度的。所述共指構件可幫助所述實體解析模組212解析實體。在替代實施例中,在所述共指構件下,所述對話狀態追蹤器218可取代所述實體解析模組212,而且可解析任何參照/指稱項(mention)並且追蹤所述狀態。在特定實施例中,所述對話狀態追蹤器218可利用工作規範來轉換上游結果成為候選工作,並且利用實體解析來解析引數。使用者狀態(例如,使用者目前活動)以及工作狀態(例如,觸發狀況)都可被追蹤。給定所述目前狀態,所述對話狀態追蹤器218可產生候選工作,而所述助理系統140可為了所述使用者來處理及執行。舉例且非限制性的,候選工作可包含“顯示建議”、“獲得天氣資訊”或是“拍攝照片”。在特定實施例中,所述對話狀態追蹤器218可根據例如來自一知識圖譜、一使用者記憶、以及一使用者工作歷史的可利用資料以產生候選工作。在特定實施例中,所述對話狀態追蹤器218接著可利用所述被解析引數來解析所述觸發物件。舉例且非限制性的,一使用者輸入“今晚當媽媽在線上而且我在家時,提醒我打電話給她”可藉由所述對話狀態追蹤器218來執行從所述NLU輸出轉換至所述觸發表示,即如同在以下的表1中所繪:
表1:從NLU輸出至觸發表示的範例轉換
在以上的例子中,“媽媽”、“家”以及“今晚”是藉由其個別實體personEntity、locationEntity、datetimeEntity來加以表示。
NLU本體表示: | 觸發表示: | |
[IN:CREATE_SMART_REMINDER Remind me to [SL:TODO call mom] when [SL:TRIGGER_CONJUNCTION [IN:GET_TRIGGER [SL:TRIGGER_SOCIAL_UPDATE she’s online] and I’m [SL:TRIGGER_LOCATION home] [SL:DATE_TIME tonight] ] ] ] | Triggers: { andTriggers: [ condition: {ContextualEvent(mom is online)}, condition: {ContextualEvent(location is home)}, condition: {ContextualEvent(time is tonight)}]))]} |
在特定實施例中,所述對話管理器216可映射藉由所述情境引擎220所判斷的事件成為動作。舉例且非限制性的,一動作可以是一自然語言生成技術(NLG)動作、一顯示或疊圖、一裝置動作、或是一擷取動作。所述對話管理器216亦可執行情境追蹤以及互動管理。情境追蹤可包括匯總即時事件串流成為統一使用者狀態。互動管理可包括選擇在每一個狀態中的最佳動作。在特定實施例中,所述對話狀態追蹤器218可執行情境追蹤(亦即,追蹤相關於所述使用者的事件)。為了支援事件串流的處理,所述對話狀態追蹤器218a可利用一事件處理程序(例如,用於消除歧義、確認、請求),其可消耗各種類型的事件並且更新一內部助理狀態。每一個事件類型可具有一或多個處理程序。每一個事件處理程序可修改所述助理狀態的某一切片。在特定實施例中,所述事件處理程序可在所述狀態的不相交子集合上操作(亦即,只有一處理程序可寫入存取至所述狀態中的一特定欄位)。在特定實施例中,所有的事件處理程序可具有處理一給定事件的機會。舉例且非限制性的,所述對話狀態追蹤器218可在每一個事件上平行執行所有的事件處理程序,並且接著可合併由每一個事件處理程序所提出的狀態更新(例如,對於每一個事件,大多數的處理程序可能傳回空更新)。
在特定實施例中,所述對話狀態追蹤器218可工作為任何需要版本化的程式化處理程序(邏輯)。在特定實施例中,所述對話狀態追蹤器218可以是一無副作用構件,並且產生n個對話狀態更新運算子的最佳候選者,其提出更新至所述對話狀態,而不是直接改變所述對話狀態。所述對話狀態追蹤器218可包括意圖解析器,其包含邏輯以根據所述對話狀態來處理不同類型的NLU意圖並且產生所述運算子。在特定實施例中,所述邏輯可以是藉由意圖處理程序來組織的,例如一消除歧義意圖處理程序以在所述助理系統140要求消除歧義時處理所述意圖、一確認意圖處理程序,其包括邏輯以處理確認、等等。意圖解析器可將所述回合意圖與所述對話狀態結合在一起,以產生用於和所述使用者的一談話的情境更新。一槽位解析構件接著可利用包含所述知識圖譜及領域代理的解析提供者來遞迴地解析在所述更新運算子中的槽位。在特定實施例中,所述對話狀態追蹤器218可更新/排名目前對話會談的對話狀態。舉例且非限制性的,若所述對話會談結束,則所述對話狀態追蹤器218可更新所述對話狀態為“完成的”。舉另一例子且非限制性的,所述對話狀態追蹤器218可根據和其相關的一優先權來排名所述對話狀態。
在特定實施例中,所述對話狀態追蹤器218可和所述動作選擇器222通訊有關所述對話意圖以及相關內容物件。在特定實施例中,所述動作選擇器222可針對於不同對話意圖排名不同的對話假設。所述動作選擇器222可採用對話狀態的候選運算子,並且諮詢所述對話策略360來決定什麼動作應該被執行。在特定實施例中,一對話策略360可以是一樹為基礎的策略,其是一預先建構對話計畫。根據目前對話狀態,一對話策略360可選擇一節點以執行及產生對應動作。舉例且非限制性的,所述樹為基礎的策略可包括話題分組節點、以及對話動作(葉)節點。在特定實施例中,一對話策略360亦可包括一資料結構,其描述一動作藉由一代理228的一執行計畫。一對話策略360可進一步包括透過邏輯運算子彼此相關的多個目標。在特定實施例中,一目標可以是所述對話策略的一部分的一結果,並且其可藉由所述對話管理器216來建構。一目標可藉由具有一或多個命名引數的一識別符(例如,字串)來加以表示,其參數化所述目標。舉例且非限制性的,具有其相關的目標引數的一目標可被表示為{confirm_artist, args:{artist:“Madonna”}}。在特定實施例中,目標可被對映到所述對話策略360的樹結構表示的樹的葉。
在特定實施例中,所述助理系統140可利用階層式對話策略360,其中一般策略362是處理跨領域的商業邏輯,並且工作策略364是處理所述工作/領域特定的邏輯。所述一般策略362可被使用於並非個別工作特有的動作。所述一般策略362可被用來決定工作堆疊及切換、主動的工作、通知、等等。所述一般策略362可包括利用重試來處理低信賴的意圖、內部錯誤、不能接受的使用者響應,且/或根據ASR或NLU信賴分數而跳過或插入確認。所述一般策略362亦可包括排名來自所述對話狀態追蹤器218的輸出的對話狀態更新候選者的邏輯,並且挑選一個來更新(例如挑選排名最高的工作意圖)。在特定實施例中,所述助理系統140可具有一特定介面用於所述一般策略362,其容許合併散亂的跨領域的策略/商業規則,特別是那些見於所述對話狀態追蹤器218中者,成為所述動作選擇器222的一函數。用於所述一般策略362的介面亦可容許獨立子策略單元的創作,其可能相關聯特定情況或客戶端(例如,可根據客戶、情況而輕易地被切換開關的策略功能)。用於所述一般策略362的介面亦可容許提供分層的具有退避策略,亦即多個策略單元,其中處理特定情況的高度專門策略單元藉由更適用在較廣情況中的一般策略362來支持。在此情境中,所述一般策略362可替代地包括意圖或工作特定的策略。
在特定實施例中,一工作策略364可根據所述工作以及目前狀態而包括用於動作選擇器222的邏輯。所述工作策略364可以是動態且臨時的。在特定實施例中,工作策略364的類型可包含以下類型中的一或多個:(1)人工製作的樹為基礎的對話計畫;(2)編碼策略,其直接實施用於產生動作的介面;(3)配置程序指明的填充槽位的工作;或是(4)從資料學習的機器學習模型為基礎的策略。在特定實施例中,所述助理系統140可利用規則為基礎的邏輯來自舉起動新領域,並且之後利用機器學習模型來改善所述工作策略364。在特定實施例中,所述一般策略362可從所述候選運算子挑選一運算子來更新所述對話狀態,接著是面對動作的一使用者的藉由一工作策略364的選擇。一旦一工作在所述對話狀態中是有效的,則對應的工作策略364可被諮詢以選擇正確的動作。
在特定實施例中,所述動作選擇器222可根據藉由所述情境引擎220所判斷的事件、所述對話意圖及狀態、相關內容物件、以及來自對話策略360的指導中的一或多個來選擇一動作。每一個對話策略360可訂閱在所述狀態的領域上的特定狀況。在一事件被處理而且所述狀態被更新之後,所述動作選擇器222可執行一快速搜尋演算法(例如,類似於布林可滿足性),以根據所述目前狀態來識別哪些策略應該被觸發。在特定實施例中,若多個策略被觸發,則所述動作選擇器222可利用一平分決勝機制以挑選一特定策略。或者是,所述動作選擇器222可利用一更複雜方法,其可試運行每一個策略,並且接著挑選一特定策略,其可被判斷為具有一高成功的可能性。在特定實施例中,對映事件至動作可能會產生數個技術上的優點給所述助理系統140。一技術上的優點可包含每一個事件可能來自所述使用者或是所述使用者的身體/數位環境的一狀態更新,其可能觸發或是可能不觸發來自助理系統140的一動作。另一技術上的優點可包含處理快速叢發的事件的可能性(例如,使用者進入一新建築物並且看見許多人),其藉由首先消耗所有事件成為更新狀態,並且接著從最終狀態觸發動作。另一技術上的優點可包含消耗所有事件成為單一全域助理狀態。
在特定實施例中,所述動作選擇器222可採用所述對話狀態更新運算子作為所述輸入的部分,以選擇所述對話動作。所述對話動作的執行可產生一組預期,以指示所述對話狀態追蹤器218處理未來的回合。在特定實施例中,在處理來自下一回合的使用者輸入時,一預期可被用來提供情境至所述對話狀態追蹤器218。舉例且非限制性的,槽位請求對話動作可能有針對於所請求槽位而證明一值的預期。在特定實施例中,所述對話狀態追蹤器218以及所述動作選擇器222在所選動作被執行之前都不能改變所述對話狀態。此可容許所述助理系統140能夠執行所述對話狀態追蹤器218以及所述動作選擇器222,以用於處理推測的ASR結果並且利用試運行來做出n個最佳排名。
在特定實施例中,所述動作選擇器222可呼叫不同代理228以用於工作執行。同時,所述對話管理器216可接收一指令來更新所述對話狀態。舉例且非限制性的,所述更新可包括等待代理228的響應。一代理228可在註冊內容提供者之間選擇,來完成所述動作。所述資料結構可藉由所述對話管理器216,根據一意圖以及和所述意圖相關的一或多個槽位來建構。在特定實施例中,所述代理228可包括第一方代理以及第三方代理。在特定實施例中,第一方代理可包括內部代理,其可藉由所述助理系統140存取及控制(例如和所述線上社群網路提供的服務(例如消息傳遞服務或是相片分享服務)相關的代理)。在特定實施例中,第三方代理可包括所述助理系統140無法控制的外部代理(例如,第三方線上音樂應用程式代理、票券銷售代理)。所述第一方代理可以是和第一方提供者相關的,所述第一方提供者是提供由所述社群網路系統160所管理的內容物件及/或服務。所述第三方代理可以是和第三方提供者相關的,所述第三方提供者提供由所述第三方系統170所管理的內容物件及/或服務。在特定實施例中,所述第一方代理或是第三方代理的每一個可被指定用於一特定領域。舉例且非限制性的,所述領域可包括天氣、運輸、音樂、購物、社交、視頻、照片、活動、位置、及/或工作。在特定實施例中,所述助理系統140可利用複數個代理228合作來響應於一使用者輸入。舉例且非限制性的,所述使用者輸入可包括“引導我參加下一個會議”。所述助理系統140可利用一日曆代理來擷取所述下一個會議的位置。所述助理系統140接著可利用一導覽代理來引導所述使用者至所述下一個會議。
在特定實施例中,所述對話管理器216可支援槽位指稱項的多回合組合的解析。對於來自所述NLU模組210的一組合的語法分析,所述解析器可遞迴地解析所述巢狀槽位。所述對話管理器216可額外支援用於所述巢狀槽位的消除歧義。舉例且非限制性的,所述使用者輸入可能是“提醒我打電話給Alex”。所述解析器在產生一可動作的提醒事項待辦實體之前,可能需要知道要打電話給哪一位Alex。當針對於一特定槽位的進一步使用者澄清是必要時,所述解析器可停止所述解析以及設定所述解析狀態。所述一般策略362可檢查所述解析狀態並且產生對應對話動作以得到使用者澄清。在對話狀態追蹤器218中,根據所述使用者輸入以及最後一個對話動作,所述對話管理器216可更新所述巢狀槽位。此功能可容許所述助理系統140能夠和所述使用者互動,不僅收集遺失的槽位值,而且降低更複雜/不明確發聲的不明確性以完成所述工作。在特定實施例中,所述對話管理器216可進一步支援請求在一巢狀意圖以及多意圖的使用者輸入中(例如,“拍攝此照片並且將它傳送給爸爸”)的遺失槽位。在特定實施例中,所述對話管理器216可支援機器學習模型,以得到更強健的對話體驗。舉例且非限制性的,所述對話狀態追蹤器218可利用神經網路為基礎的模型(或是任何其它適當的機器學習模型)來模型化對於工作假設的信心。舉另一例子且非限制性的,對於動作選擇器222,最高優先權的策略單元可包括白名單/黑名單的覆蓋,其可能必須藉由設計才發生;中間優先權單元可包括被設計用於動作選擇的機器學習模型;並且較低優先權單元可包括當所述機器學習模型選擇不處理一情況時的規則為基礎的回退(fallback)。在特定實施例中,機器學習模型為基礎的一般策略單元可幫助所述助理系統140減少冗餘的消除歧義或確認步驟,藉此降低執行所述使用者輸入的回合數。
在特定實施例中,藉由所述動作選擇器222判斷的動作可被傳送至所述傳送系統230。所述傳送系統230可包括一CU組合器370、一響應產生構件380、一對話狀態寫入構件382、以及一文字轉語音(TTS)構件390。明確地說,所述動作選擇器222的輸出可在所述CU組合器370被接收。在特定實施例中,來自所述動作選擇器222的輸出可被制定為一<k,c,u,d>元組(tuple),其中k指出一知識來源,c指出一通訊目標,u指出一使用者模型,並且d指出一話語模型。
在特定實施例中,所述CU組合器370可利用一自然語言生成技術(NLG)構件372來對於所述使用者產生一通訊內容。在特定實施例中,所述NLG構件372可利用不同語言模型及/或語言樣版以產生自然語言輸出。自然語言輸出的產生可以是應用特定的。自然語言輸出的產生亦可以是針對於每一個使用者個人化的。在特定實施例中,所述NLG構件372可包括一內容決定構件、一句子規劃器、以及一表層實現構件。所述內容決定構件可根據所述知識來源、通訊目標、以及使用者的預期來決定通訊內容。舉例且非限制性的,所述決定可以是根據一描述邏輯。所述描述邏輯例如可包括三個基本觀念,其是個體(代表在所述領域中的物件)、概念(描述個體的集合)、以及屬性(代表在個體或概念之間的二元關係)。所述描述邏輯的特徵可以是在於一組建構子(constructor),其容許所述自然語言生成技術器從原子概念/屬性來建構複雜的概念/屬性。在特定實施例中,所述內容決定構件可執行以下工作來決定所述通訊內容。第一個工作可包括一轉譯工作,其中所述NLG構件372的輸入可被轉譯成概念。第二個工作可包括一選擇工作,其中相關概念可根據所述使用者模型而在那些從所述轉譯工作所產生的加以選擇。所述第三個工作可包括一驗證工作,其中所選概念的一致性可被驗證。所述第四個工作可包括一實例化工作,其中所述經驗證概念可被實例化為一可執行檔案,其可藉由所述NLG構件372來加以處理。所述句子規劃器可決定所述通訊內容的組織以使得其為人類可理解的。所述表層實現構件可決定要使用的特定單詞、所述句子的順序、以及所述通訊內容的類型。
在特定實施例中,所述CU組合器370亦可利用UI酬載產生器374來決定所產生通訊內容的一模態。由於所產生通訊內容可被視為對於所述使用者輸入的一響應,因此所述CU組合器370可額外利用一響應排名器376來排名所產生的通訊內容。舉例且非限制性的,所述排名可指出所述響應的優先權。在特定實施例中,所述CU組合器370可包括一自然語言合成(NLS)構件,其可以是與所述NLG構件372分開的。所述NLS構件可指明由所述CU組合器370所產生的合成語音的屬性,其包含性別、音量、速度、類型、或是音域,以便於客製化針對於一特定使用者、工作、或是代理的響應。所述NLS構件可在不參與相關工作的實施方式下調諧語言合成。在特定實施例中,所述CU組合器370可檢查和所述使用者相關的隱私限制,以確保所述通訊內容的產生遵循所述隱私策略。更多有關客製化自然語言生成技術(NLG)的資訊可見於2018年4月30日申請的美國專利申請案號15/967279、以及2018年4月30日申請的美國專利申請案號15/966455中,所述美國專利申請案被納入作為參考。
在特定實施例中,所述傳送系統230可根據所述CU組合器370的輸出來執行不同工作。這些工作可包含利用所述對話狀態寫入構件382來寫入(亦即,儲存/更新)所述對話狀態到所述資料儲存庫330中、以及利用所述響應產生構件380來產生響應。在特定實施例中,若所述通訊內容的判斷模態的是音訊,則所述CU組合器370的輸出可額外被傳送至所述TTS構件390。在特定實施例中,來自所述傳送系統230的輸出,包括所產生響應、所述通訊內容、或是藉由所述TTS構件390產生的語音中的一或多個接著可被傳送回到所述對話管理器216。
在特定實施例中,所述裝置上協調器206可根據所述實體解析模組212的輸出來決定是否在所述客戶端系統130上、或是在所述伺服器上、或是在利用兩者的所述第三操作模式(亦即,混合模式)中處理一使用者輸入。除了決定如何處理所述使用者輸入之外,所述裝置上協調器206可接收由所述對話管理器216提供的來自所述代理228的結果、及/或來自所述傳送系統230的結果。所述裝置上協調器206接著可轉傳這些結果至仲裁器226。所述仲裁器226可匯總這些結果、分析它們、選擇最佳結果、並且提供所選結果至所述顯現輸出模組232。在特定實施例中,所述仲裁器226在分析這些結果時可諮詢對話策略360以獲得指導。在特定實施例中,所述顯現輸出模組232可產生適合用於所述客戶端系統130的一響應。
圖4描繪處理一使用者輸入的一範例的以工作為中心的流程圖400。在特定實施例中,所述助理系統140可不僅協助使用者語音啟動的經驗,而且協助更主動的多模態經驗,其在理解使用者情境上被啟動。在特定實施例中,所述助理系統140可依賴為此種目的之助理工作。一助理工作可以是一中央概念,其橫跨整體助理堆疊而被共享以理解使用者意圖,和所述使用者及世界互動以為了所述使用者來完成正確工作。在特定實施例中,一助理工作可以是具有助理功能的原始單元。其可包括資料提取、更新某個狀態、執行某個命令、或是由一較小組的工作所構成的複雜工作。正確且成功地完成一工作以傳遞所述值至所述使用者可以是所述助理系統140被最佳化所為了的目標。在特定實施例中,一助理工作可被定義為一功能或是一特點。若多個產品表層具有完全相同的需求,則所述助理工作可以是橫跨它們而共用,因而其可輕易地被追蹤。它也可從一個裝置傳遞到另一裝置,並且輕易地在工作中被另一裝置提取,因為所述原始單元是一致的。此外,所述助理工作的一致格式可容許工作在所述助理堆疊中的不同模組上的開發人員更輕易地圍繞它來設計。再者,其可容許工作共用。舉例且非限制性的,若一使用者正在智慧型眼鏡上聽音樂,則所述使用者可說“在我的電話上播放此音樂”。在所述電話尚未被喚醒或是有一工作要執行的事件中,所述智慧型眼鏡可制定一工作,其被提供至所述電話,接著可藉由所述電話而被執行以開始播放音樂。在特定實施例中,若所述助理工作具有不同的預期行為,則所述助理工作可個別地由每一個表層來維持。在特定實施例中,所述助理系統140可根據在不同模態的使用者輸入或是其它信號來識別正確工作、進行談話以收集所有必要資訊、以及利用在伺服器或是本地產品表層的內部或外部實施的動作選擇器222來完成該工作。在特定實施例中,所述助理堆疊可包括一組處理構件,從喚醒、辨識使用者輸入、理解使用者意圖、對所述工作進行推理、履行一工作以產生具有語音的自然語言的響應。
在特定實施例中,所述使用者輸入可包括語音輸入。所述語音輸入可在所述ASR模組208被接收到,以用於從所述語音輸入抽取文本轉錄。所述ASR模組208可利用統計模型來決定對應於由所述助理系統140所接收到的語音的一給定部分的最可能單詞順序以作為音訊輸入。所述模型可包含隱藏式馬可夫(Markov)模型、神經網路、深度學習模型、或是其之任意組合中的一或多個。所接收到的音訊輸入可在一特定取樣速率(例如,16、44.1、或是96kHz)以及代表每一個樣本的一特定位元數目(例如,8、16、24個位元)下被編碼成為數位資料。
在特定實施例中,所述ASR模組208可包括一字素到音素(G2P)模型、一發音學習模型、一個人化聲學模型、一個人化語言模型(PLM)、或是一端點模型中的一或多個。在特定實施例中,所述字素到音素(G2P)模型可被用來決定一使用者的字素到音素類型(亦即,當一特定使用者說一特定單詞時聽起來像什麼)。在特定實施例中,所述個人化聲學模型可以是在音訊信號以及在語言中的語音單元的聲音之間的關係的一模型。因此,此種個人化聲學模型可識別一使用者的語音聽起來如何。所述個人化聲學模型可利用訓練資料來加以產生,例如被接收為音訊輸入的訓練語音以及對應於所述語音的對應語音單元。所述個人化聲學模型可利用一特定使用者的語音來加以訓練或是改善,以辨認該使用者的語音。在特定實施例中,所述個人化語言模型接著可針對於一特定音訊輸入決定對應於所識別出的語音單元的最可能片語。所述個人化語言模型可以是在語言中可能出現的各種單詞順序的一機率的模型。在所述音訊輸入中的語音單元的聲音可利用所述個人化語言模型來匹配單詞順序,並且較大權重可被指定給在所述語言中較可能是片語的單詞順序。具有最高權重的單詞順序接著可被選擇作為對應於所述音訊輸入的文本。在特定實施例中,所述個人化語言模型亦可被用來預測在給定一情境下,一使用者最可能說的單詞。在特定實施例中,所述端點模型可偵測何時到達一發聲的結束。在特定實施例中,至少部分根據所述客戶端系統130的有限計算能力,所述助理系統140可在所述客戶側程序期間的執行階段最佳化所述個人化語言模型。舉例且非限制性的,所述助理系統140可針對於一使用者可能會談論的複數個可能題目預先計算複數個個人化語言模型。當一使用者輸入是和一請求協助相關的,所述助理系統140可在執行階段根據使用者活動迅速地切換在所述預先計算出的語言模型之間並且本地最佳化所述預先計算出的語言模型。因此,所述助理系統140可保存計算資源,同時有效率地識別和所述使用者輸入相關的一標的。在特定實施例中,所述助理系統140亦可在執行階段動態地重新學習使用者的發音。
在特定實施例中,所述使用者輸入可包括非語音輸入。所述非語音輸入可在所述情境引擎220被接收到,以用於從所述非語音輸入判斷事件及情境。所述情境引擎220可判斷多模態事件,其包括語音/文本意圖、位置更新、視覺的事件、觸碰、注視、姿勢、活動、裝置/應用程式事件、及/或任何其它適當類型的事件。所述語音/文本意圖可依賴所述ASR模組208以及所述NLU模組210。所述位置更新可藉由所述對話管理器216來消耗,以支援各種主動/反應性情節。所述視覺事件可以是根據出現在使用者的視野的人或物體而定。這些事件可藉由所述對話管理器216來消耗並且被記錄在暫態使用者狀態中,以支援視覺共指(例如,解析在“那襯衫多少錢?”中的“那”、以及解析在“把我的聯繫方式發給他”中的“他”)。所述注視、姿勢及活動可能會在所述暫態使用者狀態(例如,使用者正在跑步)中導致旗標被設定,其可調節所述動作選擇器222。對於所述裝置/應用程式事件,若一應用程式更新所述裝置狀態,則此可公開給所述助理系統140,因而所述對話管理器216可利用此情境(目前顯示給使用者的內容)以處理反應性以及主動情節。舉例且非限制性的,所述情境引擎220可使得一推送通知訊息被顯示在所述使用者的客戶端系統130的一顯示器螢幕上。所述使用者可和所述推送通知訊息互動,其可啟動一多模態事件(例如,用於回復從另一使用者接收到的一訊息的一事件工作流程)。其它範例的多模態事件可包含看一位朋友、看一地標、在家、跑步、辨認在一照片中的臉、用觸碰開始一通話、用觸碰拍攝一照片、打開一應用程式、等等。在特定實施例中,所述情境引擎220亦可根據世界/社交更新(例如,天氣變化、一朋友上線)來判斷世界/社交事件。所述社交更新可包括一使用者所訂閱的事件(例如,朋友的生日、貼文、評論、其它通知)。這些更新可藉由所述對話管理器216來消耗,以根據情境來觸發主動動作(例如,建議一使用者在一朋友的生日時打電話給他,但是只在所述使用者沒有專注於其他事情時)。舉例且非限制性的,接收一訊息可以是一社交事件,其可觸發朗讀所述訊息給所述使用者的工作。
在特定實施例中,來自所述ASR模組208的文本轉錄可被傳送至所述NLU模組210。所述NLU模組210可處理所述文本轉錄及抽取出所述使用者意圖(亦即,意圖),並且根據所述語言本體來語法分析所述槽位或結果。在特定實施例中,來自所述NLU模組210的意圖及槽位、及/或來自所述情境引擎220的事件及情境可被傳送至所述實體解析模組212。在特定實施例中,所述實體解析模組212可根據來自所述NLU模組210及/或所述情境引擎220的輸出來解析和所述使用者輸入相關的實體。所述實體解析模組212可利用不同技術來解析所述實體,其包含利用來自所述助理使用者記憶(AUM)354的使用者記憶。在特定實施例中,所述AUM 354可包括使用者情節的記憶,其有助於藉由所述實體解析模組212的解析所述實體。所述AUM 354可以是用於儲存、擷取、編入索引、以及搜尋使用者資料的中心地。
在特定實施例中,所述實體解析模組212可提供所述意圖、槽位、實體、事件、情境、或是使用者記憶中的一或多個至所述對話狀態追蹤器218。所述對話狀態追蹤器218於是可針對於一工作識別一組狀態候選者,進行和所述使用者的互動以收集必要資訊來填入所述狀態,並且呼叫所述動作選擇器222來實現所述工作。在特定實施例中,所述對話狀態追蹤器218可包括一工作追蹤器410。所述工作追蹤器410可追蹤和一助理工作相關的工作狀態。在特定實施例中,一工作狀態可以是跨互動回合持續性的一資料結構,並且在整體互動期間即時地更新以捕捉所述工作的狀態。所述工作狀態可包括所有目前的有關一工作執行狀態的資訊,例如引數、確認狀態、信賴分數、等等。在所述工作狀態中的任何不正確或過時資訊都可能會導致失敗或不正確的工作執行。所述工作狀態亦可作為用於許多其它構件,例如所述ASR模組208、所述NLU模組210、等等的一組情境資訊。
在特定實施例中,所述工作追蹤器410可包括意圖處理程序411、工作候選者排名模組414、工作候選者產生模組416、以及合併層419。在特定實施例中,一工作可藉由其ID名稱而被識別。若未明確地被設定在所述工作規範中,則所述工作ID可被用來關聯對應的構件資產,例如對話策略360、代理執行、NLG對話動作、等等。因此,來自所述實體解析模組212的輸出可被所述工作候選者產生模組416的一工作ID解析構件417接收到,以解析所述對應工作的工作ID。在特定實施例中,所述工作ID解析構件417可呼叫一工作規範管理器API 430以利用用於解析所述工作ID的觸發規範以及部署規範。給定這些規範,所述工作ID解析構件417可利用意圖、槽位、對話狀態、情境、以及使用者記憶來解析所述工作ID。
在特定實施例中,一工作的技術規範可藉由一工作規範來界定。所述工作規範可被所述助理系統140使用來觸發一工作、進行對話談話、以及找出一正確執行模組(例如,代理228)以執行所述工作。所述工作規範可以是產品要求文件的一實施方式。其可作為所有構件商定的總契約及要求。其可被視為用於一產品的一組裝規範,而所有開發合作夥伴都提供根據所述規範的模組。在特定實施例中,一助理工作可藉由一規範而被定義在所述實施方式中。舉例且非限制性的,所述工作規範可被定義為以下種類。一種類型可以是一基本工作架構,其包括所述基本識別資訊,例如ID、名稱、以及所述輸入引數的架構。另一種類型可以是一觸發規範,其是有關一工作如何可被觸發,例如是意圖、事件訊息ID、等等。另一種類型可以是一談話規範,其用於對話管理器216以進行和使用者及系統的談話。另一種類型可以是一執行規範,其有關所述工作將會如何被執行及實現。另一種類型可以是一部署規範,其有關一特點如何將會被部署至某些表層、本地、以及使用者的群組。
在特定實施例中,所述工作規範管理器API 430可以是用於接達一工作規範管理器的一API。所述工作規範管理器可以是在所述執行階段堆疊中的一模組,以用於從所有的工作載入所述規範,並且提供介面以存取所有的工作規範來獲得詳細的資訊或是產生工作候選者。在特定實施例中,所述工作規範管理器可以是所述執行階段堆疊中的所有構件可經由所述工作規範管理器API 430來利用的。所述工作規範管理器可包括一組靜態實用程序函數,以利用所述工作規範管理器來管理工作,例如藉由平台來過濾工作候選者。在卸下所述工作規範之前,所述助理系統140亦可在開發階段動態地載入所述工作規範以支援端到端開發。
在特定實施例中,所述工作規範可依照領域來分組,並且被儲存在執行階段配置435中。所述執行階段堆疊可在建構時間期間,從所述執行階段配置435載入所有工作規範。在特定實施例中,在所述執行階段配置435中,針對於一領域,可有一cconf檔案以及一cinc檔案(例如,sidechef_task.cconf以及sidechef_task.inc)。舉例且非限制性的,<domain>_tasks.cconf可包括所述工作規範的所有細節。舉另一例子且非限制性的,若對於該特點尚無支援的話,則<domain>_tasks.cinc可提供一方式來蓋過所產生規範。
在特定實施例中,一工作執行可能需要一組引數來執行。因此,一引數解析構件418可利用針對於被解析工作ID的參數規範來解析所述引數名稱。這些引數可根據NLU輸出(例如,槽位[SL:contact])、對話狀態(例如,短期的通話記錄)、使用者記憶(例如使用者偏好、位置、長期的通話記錄、等等)、或是裝置情境(例如計時器狀態、螢幕內容、等等)而被解析。在特定實施例中,所述引數模態可以是文字、音訊、影像、或是其它結構式資料。所述槽位至引數的對映可藉由一填充策略及/或語言本體來界定。在特定實施例中,給定所述工作觸發規範,所述工作候選者產生模組416可根據所述被解析工作ID及引數來尋找將被觸發的工作表列以作為工作候選者。
在特定實施例中,所產生的工作候選者可被傳送至所述工作候選者排名模組414,以進一步被排名。所述工作候選者排名模組414可利用一規則為基礎排名器415來排名它們。在特定實施例中,所述規則為基礎排名器415可包括一組啟發法以偏移某些領域工作。所述排名邏輯可如下被描述為具有情境優先權的原理。在特定實施例中,一使用者指明的工作優先權可高於一在前景工作。當所述意圖是一元意圖時,所述在前景工作的優先權可高於一裝置領域工作。所述裝置領域工作的優先權可高於一觸發意圖領域的一工作。舉例且非限制性的,若所述工作領域在發聲中被提及或指明,例如是“在TIMER應用程式中產生一計時器”,則所述排名可挑選所述工作。舉另一例子且非限制性的,若所述工作領域在前景或主動狀態,則所述排名可挑選所述工作,例如當所述TIMER應用程式在前景而且有一有效計時器時,“停止所述計時器”以停止所述計時器。舉又一例子且非限制性的,若所述意圖是一般元意圖,則所述排名可挑選所述工作,並且當沒有其它主動應用或主動狀態時,所述工作是裝置控制。舉又一例子且非限制性的,若所述工作是與所述意圖領域相同的,則所述排名可挑選所述工作。在特定實施例中,所述工作候選者排名模組414可自訂多一些邏輯來檢查意圖/槽位/實體類型的匹配。所述排名的工作候選者可被傳送至所述合併層419。
在特定實施例中,來自所述實體解析模組212的輸出亦可被傳送至所述意圖處理程序411的一工作ID解析構件412。類似於所述工作ID解析構件417,所述工作ID解析構件412可解析所述對應工作的工作ID。在特定實施例中,所述意圖處理程序411可額外包括一引數解析構件413。類似於所述引數解析構件418,所述引數解析構件413可利用用於所述被解析工作ID的參數規範來解析所述引數名稱。在特定實施例中,意圖處理程序411可處理工作不可知論的(agnostic)特點,並且可能未被表示在工作特定的工作規範之內。除了工作候選者以外,意圖處理程序411可輸出狀態候選者,例如參數更新、確認更新、消除歧義更新、等等。在特定實施例中,某些工作可能需要非常複雜的觸發狀況或是非常複雜的引數填充邏輯,其可能不是其它工作可重複使用的,即使它們在所述工作規範中被支援(例如,通話中的語音命令、經由[IN:PLAY_MEDIA]的媒體工作、等等)。意圖處理程序411亦可適合用於此種類型的工作。在特定實施例中,來自所述意圖處理程序411的結果可優先於來自所述工作候選者排名模組414的結果。來自所述意圖處理程序411的結果亦可被傳送至所述合併層419。
在特定實施例中,所述合併層419可結合來自所述意圖處理程序411的結果以及來自所述工作候選者排名模組414的結果。所述對話狀態追蹤器218可建議每一個工作為一新狀態以供所述對話策略360從其選擇,藉此產生一表列的狀態候選者。所述合併結果可進一步被傳送至一談話理解增強引擎(CURE)追蹤器420。在特定實施例中,所述CURE追蹤器420可以是一個人化學習程序,以改善所述狀態候選者在不同情境下藉由所述對話狀態追蹤器218利用即時使用者回饋的決定。更多有關談話理解增強引擎的資訊可見於2021年2月26日申請的美國專利申請案號17/186459中,其被納入作為參考。
在特定實施例中,藉由所述CURE追蹤器420產生的狀態候選者可被傳送至所述動作選擇器222。所述動作選擇器222可諮詢所述工作策略364,其可以是從經由所述工作規範管理器API 430所存取的執行規範產生的。在特定實施例中,所述執行規範可描述一工作應該如何被執行、以及所述動作選擇器222可能需要採取什麼動作以完成所述工作。
在特定實施例中,所述動作選擇器222可決定和所述系統相關的動作。此種動作可牽涉到所述代理228來執行。因此,所述動作選擇器222可傳送所述系統動作至所述代理228,並且所述代理228可傳回這些動作的執行結果。在特定實施例中,所述動作選擇器可決定和所述使用者或裝置相關的動作。此種動作可能需要藉由所述傳送系統230來執行。因此,所述動作選擇器222可傳送所述使用者/裝置動作至所述傳送系統230,並且所述傳送系統230可傳回這些動作的執行結果。
在此揭露的實施例可包含一人工實境系統、或是結合一人工實境系統來加以實施。人工實境是一種形式的實境,其在呈現給一使用者之前已經用某種方式調整,例如可包含一虛擬實境(VR)、一擴增實境(AR)、一混合實境(MR)、一混雜實境、或是其之某種組合及/或衍生。人工實境內容可包含完全是所產生內容、或是結合所捕捉內容(例如,真實世界的照片)之產生內容。所述人工實境內容可包含視頻、音訊、觸覺回授、或是其之某種組合,並且其之任一個都可用單一通道或是多個通道來加以呈現(例如是產生三維效果給觀看者的立體視頻)。此外,在某些實施例中,人工實境亦可以是和應用程式、產品、配件、服務、或是其之某種組合相關的,其例如被用來在一人工實境中產生內容,且/或在一人工實境中被使用(例如,在人工實境中執行活動)。提供人工實境內容的人工實境系統可在各種平台上加以實施,其包含連接至一主機電腦系統的一頭戴式顯示器(HMD)、一獨立HMD、一行動裝置或計算系統、或是任何其它能夠提供人工實境內容給一或多個觀看者的硬體平台。
主動監聽
在特定實施例中,當一助理致能裝置的麥克風正在監聽一使用者而且所述使用者正在說話時,在所述使用者說一喚醒單詞至所述助理致能裝置之後,所述助理系統140可提供主動非視覺回授(例如,音訊及觸覺)至所述使用者。連續非視覺回授可藉由給予使用者指出所述助理系統140正主動地監聽他們的發聲來改善所述使用者的體驗。在所述助理致能裝置是與一隨附裝置配對的(例如,智慧型眼鏡配對一智慧型手機)的情形中,此特點亦可有降低/消除因為在所述配對的隨附裝置上執行的助理隨附應用程式的作業系統所造成的阻礙的益處。儘管此揭露內容描述藉由特定系統用一特定方式來提供特定回授,但是此揭露內容思及藉由任何適當系統以任何適當方式來提供任何適當回授。
在特定實施例中,所述助理系統140可從一第一客戶端系統130接收一第一使用者輸入,其包括和一助理機器人相關的一喚醒單詞。所述助理系統140接著可設定所述助理機器人進入一監聽模式。相應地,當所述助理機器人在所述監聽模式中,連續非視覺回授可經由所述第一客戶端系統130來加以提供。在特定實施例中,當所述助理機器人在所述監聽模式中,所述助理系統140可從所述第一客戶端系統130接收一第二使用者輸入,其包括一使用者發聲。所述助理系統140接著可根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束。所述助理系統140可進一步設定所述助理機器人進入一不活躍模式。在特定實施例中,當所述助理機器人在所述不活躍模式中,所述非視覺回授可透過所述第一客戶端系統130來中斷。在特定實施例中,所述第一及第二使用者輸入可能包括和所述助理系統140的整個對話會談、或者可以是和所述助理系統140的多回合對話會談的部分。
在特定實施例中,所述連續非視覺回授可被設置在一使用者與所述助理系統140之間的多回合互動中。所述多回合互動可包括超過兩個回合互動,亦即針對於第三及所有後續使用者語音輸入。於是,所述助理系統140在所述使用者與助理系統140之間的一來回互動中可能開啟所述麥克風超過一次。舉例且非限制性的,所述使用者可說“嘿助理”作為一第一使用者輸入。所述助理系統140可提供一喚醒聲音,並且接著是一監聽聲音。所述使用者接著可說“傳送一訊息給Lia”作為一第二使用者輸入。所述監聽聲音可逐漸消失以及所述助理系統140可回覆“您希望訊息是什麼?”所述助理系統140可再次提供所述監聽聲音。同時,所述助理系統140可為了所述第三使用者輸入而再次開啟所述麥克風。所述使用者接著可說“活動我將會遲到”。所述監聽聲音接著可再次逐漸消失,並且所述助理系統可回覆“現在傳送訊息”。
在特定實施例中,所述一或多個計算系統可包括所述第一客戶端系統130。舉例且非限制性的,所述第一客戶端系統130可包括智慧型手機、智慧型眼鏡、擴增實境(AR)眼鏡、虛擬實境(VR)頭戴式裝置、或是智慧型手錶中的一或多個。一對應使用案例可以是如下的。使用者可利用所述第一客戶端系統130(例如,智慧型手機)。所述客戶端系統130可以是鎖住的,並且所述助理機器人可以一背景程序來執行。因此,所述助理機器人可能因為所述第一客戶端系統130的作業系統而受到阻礙,其可能限制所述助理系統140執行所述整個助理堆疊。在替代實施例中,所述第一客戶端系統130可被解鎖,並且所述助理機器人可執行為一前景程序。所述使用者可向所述第一客戶端系統130說一喚醒單詞,而所述助理系統140可為此提供一回授(例如,一呯(ping)音),其被設計以指出所述助理系統140被啟動。所述助理系統140接著可設定在所述第一客戶端系統130上執行的助理機器人進入所述監聽模式。所述連續非視覺回授(例如,音訊)於是可經由所述第一客戶端系統130而被傳遞至所述使用者,此可將所述助理機器人從背景帶向前景。因此,所述作業系統可給予所述助理機器人更大的計算能力,因而所述助理系統140可有效地執行所述整個助理堆疊。若所述第一客戶端系統130被解鎖,並且所述助理機器人執行為一前景程序,則所述連續非視覺回授可為了可用性益處而作用。當所述使用者停止說話時(亦即,靜默的),所述助理系統140可進一步提供一回授(例如,另一呯音),其被設計以指出所述助理系統140是不動作的。同時,所述助理系統140可停止傳遞所述連續非視覺回授至所述使用者。
在特定實施例中,所述一或多個計算系統可包括與所述第一客戶端系統130配對的一隨附裝置。舉例且非限制性的,所述第一客戶端系統130可以是助理致能智慧型眼鏡,並且所述隨附裝置可以是智慧型手機。相應地,所述助理機器人可以是和在所述隨附裝置上執行的一隨附應用程式相關的。當所述助理機器人接收到所述喚醒單詞時,所述助理系統140可指示所述助理機器人提供一回授(例如,一呯音),其被設計以指出所述助理系統140是被啟動的。然而,當所述喚醒單詞被接收到時,所述隨附裝置可能在鎖住狀態中。當所述隨附裝置是鎖住的,所述隨附應用程式可能在所述隨附裝置上以一背景應用程式來執行。以一助理致能裝置來利用一隨附裝置的一問題可能是大多數作業系統可能阻礙背景應用程式可利用的計算能力的量。在特定實施例中,所述隨附應用可被所述隨附裝置容許利用一低於臨界能力的計算能力。舉例且非限制性的,在一作業系統上,背景應用程式可能被阻礙至8%的計算能力,而在另一作業系統上,背景應用程式可能被阻礙至25%的計算能力。透過一客戶端系統130來提供連續非視覺回授可用於解決當所述客戶端系統130被鎖住時,增加在所述客戶端系統130上的助理系統140的操作能力的技術上的挑戰之一有效解決方案,因為所述作業系統可在不解鎖所述客戶端系統130下,響應於所述非視覺回授來增加所述助理系統140可利用的計算能力。儘管此揭露內容描述針對於當所述隨附裝置是鎖住的,所述隨附應用執行為一背景應用程式時提供連續非視覺回授,但是此揭露內容思及當所述隨附應用程式以及所述隨附裝置在任何適當狀態時提供連續非視覺的回授。舉例且非限制性的,即使所述隨附應用程式是在前景執行,所述助理系統140仍可提供連續非視覺回授。舉另一例子且非限制性的,所述助理系統140可在和所述隨附應用程式以及所述隨附裝置相關的狀態的各種組合中提供連續非視覺回授,例如當所述隨附裝置是被解鎖的,所述隨附應用程式是在前景執行、當所述隨附裝置是被解鎖的,所述隨附應用程式是在背景執行、以及當所述隨附裝置是被鎖住的,所述隨附應用程式是在背景執行、等等。
當所述作業系統因為限制所述隨附應用程式可利用的計算能力而阻礙所述隨附應用程式時,其可能妨礙所述隨附應用程式執行所述助理系統140的整個助理堆疊。然而,為了有效地協助使用者,所述隨附應用程式可能需要利用充分計算能力以執行所述整個助理堆疊。為了解決此問題,所述助理系統140可藉由提供主動回授(例如,連續非視覺回授)來響應於一使用者輸入,因此將所述隨附應用程式帶離背景,使得所述作業系統可解除限制所述隨附應用程式。換言之,所述作業系統可響應於所述連續非視覺回授,執行所述隨附應用程式為一前景應用程式。在替代實施例中,所述作業系統可以維持執行所述隨附應用程式為一背景應用,此可被視為一更適當狀態以經由所述連續非視覺回授來和所述使用者互動。在特定實施例中,所述連續非視覺回授可以是根據聲音、振動、或觸覺中的一或多個。所述作業系統接著可將所述隨附應用程式被容許利用的計算能力增加為大於臨界能力的計算能力。換言之,當所述隨附應用程式提供主動回授至所述配對的隨附裝置時,所述作業系統可降低或移除此阻礙,此容許所述隨附應用程式能夠正常執行所述助理堆疊。當所述使用者停止說話時(亦即,靜默的),所述助理系統140可進一步指示所述助理機器人提供一回授(例如,另一呯音),其被設計以指出所述助理系統140是不動作的。同時,所述助理系統140可停止經由所述助理機器人來傳遞所述連續非視覺回授至所述使用者。
在特定實施例中,可有各種新聲音設計或是其它非視覺設計作為連續非視覺回授。在特定實施例中,當所述助理系統140醒來時,可根據一非循環音訊信號的一喚醒聲音來指出所述助理系統140已經變成作用中的(亦即,所述客戶端系統130的麥克風正在錄音)。所述喚醒聲音可在所述喚醒單詞被偵測到之後播放。所述喚醒聲音在多回合互動期間的後續回合期間可能不播放(亦即,若所述助理系統140要求一跟進提示並且為了使用者輸入而主動地開啟所述麥克風,則其可不播放所述喚醒聲音)。此外,若輸入在喚醒單詞之後的某一時間(例如,1000ms)之內被偵測到,則所述喚醒聲音可不播放(亦即,若所述使用者在喚醒單詞以及發聲之間並不暫停,則所述助理系統140可不播放所述喚醒聲音以避免中斷所述使用者)。
在特定實施例中,所述助理系統140可播放一監聽聲音來指出所述助理系統140正主動地監聽(亦即,所述客戶端系統130的麥克風是開啟的)。舉例且非限制性的,一聲音設計可以是一循環音訊信號,例如具有一快速頻率及減小強度的一輕聲拍音或是一低音調。舉另一例子且非限制性的,另一聲音設計可以是靜默音訊(亦即,用於靜默音訊的音訊檔可以具有一持續期間,但是沒有實際音訊波形)。所述監聽聲音可在喚醒單詞被偵測到之後播放,並且在所述助理系統140監聽時循環。所述監聽聲音可在所述助理系統140停止監聽時停止。不明顯且非中斷的新設計背景聲音可以是一有效解決方案以用於解決避免阻礙一使用者輸入一語音命令的感知能力的技術上的挑戰,因為所述背景聲音不可造成有關所述使用者何時應該發出所述語音命令的混淆。再者,所述助理系統140可有在一使用者以及所述助理系統之間的來回互動的由所述使用者感知的改善節奏的一技術上的優點,因為所述連續聲音可藉由消除在所述互動中的靜默停頓來最小化所述互動延時或延遲的感知。此於是可作用以改善整體使用者體驗以及感知效率。
在特定實施例中,當沒有文字轉聲音響應時,可有根據非循環音訊信號的一確認聲音,以指出所述助理系統140已經理解輸入並且作用在其上。所述確認聲音可提供放心,並且遮蔽較小延遲。若在解析出意圖及工作完成之間有相當大延遲,則額外使用者信號可能是所需的。然而,若有一文字轉語音響應、若有另一聲音來確認所述動作(亦即,照片捕捉)、或是用於基本使用者介面的導覽(亦即,“返回”、“下一頁”),則所述確認聲音可不播放。
在特定實施例中,可有一不活躍聲音來確認所述助理系統140已經變成不活躍(亦即,所述客戶端系統130的麥克風是關閉的)。在所述助理系統140醒來之後,若所述喚醒經由語音或觸碰而被抵消、若在所述喚醒之後什麼也沒說、或是若對於第二跟進提示沒有響應,則所述不活躍聲音可播放(亦即,若一使用者並未響應於一消除歧義提示,而重複所述問題,但是在所述第二跟進提示之後沒有輸入,則所述助理系統140可關閉所述麥克風並且播放所述不活躍聲音)。舉例且非限制性的,所述使用者可在聽到所述監聽聲音,但是不提供一語音輸入之後取消所述互動。相應地,所述助理系統140可關閉所述麥克風,並且播放所述不活躍聲音。舉另一例子且非限制性的,在所述監聽聲音之後的一臨界時間量(例如,2秒)可能沒有來自所述使用者的語音輸入。相應地,所述助理系統140可判斷逾時,並且接著關閉所述麥克風。在所述臨界時間量沒有使用者語音輸入的情形中,此可藉由直接接在所述監聽聲音之後的不活躍聲音來指出。
在特定實施例中,可有一失敗聲音來指出所述請求無法被執行。所述失敗聲音可在技術錯誤的情況下播放,其針對於連接問題的情況可能需要一裝置上資產。當所述使用者輸入不被理解時、或是在不存在針對物件導向設計的文字轉語音響應的情況中,所述失敗聲音亦可播放。
在特定實施例中,所述助理系統140可利用所述連續非視覺回授(例如,主動音訊回授)加上一視覺注意系統(例如,針對於其中主動音訊回授不足以將所述作業系統解除限制的某些作業系統)。若所述使用者正單獨利用所述第一客戶端系統130並且在所述第一客戶端系統130上,所述連續非視覺回授本身並不完全地將所述第一客戶端系統130的作業系統解除限制以容許所述助理機器人執行所述整個助理堆疊,則當所述助理機器人在所述監聽模式中,所述助理系統140可經由所述第一客戶端系統130來提供一連續視覺回授。舉例且非限制性的,所述連續視覺回授可以是根據和所述助理機器人相關的一圖像、所述監聽模式的一視覺指示、或是光中的一或多個。在特定實施例中,所述連續非視覺回授和所述視覺注意系統一起可造成所述隨附應用程式從背景至前景的狀態轉變。此種狀態轉變可能是所述作業系統特有的,其中主動音訊回授不足以將所述作業系統解除限制。
在特定實施例中,當所述助理機器人在所述監聽模式中,所述助理系統140可經由所述隨附裝置來提供一連續視覺回授。舉例且非限制性的,所述視覺注意系統可在所述隨附裝置上致能所述隨附應用程式以顯示一視覺指示符(亦即,在所述智慧型手機上的一通知或是圖像),其指出所述配對的助理致能裝置(例如,智慧型眼鏡)在監聽模式中。例如,所述使用者可向一副助理致能智慧型眼鏡說“嘿助理”。在所述隨附裝置(例如,一智慧型手機)上,所述助理圖像可從所述鎖定螢幕而被顯示出。此外,可有一動畫或是文字說明來指出所述助理系統140正主動地監聽所述使用者經由所述智慧型眼鏡上的麥克風的進一步發聲。所述使用者接著可做出一口頭請求,並且響應可經由在所述智慧型眼鏡的頭戴式耳機上的音訊並且在所述智慧型手機上以視覺顯現。所述連續非視覺回授和所述連續視覺回授一起可將所述隨附應用程式帶到前景,此容許所述應用程式避免因為所述作業系統的阻礙。
如上所論述,所述主動非視覺、或是非視覺加上視覺回授可確保所述隨附應用程式可利用到充分計算能力來執行在所述配對裝置上助理堆疊,甚至在其被鎖住也是如此。所述主動非視覺、或是非視覺加上視覺回授可將所述隨附應用程式帶到前景,並且所述作業系統於可容許所述隨附應用程式能夠利用到更大的計算能力。
在特定實施例中,所述主動非視覺、或是非視覺加上視覺回授亦可致能使用者知道所述助理系統140何時正主動地監聽它們(亦即,當所述麥克風開啟/監聽及/或發送音訊至一伺服器或是一隨附裝置時)。因此,所述助理系統140可具有改善使用者感知的回授的一技術上的優點,因為當所述連續非視覺及/或視覺回授存在時,使用者可有更高可信度所述助理系統正主動地監聽並且處理輸入。在某些助理致能裝置,此可藉由使得所述裝置提供連續視覺回授(例如,一發光的光、一動畫圖像)來達成。對於沒有顯示器螢幕的助理致能裝置(例如,智慧型眼鏡),所述助理系統140可依賴前述非視覺回授(例如,聲音、音訊、觸覺)。
以聲音/音訊舉例而言,所述助理系統140可如下通知所述使用者他們正被主動地監聽。在特定實施例中,所述助理系統140可響應於所述第一使用者輸入,以在所述連續非視覺回授之前,先經由所述第一客戶端系統130來提供一最初非視覺回授。所述最初非視覺回授可指出所述助理機器人的監聽模式的起始。舉例且非限制性的,當所述使用者說所述喚醒單詞(例如,“嘿助理”)時,所述隨附應用程式首先可發出一喚醒聲音(例如,一“呯”聲音)。在所述喚醒聲音之後,所述隨附應用程式接著可在其監聽時持續地播放一監聽聲音(例如,一循環音訊信號,例如具有一快速頻率以及減小強度的一輕聲拍音或是一低音調)。此可讓所述使用者知道所述助理系統140正在監聽所述使用者的進一步發聲。所述使用者接著可高過此監聽聲音說出其請求。當所述使用者停止說話時,所述隨附應用程式可播放一確認聲音(例如,另一“呯”)。同時,所述監聽聲音可漸小其音量、或者可立即被中斷。在所述助理系統140正監聽時提供一監聽聲音可不同於其它習知助理,其在監聽時可能是靜默的。
圖5描繪用於主動監聽的一範例的非視覺回授。一使用者505可利用兩個客戶端系統130,一個是他正穿戴的智慧型眼鏡130a(其可對應於圖1中的一顯現裝置137),而另一個是他在桌上的智慧型手機130b(其可對應於圖1中的一隨附裝置138)。所述智慧型眼鏡130a以及所述智慧型手機130b可以是配對的。所述使用者505可以是正在對著他的智慧型眼鏡130a說話。所述使用者505首先可說“嘿助理…”510。所述助理系統140接著可響應於此喚醒單詞而醒來。再者,所述助理系統140可能需要所述助理隨附應用程式被載入在他的智慧型手機130b上以處理所述使用者的進一步發聲。因此,為了通知所述使用者505所述助理系統140正主動地監聽所述使用者505及/或避免所述智慧型手機130b的作業系統阻礙所述助理隨附應用程式,所述助理隨附應用程式可提供連續音訊回授。舉例且非限制性的,在所述智慧型手機130b上的所述助理隨附應用程式可播放一醒來聲音,其指出所述助理系統140的醒來(亦即,一指出所述麥克風是開啟的聲音)、以及一連續聲音,其指出藉由所述助理系統140的主動監聽(亦即,一指出所述麥克風仍然是開啟的連續聲音)。由於所述智慧型眼鏡130a是與所述智慧型手機130b配對的,因此它們亦可作用為用於所述智慧型手機130b的一頭戴式耳機。因此,所述智慧型手機130b可傳送一包括所述醒來聲音以及所述連續聲音的音訊檔515至所述智慧型眼鏡130a。於是,所述使用者505可從他的智慧型眼鏡130a聽見聲音“呯…噠、噠、噠、噠、…”515a。所述使用者505可進一步說“我想知道今晚我還能不能買到比賽的票”520。響應於此發聲,所述助理隨附應用程式可傳送另一音訊檔515至所述智慧型眼鏡130a,其包括指出藉由所述助理系統140的主動監聽的連續聲音。於是,所述使用者505可從他的智慧型眼鏡130a聽見聲音“噠、噠、噠、噠、…”515b。所述使用者505接著可停止說話,而所述助理系統140可偵測到靜默530。相應地,所述智慧型手機130b可傳送另一音訊檔515至所述智慧型眼鏡130a,其包括所述連續聲音(因為在響應於所述靜默530之前,所述助理系統140仍然在主動地監聽)並且所述連續聲音可逐漸變小聲。於是,所述使用者可從他的智慧型眼鏡130a聽見聲音“噠、噠、[逐漸變小聲]”515c。所述助理系統140可進一步響應於所述使用者505的發聲520來產生一響應,並且根據文字轉語音(TTS)轉換來轉換所述響應(亦即,一TTS響應)。所述智慧型手機130b可傳送另一音訊檔515至所述智慧型眼鏡130a,其包括所述TTS響應。於是,所述使用者可從他的智慧型眼鏡130a聽見“我剛檢查過。仍有門票可買”515d。在圖5的例子中,若沒有TTS響應,所述助理系統140可指示所述智慧型手機130b播放一確認/結束耳標(earcon),其指出所述助理系統140接收到所述輸入並且所述麥克風將會不動作的(亦即,所述麥克風是關閉的)。於是,所述使用者505可從他的智慧型眼鏡130a聽見聲音“噠、噠、呯”,其中所述“呯”是所述確認/結束耳標。儘管此例子描述在所述使用者505以及所述助理系統140之間的多回合互動期間傳送多個個別音訊檔(例如,另一音訊檔515),但是所述助理系統140可替代地傳送一連續音訊檔,其在使用者輸入之前、在使用者輸入期間、以及在靜默被偵測到之後,延伸直到所述麥克風關閉為止。相應地,所述使用者505可高過此一連續音訊檔來說話。
圖6描繪用於主動監聽的一範例的非視覺及視覺回授。一使用者605可利用兩個客戶端系統130,一個是他正穿戴的智慧型眼鏡130a(其可對應於圖1中的一顯現裝置137),而另一個是他正握持的智慧型手機130b(其可對應於圖1中的一隨附裝置138)。所述智慧型眼鏡130a以及所述智慧型手機130b可以是配對的。所述使用者605首先可說“嘿助理…”610。所述助理系統140接著可響應於此喚醒單詞而醒來。再者,所述助理系統140可能需要所述助理隨附應用程式被載入在他的智慧型手機130b上以處理所述使用者的進一步發聲。因此,為了通知所述使用者605所述助理系統140正主動地監聽所述使用者605及/或避免所述智慧型手機130b的作業系統阻礙所述助理隨附應用程式,所述助理隨附應用程式可提供連續音訊及視覺回授。舉例且非限制性的,在所述智慧型手機130b上的所述助理隨附應用程式可播放一醒來聲音,其指出所述助理系統140的醒來、以及一連續聲音,其指出藉由所述助理系統140的主動監聽。如同所述智慧型眼鏡130a是與所述智慧型手機130b配對的,它們亦可作用為用於所述智慧型手機130b的一頭戴式耳機。因此,所述智慧型手機130b可以傳送一包括所述醒來聲音以及所述連續聲音的音訊檔615至所述智慧型眼鏡130a。於是,所述使用者605可從他的智慧型眼鏡130a聽見聲音“呯…噠、噠、噠、噠、…”615a。除了所述連續的音訊回授之外,所述助理隨附應用程式可在所述智慧型手機130b的螢幕625上額外提供連續視覺回授620(例如,視覺指示符)。所述使用者605可進一步說“那是誰?他看起來很眼熟”630。響應於此發聲,所述助理隨附應用程式可傳送另一音訊檔615至所述智慧型眼鏡130a,其包括指出藉由所述助理系統140的主動監聽的連續聲音。於是,所述使用者605可從他的智慧型眼鏡130a聽見聲音“噠、噠、噠、噠、…”615b。除了所述連續音訊回授之外,所述使用者605仍然可在他的智慧型手機130b的螢幕625上看見所述連續視覺回授620。所述使用者605接著可停止說話,而所述助理系統140可偵測到靜默635。相應地,所述智慧型手機130b可傳送另一音訊檔615至所述智慧型眼鏡130a,其包括所述連續聲音(因為在響應於所述靜默635之前,所述助理系統140仍然在主動地監聽)並且所述連續聲音可逐漸變小聲。於是,所述使用者可從他的智慧型眼鏡130a聽見聲音“噠、噠、[逐漸變小聲]”615c。同時,在他的智慧型手機130b的螢幕625上的連續視覺回授620可消失。所述助理系統140可進一步響應於所述使用者605的發聲630來產生一響應,並且根據文字轉語音(TTS)轉換來轉換所述響應(亦即,一TTS響應)。所述智慧型手機130b可傳送另一音訊檔615至所述智慧型眼鏡130a,其包括所述TTS響應。於是,所述使用者可從他的智慧型眼鏡130a聽見“那是Luka。你在Erika的生日聚會上遇見過他”615d。在圖6的例子中,若沒有TTS響應,所述助理系統140可指示所述智慧型手機130b播放一確認/結束耳標,其指出所述助理系統140接收到所述輸入並且所述麥克風將會不動作的。於是,所述使用者605可從他的智慧型眼鏡130a聽見聲音“噠、噠、呯”。
圖7描繪一種用於利用增大操作能力的主動監聽之範例的方法700。所述方法可開始在步驟710,其中所述助理系統140可從一第一客戶端系統130接收一第一使用者輸入,其包括和一助理機器人相關的一喚醒單詞,其中所述第一客戶端系統130包括智慧型手機、智慧型眼鏡、擴增實境(AR)眼鏡、虛擬實境(VR)頭戴式裝置、或是智慧型手錶中的一或多個,其中一隨附裝置是與所述第一客戶端系統130配對的,其中當所述喚醒單詞被接收到時,所述隨附裝置在一鎖住狀態中,其中所述助理機器人是和在所述隨附裝置上執行的一隨附應用程式相關的,其中所述隨附應用程式在所述隨附裝置上執行為一背景應用程式,並且其中所述隨附應用程式被所述隨附裝置容許來利用低於一臨界能力的計算能力。儘管此揭露內容描述針對於當所述隨附裝置是鎖住的,所述隨附應用程式執行為一背景應用程式時提供連續非視覺回授,但是此揭露內容思及當所述隨附應用程式以及所述隨附裝置在任何適當狀態時提供連續非視覺回授,例如當所述隨附裝置被解鎖,所述隨附應用程式在前景執行時、當所述隨附裝置被解鎖,所述隨附應用程式在背景執行時、以及當所述隨附裝置被鎖住,所述隨附應用程式在背景執行時。在步驟720,所述助理系統140可響應於所述第一使用者輸入,在所述連續非視覺回授之前經由所述第一客戶端系統130來提供一最初非視覺回授,其中所述最初非視覺回授指出所述助理機器人的監聽模式的起始。在步驟730,所述助理系統140可設定所述助理機器人進入一監聽模式,其中當所述助理機器人在所述監聽模式中,一連續非視覺回授經由所述第一客戶端系統130來提供,其中所述連續非視覺回授根據聲音、振動、或是觸覺中的一或多個。在步驟740,當所述助理機器人在所述監聽模式中,所述助理系統140可經由所述隨附裝置來提供一連續視覺回授,其中所述連續視覺回授根據和所述助理機器人相關的一圖像、所述監聽模式的一視覺指示、或是光中的一或多個。在步驟750,所述助理系統140可響應於所述連續非視覺回授來執行所述隨附應用程式為一前景應用程式。此種從背景至前景的狀態轉變可以是所述作業系統特定的,其中主動音訊回授不足以用於將所述作業系統解除限制。此外,所述視覺注意系統可另加在所述連續非視覺回授上,以造成所述狀態轉變。在其中主動音訊回授足以用於將所述作業系統解除限制的作業系統中,所述助理系統140可保持執行所述隨附應用程式為一背景應用程式,其可被視為一更適當狀態來經由所述連續非視覺回授和所述使用者互動。在步驟760,所述助理系統140可將所述隨附應用程式被容許來利用的計算能力增加為大於臨界能力的計算能力。在步驟770,當所述助理機器人在所述監聽模式中,所述助理系統140可從所述第一客戶端系統130接收一第二使用者輸入,其包括一使用者發聲。在步驟780,所述助理系統140可根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束。在步驟790,所述助理系統140可設定所述助理機器人進入一不活躍模式,其中當所述助理機器人在所述不活躍模式中,所述非視覺回授經由所述第一客戶端系統130而被中斷。在適當情況,特定實施例可重複圖7的方法的一或多個步驟。儘管此揭露內容描述並且描繪圖7的方法的特定步驟為以一特定順序發生,但是此揭露內容思及圖7的方法的任何適當步驟以任何適當順序來發生。再者,儘管此揭露內容描述並且描繪一種用於利用增大操作能力的主動監聽之範例的方法包含圖7的方法的特定步驟,但是此揭露內容思及任何用於利用增大操作能力的主動監聽之適當方法包含任何適當步驟,其在適當情況可包含圖7的方法的步驟的全部、一些或是全無。再者,儘管此揭露內容描述並且描繪特定構件、裝置或系統實行圖7的方法的特定步驟,但是此揭露內容思及任何適當構件、裝置或系統的任何適當的組合實行圖7的方法的任何適當步驟。
隱私
在特定實施例中,一計算系統的一或多個物件(例如,內容或是其它類型的物件)可以是和一或多個隱私設定相關的。所述一或多個物件可被儲存在任何適當計算系統上、或者是和應用程式相關的,例如一社群網路系統160、一客戶端系統130、一助理系統140、一第三方系統170、一社群網路應用程式、一助理應用程式、一消息傳遞應用程式、一相片分享應用程式、或是任何其它適當計算系統或應用程式。儘管在此論述的例子是在一線上社群網路的背景中,但是這些隱私設定可被施加至任何其它適當計算系統。用於一物件的隱私設定(或是“存取設定”)可用任何適當方式來儲存,例如和所述物件相關聯、在一授權伺服器上用一索引、用其它適當方式、或是用其之適當的組合。用於一物件的一隱私設定可指明所述物件(或是和所述物件相關的特定資訊)在所述線上社群網路之內如何可被存取、儲存、或以其它方式使用(例如,觀看、共享、修改、複製、執行、顯現、或是識別)。當用於一物件的隱私設定容許一特定使用者或其它實體存取該物件時,所述物件可被描述為相關該使用者或其它實體“可見的”。舉例且非限制性的,所述線上社群網路的一使用者可指明用於一使用者簡檔頁的隱私設定,其指明一組可利用在所述使用者簡檔頁上的工作經驗資訊的使用者,因此排除其他使用者來利用該資訊。
在特定實施例中,用於一物件的隱私設定可指明一“阻止名單”的使用者或其它實體,其不應該被容許利用和所述物件相關的某些資訊。在特定實施例中,所述阻止名單可包含第三方實體。所述阻止名單可指明不可見到此一物件的一或多個使用者或實體。舉例且非限制性的,一使用者可指明一組不可存取和所述使用者相關的相簿的使用者,因此將那些使用者排除存取所述相簿(同時亦可能容許不在所指明使用者組內的某些使用者利用所述相簿)。在特定實施例中,隱私設定可以是和特定社交圖元素相關的。一社交圖元素(例如一節點或是一邊緣)的隱私設定可指明所述社交圖元素、和所述社交圖元素相關的資訊、或是和所述社交圖元素相關的物件如何可利用所述線上社群網路而被利用。舉例且非限制性的,一特定照片可具有一隱私設定,其指明所述照片只能夠被所述照片中標記的使用者、以及所述照片中標記的使用者的朋友利用。在特定實施例中,隱私設定可容許使用者選擇加入或是選擇退出使其內容、資訊、或是動作被所述社群網路系統160或助理系統140儲存/登錄、或是與其它系統(例如,一第三方系統170)共享的。儘管此揭露內容描述以一特定方式來利用特定隱私設定,但是此揭露內容思及以任何適當方式來利用任何適當的隱私設定。
在特定實施例中,所述社群網路系統160可呈現一“隱私精靈”(例如,在一網頁、一模組、一或多個對話框、或是任何其它適當的介面之內)給所述第一使用者,以協助所述第一使用者指明一或多個隱私設定。所述隱私精靈可顯示指令、適當隱私相關的資訊、目前隱私設定、用於接受來自所述第一使用者的一或多個指明隱私設定的改變或確認的輸入的一或多個輸入欄位、或是其之任何適當的組合。在特定實施例中,所述社群網路系統160可提供一“儀表板”功能給所述第一使用者,其可顯示所述第一使用者的目前隱私設定給所述第一使用者。所述儀表板功能可在任何適當時間顯示給所述第一使用者(例如,接在來自所述第一使用者的召喚所述儀表板功能的一輸入之後、接在一特定事件或觸發動作的發生之後)。所述儀表板功能可容許所述第一使用者能夠在任何時間,以任何適當方式來修改所述第一使用者的目前隱私設定中的一或多個(例如,重新導向所述第一使用者至所述隱私精靈)。
和一物件相關的隱私設定可指明任何適當細微度的容許存取或是拒絕存取。舉例且非限制性的,存取或是拒絕存取可針對於特定使用者(例如,只有我、我的室友、我的上司)、在一特定分離度之內的使用者(例如,朋友、朋友的朋友)、使用者群組(例如,遊戲俱樂部、我的家人)、使用者網絡(例如,特定雇主的員工、特定大學的學生或校友)、所有使用者(“大眾”)、沒有使用者(“私人”)、第三方系統170的使用者、特定應用程式(例如,第三方應用程式、外部網站)、其它適當實體、或是其之任何適當的組合來加以指明。儘管此揭露內容描述容許存取或是拒絕存取的特定細微度,但是此揭露內容思及容許存取或是拒絕存取的任何適當細微度。
在特定實施例中,一或多個伺服器162可以是用於實施隱私設定的授權/隱私伺服器。響應於來自一使用者(或其它實體)針對於被儲存在一資料儲存庫164中的一特定物件的一請求,所述社群網路系統160可傳送針對於所述物件的一請求至所述資料儲存庫164。所述請求可識別和所述請求相關的使用者,並且若所述授權伺服器根據和所述物件相關的隱私設定而判斷所述使用者被授權以利用所述物件,則所述物件只能夠被傳送至所述使用者(或是所述使用者的一客戶端系統130)。若所述請求的使用者並未被授權利用所述物件,則所述授權伺服器可避免所請求物件從所述資料儲存庫164被擷取、或是可避免所請求物件被傳送至所述使用者。在搜尋-查詢背景中,只有若所述查詢使用者被授權利用所述物件,例如若用於所述物件的隱私設定容許其能夠被顯現、發現、或以其它方式可見於所述查詢使用者,則一物件可被提供為一搜尋結果。在特定實施例中,一物件可代表一使用者可透過所述使用者的一新聞動態消息見到的內容。舉例且非限制性的,一或多個物件可以是一使用者的“趨勢”頁可見的。在特定實施例中,一物件可對應於一特定使用者。所述物件可以是和所述特定使用者相關的內容、或者可以是被儲存在所述社群網路系統160或其它計算系統上的所述特定使用者的帳戶或資訊。舉例且非限制性的,一第一使用者可透過所述線上社群網路的“你可能認識的人”功能、或是藉由觀看所述第一使用者的朋友清單,來觀看一線上社群網路的一或多個第二使用者。舉例且非限制性的,一第一使用者可指明他們並不希望在其新聞動態消息或朋友清單中看見和一特定第二使用者相關的物件。若用於所述物件的隱私設定並不容許其被顯現、發現、或是可見於所述使用者,則所述物件可從搜尋結果被排除。儘管此揭露內容描述用一特定方式來實施隱私設定,但是此揭露內容思及以任何適當方式來實施隱私設定。
在特定實施例中,和一使用者相關的相同類型的不同物件可有不同隱私設定。和一使用者相關的不同類型的物件可有不同類型的隱私設定。舉例且非限制性的,一第一使用者可指明所述第一使用者的狀態更新是公開的,但是由所述第一使用者所共享的任何影像只有所述第一使用者在所述線上社群網路上的朋友可見的。舉另一例子且非限制性的,一使用者可對於不同類型的實體,例如個別使用者、朋友的朋友、追隨者、使用者群組、或是公司實體指明不同的隱私設定。舉另一例子且非限制性的,一第一使用者可指明一群組的使用者可觀看由所述第一使用者貼上的視頻,而使得所述視頻是所述第一使用者的雇主不可見的。在特定實施例中,不同隱私設定可被設置用於不同使用者群組或是使用者的人口統計資料。舉例且非限制性的,一第一使用者可指明和所述第一使用者上相同大學的其他使用者可觀看所述第一使用者的照片,但是做為所述第一使用者的家庭成員的其他使用者並不可觀看同樣那些照片。
在特定實施例中,所述社群網路系統160可對於一特定物件類型的每一個物件提供一或多個預設隱私設定。用於一物件的一被設定為預設的隱私設定可藉由和該物件相關的一使用者來加以改變。舉例且非限制性的,由一第一使用者所貼的全部影像可有一預設隱私設定是只有所述第一使用者的朋友才可見的,而對於一特定影像,所述第一使用者可改變用於所述影像的隱私設定成為朋友以及朋友的朋友可見的。
在特定實施例中,隱私設定可容許一第一使用者指明(例如,藉由選擇排除、藉由不選擇加入)所述社群網路系統160或是助理系統140是否可為了任何目的而接收、收集、記錄、或是儲存和所述使用者相關的特定物件或資訊。在特定實施例中,隱私設定可容許所述第一使用者指明特定應用程式或程序是否可存取、儲存、或是使用和所述使用者相關的特定物件或資訊。所述隱私設定可容許所述第一使用者選擇加入或是選擇排除使得物件或資訊由特定應用程式或程序存取、儲存、或是使用。所述社群網路系統160或助理系統140可存取此種資訊以便於提供一特定功能或服務給所述第一使用者,而所述社群網路系統160或助理系統140不能為了任何其它目的來存取該資訊。在存取、儲存、或是利用此種物件或資訊之前,所述社群網路系統160或助理系統140可在容許任何此種動作之前提示所述使用者來提供隱私設定,其指明哪些應用程式或程序(若有的話)可存取、儲存、或是使用所述物件或資訊。舉例且非限制性的,一第一使用者可經由相關於所述線上社群網路的一應用程式(例如,一消息傳遞應用程式)來發送一訊息給一第二使用者,並且可指明此種訊息不應該被所述社群網路系統160或助理系統140儲存的隱私設定。
在特定實施例中,一使用者可指明和所述第一使用者相關的特定類型的物件或資訊是否可被所述社群網路系統160或助理系統140存取、儲存、或是使用。舉例且非限制性的,所述第一使用者可指明藉由所述第一使用者透過所述社群網路系統160或助理系統140所傳送的影像不可被所述社群網路系統160或助理系統140儲存的。舉另一例子且非限制性的,一第一使用者可指明從所述第一使用者被傳送至一特定第二使用者的訊息不可被所述社群網路系統160或助理系統140儲存的。舉又一例子且非限制性的,一第一使用者可指明所有經由一特定應用程式傳送的物件都可被所述社群網路系統160或助理系統140儲存的。
在特定實施例中,隱私設定可容許一第一使用者指明和所述第一使用者相關的特定物件或資訊是否可從特定客戶端系統130或第三方系統170存取的。所述隱私設定可容許所述第一使用者選擇加入或是選擇排除使得物件或資訊從一特定裝置(例如,在一使用者的智慧型手機上的電話簿)、從一特定應用程式(例如,一消息傳遞應用程式)、或是從一特定系統(例如,一電子郵件伺服器)被存取。所述社群網路系統160或助理系統140可提供相關每一個裝置、系統、或應用程式的預設隱私設定,且/或所述第一使用者可被提示對於每一個情境指明一特定隱私設定。舉例且非限制性的,所述第一使用者可利用所述社群網路系統160或助理系統140的一定位服務特點,以提供針對於所述使用者附近的餐廳或是其它地方的建議。所述第一使用者的預設隱私設定可指明所述社群網路系統160或助理系統140可利用從所述第一使用者的一客戶端系統130提供的位置資訊,以提供所述定位為基礎服務,但是所述社群網路系統160或助理系統140不可儲存所述第一使用者的位置資訊、或是提供其給任何第三方系統170。所述第一使用者接著可更新所述隱私設定,以容許位置資訊被藉由一第三方影像共享的應用程式使用,以便於地理標記照片。
在特定實施例中,隱私設定可容許一使用者指明從一或多個地理位置可存取物件。存取或是拒絕存取所述物件可依據嘗試存取所述物件的一使用者的地理位置而定。舉例且非限制性的,一使用者可共享一物件並且指明只有在相同城市的使用者可存取或觀看所述物件。舉另一例子且非限制性的,一第一使用者可共享一物件並且指明只有在所述第一使用者是在一特定位置時,所述物件是第二使用者可見的。若所述第一使用者離開所述特定位置,則所述物件可能不再是所述第二使用者可見的。舉另一例子且非限制性的,一第一使用者可指明一物件只有在離所述第一使用者一臨界距離之內的第二使用者可見的。若所述第一使用者接著改變位置,原本存取至所述物件的第二使用者可能會失去存取,而一個新群組的第二使用者在他們來到所述第一使用者的所述臨界距離之內時可能會獲得存取。
在特定實施例中,所述社群網路系統160或助理系統140可具有可能利用一使用者的個人或生物識別資訊作為輸入的功能,以用於使用者認證或是體驗個人化的目的。一使用者可選擇來利用這些功能以強化其在所述線上社群網路上的體驗。舉例且非限制性的,一使用者可提供個人或生物識別資訊至所述社群網路系統160或助理系統140。所述使用者的隱私設定可指明此種資訊只可被使用於例如認證的特定程序,並且進一步指明此種資訊不可與任何第三方系統170共享的、或是用於和所述社群網路系統160或助理系統140相關的其它程序或應用程式。舉另一例子且非限制性的,所述社群網路系統160可提供一功能給一使用者以提供聲紋錄音至所述線上社群網路。舉例且非限制性的,若一使用者希望利用所述線上社群網路的此功能,則所述使用者可提供他或她的本身語音的一語音錄音,以在所述線上社群網路上提供一狀態更新。所述語音輸入的錄音可相較於所述使用者的聲紋,以判斷所述使用者說何單詞。所述使用者的隱私設定可指明此種語音錄音只可被使用於語音輸入的目的(例如,認證所述使用者、傳送語音訊息、改善語音辨識以便於使用所述線上社群網路的語音操作的特點),並且進一步指明此種語音錄音不可與任何第三方系統170共享的、或是被和所述社群網路系統160相關的其它程序或應用程式利用。
系統及方法
圖8描繪一範例的電腦系統800。在特定實施例中,一或多個電腦系統800執行一或多種在此敘述或描繪的方法的一或多個步驟。在特定實施例中,一或多個電腦系統800提供在此敘述或描繪的功能。在特定實施例中,在一或多個電腦系統800上執行的軟體執行一或多種在此敘述或描繪的方法的一或多個步驟、或是提供在此敘述或描繪的功能。特定實施例包含一或多個電腦系統800的一或多個部分。在此,對於一電腦系統的參照在適當情況可涵蓋一計算裝置,並且反之亦然。再者,對於一電腦系統的參照在適當情況可涵蓋一或多個電腦系統。
此揭露內容思及任何適當數量的電腦系統800。此揭露內容思及具有任何適當實體形式的電腦系統800。舉例且非限制性的,電腦系統800可以是一內嵌式電腦系統、一系統單晶片(SOC)、單板電腦系統(SBC)(例如,一模組化電腦(COM)或模組化系統(SOM))、一桌上型電腦系統、一膝上型或筆記型電腦系統、一互動資訊站(interactive kiosk)、一大型計算機、一電腦系統網格、一行動電話、一個人數位助理(PDA)、一伺服器、一平板電腦系統、或是這些中的兩個或多個的一組合。在適當情形中,電腦系統800可包含一或多個電腦系統800;為一體的或分散的;橫跨多個位置;橫跨多個機器;橫跨多個資料中心;或是存在於雲端中,其可包含在一或多個網路中的一或多個雲端構件。在適當情形中,一或多個電腦系統800可在無實質空間或時間的限制下執行一或多種在此敘述或描繪的方法的一或多個步驟。舉例且非限制性的,一或多個電腦系統800可即時地或是在批次模式中執行一或多種在此敘述或描繪的方法的一或多個步驟。在適當情況,一或多個電腦系統800可在不同時間或是在不同位置執行一或多種在此敘述或描繪的方法的一或多個步驟。
在特定實施例中,電腦系統800包含一處理器802、記憶體804、儲存體806、一輸入/輸出(I/O)介面808、一通訊介面810、以及一匯流排812。儘管此揭露內容描述且描繪一特定電腦系統具有在一特定配置下的一特定數量的特定構件,但是此揭露內容思及具有在任何適當配置下的任何適當數量的任何適當的構件之任何適當的電腦系統。
在特定實施例中,處理器802包含用於執行例如那些構成一電腦程式的指令的硬體。舉例且非限制性的,為了執行指令,處理器802可從一內部暫存器、一內部快取、記憶體804、或是儲存體806擷取(或提取)所述指令;解碼及執行它們;並且接著將一或多個結果寫入到一內部暫存器、一內部快取、記憶體804、或是儲存體806。在特定實施例中,處理器802可包含用於資料、指令、或位址的一或多個內部快取。此揭露內容思及處理器802在適當情況包含任何適當數量的任何適當的內部快取。舉例且非限制性的,處理器802可包含一或多個指令快取、一或多個資料快取、以及一或多個轉譯後備緩衝器(TLB)。在所述指令快取中的指令可以是在記憶體804或儲存體806中的指令的副本,並且所述指令快取可加速那些指令藉由處理器802的取出。在所述資料快取中的資料可以是資料在記憶體804或儲存體806中的副本,以供在處理器802執行的指令在其上運算;在處理器802執行的先前指令的結果,以供藉由在處理器802執行的後續指令存取、或是用於寫入到記憶體804或儲存體806;或是其它適當的資料。所述資料快取可加速藉由處理器802的讀取或寫入的操作。所述TLB可加速用於處理器802的虛擬位址的轉譯。在特定實施例中,處理器802可包含一或多個用於資料、指令、或位址的內部暫存器。此揭露內容思及處理器802在適當情況包含任何適當數量的任何適當的內部暫存器。在適當情形中,處理器802可包含一或多個算術邏輯單元(ALU);其是一多核心處理器;或是包含一或多個處理器802。儘管此揭露內容描述且描繪一特定處理器,但此揭露內容思及任何適當的處理器。
在特定實施例中,記憶體804包含主要記憶體以用於儲存供處理器802執行的指令、或是供處理器802在其上運算的資料。舉例且非限制性的,電腦系統800可從儲存體806或是另一來源(例如,另一電腦系統800)載入指令到記憶體804。處理器802接著可從記憶體804載入所述指令到一內部暫存器或是內部快取。為了執行所述指令,處理器802可從所述內部暫存器或內部的快取擷取所述指令,並且解碼它們。在所述指令的執行期間或是之後,處理器802可寫入一或多個結果(其可以是中間或最終結果)至所述內部暫存器或是內部快取。處理器802接著可將那些結果中的一或多個寫入到記憶體804。在特定實施例中,處理器802只執行在一或多個內部暫存器或內部快取中、或是在記憶體804中的指令(相對於儲存體806或是在別處)、並且只在一或多個內部暫存器或內部快取中、或是在記憶體804中的資料上運算(相對於儲存體806或是在別處)。一或多個記憶體匯流排(其分別可包含一位址匯流排以及一資料匯流排)可將處理器802耦接至記憶體804。如同在以下敘述的,匯流排812可包含一或多個記憶體匯流排。在特定實施例中,一或多個記憶體管理單元(MMU)位在處理器802與記憶體804之間,並且使得由處理器802所請求的對於記憶體804的存取變得容易。在特定實施例中,記憶體804包含隨機存取記憶體(RAM)。此RAM在適當情況可以是揮發性記憶體。在適當情形中,此RAM可以是動態RAM(DRAM)或靜態RAM(SRAM)。再者,在適當情況,此RAM可以是單埠或多埠RAM。此揭露內容思及任何適當RAM。記憶體804在適當情況可包含一或多個記憶體804。儘管此揭露內容描述且描繪特定記憶體,但是此揭露內容思及任何適當的記憶體。
在特定實施例中,儲存體806包含用於資料或指令的大量儲存。舉例且非限制性的,儲存體806可包含一硬碟機(HDD)、一軟碟機、快閃記憶體、一光碟、一磁光碟片、磁帶、或是一通用串列匯流排(USB)隨身碟、或是這些的兩個或多個的一組合。儲存體806在適當情況可包含可拆卸或非可拆卸的(或固定的)媒體。儲存體806在適當情況可在電腦系統800的內部或外部。在特定實施例中,儲存體806是非揮發性固態記憶體。在特定實施例中,儲存體806包含唯讀記憶體(ROM)。在適當情形中,此ROM可以是遮罩程式化ROM、可程式化ROM(PROM)、可抹除PROM(EPROM)、電性可抹除PROM(EEPROM)、電性可變ROM(EAROM)、或是快閃記憶體、或是這些的兩個或多個的一組合。此揭露內容思及採用任何適當的實體形式的大量儲存體806。儲存體806在適當情況可包含一或多個儲存控制單元,其使得在處理器802以及儲存體806之間的通訊變得容易。在適當情形中,儲存體806可包含一或多個儲存體806。儘管此揭露內容描述且描繪特定儲存體,但是此揭露內容思及任何適當的儲存體。
在特定實施例中,I/O介面808包含硬體、軟體、或是兩者,其提供一或多個用於在電腦系統800以及一或多個I/O裝置之間的通訊的介面。電腦系統800在適當情況可包含這些I/O裝置中的一或多個。這些I/O裝置中的一或多個可致能在人以及電腦系統800之間的溝通。舉例且非限制性的,一I/O裝置可包含一鍵盤、小型鍵盤、麥克風、監視器、滑鼠、印表機、掃描器、揚聲器、相機、指示筆、平板電腦、觸控螢幕、軌跡球、視頻攝影機、其它適當的I/O裝置、或是這些的兩個或多個的一組合。一I/O裝置可包含一或多個感測器。此揭露內容思及任何適當的I/O裝置以及用於它們的任何適當的I/O介面808。在適當情形中,I/O介面808可包含一或多個裝置或軟體驅動程式,其致能處理器802來驅動這些I/O裝置中的一或多個。I/O介面808在適當情況可包含一或多個I/O介面808。儘管此揭露內容描述且描繪一特定I/O介面,但是此揭露內容思及任何適當的I/O介面。
在特定實施例中,通訊介面810包含硬體、軟體、或是兩者,其提供一或多個用於在電腦系統800以及一或多個其它電腦系統800或一或多個網路之間的通訊(例如,封包為基礎的通訊)的介面。舉例且非限制性的,通訊介面810可包含一網路介面控制器(NIC)或網路轉接器以用於和一乙太網路或其它有線為基礎的網路通訊、或是包含一無線NIC(WNIC)或無線轉接器以用於和一例如是WI-FI網路的無線網路通訊。此揭露內容思及任何適當網路以及用於其之任何適當的通訊介面810。舉例且非限制性的,電腦系統800可和一特用網路、一個人區域網路(PAN)、一區域網路(LAN)、一廣域網路(WAN)、一都會區域網路(MAN)、或網際網路的一或多個部分、或是這些中的兩個或多個的一組合通訊。這些網路中的一或多個的一或多個部分可以是有線或無線的。舉例而言,電腦系統800可和一無線PAN(WPAN)(例如,一藍芽WPAN)、一WI-FI網路、一WI-MAX網路、一行動電話網路(例如,一全球行動通訊系統(GSM)網路)、或其它適當無線網路、或是這些中的兩個或多個的一組合通訊。電腦系統800在適當情況可包含用於這些網路的任一者的任何適當的通訊介面810。通訊介面810在適當情況可包含一或多個通訊介面810。儘管此揭露內容描述且描繪一特定的通訊介面,但是此揭露內容思及任何適當的通訊介面。
在特定實施例中,匯流排812包含硬體、軟體、或是兩者,其將電腦系統800的構件彼此耦接。舉例且非限制性的,匯流排812可包含一加速圖形埠(AGP)或其它圖形匯流排、一強化工業標準架構(EISA)匯流排、一前端匯流排(FSB)、一超傳輸(HT)互連、一工業標準架構(ISA)匯流排、一無限頻寬互連、一低接腳數(LPC)匯流排、一記憶體匯流排、一微通道架構(MCA)匯流排、一週邊元件互連(PCI)匯流排、一PCI-Express(PCIe)匯流排、一串列先進技術附接(SATA)匯流排、一視頻電子標準協會區域(VLB)匯流排、或其它適當匯流排、或是這些中的兩個或多個的一組合。匯流排812在適當情況可包含一或多個匯流排812。儘管此揭露內容描述且描繪一特定匯流排,但是此揭露內容思及任何適當的匯流排或互連。
在此,一或多種電腦可讀取非暫態儲存媒體在適當情況可包含一或多個半導體為基礎或其它的積體電路(IC)(例如,場可程式化閘陣列(FPGA)、或特殊應用IC(ASIC))、硬碟機(HDD)、混合硬碟機(HHD)、光碟、光碟機(ODD)、磁光碟片、磁光機、軟碟片、軟碟機(FDD)、磁帶、固態硬碟(SSD)、虛擬磁碟、安全數位卡或碟、任何其它適當的電腦可讀取非暫態儲存媒體、或是這些中的兩個或多個的任何適當的組合。一電腦可讀取非暫態儲存媒體在適當情況可以是揮發性、非揮發性、或是揮發性及非揮發性的一組合。
雜項
在此,除非有明確相反指出或是上下文有相反指出,否則“或”是包括而非排它性的。因此,除非有明確相反指出或是上下文有相反指出,否則在此的“A或B”是表示“A、B、或是兩者”。再者,除非有明確相反指出或是上下文有相反指出,否則“及”是聯合且分別的。因此,除非有明確相反指出或是上下文有相反指出,否則在此的“A及B”是表示“聯合或分別的A及B”。
此揭露內容的範疇包含具有在此項技術中的普通技能者將會理解的對於在此敘述或描繪的範例實施例的所有改變、替代、變化、變動及修改。此揭露內容的範疇並不限於在此敘述或描繪的範例實施例。再者,儘管此揭露內容在此描述且描繪個別的實施例為包含特定的構件、元件、特點、功能、操作、或是步驟,但是這些實施例的任一個都可包含具有在此項技術中的普通技能者將會理解的在此任何地方所敘述或描繪的構件、元件、特點、功能、操作、或是步驟的任一個的任何組合或排列。再者,在所附的請求項中對於被調適、安排、能夠、配置、致能、可運作、或操作以執行一特定功能的一設備或系統、或是一設備或系統的一構件的參照是包含所述設備、系統、構件,而不論其或所述特定的功能是否被起動、導通、或解鎖,只要所述設備、系統、或構件如此被調適、安排、能夠、配置、致能、可運作、或是操作即可。此外,儘管此揭露內容描述或描繪特定實施例為提供特定的優點,但是特定實施例可以提供這些優點的全無、一些、或是全部。
100:網路環境
110:網路
130:客戶端系統
130a:智慧型眼鏡
130b:智慧型手機
132:網路瀏覽器
134:社群網路應用程式
136:助理應用程式
137:顯現裝置
138:隨附裝置
140:助理系統
150:鏈路
160:社群網路系統
162:伺服器
164:資料儲存庫
170:第三方系統
200:架構
202:虛線
205:決策點(D0)
206:裝置上協調器
208a:自動話音辨識(ASR)模組
208b:自動話音辨識(ASR)模組
210a:自然語言理解技術(NLU)模組
210b:自然語言理解技術(NLU)模組
212:實體解析模組
212a:實體解析模組
212b:實體解析模組
215:決策點(D1)
216:對話管理器
216a:裝置上對話管理器
216b:對話管理器模組
218a:對話狀態追蹤器
218b:對話狀態追蹤器
220:情境引擎
220a:情境引擎
220b:情境引擎
222a:動作選擇器
222b:動作選擇器
224:對話管理器代理
225:決策點(D2)
226:仲裁器
226a:仲裁器
226b:仲裁器
228:代理
228a:代理
228b:代理
230a:傳送系統
230b:傳送系統
232:顯現輸出模組
300:流程圖
305:助理服務模組
310:請求管理器
312:情境抽取器
314:談話理解(CU)物件產生器
320:資料儲存庫
330:允許名單/阻擋名單
332:特徵化
334:領域分類/選擇
336a:元意圖分類器
336b:意圖分類器
338a:元槽位標記器
338b:槽位標記器
340:領域實體解析
342:一般實體解析
350:知識
352:圖
354:助理使用者記憶體(AUM)
356:對話意圖解析
360:對話策略
362:一般策略
364:工作策略
370:CU組合器
372:自然語言生成技術(NLG)構件
374:UI酬載產生器
376:響應排名器
380:響應產生構件
382:對話狀態寫入構件
390:文字轉語音(TTS)構件
400:流程圖
410:工作追蹤器
411:意圖處理程序
412:工作ID解析構件
413:參數解析構件
414:工作候選者排名模組
415:規則為基礎的排名器
416:工作候選者產生模組
417:工作ID解析構件
418:參數解析構件
419:合併層
420:談話理解增強引擎(CURE)追蹤器
430:工作規範管理器API
435:執行階段配置
505:使用者510:“嘿助理”
515:音訊檔
515a:“呯…噠、噠、噠、噠、…”
515b:“噠、噠、噠、噠、…”
515c:“噠、噠、[逐漸變小聲]”
515d:“我剛檢查過。仍有門票可買”
520:發聲/“我想知道今晚我還能不能買到比賽的票”
530:靜默
605:使用者
610:“嘿助理…”
615:音訊檔
615a:“呯…噠、噠、噠、噠、…”
615b:“噠、噠、噠、噠、…”
615c:“噠、噠、[逐漸變小聲]”
615d:“那是Luka。你在Erika的生日聚會上遇見過他”
620:連續視覺回授
625:螢幕
630:發聲/“那是誰?他看起來很眼熟”
635:靜默
700:方法
710:步驟
720:步驟
730:步驟
740:步驟
750:步驟
760:步驟
770:步驟
780:步驟
790:步驟
800:電腦系統
802:處理器
804:記憶體
806:儲存體
808:I/O介面
810:通訊介面
812:匯流排
[圖1]描繪和一助理系統相關的一範例的網路環境。
[圖2]描繪所述助理系統的一範例的架構。
[圖3]描繪所述助理系統的一範例的流程圖。
[圖4]描繪處理一使用者輸入的一範例的以工作為中心的流程圖。
[圖5]描繪用於主動監聽的一範例的非視覺回授。
[圖6]描繪用於主動監聽的一範例的非視覺及視覺回授。
[圖7]描繪一種用於利用增大的操作能力的主動監聽之範例的方法。
[圖8]描繪一範例的電腦系統。
130a:智慧型眼鏡
130b:智慧型手機
505:使用者
510:“嘿助理”
515:音訊檔
515a:“呯...噠、噠、噠、噠、...”
515b:“噠、噠、噠、噠、...”
515c:“噠、噠、[逐漸變小聲]”
515d:“我剛檢查過。仍有門票可買”
520:發聲/“我想知道今晚我還能不能買到比賽的票”
530:靜默
Claims (20)
- 一種藉由一或多個計算系統進行之方法,其包括: 從第一客戶端系統接收第一使用者輸入,所述第一使用者輸入包括和助理機器人相關的喚醒單詞; 設定所述助理機器人(xbot)進入監聽模式,其中當所述助理機器人在所述監聽模式中,連續非視覺回授經由所述第一客戶端系統來提供; 當所述助理機器人在所述監聽模式中,從所述第一客戶端系統接收第二使用者輸入,所述第二使用者輸入包括使用者發聲; 根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束;以及 設定所述助理機器人進入不活躍模式,其中當所述助理機器人在所述不活躍模式中,所述連續非視覺回授經由所述第一客戶端系統而被中斷。
- 如請求項1之方法,其中所述一或多個計算系統包括所述第一客戶端系統。
- 如請求項1之方法,其中所述一或多個計算系統包括與所述第一客戶端系統配對的隨附裝置。
- 如請求項3之方法,其中當所述喚醒單詞被接收到時,所述隨附裝置是在鎖住狀態中。
- 如請求項3之方法,其中所述助理機器人和在所述隨附裝置上執行的隨附應用程式相關。
- 如請求項5之方法,其中所述隨附應用程式在所述隨附裝置上執行為背景應用程式,並且其中所述隨附應用程式被所述隨附裝置容許來利用低於臨界能力的計算能力。
- 如請求項5之方法,其進一步包括: 響應於所述連續非視覺回授來執行所述隨附應用程式為前景應用程式;以及 增加所述隨附應用程式被容許利用的計算能力為大於臨界能力的計算能力。
- 如請求項1之方法,其中所述第一客戶端系統包括智慧型手機、智慧型眼鏡、擴增實境(AR)眼鏡、虛擬實境(VR)頭戴式裝置、或是智慧型手錶中的一或多個。
- 如請求項1之方法,其進一步包括: 在提供所述連續非視覺回授之前,經由所述第一客戶端系統響應於所述第一使用者輸入以提供最初非視覺回授,其中所述最初非視覺回授指出所述助理機器人的所述監聽模式的起始。
- 如請求項1之方法,其中所述連續非視覺回授是根據聲音、振動、或是觸覺中的一或多個。
- 如請求項1之方法,其進一步包括: 當所述助理機器人在所述監聽模式中,經由所述第一客戶端系統來提供連續視覺回授。
- 如請求項11之方法,其中所述連續視覺回授是根據和所述助理機器人相關的圖像、所述監聽模式的視覺指示、或是光中的一或多個。
- 如請求項1之方法,其中所述一或多個計算系統包括與所述第一客戶端系統配對的隨附裝置,其中所述方法進一步包括: 當所述助理機器人在所述監聽模式中,經由所述隨附裝置來提供連續視覺回授。
- 如請求項13之方法,其中所述連續視覺回授是根據和所述助理機器人相關的圖像、所述監聽模式的視覺指示、或是光中的一或多個。
- 一或多種體現軟體之電腦可讀取非暫態儲存媒體,當所述軟體被執行時在運作上以: 從第一客戶端系統接收第一使用者輸入,所述第一使用者輸入包括和助理機器人相關的喚醒單詞; 設定所述助理機器人進入監聽模式,其中當所述助理機器人在所述監聽模式中,連續非視覺回授經由所述第一客戶端系統來提供; 當所述助理機器人在所述監聽模式中,從所述第一客戶端系統接收第二使用者輸入,所述第二使用者輸入包括使用者發聲; 根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束;以及 設定所述助理機器人進入不活躍模式,其中當所述助理機器人在所述不活躍模式中,所述連續非視覺回授經由所述第一客戶端系統而被中斷。
- 如請求項15之電腦可讀取非暫態儲存媒體,其中所述第一客戶端系統包括智慧型手機、智慧型眼鏡、擴增實境(AR)眼鏡、虛擬實境(VR)頭戴式裝置、或是智慧型手錶中的一或多個。
- 如請求項15之電腦可讀取非暫態儲存媒體,其中當所述軟體被執行時進一步在運作上以: 在提供所述連續非視覺回授之前,經由所述第一客戶端系統響應於所述第一使用者輸入以提供最初非視覺回授,其中所述最初非視覺回授指出所述助理機器人的所述監聽模式的起始。
- 一種包括一或多個處理器以及耦接至所述一或多個處理器的非暫態記憶體之系統,其包括藉由所述一或多個處理器可執行的指令,當所述一或多個處理器執行所述指令時在運作上以: 從第一客戶端系統接收第一使用者輸入,所述第一使用者輸入包括和助理機器人相關的喚醒單詞; 設定所述助理機器人進入監聽模式,其中當所述助理機器人在所述監聽模式中,連續非視覺回授經由所述第一客戶端系統來提供; 當所述助理機器人在所述監聽模式中,從所述第一客戶端系統接收第二使用者輸入,所述第二使用者輸入包括使用者發聲; 根據所述使用者發聲的完成來判斷所述第二使用者輸入已經結束;以及 設定所述助理機器人進入不活躍模式,其中當所述助理機器人在所述不活躍模式中,所述連續非視覺回授經由所述第一客戶端系統而被中斷。
- 如請求項18之系統,其中所述第一客戶端系統包括智慧型手機、智慧型眼鏡、擴增實境(AR)眼鏡、虛擬實境(VR)頭戴式裝置、或是智慧型手錶中的一或多個。
- 如請求項18之系統,其中當所述一或多個處理器執行所述指令時進一步在運作上以: 在提供所述連續非視覺回授之前,經由所述第一客戶端系統響應於所述第一使用者輸入以提供最初非視覺回授,其中所述最初非視覺回授指出所述助理機器人的所述監聽模式的起始。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163177812P | 2021-04-21 | 2021-04-21 | |
US63/177,812 | 2021-04-21 | ||
US17/521,623 | 2021-11-08 | ||
US17/521,623 US20220366904A1 (en) | 2021-04-21 | 2021-11-08 | Active Listening for Assistant Systems |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202307644A true TW202307644A (zh) | 2023-02-16 |
Family
ID=82016284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111115051A TW202307644A (zh) | 2021-04-21 | 2022-04-20 | 用於助理系統的主動監聽 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220366904A1 (zh) |
EP (1) | EP4327199A1 (zh) |
TW (1) | TW202307644A (zh) |
WO (1) | WO2022226131A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021156907A (ja) * | 2018-06-15 | 2021-10-07 | ソニーグループ株式会社 | 情報処理装置および情報処理方法 |
US11735185B2 (en) * | 2021-08-19 | 2023-08-22 | National Yang Ming Chiao Tung University | Caption service system for remote speech recognition |
US11983329B1 (en) | 2022-12-05 | 2024-05-14 | Meta Platforms, Inc. | Detecting head gestures using inertial measurement unit signals |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9886953B2 (en) * | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10043516B2 (en) * | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US10423298B2 (en) * | 2016-09-29 | 2019-09-24 | Square, Inc. | Dynamically modifiable user interface |
US10621981B2 (en) * | 2017-09-28 | 2020-04-14 | Sonos, Inc. | Tone interference cancellation |
KR102419597B1 (ko) * | 2017-09-29 | 2022-07-11 | 삼성전자주식회사 | 입력 디바이스와 전자 장치, 이를 포함하는 시스템 및 그 제어 방법 |
US10963273B2 (en) | 2018-04-20 | 2021-03-30 | Facebook, Inc. | Generating personalized content summaries for users |
US10728656B1 (en) * | 2019-01-07 | 2020-07-28 | Kikago Limited | Audio device and audio processing method |
CN110362290A (zh) * | 2019-06-29 | 2019-10-22 | 华为技术有限公司 | 一种语音控制方法及相关装置 |
US11161153B1 (en) * | 2021-01-11 | 2021-11-02 | Yash Narayan | Systems, methods, and devices for classifying and identifying waste in real-time |
-
2021
- 2021-11-08 US US17/521,623 patent/US20220366904A1/en active Pending
-
2022
- 2022-04-20 TW TW111115051A patent/TW202307644A/zh unknown
- 2022-04-20 EP EP22729316.4A patent/EP4327199A1/en active Pending
- 2022-04-20 WO PCT/US2022/025653 patent/WO2022226131A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP4327199A1 (en) | 2024-02-28 |
WO2022226131A1 (en) | 2022-10-27 |
US20220366904A1 (en) | 2022-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11688022B2 (en) | Semantic representations using structural ontology for assistant systems | |
CN114930363A (zh) | 为助理系统生成主动内容 | |
US11861315B2 (en) | Continuous learning for natural-language understanding models for assistant systems | |
US20220284904A1 (en) | Text Editing Using Voice and Gesture Inputs for Assistant Systems | |
US20220366904A1 (en) | Active Listening for Assistant Systems | |
KR20230029582A (ko) | 어시스턴트 시스템에서 다자간 통화를 위한 단일 요청의 사용 | |
US20220374645A1 (en) | Task Execution Based on Real-world Text Detection for Assistant Systems | |
TW202307643A (zh) | 助理系統進行有興趣時刻的自動捕捉 | |
WO2022226244A1 (en) | Multi-device mediation for assistant systems | |
EP4278346A1 (en) | Readout of communication content comprising non-latin or non-parsable content items for assistant systems | |
TW202240461A (zh) | 使用輔助系統的語音和手勢輸入之文字編輯 | |
US11983329B1 (en) | Detecting head gestures using inertial measurement unit signals | |
US20230419952A1 (en) | Data Synthesis for Domain Development of Natural Language Understanding for Assistant Systems | |
EP4383046A2 (en) | Detecting head gestures using inertial measurement unit signals | |
US20240184378A1 (en) | Detecting Head Gestures Using Inertial Measurement Unit Signals | |
US20230353652A1 (en) | Presenting Personalized Content during Idle Time for Assistant Systems | |
US20240161742A1 (en) | Adaptively Muting Audio Transmission of User Speech for Assistant Systems | |
US20230236555A1 (en) | Event-Based Reasoning for Assistant Systems | |
CN117377942A (zh) | 助理系统的主动收听 | |
CN118154114A (zh) | 使用惯性测量单元信号检测头部姿势 | |
CN117765940A (zh) | 为助理系统呈现与语音命令相关联的注意状态 | |
CN117396837A (zh) | 助理系统的多设备调解 | |
WO2022178066A1 (en) | Readout of communication content comprising non-latin or non-parsable content items for assistant systems | |
CN116897353A (zh) | 用于辅助系统的使用语音和手势输入的文本编辑 |