的實(shí)施例并不限于利用字處理應(yīng)用的操作。例如,能夠在電子郵件應(yīng)用、電子表格、搜索引擎界面和社交媒體應(yīng)用中提供上下文界面服務(wù)。應(yīng)用窗口 300包括文本312,其最后的句子陳述“we recommend using Windows’ encryp(我們推薦使用Window的加密)”。在這種情況下,“encryp”是文本片段314。寫(xiě)作輔助界面315包括自動(dòng)完成316建議,其是詞“encrypt1n(加密)”。自動(dòng)完成服務(wù)使用字典或其他的詞典來(lái)工作,以便向文本片段314添加字母來(lái)形成已知的詞或短語(yǔ)。第二建議“BITL0CKER? ”318并不是自動(dòng)完成。反而,“BITLOCKER ? ” 318是自動(dòng)建議的示例。自動(dòng)建議并非基于通過(guò)添加字母至文本片段來(lái)完成詞或短語(yǔ),而是評(píng)估文本片段的上下文來(lái)建議與用戶正在鍵入的內(nèi)容的意義相符的詞或短語(yǔ)。在這里,BITLOCKER ?是Windows的加密軟件的名稱。選擇BITLOCKER ?能夠替換“Windows ’ encrypt”或只是替換“ecrypt”部分。用戶可以選擇寫(xiě)作建議而非鍵入并且該詞和所選擇的詞將用于替換文本片段314。
[0058]圖3也包括研究輔助界面320。研究輔助界面320的內(nèi)容提供關(guān)于在文本312中描述的主題的附加信息。附加信息能夠采用搜索結(jié)果、基于知識(shí)的條目、建議的查詢等等的形式。在這種情況下,研究輔助界面320包括基于知識(shí)的條目資源A 322和資源B 324,其二者涉及BITLOCKER ?。在一個(gè)實(shí)施例中,研究輔助界面320包括在用戶輸入被添加至文本312時(shí)利用用戶輸入自動(dòng)填充的輸入框(未顯示)。當(dāng)這些詞形成感興趣的查詢時(shí),則用戶只需要在研究輔助界面320中選擇搜索按鈕(未顯示)來(lái)請(qǐng)求搜索。上下文信息可以與查詢相結(jié)合來(lái)使用,以形成在更新的搜索結(jié)果界面中呈現(xiàn)的搜索結(jié)果。
[0059]在新詞開(kāi)始或者從寫(xiě)作輔助界面315中選擇詞時(shí),則自動(dòng)進(jìn)行新(處理)。在一個(gè)實(shí)施例中,只有關(guān)鍵詞被考慮用于在查詢中提交。在另一實(shí)施例中,用戶能夠?qū)⑺阉黜?xiàng)鍵入與研究輔助界面320相關(guān)聯(lián)的輸入框中。使用文檔310中的上下文信息來(lái)進(jìn)行搜索。
[0060]現(xiàn)在轉(zhuǎn)到圖4,根據(jù)本發(fā)明的實(shí)施例,顯示序列圖,其顯示用于提供上下文服務(wù)的各組件之間發(fā)生的通信。圖4中的組件包括:鍵盤(pán)410;頂E組件412;字處理應(yīng)用414;以及上下文服務(wù)組件416。
[0061 ]鍵盤(pán)410可以是單獨(dú)的硬件塊或在觸摸屏上呈現(xiàn)的軟鍵盤(pán)。頂E組件412啟用鍵盤(pán)410的功能。頂E組件412可以被集成在操作系統(tǒng)中或者可以是操作系統(tǒng)的一部分。頂E組件412使得鍵盤(pán)410能夠作為輸入設(shè)備跨越多個(gè)應(yīng)用來(lái)操作。
[0062]字處理應(yīng)用414是可以消費(fèi)鍵盤(pán)410的輸入的示例性應(yīng)用。本發(fā)明的實(shí)施例也利用諸如數(shù)據(jù)庫(kù)、電子表格、電子郵件應(yīng)用、游戲、娛樂(lè)服務(wù)、網(wǎng)絡(luò)瀏覽器等等之類的應(yīng)用來(lái)工作。應(yīng)用414可以基于與鍵盤(pán)相關(guān)聯(lián)的客戶端設(shè)備或者利用服務(wù)器來(lái)提供。例如,字處理組件414能夠利用客戶端設(shè)備所訪問(wèn)的遠(yuǎn)程服務(wù)來(lái)提供。
[0063]上下文服務(wù)組件416可以類似于先前參考圖2所描述的上下文服務(wù)組件240。上下文服務(wù)組件416給多個(gè)計(jì)算設(shè)備提供上下文服務(wù)。頂E組件412和上下文服務(wù)組件416可以操作在不同的計(jì)算設(shè)備上。例如,上下文服務(wù)組件416可以操作或利用數(shù)據(jù)中心來(lái)提供,其中數(shù)據(jù)中心與計(jì)算設(shè)備相連接,而該計(jì)算設(shè)備與鍵盤(pán)410、頂E組件412以及字處理應(yīng)用414相關(guān)聯(lián)。如參考圖2所提及的,服務(wù)于上下文服務(wù)組件416的數(shù)據(jù)中心可以通過(guò)諸如因特網(wǎng)之類的廣域網(wǎng)與一個(gè)或多個(gè)計(jì)算設(shè)備通信。
[0064]頂E組件412將上下文信息418傳送至上下文服務(wù)組件416。如所提及的,上下文信息418可以通過(guò)諸如因特網(wǎng)之類的網(wǎng)絡(luò)來(lái)發(fā)送。上下文信息418包括關(guān)于計(jì)算設(shè)備以及計(jì)算設(shè)備的一個(gè)或多個(gè)用戶的信息。關(guān)于用戶的信息可以包括賬戶信息或允許用戶與跨越多個(gè)設(shè)備、應(yīng)用和體驗(yàn)而利用上下文服務(wù)組件416可訪問(wèn)的用戶簡(jiǎn)檔相關(guān)聯(lián)的其他信息。上下文信息418可以包括關(guān)于用戶的偏好或習(xí)慣的信息。例如,可以提供用戶瀏覽歷史,搜索歷史以及在計(jì)算設(shè)備上執(zhí)行的其他活動(dòng)。上下文信息能夠包括上下文服務(wù)組件418訪問(wèn)其他的用戶帳戶例如社交網(wǎng)絡(luò)、遠(yuǎn)程存儲(chǔ)服務(wù)、電子郵件賬戶等等所需要的信息。另外,在可用時(shí),可以提供關(guān)于用戶的人口統(tǒng)計(jì)信息。頂E組件412可以提供用戶選擇進(jìn)入和選擇退出來(lái)指定可以給上下文服務(wù)組件416提供什么類型的信息。為此目的,可以利用頂E組件412來(lái)提供界面。
[0065]上下文信息418也包括關(guān)于目前活動(dòng)的信息。例如,上下文信息418可以包括描述活動(dòng)應(yīng)用中的打開(kāi)文檔的信息。例如,當(dāng)活動(dòng)應(yīng)用是字處理應(yīng)用時(shí),上下文信息能夠包括打開(kāi)的字處理文檔內(nèi)的關(guān)鍵詞或文本。如果打開(kāi)應(yīng)用是電子郵件或短信(texting)應(yīng)用,能夠提供打開(kāi)的電子郵件鏈中的關(guān)鍵詞,其能夠包括在相同的各方之間具有相關(guān)主題的多次通信。上下文信息幫助上下文服務(wù)組件416理解用戶的目前意圖是什么以及什么上下文服務(wù)對(duì)用戶而言可能是有幫助的。
[0066]鍵盤(pán)410接收來(lái)自用戶的鍵擊。這些鍵擊420被傳送至頂E組件412。這些鍵擊420也利用頂E組件412被傳送至字處理應(yīng)用414。字處理應(yīng)用414將響應(yīng)于這些鍵擊來(lái)操縱打開(kāi)的文檔。例如,如果用戶正在寫(xiě)作某個(gè)詞,則與這些鍵擊相對(duì)應(yīng)的字母或數(shù)字在其被字處理應(yīng)用414接收時(shí)將出現(xiàn)在屏幕上。
[0067]鍵擊的組合或個(gè)別鍵擊420利用頂E組件412被傳送至上下文服務(wù)組件416。利用上下文服務(wù)組件416來(lái)評(píng)估422這些鍵擊420,以確定是否相關(guān)的上下文服務(wù)可能是適當(dāng)?shù)?。先前描述了可以提供的上下文服?wù)的類型。
[0068]當(dāng)評(píng)估422指示上下文服務(wù)將幫助用戶完成任務(wù)諸如寫(xiě)作詞或進(jìn)行研究時(shí),上下文服務(wù)指令424被傳送至頂E組件412 JME組件412則生成向用戶呈現(xiàn)一種或多種上下文服務(wù)的界面。如圖3所示并且如隨后在圖5中所解釋的,該界面可以是活動(dòng)界面的覆蓋層(overlay)。一旦通過(guò)鍵盤(pán)410或通過(guò)某種其他的輸入機(jī)制諸如鼠標(biāo)、話音命令或觸摸屏從用戶接收到請(qǐng)求438,則提供上下文服務(wù)。例如,頂E組件可以刪除詞或最近的鍵擊并利用由用戶通過(guò)上下文界面選擇的詞來(lái)替換它們。使用圖3的示例,IME組件41 2可以刪除“encrypt”中的字母并利用該詞或形成詞“encrypt1n”的鍵擊來(lái)替換它們。圖4所示的通信可以在附加鍵擊被添加以及上下文服務(wù)被選擇時(shí)重復(fù)。
[0069]現(xiàn)在轉(zhuǎn)到圖5,根據(jù)本發(fā)明的實(shí)施例來(lái)舉例說(shuō)明上下文搜索服務(wù)。圖5舉例說(shuō)明網(wǎng)絡(luò)瀏覽器500,其顯示與總統(tǒng)圖書(shū)館和博物館相關(guān)的網(wǎng)頁(yè)505。網(wǎng)頁(yè)505包括搜索框510。如能夠明白的,已在搜索框510中輸入了形成“George B”的鍵擊512。搜索框具有自動(dòng)呈現(xiàn)一些查詢建議的本機(jī)自動(dòng)完成514特征。
[0070]計(jì)算設(shè)備上的頂E組件將鍵擊512發(fā)送至為上下文搜索界面520提供指令的上下文服務(wù)提供商。上下文搜索界面520可以被呈現(xiàn)在不與搜索框510相重疊的覆蓋層中。換句話說(shuō),上下文搜索界面520可以被呈現(xiàn)為用戶能夠?qū)Ш街恋目晒┻x擇的頁(yè)面并且在其不滿意與搜索框510相關(guān)聯(lián)的本機(jī)自動(dòng)完成514特征時(shí)選擇一個(gè)或多個(gè)搜索結(jié)果或建議的查詢。
[0071]上下文搜索界面520包括三個(gè)部分的有用搜索信息。第一部分包括呈現(xiàn)與預(yù)定搜索有關(guān)的條目的知識(shí)庫(kù)部分521。第一條目指示= George H.ff.Bush是第41任總統(tǒng)522。用戶能夠通過(guò)選擇“more(更多)”按鈕523來(lái)更多了解第41任總統(tǒng)。這能夠打開(kāi)新的界面或?qū)е掠脩魧?dǎo)航至與第41任總統(tǒng)有關(guān)的網(wǎng)站的部分或?qū)Ш街陵P(guān)于第41任總統(tǒng)的單獨(dú)網(wǎng)站。第二知識(shí)條目指示:George ff.Bush是第43任總統(tǒng)524。用戶能夠通過(guò)選擇“more”按鈕525來(lái)更多了解第43任總統(tǒng)。
[0072]上下文搜索界面520的第二部分是搜索結(jié)果部分530。搜索結(jié)果部分530包括第一搜索結(jié)果532和第二搜索結(jié)果534。這兩個(gè)搜索結(jié)果可以是響應(yīng)于與“George B”有關(guān)的推測(cè)的搜索查詢而返回的最相關(guān)的搜索結(jié)果。例如,搜索結(jié)果能夠涉及George Bush。然而,上下文信息可以用于消除不同的George Bush之間的歧義。例如,如果用戶最近正從事于與George Bush即第43任總統(tǒng)有關(guān)的文檔,貝Ij這些搜索結(jié)果二者能夠涉及George ff.Bush即第43任總統(tǒng)。
[0073]上下文搜索界面520的搜索部分540包括所建議的搜索查詢。選擇或“Georgebush41”542或“George Bush 43” 544將導(dǎo)致搜索結(jié)果呈現(xiàn)在利用上下文搜索服務(wù)所生成的單獨(dú)界面中。另外,選擇所建議的搜索查詢諸如“George Bush 41” 542將導(dǎo)致搜索查詢被輸入至搜索框510中。這給此用戶提供可供選擇的方案來(lái)查看利用本機(jī)搜索界面在網(wǎng)頁(yè)505上呈現(xiàn)的結(jié)果以及利用上下文服務(wù)所呈現(xiàn)的搜索結(jié)果。
[0074]現(xiàn)在轉(zhuǎn)到圖6,根據(jù)本發(fā)明的實(shí)施例,顯示用于與輸入機(jī)制相關(guān)聯(lián)提供上下文服務(wù)的方法600。輸入機(jī)制可以是硬鍵盤(pán)、軟鍵盤(pán)、語(yǔ)音識(shí)別機(jī)制、手寫(xiě)識(shí)別系統(tǒng)等等。上下文服務(wù)包括寫(xiě)作輔助、搜索輔助、語(yǔ)法輔助和知識(shí)庫(kù)。方法600的上下文服務(wù)可以由遠(yuǎn)離與輸入機(jī)制相關(guān)聯(lián)的計(jì)算設(shè)備的上下文服務(wù)提供商來(lái)提供。
[0075]在步驟610,從運(yùn)行在計(jì)算設(shè)備上的輸入機(jī)制(“頂E”)程序接收輸入片段。頂E程序可以運(yùn)行在遠(yuǎn)離接收輸入片段的上下文服務(wù)提供商的客戶端設(shè)備上。輸入片段小于完整輸入,例如,未形成短語(yǔ)或命令的字母。什么構(gòu)成輸入片段可以根據(jù)輸入機(jī)制而改變。例如,當(dāng)鍵盤(pán)是輸入機(jī)制時(shí),輸入片段可以是詞或短語(yǔ)中的字母的一部分。輸入片段能夠是手勢(shì)或音頻輸入的一部分??梢栽谶h(yuǎn)離計(jì)算設(shè)備的上下文服務(wù)提供商處接收輸入片段。例如,可以通過(guò)諸如因特網(wǎng)之類的網(wǎng)絡(luò)來(lái)傳送文本片段。文本片段包括目前未構(gòu)成完整詞的字母。在評(píng)估是否文本片段包括完整詞時(shí),按照接收這些字母的順序來(lái)評(píng)估這些字母。能夠重新排列這些字母以形成完整詞的事實(shí)與步驟610的分析是不相關(guān)的。
[0076]在步驟620,從頂E程序接收信息。在上下文服務(wù)提供商處接收該信息。該信息描述ME程序?qū)⑤斎肫屋斎肫渲械幕顒?dòng)應(yīng)用的特性。例如,可以傳送活動(dòng)的字處理應(yīng)用中的字處理文檔的特性。類似地,該信息能夠包括正在活動(dòng)的電子郵件應(yīng)用中編輯的電子郵件的特性。
[0077]在步驟630,特性和輸入片段被確定以滿足上下文服務(wù)的觸發(fā)標(biāo)準(zhǔn)。每一種上下文服務(wù)可以具有單獨(dú)的觸發(fā)標(biāo)準(zhǔn)。特性和輸入片段可以滿足多種上下文服務(wù)的上下文標(biāo)準(zhǔn)。觸發(fā)標(biāo)準(zhǔn)嘗試查明用戶的意圖??梢岳迷谟|發(fā)器中內(nèi)置的置信度來(lái)確定意圖。一旦滿足閾值置信度,則滿足觸發(fā)器。置信度和觸發(fā)器可以使用機(jī)器學(xué)習(xí)算法來(lái)分析??梢允褂脴颖緮?shù)據(jù)來(lái)訓(xùn)練機(jī)器學(xué)習(xí)算法。一旦初始被訓(xùn)練,則機(jī)器學(xué)習(xí)算法可以評(píng)估具體用戶的行為以及使用上下文服務(wù)的成千上萬(wàn)的其他用戶。機(jī)器學(xué)習(xí)算法識(shí)別指示何時(shí)用戶正在完成任務(wù)以及什么信息對(duì)于完成任務(wù)將是有用的用戶行為的模式。例如,一旦在場(chǎng)景中呈現(xiàn)用戶沒(méi)有選擇或使用的搜索界面,則在相同的上下文特性在未來(lái)出現(xiàn)時(shí),機(jī)器學(xué)習(xí)算法將降低其他用戶想要該搜索界面的概率。
[0078]在步驟640,生成用于提供上下文服務(wù)的內(nèi)容。由上下文服務(wù)提供商生成該內(nèi)容。該內(nèi)容取決于