TWI464605B - Computer-implemented method and input method editor server - Google Patents

Computer-implemented method and input method editor server Download PDF

Info

Publication number
TWI464605B
TWI464605B TW097112734A TW97112734A TWI464605B TW I464605 B TWI464605 B TW I464605B TW 097112734 A TW097112734 A TW 097112734A TW 97112734 A TW97112734 A TW 97112734A TW I464605 B TWI464605 B TW I464605B
Authority
TW
Taiwan
Prior art keywords
input method
method editor
input
editor
client device
Prior art date
Application number
TW097112734A
Other languages
Chinese (zh)
Other versions
TW200900966A (en
Inventor
Feng Hong
Quji Guo
Original Assignee
Google Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google Inc filed Critical Google Inc
Publication of TW200900966A publication Critical patent/TW200900966A/en
Application granted granted Critical
Publication of TWI464605B publication Critical patent/TWI464605B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • G06F40/129Handling non-Latin characters, e.g. kana-to-kanji conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Document Processing Apparatus (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Description

由電腦實施的方法以及輸入方法編輯器伺服器Computer-implemented method and input method editor server

本揭示內容係關於輸入方法。This disclosure relates to input methods.

本申請案主張2007年4月9日申請的美國臨時專利申請案第60/922,710號之優先權利,其全部揭示內容係以引用的方式併入於此。The present application claims priority to U.S. Provisional Patent Application Serial No. 60/922,710, filed on Apr

使用其中一或多個字元大致對應於一文字或意義之一語標指令碼(logographic script)的語言具有比一標準輸入裝置(例如一電腦鍵盤或一行動裝置小鍵盤)上的鍵更多之字元。例如,中文語言包含數萬個字元,其發音係由基本的拼音(Pinyin)元素與五個音調來定義。可藉由促進輸入在輸入裝置上不存在的字元及符號之輸入方法來實施此等可能係多對一的關聯之映射。因此,可以使用一西式鍵盤來輸入中文字元。同樣,可以使用輸入方法以使用一西式鍵盤或某一其他輸入裝置來輸入包括表意文字的許多其他語言,例如日語、韓語及其他語言。A language that uses one or more of the characters substantially corresponding to a text or a meaning of a logographic script has more keys than a standard input device (eg, a computer keyboard or a mobile device keypad) Character. For example, the Chinese language contains tens of thousands of characters whose pronunciation is defined by the basic Pinyin element and five tones. The mapping of such possibly many-to-one associations can be implemented by facilitating the input of input characters and symbols that do not exist on the input device. Therefore, a Western keyboard can be used to input Chinese characters. Similarly, an input method can be used to input many other languages including ideograms using a Western keyboard or some other input device, such as Japanese, Korean, and other languages.

為實施一輸入方法,使用者一般必須安裝一用戶端側軟體應用程式與一庫。但是,當一使用者正在不屬於該使用者的電腦裝置(例如,一公共電腦裝置或在一工作環境中之一第二電腦等等)上工作時此類安裝可能不方便。In order to implement an input method, the user generally has to install a client-side software application and a library. However, such installation may be inconvenient when a user is working on a computer device that does not belong to the user (eg, a public computer device or a second computer in a work environment, etc.).

本說明書說明與輸入方法編輯器相關之技術。在某些實施方案中,將輸入方法碼提供給一用戶端裝置,而從該用 戶端裝置接收一輸入方法內文。選擇針對一依據該輸入方法內文的輸入方法實例之一庫模型,並將對該庫模型的接取提供給該用戶端裝置。該庫模型可用於在該用戶端裝置上提供針對一輸入方法實例之輸入方法處理。This manual describes the techniques associated with the Input Method Editor. In some embodiments, the input method code is provided to a client device from which The client device receives an input method text. A library model for an input method instance according to the input method context is selected, and the access to the library model is provided to the client device. The library model can be used to provide input method processing for an input method instance on the client device.

在某些實施方案中,可從一用戶端裝置接收識別一輸入方法編輯器內文之資料。可選擇針對所識別的輸入方法編輯器內文而最佳化之一輸入方法編輯器庫。該選定的輸入方法編輯器庫可包括組合輸入與字元之關聯。可將對該選定輸入方法編輯器庫之接取提供給該用戶端裝置。可將輸入方法編輯器碼提供給該用戶端裝置,該輸入方法編輯器碼經組態用以在該用戶端裝置處產生一輸入方法編輯器實例。該輸入方法編輯器實例係可操作用以處理針對複數個輸入方法編輯器內文之組合輸入。該輸入方法編輯器實例亦可操作用以處理該等組合輸入以依據包括於該選定輸入方法編輯器庫中的組合輸入與字元之關聯來識別候選字元。In some embodiments, data identifying the context of an input method editor can be received from a client device. An input method editor library can be selected that is optimized for the identified input method editor context. The selected input method editor library can include a combination of input and character associations. The access to the selected input method editor library can be provided to the client device. An input method editor code can be provided to the client device, the input method editor code configured to generate an input method editor instance at the client device. The input method editor instance is operable to process a combined input for a plurality of input method editor contexts. The input method editor instance is also operative to process the combined inputs to identify candidate characters based on the association of the combined input and the characters included in the selected input method editor library.

在某些實施方案中,一系統包括一資料儲存器與一輸入方法編輯器引擎。該資料儲存器經組態用以儲存輸入方法編輯器庫,每一輸入方法編輯器庫係針對一對應的輸入方法編輯器內文而最佳化,而每一輸入方法編輯器庫包括組合輸入與字元之關聯。該輸入方法編輯器引擎經組態用以接收識別一輸入方法編輯器內文之輸入方法編輯器內文資料,選擇針對所識別的輸入方法編輯器內文而最佳化之一輸入方法編輯器庫,並將對該輸入方法編輯器庫之接取提 供給一用戶端裝置。該輸入方法編輯器亦經組態用以將輸入方法編輯器碼提供給該用戶端裝置。該輸入方法編輯器碼經組態用以在該用戶端裝置處產生一輸入方法編輯器實例。該輸入方法編輯器實例係可操作用以處理針對複數個輸入方法編輯器內文之組合輸入,並用以處理該等組合輸入以依據包括於該選定輸入方法編輯器庫中的組合輸入與字元之關聯來識別候選字元。In some embodiments, a system includes a data store and an input method editor engine. The data store is configured to store an input method editor library, each input method editor library is optimized for a corresponding input method editor context, and each input method editor library includes a combined input Associated with a character. The input method editor engine is configured to receive an input method editor internal data identifying an input method editor text, and selecting one of the input method editors for the identified input method editor context Library, and will pick up the input method editor library A client device is provided. The input method editor is also configured to provide an input method editor code to the client device. The input method editor code is configured to generate an input method editor instance at the client device. The input method editor instance is operable to process a combined input for a plurality of input method editor texts and to process the combined input to convert the combined input and characters included in the selected input method editor library The association identifies the candidate characters.

在某些實施方案中,可在一用戶端裝置處接收輸入方法碼並執行該碼以例示一可用於複數個輸入方法編輯器內文的輸入方法編輯器實例。可將識別該輸入方法內文的資料提供給一輸入方法編輯器伺服器,並可作為回應而藉由該輸入方法實例來接取一輸入方法編輯器庫。該輸入方法編輯器庫係針對該輸入方法編輯器內文而最佳化之一內文庫。In some embodiments, an input method code can be received at a client device and executed to instantiate an input method editor instance that can be used in a plurality of input method editor contexts. The data identifying the text of the input method can be provided to an input method editor server, and in response, an input method editor library can be accessed by the input method instance. The input method editor library optimizes one of the libraries for the input method editor context.

附圖及以下說明中提出本說明書所述標的之一或多個具體實施例之細節。從說明內容、圖式及申請專利範圍將會明白該標的之其他特徵、態樣及優點。The details of one or more specific embodiments of the subject matter described herein are set forth in the accompanying drawings. Other features, aspects, and advantages of the subject matter will be apparent from the description and drawings.

圖1係可用於實施本文所述系統及方法之一範例性環境之一方塊圖。該環境可包括一用戶端裝置100,其可以係(例如)一電腦裝置(例如一個人電腦裝置)或其他電子裝置(例如一行動電話、行動通信裝置、個人數位助理(PDA))及類似物。本文中的系統及方法促進將輸入方法編輯器碼及/或一或多個輸入方法編輯器語言及庫模型動態下載至 一用戶端裝置。例如,可依據在該用戶端裝置處偵測到之一內文來選擇該等語言及庫模型。1 is a block diagram of one exemplary environment in which one of the systems and methods described herein can be implemented. The environment may include a client device 100, which may be, for example, a computer device (e.g., a personal computer device) or other electronic device (e.g., a mobile phone, a mobile communication device, a personal digital assistant (PDA)), and the like. The system and method herein facilitates dynamic downloading of an input method editor code and/or one or more input method editor languages and library models to A client device. For example, the language and library models can be selected based on one of the contexts detected at the client device.

該範例性裝置100包括一處理裝置102、一第一資料儲存器104、一第二資料儲存器106、輸入裝置108、輸出裝置110及一網路介面112。可以使用包括(例如)一資料匯流排與一母板之一匯流排系統114來建立及控制該等組件102、104、106、108、110及112之間的資料通信。亦可使用其他系統架構。The exemplary device 100 includes a processing device 102, a first data storage device 104, a second data storage device 106, an input device 108, an output device 110, and a network interface 112. Data communication between the components 102, 104, 106, 108, 110, and 112 can be established and controlled using, for example, a data bus and a busbar system 114 of a motherboard. Other system architectures can also be used.

該處理裝置102可(例如)包括一或多個微處理器。該第一資料儲存器104可以(例如)包括一隨機存取記憶體儲存裝置(例如一動態隨機存取記憶體)或其他類型的電腦可讀取媒體記憶體裝置。該第二資料儲存器106可(例如)包括一或多個硬碟機、一快閃記憶體及/或一唯讀記憶體或其他類型的電腦可讀取媒體記憶體裝置。The processing device 102 can, for example, include one or more microprocessors. The first data store 104 can, for example, include a random access memory storage device (e.g., a dynamic random access memory) or other type of computer readable media memory device. The second data store 106 can, for example, include one or more hard drives, a flash memory, and/or a read only memory or other type of computer readable media memory device.

範例性輸入裝置108可包括一鍵盤、一滑鼠、一觸控筆等,而範例性的輸出裝置110可包括一顯示裝置、一音訊裝置等。該網路介面112可(例如)包括一可操作用以向一網路116傳達資料及從該網路116傳達資料之有線或無線網路裝置。該網路116可包括一或多個區域網路(LAN)及/或一廣域網路(WAN),例如網際網路。The exemplary input device 108 can include a keyboard, a mouse, a stylus, etc., and the exemplary output device 110 can include a display device, an audio device, and the like. The network interface 112 can, for example, include a wired or wireless network device operable to communicate data to and from a network 116. The network 116 can include one or more local area networks (LANs) and/or a wide area network (WAN), such as the Internet.

在某些實施方案中,該用戶端裝置100可從一輸入方法編輯器(IME)伺服器118接收輸入方法編輯器(IME)碼101並將該輸入方法編輯器碼101儲存於一資料儲存器(例如資料儲存器104)上。該輸入方法編輯器碼101可包括一旦執行 便驅使該處理裝置102實施輸入方法編輯功能之指令。該輸入方法編輯器碼101可(例如)包含經解譯的指令,例如可在一網頁瀏覽器環境中執行的指令碼指令(例如JavaScript 或ECMAScript指令)。亦可使用其他實施方案,例如一獨立應用程式、一小型應用程式、一插入式模組等。In some embodiments, the client device 100 can receive an input method editor (IME) code 101 from an input method editor (IME) server 118 and store the input method editor code 101 in a data store. (for example, data storage 104). The input method editor code 101 can include once executed The processing device 102 is driven to execute instructions for inputting method editing functions. The input method editor code 101 can, for example, include interpreted instructions, such as instruction code instructions (eg, JavaScript or ECMAScript instructions) that can be executed in a web browser environment. Other implementations are also possible, such as a stand-alone application, a small application, a plug-in module, and the like.

該輸入方法編輯器碼101之執行產生或發起一輸入方法編輯器實例103。該輸入方法編輯器實例103促進在該用戶端裝置100處之一或多個輸入方法之處理,在此時間期間該裝置100可接收針對輸入字元或符號(例如,漢字字元)之組合輸入。例如,該使用者可使用該等輸入裝置108(例如,諸如一西式鍵盤之類的一鍵盤,結合一手寫辨識引擎來使用之一觸控筆等等)之一或多個裝置來輸入用以識別漢字字元的組合輸入。在某些範例中,一漢字字元可由多於一個組合輸入組成。Execution of the input method editor code 101 generates or initiates an input method editor instance 103. The input method editor instance 103 facilitates processing of one or more input methods at the client device 100 during which time the device 100 can receive a combined input for input characters or symbols (eg, kanji characters). . For example, the user can use one or more of the input devices 108 (eg, a keyboard such as a western keyboard, a handwriting recognition engine to use a stylus, etc.) to input Identify the combined input of Chinese characters. In some examples, a kanji character may consist of more than one combined input.

可針對使用一語標指令碼之任何語言來動態提供該IME碼101。例如,可回應於一暗示請求(例如,一使用者在一網頁瀏覽器、一工具列或某一其他編輯環境中調用一輸入方法編輯器功能)而提供該IME碼101。在某些實施方案中,該裝置100可接收一或多個拼音組合輸入並將該等組合輸入轉換成漢字字元。該用戶端裝置100可(例如)使用從按鍵接收的拼音音節或字元之組合來表示該等漢字字元。每一拼音音節可(例如)對應於該西式鍵盤中之一或多個按鍵。在使用該拼音IME(輸入方法編輯器)之情況下,使用者可藉由使用包括表示該漢字字元的聲音之一或多個拼音 音節之組合輸入來輸入一漢字字元。The IME code 101 can be dynamically provided for any language that uses a monogram script. For example, the IME code 101 can be provided in response to an implied request (e.g., a user invokes an input method editor function in a web browser, a toolbar, or some other editing environment). In some embodiments, the apparatus 100 can receive one or more Pinyin combination inputs and convert the combined inputs into Kanji characters. The client device 100 can represent the Chinese character characters, for example, using a combination of Pinyin syllables or characters received from a button. Each Pinyin syllable may, for example, correspond to one or more of the buttons in the Western keyboard. In the case of using the Pinyin IME (Input Method Editor), the user can use one or more pinyin sounds including the character representing the Chinese character. The combination of syllables is input to input a Chinese character.

在某些實施方案中,部分地藉由該輸入方法編輯器伺服器118來促進一輸入方法之處理。該用戶端裝置100可將一輸入方法編輯器內文(IMEC)105提供給該輸入方法編輯器伺服器118,例如提供指示一特定內文之一資料訊息。該輸入方法編輯器內文105可(例如)定義正在使用之一輸入方法編輯器實例103所處之一內文。例如,一第一內文105a可以係一編輯器內文,例如一基於網路的文字處理環境;一第二內文105b可以係一搜尋內文,例如用於一搜尋引擎之一文字輸入框;一第三內文105c可以係一訊息內文,例如一即時訊息編輯環境,或一電子郵件編輯環境。亦可使用其他輸入方法編輯器內文,舉例而言,比如一映射環境、一指令碼環境、一聊天環境或其他類型的編輯環境,及/或在一瀏覽會話期間之一使用者輸入歷史,及/或一使用者資料檔。In some embodiments, the processing of an input method is facilitated in part by the input method editor server 118. The client device 100 can provide an input method editor internal (IMEC) 105 to the input method editor server 118, for example, to provide a data message indicating a particular context. The input method editor context 105 can, for example, define one of the fields in which one of the input method editor instances 103 is being used. For example, a first text 105a may be an editor context, such as a web-based word processing environment; a second text 105b may be a search text, such as a text input box for a search engine; A third text 105c can be a message body, such as an instant message editing environment, or an email editing environment. Other input method editor texts may also be used, such as, for example, a mapping environment, a script environment, a chat environment, or other type of editing environment, and/or one of the user input history during a browsing session, And/or a user profile.

該輸入方法編輯器伺服器118可(例如)包括一輸入方法編輯器引擎120、一字元資料儲存器122、一組合輸入資料儲存器124及庫/語言模型資料儲存器126。亦可使用其他儲存架構。該字元資料儲存器122包括用在一或多個語言模型中之一語標指令碼的字元。在某些實施方案中,該字元資料儲存器122亦包括關於字元之間的關係之資訊。例如,該字元資料儲存器122可包括依據與一字元相鄰的字元而指派給該字元之分數或機率值。亦可使用其他內文關係資料。The input method editor server 118 can, for example, include an input method editor engine 120, a character data store 122, a combined input data store 124, and a library/language model data store 126. Other storage architectures are also available. The character data store 122 includes characters that use one of the coded instruction codes in one or more language models. In some embodiments, the character data store 122 also includes information regarding the relationship between the characters. For example, the character data store 122 can include a score or probability value assigned to the character based on a character adjacent to a character. Other contextual information can also be used.

該組合輸入資料儲存器124包括組合輸入與儲存於該字元資料儲存器122中的字元之一關聯。在某些實施方案中,該組合輸入資料儲存器124可以將該字元資料儲存器122中的每一字元鏈結至該輸入方法編輯器引擎120所使用之一組合輸入。例如,該輸入方法編輯器引擎120可使用該字元資料儲存器122及該組合輸入資料儲存器122中的資訊來將該字元資料儲存器122中之一或多個字元與該組合輸入資料儲存器124中之一或多個組合輸入相關聯及/或藉由後者來識別前者。The combined input data store 124 includes a combined input associated with one of the characters stored in the character data store 122. In some embodiments, the combined input data store 124 can link each character in the character data store 122 to one of the combined inputs used by the input method editor engine 120. For example, the input method editor engine 120 can use the information in the character data store 122 and the combined input data store 122 to input one or more characters in the character data store 122 with the combination. One or more combined inputs in data store 124 are associated with and/or by the latter to identify the former.

該庫/語言模型資料儲存器126可定義針對一語言模型之一或多個庫,例如可針對一漢字指令碼定義數個庫。每一庫可(例如)定義該等字元122與組合輸入表124之一特定關聯。在某些實施方案中,可依據該輸入方法編輯器內文105來選擇一庫,例如庫(LIB)130。例如,對於該輸入方法編輯器內文105a(其係該編輯器內文),可選擇一對應的文字處理庫130a。該庫130a可(例如)係針對該輸入方法編輯器實例103之一特定內文而最佳化,例如,針對該編輯器內文105a之庫130a可能比針對搜尋內文105b之庫130b更強固。例如,針對一搜尋內文105b之一庫可能不在字元122與該組合輸入表之關聯中實施文法規則及一般的停止字,因為搜尋詢問常常並非採取完整的句子為形式。但是,針對一編輯器內文105b之一庫可實施文法規則及一般的停止字,因為一般調用該編輯器內文105a的編輯器一般係用於打字輸入完整的句字。The library/language model data store 126 can define one or more libraries for a language model, for example, a plurality of libraries can be defined for a Chinese character instruction code. Each bank may, for example, define that the characters 122 are specifically associated with one of the combined input tables 124. In some embodiments, a library, such as a library (LIB) 130, can be selected in accordance with the input method editor context 105. For example, for the input method editor context 105a (which is the editor context), a corresponding word processing library 130a can be selected. The library 130a may, for example, be optimized for a particular context of the input method editor instance 103, for example, the library 130a for the editor context 105a may be more robust than the library 130b for the search context 105b. . For example, a library for a search context 105b may not implement grammar rules and general stop words in the association of character 122 with the combined input table, as search queries are often not in the form of complete sentences. However, a grammar rule and a general stop word can be implemented for a library of editors 105b, since the editor that typically calls the editor context 105a is typically used to type in a complete sentence.

選定庫(例如針對該輸入方法編輯器內文105a的庫130a)可以(例如)係適合於該用戶端裝置100。一旦在該用戶端裝置100接收到該庫130a,該輸入方法編輯器實例103便可依據一組合輸入以及與一選定字元相鄰或與一游標位置相鄰的字元來選擇候選字元。該輸入方法編輯器實例103可接收對在該語標指令碼中之一字元之一選擇(例如對欲由一使用者來改變或修改之一字元之一選擇)及隨後的組合輸入。依據此類輸入及選擇,使用者可在一編輯會話中輸入一所需字元。The selected library (e.g., library 130a for the input method editor context 105a) may, for example, be suitable for the client device 100. Once the library 130a is received at the client device 100, the input method editor instance 103 can select candidate characters based on a combined input and characters adjacent to a selected character or adjacent to a cursor position. The input method editor instance 103 can receive a selection of one of the characters in the token instruction code (e.g., for one of the characters to be changed or modified by a user) and subsequent combined input. Based on such input and selection, the user can enter a desired character in an editing session.

在某些實施方案中,可從該用戶端裝置100向該輸入方法編輯器伺服器118提供使用者選擇及輸入,而該輸入方法編輯器引擎120可經組態用以依據選定庫130來提供針對該用戶端裝置之輸入方法處理。In some embodiments, user input and input can be provided from the client device 100 to the input method editor server 118, and the input method editor engine 120 can be configured to provide from the selected library 130. Processing is performed on the input method of the client device.

在某些實施方案中,一工具列整合將輸入方法編輯能力提供給線上網路應用程式,例如具有一文字框之網站,例如藉由將一JavaScript片斷添加進該網頁。此一實施方案可以係(例如)用於一瀏覽器裝置並可以係與現有的線上應用程式整合。該工具列整合之選擇可驅使載入一JavaScript指令碼,從而產生一輸入方法編輯器介面。該輸入方法編輯器介面可經組態用以識別一網路應用程式之所有文字輸入事件並依據該使用者輸入之內文來請求一庫130。該等庫130可以係由該輸入方法編輯器伺服器118來動態提供並可以係依據藉由使用(例如)日誌資料(包括網路搜尋詢問與快取文件)來訓練(train)之一或多個語言模型。 因此,依據該內文來請求或選擇由該等輸入方法編輯器介面請求的特定庫或由該伺服器選擇的庫。還可使用其他實施方案,例如可使用在一軟體及/或硬體堆疊中的其他層來實施一輸入方法編輯環境。In some embodiments, a toolbar integration provides input method editing capabilities to an online web application, such as a website having a text box, such as by adding a JavaScript snippet to the web page. This embodiment can be, for example, used in a browser device and can be integrated with existing online applications. The toolbar integration option drives a JavaScript script to load an input method editor interface. The input method editor interface can be configured to identify all text input events of a web application and request a library 130 based on the text entered by the user. The libraries 130 may be dynamically provided by the input method editor server 118 and may be based on one or more of training by using, for example, log data (including web search queries and cache files). Language models. Therefore, a particular library requested by the input method editor interface or a library selected by the server is requested or selected in accordance with the context. Other embodiments may be used, such as an input method editing environment that may be implemented using other layers in a software and/or hardware stack.

在某些實施方案中,該輸入方法編輯器伺服器118可藉由首先偵測或辨識該使用者輸入之內文(例如,一查詢或針對一郵件之一編輯區域)來適應性地伺服一庫130。例如,對於一搜尋框,該輸入方法編輯器伺服器118可伺服藉由查詢資料來訓練之一庫。對於一寫入或編輯區域(例如一電子郵件介面),該輸入方法編輯器伺服器118可伺服藉由快取文件來訓練之一庫。可週期性地更新該等輸入方法編輯器伺服器118庫。In some embodiments, the input method editor server 118 can adaptively servo one by first detecting or recognizing the text entered by the user (eg, a query or an edit area for one of the mails). Library 130. For example, for a search box, the input method editor server 118 can servo to train a library by querying the material. For a write or edit area (e.g., an email interface), the input method editor server 118 can servo to train a library by caching files. The library of input method editor servers 118 can be updated periodically.

圖2係一範例性輸入方法編輯器程序200之一流程圖。該程序200可以(例如)係實施於圖1所示之一環境100中。2 is a flow diagram of an exemplary input method editor program 200. The program 200 can be implemented, for example, in one of the environments 100 shown in FIG.

該程序200將輸入方法碼提供給一用戶端裝置(202)。例如,該IME伺服器118可從一用戶端裝置100接收針對該輸入方法編輯器碼101之一請求並作為回應而將該輸入方法編輯器碼101提供給該用戶端裝置100。The program 200 provides an input method code to a client device (202). For example, the IME server 118 can receive a request for one of the input method editor codes 101 from a client device 100 and provide the input method editor code 101 to the client device 100 in response.

該程序200從該用戶端裝置接收一輸入方法內文(204)。例如,若該用戶端裝置100之一使用者在一搜尋引擎輸入欄位中打字輸入文字時嘗試調用一輸入方法編輯器程序,則該IME伺服器118可從該用戶端裝置100接收一輸入方法內文,例如一搜尋內文105b。The program 200 receives an input method context (204) from the client device. For example, if a user of the client device 100 attempts to invoke an input method editor program while typing a text in a search engine input field, the IME server 118 can receive an input method from the client device 100. The text, for example, searches for the text 105b.

該程序200依據該輸入方法內文來識別針對一輸入方法 實例之一庫模型(206)。例如,該IME引擎120可依據該輸入方法內文105b來識別針對該輸入方法編輯器實例103之一庫模型(例如庫模型130b)。在一實施方案中,該輸入方法編輯器引擎120可提供針對該用戶端裝置100之輸入方法編輯器處理。在另一實施方案中,可將該庫130提供給該用戶端系統100,而該輸入方法編輯器實例103可提供輸入方法編輯器處理。The program 200 identifies an input method according to the input method context One of the examples is a library model (206). For example, the IME engine 120 can identify a library model (eg, library model 130b) for the input method editor instance 103 in accordance with the input method context 105b. In an embodiment, the input method editor engine 120 can provide input method editor processing for the client device 100. In another embodiment, the library 130 can be provided to the client system 100, and the input method editor instance 103 can provide input method editor processing.

圖3係另一範例性輸入方法編輯器程序300之一流程圖。該程序300可以(例如)係實施於圖1所示之一環境100中。FIG. 3 is a flow diagram of another exemplary input method editor program 300. The program 300 can be implemented, for example, in one of the environments 100 shown in FIG.

該程序300在一用戶端裝置上接收輸入方法碼(302)。例如,該IME伺服器118可從一用戶端裝置100接收針對該輸入方法編輯器碼101之一請求並作為回應而將該輸入方法編輯器碼101提供給該用戶端裝置100。該用戶端裝置100可接收該輸入方法編輯器碼101。The program 300 receives an input method code (302) on a client device. For example, the IME server 118 can receive a request for one of the input method editor codes 101 from a client device 100 and provide the input method editor code 101 to the client device 100 in response. The client device 100 can receive the input method editor code 101.

該程序300將一輸入方法內文提供給一輸入方法編輯器伺服器(304)。例如,當該用戶端裝置100之一使用者在一搜尋引擎輸入欄位中打字輸入文字時嘗試調用一輸入方法編輯器程序,則可將一輸入方法編輯器內文(例如,輸入方法編輯器內文105b)傳送至該輸入方法編輯器伺服器118。The program 300 provides an input method context to an input method editor server (304). For example, when a user of the client device 100 attempts to invoke an input method editor program while typing a text in a search engine input field, an input method editor text can be entered (for example, an input method editor). The text 105b) is passed to the input method editor server 118.

該程序300依據該輸入方法內文來接收針對一輸入方法實例之一庫模型(306)。例如,該IME引擎120可依據該輸入方法內文105b來識別針對該輸入方法編輯器實例103之一庫模型(例如庫模型130b)。可將該庫130提供給該用戶端 100,而該輸入方法編輯器實例103可提供輸入方法編輯器處理。The program 300 receives a library model (306) for an input method instance in accordance with the input method context. For example, the IME engine 120 can identify a library model (eg, library model 130b) for the input method editor instance 103 in accordance with the input method context 105b. The library 130 can be provided to the client 100, and the input method editor instance 103 can provide input method editor processing.

儘管以特定的語言及輸入方法範例為背景來進行說明,但本文所述之系統及方法還可用於使用一語標指令碼的任何語言。例如,本文所述之系統及方法可用於包括表意文字的許多其他語言,例如日語、韓語及其他語言。Although illustrated in the context of a particular language and input method examples, the systems and methods described herein can also be used in any language that uses a single instruction code. For example, the systems and methods described herein can be used in many other languages, including Japanese, Korean, and other languages, including ideograms.

本說明書所述之標的及功能操作之具體實施例可以係實施於數位電子電路中或電腦軟體、韌體或硬體(包括本說明書所揭示之結構及其結構等效物)中或其一或多個組合中。本說明書所述標的之具體實施例可以係實施為一或多個電腦程式產品,即編碼於一有形程式載體上以供資料處理設備執行或用以控制資料處理設備的操作之電腦程式指令之一或多個模組。該有形程式載體可以係一所傳播的信號或一電腦可讀取的媒體。所傳播的信號係一人工產生的信號(例如,一由機器產生的信號)、光學或電磁信號,其係產生用以編碼用於向合適的接收器設備傳輸以由一電腦來執行之資訊。該電腦可讀取的媒體可以係一機器可讀取的儲存裝置、一機器可讀取的儲存基板、一記憶體裝置或影響一機器可讀取的所傳播信號之一物的組合或其一或多者之一組合。Specific embodiments of the subject matter and functional operations described herein may be implemented in a digital electronic circuit or in a computer software, firmware or hardware (including the structures disclosed herein and their structural equivalents) Multiple combinations. The specific embodiments of the subject matter described herein may be implemented as one or more computer program products, one of computer program instructions encoded on a tangible program carrier for execution by a data processing device or for controlling the operation of the data processing device. Or multiple modules. The tangible program carrier can be a propagated signal or a computer readable medium. The propagated signal is an artificially generated signal (e.g., a machine generated signal), optical or electromagnetic signal that is generated to encode information for transmission to a suitable receiver device for execution by a computer. The computer readable medium can be a machine readable storage device, a machine readable storage substrate, a memory device or a combination of one of the propagated signals that can affect a machine or one of them. Or a combination of more than one.

術語"資料處理設備"涵蓋用以處理資料的所有設備、裝置及機器,舉例而言,包括可程式處理器、電腦或多個處理器或電腦。除硬體外,該設備還可包括針對所討論的電腦程式產生一執行環境的碼,例如組成處理器韌體、一協 定堆疊、一資料庫管理系統、一操作系統或其一或多者之一組合的碼。The term "data processing device" encompasses all devices, devices and machines for processing data, including, for example, a programmable processor, a computer or a plurality of processors or computers. In addition to the hard body, the device may also include a code that generates an execution environment for the computer program in question, such as forming a processor firmware, a protocol A code that combines stacking, a database management system, an operating system, or a combination of one or more of them.

電腦程式(亦稱為程式、軟體、軟體應用程式、指令碼或碼)可以係寫為任何形式的程式化語言,包括編譯或解譯語言或者說明性或程序性語言,而且其可以係部署為任何形式,包括作為一獨立程式或作為一模組、組件、子常式或其他適合用於一計算環境的單元。一電腦程式不一定對應於在一檔案系統中之一檔案。一程式可以係儲存於一保存其他程式或資料(例如,儲存於一標記語言文件中之一或多個指令碼)的檔案之一部分中、專用於所討論的程式之一單一檔案中或者多個協調的檔案(例如,儲存一或多個模組、子程式或碼部分之檔案)中。一電腦程式可經部署成在一電腦或在位於一地點或橫跨多個地點而分佈並藉由一通信網路互連的多個電腦上執行。Computer programs (also known as programs, software, software applications, scripts or code) can be written in any form of stylized language, including compiled or interpreted languages or descriptive or procedural languages, and they can be deployed as Any form, including as a stand-alone program or as a module, component, sub-routine or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program may be stored in a portion of a file that stores other programs or materials (eg, one or more scripts stored in a markup language file), dedicated to a single file of the program in question, or multiple Coordinated files (for example, files that store one or more modules, subprograms, or code parts). A computer program can be deployed to be executed on a computer or on multiple computers located at a location or across multiple locations and interconnected by a communication network.

可藉由執行一或多個電腦程式以由對輸入資料進行操作及產生輸出來實行功能之一或多個可程式處理器來實行本說明書所述之程序及邏輯流程。還可以藉由專用邏輯電路,例如一FPGA(場可程式閘極陣列)或一ASIC(特定應用積體電路)來實行該等程序及邏輯流程,而且可將設備實施為此等專用邏輯電路。The procedures and logic flows described herein can be implemented by executing one or more computer programs to perform one or more programmable processors by operating on input data and generating output. The programs and logic flows may also be implemented by dedicated logic circuitry, such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit), and the device may be implemented as such dedicated logic circuitry.

適用於執行一電腦程式之處理器包括(舉例而言)通用與專用微處理器兩者以及任何類型的數位電腦之任一或任何多個處理器。一般地,該處理器將接收來自一唯讀記憶體或一隨機存取記憶體或兩者之指令及資料。一電腦之關鍵 元件係一用以實行指令的處理器以及一或多個用以儲存指令與資料的記憶體裝置。一般地,一電腦還將包括一或多個用以儲存資料的大量儲存裝置(例如磁性、磁光碟片或光碟),或係操作性耦合用以接收來自此等裝置之資料或向此等裝置傳輸資料或兼用以接收與傳輸。但是,電腦不必具有此類裝置。此外,一電腦可以係嵌入另一裝置(例如,一行動電話、一個人數位助理(PDA)、一行動音訊或視訊播放器、一遊戲主控台、一全球定位系統(GPS)接收器等等)中。A processor suitable for executing a computer program includes, by way of example, both general and special purpose microprocessors, and any one or any plurality of processors of any type of digital computer. Generally, the processor will receive instructions and data from a read-only memory or a random access memory or both. The key to a computer A component is a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include one or more storage devices (eg, magnetic, magneto-optical disks, or optical disks) for storing data, or operatively coupled to receive data from such devices or to such devices. Transfer data or both for receiving and transmitting. However, the computer does not have to have such a device. In addition, a computer can be embedded in another device (for example, a mobile phone, a PDA, a mobile audio or video player, a game console, a global positioning system (GPS) receiver, etc.) in.

適用於儲存電腦程式指令及資料之電腦可讀取的媒體包括所有形式的非揮發性記憶體、媒體及記憶體裝置(舉例而言,包括半導體記憶體裝置,例如EPROM、EEPROM及快閃記憶體裝置;磁碟,例如內部硬碟或可移除碟片;磁光碟片;以及CD ROM及DVD-ROM碟片)。該處理器及該記憶體可以專用邏輯電路作為補充,或可以係併入專用邏輯電路中。Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices (including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory). Device; disk, such as internal hard disk or removable disk; magneto-optical disk; and CD ROM and DVD-ROM disc). The processor and the memory may be supplemented by dedicated logic circuitry or may be incorporated into dedicated logic circuitry.

為提供與一使用者的互動,本說明書所述標的之具體實施例可以係實施於具有用以向該使用者顯示資訊之一顯示裝置(例如,一CRT(陰極射線管)或LCD(液晶顯示器)監視器)以及一鍵盤及一使用者可藉以向該電腦提供輸入的指向裝置(例如,一滑鼠或軌跡球)的電腦上。還可使用其他類型的裝置來提供與一使用者的互動;例如,向該使用者提供的回授可以係任何形式的感測回授,例如視覺回授、聽覺回授或觸覺回授;而來自該使用者的輸入可以係接收 為任何形式,包括聲學、語音或觸覺輸入。In order to provide interaction with a user, the specific embodiments of the subject matter described herein may be implemented in a display device (eg, a CRT (cathode ray tube) or LCD (liquid crystal display) having information for displaying information to the user. A monitor and a keyboard and a computer on which the user can provide an input pointing device (for example, a mouse or trackball) to the computer. Other types of devices may also be used to provide interaction with a user; for example, the feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; Input from the user can be received For any form, including acoustic, voice or tactile input.

本說明書所述標的之具體實施例可以係實施於一電腦系統中,該電腦系統包括一後端組件(例如作為一資料伺服器),或包括一中間軟體組件(例如,一應用程式伺服器),或包括一前端組件(例如具有一圖形使用者介面或一網頁瀏覽器之一用戶端電腦,使用者可透過該圖形使用者介面或該網頁瀏覽器與本說明書所述標的之一實施方案互動),或包括此類後端、中間軟體或前端組件之一或多者之任何組合。該系統之組件可以係藉由數位資料通信(例如,一通信網路)的任何形式或媒體而互連。通信網路之範例包括一區域網路("LAN")與一諸如網際網路之類的廣域網路("WAN")。The specific embodiments of the subject matter described in this specification may be implemented in a computer system including a backend component (eg, as a data server) or an intermediate software component (eg, an application server) Or a front-end component (for example, a client computer having a graphical user interface or a web browser through which the user can interact with one of the embodiments described in the specification) ), or include any combination of one or more of such backends, intermediate software, or front end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN") and a wide area network ("WAN") such as the Internet.

該計算系統可包括用戶端與伺服器。一用戶端及伺服器一般係彼此遠離而且一般透過一通信網路來相互作用。用戶端與伺服器之關係憑藉運行於個別電腦上且彼此具有一用戶端與伺服器關係的電腦程式而產生。The computing system can include a client and a server. A client and server are generally remote from each other and typically interact through a communication network. The relationship between the client and the server is generated by a computer program running on an individual computer and having a client-server relationship with each other.

儘管本說明書包含許多特定實施細節,但此等細節不應解釋為對任何發明或對可主張標的之範疇的限制,而應解釋為對特定發明之特定具體實施例可能特有的特徵之說明。本說明書中以分離的具體實施例為背景所說明之特定特徵還可以係組合實施於一單一的具體實施例中。相反,以一單一具體實施例為背景來說明之各種特徵還可以係分別或以任何合適的子組合實施於多個具體實施例中。此外,儘管上面可將各特徵說明為在特定組合中作用而且甚 至最初係如此主張,但來自一所主張的組合之一或多個特徵在某些情況下可以係與該組合分離,而所主張的組合可以係關於一次組合或一次組合之變化體。The description contains a number of specific implementation details, and the details are not to be construed as limiting the scope of the invention or the scope of the invention. Specific features that are described in the context of the specific embodiments of the present invention may also be combined in a single embodiment. Conversely, various features that are illustrated in the context of a single specific embodiment can be implemented in various embodiments, respectively, or in any suitable sub-combination. In addition, although the features can be described above as acting in a particular combination and As originally suggested, one or more features from a claimed combination may be separated from the combination in some cases, and the claimed combination may be a variation on one combination or one combination.

同樣,儘管圖中以一特定順序來繪示各操作,但此不應理解為需要以所示的特定順序或以順序次序來實行此類操作,或實行所有圖示操作,來獲得所需結果。在特定情況下,多任務及平行處理可能有利。此外,上述具體實施例中的各種系統組件之分離不應理解為在所有具體實施例中皆需要此類操作,而應理解所說明的程式組件及系統一般可以係一起整合於一單一的軟體產品中或封裝成多個軟體產品。Also, although the operations are illustrated in a particular order, this is not to be construed as a limitation of the . In certain situations, multitasking and parallel processing may be advantageous. In addition, the separation of various system components in the above-described embodiments should not be construed as requiring such operations in all embodiments, but it should be understood that the illustrated components and systems can be integrated together in a single software product. Medium or packaged into multiple software products.

已說明本說明書所述標的之特定具體實施例。其他具體實施例屬於隨附申請專利範圍之範疇內。例如,申請專利範圍中所述之動作可以係一不同順序來實行而仍然獲得所需結果。作為一範例,附圖所繪示之程序不一定需要所示之特定順序或順序次序來獲得所需結果。在特定情況實施方案中,多任務及平行處理可能有利。Specific embodiments of the subject matter described in this specification have been described. Other specific embodiments are within the scope of the appended claims. For example, the actions described in the scope of the claims can be carried out in a different order and still obtain the desired result. As an example, the procedures illustrated in the figures are not necessarily in a particular Multi-task and parallel processing may be advantageous in a particular situational implementation.

100‧‧‧用戶端裝置/環境100‧‧‧Customer device/environment

101‧‧‧輸入方法編輯器(IME)碼101‧‧‧Input Method Editor (IME) code

102‧‧‧處理裝置102‧‧‧Processing device

103‧‧‧輸入方法編輯器實例103‧‧‧Input Method Editor Example

104‧‧‧第一資料儲存器104‧‧‧First data storage

105‧‧‧輸入方法編輯器內文(IMEC)105‧‧‧Input Method Editor Internal (IMEC)

105a‧‧‧第一內文/編輯器內文105a‧‧‧First text/editor context

105b‧‧‧第二內文/搜尋內文105b‧‧‧Second text/search for text

105c‧‧‧第三內文/訊息內文105c‧‧‧ Third text/message

106‧‧‧第二資料儲存器106‧‧‧Second data storage

108‧‧‧輸入裝置108‧‧‧ Input device

110‧‧‧輸出裝置110‧‧‧Output device

112‧‧‧網路介面112‧‧‧Network interface

114‧‧‧匯流排系統114‧‧‧ Busbar system

116‧‧‧網路116‧‧‧Network

118‧‧‧輸入方法編輯器(IME)伺服器118‧‧‧Input Method Editor (IME) Server

120‧‧‧輸入方法編輯器引擎120‧‧‧Input Method Editor Engine

122‧‧‧字元資料儲存器122‧‧‧ character data storage

124‧‧‧組合輸入資料儲存器/組合輸入表124‧‧‧Combined input data storage/combination input form

126‧‧‧庫/語言模型資料儲存器126‧‧‧Library/Language Model Data Storage

130‧‧‧庫(LIB)130‧‧ ‧Library (LIB)

130a‧‧‧庫/文字處理庫130a‧‧‧Library/Word Processing Library

130b‧‧‧庫/庫模型130b‧‧‧Library/Library Model

圖1係可用於實施本文所述系統及方法之一範例性環境之一方塊圖。1 is a block diagram of one exemplary environment in which one of the systems and methods described herein can be implemented.

圖2係一範例性輸入方法編輯器程序之一流程圖。Figure 2 is a flow diagram of an exemplary input method editor program.

圖3係另一範例性輸入方法編輯器程序之一流程圖。3 is a flow diagram of another exemplary input method editor program.

各圖中相似的參考數字及名稱指示相似的元件。Similar reference numerals and names in the various figures indicate similar elements.

(無元件符號說明)(no component symbol description)

Claims (21)

一種由電腦實施的方法,其包含:自一輸入方法編輯器伺服器將輸入方法碼提供給一遠離於該輸入方法編輯器伺服器之用戶端裝置,以回應一暗示請求(irmplicit request),該暗示請求包括經調用(invoked)之一輸入方法編輯器功能(function);在該輸入方法編輯器伺服器處從該用戶端裝置接收一輸入方法內文(context);依據該輸入方法內文來在該輸入方法編輯器伺服器處識別針對一輸入方法實例(instance)之一庫模型(library model);以及在該輸入方法編輯器伺服器處將對所識別之該庫模型的接取(access)提供給該用戶端裝置。 A computer-implemented method, comprising: providing an input method code from an input method editor server to a client device remote from the input method editor server in response to an irmplicit request, The implied request includes an input method editor function (invoked); an input method context is received from the client device at the input method editor server; according to the input method Identifying a library model for an input method instance at the input method editor server; and accessing the identified library model at the input method editor server (access ) is provided to the client device. 如請求項1之方法,其中將一輸入方法碼提供給一用戶端裝置包含將一瀏覽器指令碼(script)提供給一用戶端裝置。 The method of claim 1, wherein providing an input method code to a client device comprises providing a browser script to a client device. 如請求項1之方法,其中從該用戶端裝置接收一輸入方法內文包含接收對該用戶端裝置所檢視之一網頁的一識別。 The method of claim 1, wherein receiving an input method from the client device comprises receiving an identification of a web page viewed by the client device. 如請求項1之方法,其中從該用戶端裝置接收一輸入方法內文包含接收對一工具列應用程式之一識別。 The method of claim 1, wherein receiving an input method from the client device comprises receiving an identification of one of the toolbar applications. 如請求項1之方法,其中依據該輸入方法內文來識別針對一輸入方法實例之一庫模型包含識別一搜尋欄位庫模型。 The method of claim 1, wherein identifying, according to the input method context, a library model for identifying one of the input method instances comprises identifying a search field library model. 如請求項1之方法,其中依據該輸入方法內文來識別針對一輸入方法實例之一庫模型包含識別一文件編輯庫模型。 The method of claim 1, wherein identifying, according to the input method context, a library editing library model for identifying a library model for an input method instance. 如請求項1之方法,其中將輸入方法碼提供給一用戶端裝置包含將定義一拼音輸入方法編輯器之輸入方法碼提供給一用戶端裝置。 The method of claim 1, wherein providing the input method code to a client device comprises providing an input method code defining a pinyin input method editor to a client device. 如請求項1之方法,其中該庫模型係依據一或多個語言模型。 The method of claim 1, wherein the library model is based on one or more language models. 如請求項8之方法,其包含依據搜尋日誌資料來訓練(training)該一或多個語言模型。 The method of claim 8, comprising training the one or more language models based on the search log data. 如請求項9之方法,其中該搜尋日誌資料包含網頁搜尋查詢。 The method of claim 9, wherein the search log data comprises a webpage search query. 如請求項1之方法,其中將對所識別之該庫模型的接取提供給該用戶端裝置包含將所識別之該庫模型提供給該用戶端裝置。 The method of claim 1, wherein providing the identified access to the library model to the client device comprises providing the identified library model to the client device. 一種由電腦實施的方法,其包含:在一輸入方法編輯器伺服器處從一遠離於該輸入方法編輯器伺服器之用戶端裝置接收資料,該資料識別一輸入方法編輯器內文;在該輸入方法編輯器伺服器處選擇對應至所識別的該輸入方法編輯器內文之一輸入方法編輯器庫,該輸入方法編輯器庫包括組合輸入與字元之關聯;在該輸入方法編輯器伺服器處將對所選擇之該輸入方法編輯器庫的接取提供給該用戶端裝置;以及 自該輸入方法編輯器伺服器將輸入方法編輯器碼提供給該用戶端裝置以回應於經調用之一輸入方法編輯器功能,該輸入方法編輯器碼經組態用以在該用戶端裝置處產生一輸入方法編輯器實例,該輸入方法編輯器實例係可操作以處理針對複數個輸入方法編輯器內文之組合輸入,並用以處理該等組合輸入以依據包括於所選擇之該輸入方法編輯器庫中的組合輸入與字元之該等關聯來識別候選字元。 A computer-implemented method, comprising: receiving, at an input method editor server, a data from a client device remote from the input method editor server, the data identifying an input method editor context; The input method editor server selects one of the input method editor libraries corresponding to the identified input method editor context, the input method editor library includes the association of the combined input and the character; in the input method editor servo The selected device library of the input method editor is provided to the client device; The input method editor code is provided to the client device from the input method editor server in response to one of the invoked method editor functions, the input method editor code being configured to be at the client device Generating an input method editor instance operative to process a combined input for a plurality of input method editor contexts and for processing the combined inputs for editing in accordance with the selected input method The combined input in the library is associated with the characters to identify the candidate characters. 如請求項12之方法,其中該等組合輸入包含拼音輸入而該等字元包含漢字字元。 The method of claim 12, wherein the combined input comprises a pinyin input and the characters comprise a Chinese character. 如請求項12之方法,其中將輸入方法編輯器碼提供給該用戶端裝置包含將一瀏覽器指令碼提供給一用戶端裝置。 The method of claim 12, wherein providing the input method editor code to the client device comprises providing a browser command code to a client device. 如請求項12之方法,其中從一用戶端裝置接收識別一輸入方法編輯器內文的資料包含接收對一例示(instantiated)於該用戶端裝置之編輯環境的一識別。 The method of claim 12, wherein receiving, from a client device, data identifying an input method editor context comprises receiving an identification of an editing environment instantiated to the client device. 如請求項12之方法,其中將對所選擇之該輸入方法編輯器庫的接取提供給該用戶端裝置包含將所選擇之該輸入方法編輯器庫提供給該用戶端裝置。 The method of claim 12, wherein the providing the selected input method editor library to the client device comprises providing the selected input method editor library to the client device. 一種輸入方法編輯器伺服器,其包含:一資料儲存器,其經組態用以儲存輸入方法編輯器庫,每一輸入方法編輯器庫係對應至一輸入方法編輯器內文,而每一輸入方法編輯器庫包括組合輸入與字元之關聯;以及 一輸入方法編輯器引擎,其經組態用以:接收識別一輸入方法編輯器內文之輸入方法編輯器內文資料,選擇對應至所識別的該輸入方法編輯器內文之一輸入方法編輯器庫,並將對該輸入方法編輯器庫之接取提供給一用戶端裝置;以及將輸入方法編輯器碼提供給該用戶端裝置以回應於經調用之一輸入方法編輯器功能,該輸入方法編輯器碼經組態用以在該用戶端裝置處產生一輸入方法編輯器實例,該輸入方法編輯器實例係可操作以處理針對複數個輸入方法編輯器內文之組合輸入,並用以處理該等組合輸入以依據包括於所選擇之該輸入方法編輯器庫中的組合輸入與字元之該等關聯來識別候選字元。 An input method editor server, comprising: a data storage configured to store an input method editor library, each input method editor library corresponding to an input method editor context, and each The input method editor library includes the association of the combined input with the character; An input method editor engine configured to: receive an input method editor internal data identifying an input method editor, and select one of the input method editors corresponding to the identified input method editor a library, and providing the input method editor library to a client device; and providing the input method editor code to the client device in response to one of the invoked method editor functions, the input The method editor code is configured to generate an input method editor instance at the client device, the input method editor instance being operative to process a combined input for a plurality of input method editor contexts and for processing The combined inputs identify candidate characters based on the association of the combined input and the characters included in the selected input method editor library. 如請求項17之輸入方法編輯器伺服器,其中該等組合輸入包含拼音輸入而該等字元包含漢字字元。 The input method editor server of claim 17, wherein the combined input comprises a pinyin input and the characters comprise a kanji character. 如請求項17之輸入方法編輯器伺服器,其中該輸入方法編輯器碼包含一瀏覽器指令碼。 The input method editor server of claim 17, wherein the input method editor code comprises a browser instruction code. 如請求項17之輸入方法編輯器伺服器,其中該輸入方法編輯器碼包含一工具列插件(plug-in)。 The input method editor server of claim 17, wherein the input method editor code comprises a toolbar plug-in. 一種由電腦實施的方法,其包含:在一用戶端裝置處調用一輸入方法編輯器功能;在該用戶端裝置接收一輸入方法編輯器碼以回應於該輸入方法編輯器功能之調用;執行該輸入方法編輯器碼來例示可操作以處理針對複數個輸入方法編輯器內文的組合輸入之一輸入方法編輯 器實例;識別一輸入方法編輯器內文,其中該輸入方法編輯器實例被使用;將識別該輸入方法編輯器內文之資料提供給一遠離於該用戶端裝置之輸入方法編輯器伺服器;以及接取一輸入方法編輯器庫,該輸入方法編輯器庫係針對該輸入方法編輯器實例而由該輸入方法編輯器伺服器所識別,其中該輸入方法編輯器庫係對應至該輸入方法編輯器內文之一內文庫。 A computer-implemented method, comprising: invoking an input method editor function at a client device; receiving, at the client device, an input method editor code in response to a call of the input method editor function; Enter a method editor code to illustrate an input method edit that is operable to process a combined input for a plurality of input method editor texts An example of an input method editor, wherein the input method editor instance is used; providing information identifying the text of the input method editor to an input method editor server remote from the client device; And accessing an input method editor library that is recognized by the input method editor server for the input method editor instance, wherein the input method editor library corresponds to the input method editor A library within one of the texts.
TW097112734A 2007-04-09 2008-04-08 Computer-implemented method and input method editor server TWI464605B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US92271007P 2007-04-09 2007-04-09
CNA2007101018163A CN101286093A (en) 2007-04-09 2007-04-16 Client input method

Publications (2)

Publication Number Publication Date
TW200900966A TW200900966A (en) 2009-01-01
TWI464605B true TWI464605B (en) 2014-12-11

Family

ID=40058320

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097112734A TWI464605B (en) 2007-04-09 2008-04-08 Computer-implemented method and input method editor server

Country Status (6)

Country Link
US (1) US20120060147A1 (en)
JP (1) JP5794779B2 (en)
KR (1) KR20090127936A (en)
CN (2) CN105589571A (en)
TW (1) TWI464605B (en)
WO (1) WO2008124730A2 (en)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1914639A1 (en) * 2006-10-16 2008-04-23 Tietoenator Oyj System and method allowing a user of a messaging client to interact with an information system
US8463597B2 (en) * 2008-05-11 2013-06-11 Research In Motion Limited Mobile electronic device and associated method enabling identification of previously entered data for transliteration of an input
KR101743122B1 (en) * 2009-11-27 2017-06-15 구글 인코포레이티드 Client-server input method editor architecture
WO2011127640A1 (en) * 2010-04-12 2011-10-20 Google Inc. Extension framework for input method editor
CN102207816B (en) * 2010-07-16 2017-04-19 北京搜狗科技发展有限公司 Method for performing adaptive input based on input environment, and input method system
CN102156664A (en) * 2011-03-28 2011-08-17 广东国笔科技股份有限公司 System and method for intelligently and seamlessly switching input method on mobile terminal
CN102520843B (en) * 2011-11-19 2016-06-22 上海量明科技发展有限公司 A kind of image that gathers is as the input method of candidate item and system
US9348479B2 (en) 2011-12-08 2016-05-24 Microsoft Technology Licensing, Llc Sentiment aware user interface customization
US9378290B2 (en) 2011-12-20 2016-06-28 Microsoft Technology Licensing, Llc Scenario-adaptive input method editor
CN110488991A (en) 2012-06-25 2019-11-22 微软技术许可有限责任公司 Input Method Editor application platform
KR101911999B1 (en) 2012-08-30 2018-10-25 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Feature-based candidate selection
CN103927220A (en) * 2013-01-14 2014-07-16 百度国际科技(深圳)有限公司 Adaptive adjustment method and device for input method in client
CN105580004A (en) 2013-08-09 2016-05-11 微软技术许可有限责任公司 Input method editor providing language assistance
KR102162836B1 (en) * 2013-08-30 2020-10-07 삼성전자주식회사 Apparatas and method for supplying content according to field attribute
CN106415531A (en) * 2014-04-28 2017-02-15 谷歌公司 Context specific language model for input method editor
CN104267821A (en) * 2014-09-01 2015-01-07 深圳市金立通信设备有限公司 Terminal
CN104267825A (en) * 2014-09-01 2015-01-07 深圳市金立通信设备有限公司 Character input method
US10067670B2 (en) * 2015-05-19 2018-09-04 Google Llc Multi-switch option scanning
CN105404401A (en) 2015-11-23 2016-03-16 小米科技有限责任公司 Input processing method, apparatus and device
CN105653066B (en) * 2016-01-29 2019-03-15 腾讯科技(深圳)有限公司 A kind of method and apparatus of input method processing
EP3432182B1 (en) * 2017-07-17 2020-04-15 Tata Consultancy Services Limited Systems and methods for secure, accessible and usable captcha
CN111870949B (en) * 2020-07-31 2024-06-04 深圳市腾讯网域计算机网络有限公司 Object processing method and device in game scene and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020152258A1 (en) * 2000-06-28 2002-10-17 Hongyi Zhou Method and system of intelligent information processing in a network
US20040044966A1 (en) * 2002-08-29 2004-03-04 Malone Daniel R. System and method for browser document editing
US6766320B1 (en) * 2000-08-24 2004-07-20 Microsoft Corporation Search engine with natural language-based robust parsing for user query and relevance feedback learning
TW200602976A (en) * 2004-06-18 2006-01-16 Microsoft Corp Handwritten input for asian languages
TW200703063A (en) * 2005-04-25 2007-01-16 Tegic Communications Inc Abbreviated handwriting entry of ideographic language phrase by submitting less-than-all characters and/or less-than-all strokes of any given character(s)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195328A (en) * 1992-12-25 1994-07-15 Matsushita Electric Ind Co Ltd Device and method for correcting input document
JPH10271562A (en) * 1997-03-25 1998-10-09 Taito Corp Mobile communication terminal capable of playing game
JPH11259472A (en) * 1998-03-06 1999-09-24 Omron Corp Character string processor, character string processing method and medium in which character string processing program is stored
US7679534B2 (en) * 1998-12-04 2010-03-16 Tegic Communications, Inc. Contextual prediction of user words and user actions
CN1148675C (en) * 2000-06-20 2004-05-05 国际商业机器公司 Input system and method based on network
JP2002183126A (en) * 2000-12-14 2002-06-28 Mitsubishi Electric Corp Japanese syllabary-to-chinese character conversion system, terminal device, and dictionary server device
JP2003203069A (en) * 2002-01-07 2003-07-18 Sony Corp Portable information communication terminal, character converting method, program, and recording medium recording program
US7174288B2 (en) * 2002-05-08 2007-02-06 Microsoft Corporation Multi-modal entry of ideogrammatic languages
JP2004030399A (en) * 2002-06-27 2004-01-29 Eigyotatsu Kofun Yugenkoshi Input device having database adjusting function, and method
JP4202857B2 (en) * 2003-01-30 2008-12-24 富士通株式会社 Program, character input editing method, apparatus, and recording medium
JP2005135334A (en) * 2003-10-31 2005-05-26 Canon Inc Data input device and data input method
JP2006209558A (en) * 2005-01-28 2006-08-10 Kyocera Corp Character input device and character input method
US20090212563A1 (en) * 2008-02-21 2009-08-27 General Electric Company System and method for improving performance of power constrained wind power plant

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020152258A1 (en) * 2000-06-28 2002-10-17 Hongyi Zhou Method and system of intelligent information processing in a network
US6766320B1 (en) * 2000-08-24 2004-07-20 Microsoft Corporation Search engine with natural language-based robust parsing for user query and relevance feedback learning
US20040044966A1 (en) * 2002-08-29 2004-03-04 Malone Daniel R. System and method for browser document editing
TW200602976A (en) * 2004-06-18 2006-01-16 Microsoft Corp Handwritten input for asian languages
TW200703063A (en) * 2005-04-25 2007-01-16 Tegic Communications Inc Abbreviated handwriting entry of ideographic language phrase by submitting less-than-all characters and/or less-than-all strokes of any given character(s)

Also Published As

Publication number Publication date
US20120060147A1 (en) 2012-03-08
CN105589571A (en) 2016-05-18
JP5794779B2 (en) 2015-10-14
JP2010524135A (en) 2010-07-15
CN101286093A (en) 2008-10-15
TW200900966A (en) 2009-01-01
WO2008124730A2 (en) 2008-10-16
WO2008124730A3 (en) 2008-12-11
KR20090127936A (en) 2009-12-14

Similar Documents

Publication Publication Date Title
TWI464605B (en) Computer-implemented method and input method editor server
TWI437449B (en) Multi-mode input method and input method editor system
US10592604B2 (en) Inverse text normalization for automatic speech recognition
TWI510965B (en) Input method editor integration
US10417266B2 (en) Context-aware ranking of intelligent response suggestions
US8886521B2 (en) System and method of dictation for a speech recognition command system
TWI519968B (en) Input method editor user profiles
US9299342B2 (en) User query history expansion for improving language model adaptation
US8538757B2 (en) System and method of a list commands utility for a speech recognition command system
TWI443551B (en) Method and system for an input method editor and computer program product
US20200013398A1 (en) Using multiple modality input to feedback context for natural language understanding
JP2004310748A (en) Presentation of data based on user input
CN107112009B (en) Method, system and computer-readable storage device for generating a confusion network
KR20210113696A (en) Contextual voice-driven deep bookmarking
JP2021082306A (en) Method, apparatus, device, and computer-readable storage medium for determining target content
US12010076B1 (en) Increasing security and reducing technical confusion through conversational browser
CN111033493A (en) Electronic content insertion system and method
US11900110B2 (en) Increasing user interaction with deep learning agent
US20240037327A1 (en) Natural language query disambiguation
WO2024137128A1 (en) Machine learning structured result generation

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees