Input method kernel generation method and device, equipment, storage medium and program product

By selecting target components and dictionaries from the functional component pool and the dictionary pool, and integrating them to generate the input method kernel, the problem of low generation efficiency is solved, and rapid generation and personalized customization are achieved.

CN117472417BActive Publication Date: 2026-06-12TENCENT TECHNOLOGY (SHENZHEN) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TENCENT TECHNOLOGY (SHENZHEN) CO LTD
Filing Date
2022-07-22
Publication Date
2026-06-12

AI Technical Summary

Technical Problem

In existing technologies, the generation of input method kernels is inefficient and takes a long time, and the maintenance efficiency of input method kernels on different information platforms is also low.

Method used

By selecting target kernel functional components from the functional component pool and choosing target dictionaries from the dictionaries pool based on dictionaries configuration information, the input method kernel is generated through integration, omitting the development process of kernel functional components and dictionaries.

🎯Benefits of technology

It improves the generation efficiency of the input method kernel, reduces the generation time, and meets the personalized needs of different information platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117472417B_ABST
    Figure CN117472417B_ABST
Patent Text Reader

Abstract

The application provides an input method kernel generation method and device, equipment, storage medium and program product; the application embodiment can be applied to the information input scene of cloud technology, artificial intelligence, intelligent transportation, vehicle-mounted, etc., relates to input method technology; the method comprises the following steps: according to the function configuration information of the input method kernel, the target kernel function component is obtained by screening from the function component pool;Wherein, the function component pool is used to provide the kernel function component in the available state;For the target kernel function component, the corresponding vocabulary configuration information is determined;According to the vocabulary configuration information, the target vocabulary corresponding to the target kernel function component is obtained by screening from the vocabulary pool;The vocabulary pool is used to provide the vocabulary in the available state;Based on the target kernel function component and the target vocabulary corresponding to the target kernel function component, the input method kernel is integrated to obtain the input method kernel. Through the application, the generation efficiency of the input method kernel can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to input method technology, and more particularly to an input method kernel generation method, apparatus, device, storage medium, and program product. Background Technology

[0002] The input methods required on different information platforms have different functionalities, resulting in different word libraries. This leads to variations in the code for word library loading, unloading, and retrieval, ultimately necessitating different input method kernels for different information platforms. The demands on input methods on information platforms are constantly changing, requiring frequent generation of new input method kernels to meet these needs. However, related technologies take a considerable amount of time to develop a new input method kernel, resulting in low generation efficiency. Summary of the Invention

[0003] This application provides an input method kernel generation method, apparatus, device, computer-readable storage medium, and computer program product, which can improve the generation efficiency of input method kernels.

[0004] The technical solution of this application embodiment is implemented as follows:

[0005] This application provides an input method kernel generation method, including:

[0006] Based on the functional configuration information of the input method kernel, target kernel functional components are selected from the functional component pool; wherein, the functional component pool is used to provide kernel functional components that are in an available state;

[0007] For the target kernel functional component, the corresponding dictionary configuration information is determined; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends;

[0008] Based on the dictionary configuration information, the target dictionary corresponding to the target kernel functional component is obtained by filtering from the dictionary pool; the dictionary pool is used to provide dictionaries that are in an available state.

[0009] The input method kernel is obtained by integrating the target kernel functional components and the target dictionary corresponding to the target kernel functional components.

[0010] This application provides an input method kernel generation device, including:

[0011] The component filtering module is used to filter target kernel functional components from the functional component pool based on the functional configuration information of the input method kernel; wherein, the functional component pool is used to provide kernel functional components that are in an available state;

[0012] The information determination module is used to determine the corresponding dictionary configuration information for the target kernel functional component; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends;

[0013] The dictionary filtering module is used to filter the target dictionary corresponding to the target kernel functional component from the dictionary pool according to the dictionary configuration information; the dictionary pool is used to provide dictionaries that are in an available state.

[0014] The kernel generation module is used to integrate the input method kernel based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components.

[0015] In some embodiments of this application, the input method kernel generation device further includes: a configuration generation module; the configuration generation module is used to receive kernel requirement information corresponding to the input method kernel; and determine the functional configuration information of the input method kernel based on the kernel requirement information.

[0016] In some embodiments of this application, the kernel requirement information specifies the target kernel level of the input method kernel; the configuration generation module is further configured to determine the candidate configuration information corresponding to the target kernel level from the candidate configuration information corresponding to multiple kernel levels as the function configuration information of the input method kernel; the target kernel level is any one of the multiple kernel levels.

[0017] In some embodiments of this application, the kernel requirement information specifies multiple application attribute parameters of the input method kernel; the configuration generation module is further configured to determine candidate function information for the input method kernel based on each of the application attribute parameters; wherein, the application attribute parameters are at least used to specify the type of information platform applied by the input method kernel, the type of operating system applied, and the type of keyboard applied; the function configuration information is obtained by taking the intersection of the candidate function information of each of the multiple application attribute parameters.

[0018] In some embodiments of this application, the configuration generation module is further configured to: take the intersection of the candidate function information for each of the multiple application attribute parameters to obtain intersection function information; extract the target kernel function from the intersection function information using the weight information of the kernel function contained therein; the weight information characterizes the degree of negative impact of the kernel function on the running attribute parameters of the input method kernel, the running attribute parameters including: installation package size, memory usage, and running performance; and integrate the function configuration information using the target kernel function.

[0019] In some embodiments of this application, the information determination module is further configured to query at least one matching term information of the target kernel functional component from a function term mapping table based on the target kernel function corresponding to the target kernel functional component; wherein, the function term mapping table records term information required by different kernel functions through mapping relationships; and using at least one matching term information, the term configuration information corresponding to the target kernel functional component is determined.

[0020] In some embodiments of this application, the input method kernel generation device further includes: an input processing module; the input processing module is configured to load the target word library for the target kernel functional component in the input method kernel; obtain an input string in response to an input operation; retrieve candidate words from the target word library loaded in the target kernel functional component for the input string through the target kernel functional component, and display the candidate words.

[0021] In some embodiments of this application, the target kernel functional component in the input method kernel includes: multiple sub-target functional components; the input processing module is further configured to determine the sub-target functional component to be executed from the multiple sub-target functional components for the input string; and to use the retrieval code corresponding to the sub-target functional component to be executed to search the target word library loaded in the target kernel functional component to obtain the candidate words.

[0022] In some embodiments of this application, the input string includes at least two substrings, and the candidate words include candidate characters corresponding to each substring; the input processing module is further configured to, in response to a selection operation of a target character in the candidate characters corresponding to each substring, integrate the target characters corresponding to each of the at least two substrings into an updated word; and write the updated word into the target word library.

[0023] In some embodiments of this application, the input processing module is further configured to unload the target dictionary from the target kernel function component in the input method kernel in response to a shutdown operation for the target kernel function component corresponding to the target kernel function component.

[0024] In some embodiments of this application, the input method kernel generation device further includes: a kernel update module; the kernel update module is used to update the input method kernel to obtain an updated input method kernel; and to distribute the updated input method kernel to multiple information platforms.

[0025] This application provides an electronic device, including:

[0026] Memory, used to store executable instructions;

[0027] The processor, when executing executable instructions stored in the memory, implements the input method kernel generation method provided in the embodiments of this application.

[0028] This application provides a computer-readable storage medium storing executable instructions for inducing a processor to execute and implement the input method kernel generation method provided in this application.

[0029] This application provides a computer program product, including a computer program or instructions, which, when executed by a processor, implement the input method kernel generation method provided in this application.

[0030] The embodiments of this application have the following beneficial effects: The electronic device can, based on the functional configuration information of the input method kernel, select target kernel functional components from the available (i.e., directly usable) kernel functional components provided by the functional component pool to directly execute the kernel functions required by the input method kernel. Then, based on the determined dictionary configuration information, it selects the target dictionary for the target kernel functional component from the available (i.e., directly usable) dictionaries. Finally, by integrating the target kernel functional component and the target dictionary, a completely new input method kernel can be obtained. Therefore, in the embodiments of this application, the development process of the kernel functional components and the dictionary can be omitted, thus requiring less time to generate an input method kernel and improving the generation efficiency of the input method kernel. Attached Figure Description

[0031] Figure 1 This is a schematic diagram of the architecture of the input method kernel generation system provided in the embodiments of this application;

[0032] Figure 2 This is a schematic diagram of the server structure provided in an embodiment of this application;

[0033] Figure 3 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 1 ;

[0034] Figure 4 This is a schematic diagram of the architecture of an input method kernel provided in an embodiment of this application;

[0035] Figure 5 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 2 ;

[0036] Figure 6 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 3 ;

[0037] Figure 7 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 4 ;

[0038] Figure 8 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 5 ;

[0039] Figure 9 This is a schematic diagram of another input method kernel architecture provided in an embodiment of this application;

[0040] Figure 10 This is a schematic diagram of the activation process of the input method kernel provided in the embodiments of this application;

[0041] Figure 11 This is a flowchart illustrating the processing of the input method kernel during use, as provided in this application embodiment. Detailed Implementation

[0042] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0043] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0044] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0045] Before providing a further detailed description of the embodiments of this application, the nouns and terms involved in the embodiments of this application will be explained, and the nouns and terms involved in the embodiments of this application shall be interpreted as follows.

[0046] 1) Input methods refer to application software used on electronic devices such as computers and mobile phones, which provides users with the ability to input information. Input methods can be developed based on Pinyin or stroke-based methods.

[0047] 2) The input method kernel refers to the core part of the input method that converts the input string of the user into text. For example, when the user inputs the string "nihao", the input method kernel needs to convert this string into words such as "你好" and "你号".

[0048] 3) The kernel level characterizes the number of functions that the input method kernel can provide. The higher the kernel level, the more functions the input method kernel can provide. For example, the kernel level can be divided into the basic level and the flagship level. When the user inputs at the basic level, it can only provide functions such as pronunciation-word conversion (responsible for determining words based on the pronunciation of the string) and word combination processing (automatically splitting the string and forming reasonable words). When the user inputs at the flagship level, it provides functions such as error correction processing (finding the correct words when the user inputs a string with an incorrect pronunciation) and emoji generation processing (automatically generating emojis based on the input string).

[0049] 4) Kernel parameters refer to the parameters that describe the attributes of the input method kernel and can be divided into application attribute parameters and running attribute parameters. Among them, the application attribute parameters can include, for example, parameters such as the type of information platform to which the input method kernel applies and the keyboard type of the input method kernel. The running attribute parameters include, for example, parameters such as the size of the installation package of the input method kernel and the memory size occupied by the input method kernel during operation.

[0050] 5) The information platform is the platform that uses the input method kernel. The functions required by the input method kernel on different information platforms may not be the same. For example, terminals such as mobile phones input through a virtual keyboard and require the input method kernel to support virtual keyboard input, while terminals such as laptops input through a physical keyboard and the virtual input method kernel supports physical keyboard input. Another example is that social software requires the input method kernel to support the input of emojis, and writing software requires the input method kernel to support error correction processing, etc.

[0051] 6) The word library is the word database of the input method and stores different words. It can be understood that in the embodiments of this application, the functions of the word library and the input method kernel correspond to each other. For example, in the word library corresponding to the emoji input function, the stored are the emoji symbols corresponding to different emotion words.

[0052] The input method is an important way for the user to input information into an electronic device. For example, the user can input text into a chat dialog box or a content document in the electronic device through the input method. The input method kernel is the part that completes information input and is the most core part of the input method.

[0053] The input methods required on different information platforms have different functionalities, resulting in different word libraries. This leads to variations in the code for word library loading, unloading, and retrieval, ultimately necessitating different input method kernels for different information platforms. However, the demands on input methods on information platforms are constantly evolving, necessitating the frequent generation of new input method kernels to meet these needs.

[0054] In related technologies, generating a new input method kernel requires either redeveloping the kernel from scratch or modifying an existing version. However, both methods take a considerable amount of time to produce a new input method kernel, resulting in low generation efficiency.

[0055] In addition, when the input method kernels on different information platforms are different, the input method kernels on different information platforms need to be maintained separately, which makes the maintenance efficiency of the input method kernel low.

[0056] This application provides an input method kernel generation method, apparatus, device, computer-readable storage medium, and computer program product, which can improve the generation efficiency of input method kernels. The following describes exemplary applications of the electronic devices provided in this application for input method kernel generation. These electronic devices can be implemented as various types of terminals such as laptops, tablets, desktop computers, set-top boxes, and mobile devices (e.g., mobile phones, portable music players, personal digital assistants, dedicated messaging devices, portable gaming devices), or as servers. The following describes exemplary applications when the electronic device is implemented as a server.

[0057] See Figure 1 , Figure 1 This is a schematic diagram of the architecture of the input method kernel generation system provided in this application embodiment. To support an input method kernel generation application, in the input method kernel generation system 100, terminals (terminals 400-1 and 400-2 are shown as examples) connect to the server 200 via a network 300. The network 300 can be a wide area network (WAN), a local area network (LAN), or a combination of both. The input method kernel generation system 100 also includes a database 500 to provide data support to the server 200. The database 500 can be configured within the server 200 or can be independent of the server 200. Figure 1 This illustrates the scenario where database 500 is independent of server 200.

[0058] Terminal 400-1 is used to generate function configuration information in response to configuration operations on graphical interface 410-1, and send the function configuration information to server 200 via network 300.

[0059] Server 200 is used to filter target kernel functional components from a functional component pool based on the functional configuration information of the input method kernel; wherein the functional component pool is used to provide kernel functional components in an available state; for the target kernel functional component, the corresponding dictionary configuration information is determined; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends; based on the dictionary configuration information, the target dictionary corresponding to the target kernel functional component is filtered from the dictionary pool, wherein the dictionary pool is used to provide dictionaries in an available state; based on the target kernel functional component and the target dictionary corresponding to the target kernel functional component, the input method kernel is integrated to complete the generation of the input method kernel.

[0060] Terminal 400-2 is used to download the input method kernel installation package from server 200, install the input method kernel, and respond to input operations on the graphical interface 410-2. It uses the input method kernel to process the input string and realize information input.

[0061] In some embodiments, server 200 may be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. Terminals 400-1 and 400-2 may be smartphones, tablets, laptops, desktop computers, smart speakers, smartwatches, smart home appliances, vehicle terminals, etc., but are not limited to these. Terminals and servers can be directly or indirectly connected via wired or wireless communication, which is not limited in this embodiment.

[0062] See Figure 2 , Figure 2 This is a schematic diagram of the structure of a server (an embodiment of an electronic device) provided in an embodiment of this application. Figure 2 The server 200 shown includes at least one processor 210, memory 250, at least one network interface 220, and a user interface 230. The various components in server 200 are coupled together via a bus system 240. It is understood that the bus system 240 is used to implement communication between these components. In addition to a data bus, the bus system 240 also includes a power bus, a control bus, and a status signal bus. However, for clarity, ... Figure 2 The general labeled all buses as Bus System 240.

[0063] Processor 210 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0064] User interface 230 includes one or more output devices 231 that enable the presentation of media content, including one or more speakers and / or one or more visual displays. User interface 230 also includes one or more input devices 232, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0065] The memory 250 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state storage, hard disk drives, optical disk drives, etc. The memory 250 may optionally include one or more storage devices physically located away from the processor 210.

[0066] The memory 250 may include volatile memory or non-volatile memory, or both. The non-volatile memory may be read-only memory (ROM), and the volatile memory may be random access memory (RAM). The memory 250 described in this application embodiment is intended to include any suitable type of memory.

[0067] In some embodiments, memory 250 is capable of storing data to support various operations, examples of which include programs, modules, and data structures or subsets or supersets thereof, as illustrated below.

[0068] Operating system 251 includes system programs for handling various basic system services and performing hardware-related tasks, such as the framework layer, core library layer, driver layer, etc., for implementing various basic business functions and handling hardware-based tasks;

[0069] The network communication module 252 is used to reach other electronic devices via one or more (wired or wireless) network interfaces 220, exemplary network interfaces 220 including: Bluetooth, Wi-Fi, and Universal Serial Bus (USB), etc.

[0070] Presentation module 253 is configured to enable the presentation of information (e.g., a user interface for operating peripheral devices and displaying content and information) via one or more output devices 231 (e.g., a display screen, a speaker, etc.) associated with user interface 230;

[0071] The input processing module 254 is used to detect and translate one or more user inputs or interactions from one or more input devices 232.

[0072] In some embodiments, the input method kernel generation device provided in this application can be implemented in software. Figure 2 An input method kernel generation device 255 stored in memory 250 is shown. This device can be software in the form of programs and plug-ins, and includes the following software modules: a component filtering module 2551, an information determination module 2552, a dictionary filtering module 2553, a kernel generation module 2554, a configuration generation module 2555, an input processing module 2556, and a kernel update module 2557. These modules are logically connected and can therefore be arbitrarily combined or further divided according to their implemented functions. The functions of each module will be described below.

[0073] In other embodiments, the input method kernel generation device provided in this application can be implemented in hardware. As an example, the input method kernel generation device provided in this application can be a processor in the form of a hardware decoding processor, which is programmed to execute the input method kernel generation method provided in this application. For example, the processor in the form of a hardware decoding processor can be one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), or other electronic components.

[0074] In some embodiments, the terminal or server (both implementations of electronic devices) can implement the input method kernel generation method provided in this application by running a computer program. For example, the computer program can be a native program or software module in an operating system; it can be a native application (APP), i.e., a program that needs to be installed in the operating system to run, such as an input method kernel customized APP; it can also be a mini-program, i.e., a program that only needs to be downloaded to a browser environment to run; or it can be a mini-program that can be embedded in any APP. In short, the above-mentioned computer program can be any form of application, module, or plugin.

[0075] This application's embodiments can be applied to information input scenarios such as cloud technology, artificial intelligence, smart transportation, and in-vehicle systems. Below, the input method kernel generation method provided in this application's embodiments will be described in conjunction with exemplary applications and implementations of the electronic devices provided in this application's embodiments.

[0076] See Figure 3 , Figure 3 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 1 , will combine Figure 3 The steps shown are explained.

[0077] S101. Based on the function configuration information of the input method kernel, select the target kernel function component from the function component pool.

[0078] This application embodiment is implemented in the scenario of generating an input method kernel, such as generating an input method kernel for Pinyin input or a stroke input method, so as to provide information input functionality to the user through the input method kernel. First, the electronic device obtains the function configuration information indicating the input method kernel, and filters the kernel function components from the function component pool based on the function configuration information, and determines the filtered kernel function components as the target kernel function components.

[0079] It should be noted that the functional component pool is used to provide kernel functional components that are in an available state. Here, an available kernel functional component refers to a component that has been developed and is capable of implementing specific kernel functions. In other words, the functional component pool contains kernel functional components that can be used directly. Thus, in this embodiment, the electronic device only needs to obtain the required kernel functional components from the functional component pool and perform dictionary configuration, integration, and other processing to obtain the input method kernel, without needing to develop and debug the kernel functional components.

[0080] In some embodiments, the electronic device parses the function configuration information to obtain the target kernel function required by the input method kernel, and then selects the target kernel function component from the function component pool based on the obtained target kernel function. For example, when the target kernel function recorded in the function configuration information is an error correction function, the electronic device will select the error correction function component from the function component pool as the target kernel function component.

[0081] In other embodiments, the electronic device analyzes the recorded function configurations, determines the target kernel function, and then identifies the kernel functions associated with the target kernel function recorded in the function configuration information. Simultaneously, it acquires the kernel function components corresponding to both the target kernel function and the associated kernel functions, using these as the target kernel function components. For example, when the function configuration information records an association function, the electronic device will jointly identify the kernel function component corresponding to the association function, as well as the kernel function components corresponding to the frequency modulation function and the sorting function associated with the association function, as the target kernel function components.

[0082] It should be noted that the function configuration information can be manually configured or automatically generated by the electronic device based on the received requirement information. This application embodiment does not limit this.

[0083] S102. For the target kernel functional components, determine the corresponding dictionary configuration information.

[0084] After identifying the target kernel functional components, the electronic device needs to configure the dictionary information that the target kernel functional components depend on, and integrate this dictionary information to obtain dictionary configuration information. In other words, the dictionary configuration information indicates the target dictionary that the target kernel functional components depend on.

[0085] In some embodiments, the electronic device can read information about the dictionary that is mapped to the target kernel function from the function dictionary mapping table, such as name and ID, and determine the dictionary configuration information corresponding to the target kernel function component.

[0086] In other embodiments, the electronic device can also use artificial intelligence technology to score the lexicon based on information such as the number of times each lexicon is called and the time, and then obtain information on the lexicon with a score higher than the score threshold, and determine this information as the lexicon configuration information of the target kernel functional component.

[0087] S103. Based on the dictionary configuration information, select the target dictionary corresponding to the target kernel functional component from the dictionary pool.

[0088] The electronic device reads the contents of the dictionary configuration information to obtain the dictionary information that needs to be configured for the target kernel functional component. Based on this information, it filters from the dictionary pool and determines the dictionary obtained from the dictionary pool as the target dictionary corresponding to the target kernel functional component.

[0089] It should be noted that the dictionary pool provides dictionaries that are already in a usable state, meaning dictionaries that have been created and can be used directly. In this way, electronic devices can directly filter for the target dictionary without having to recreate the corresponding dictionary for the target functional component, saving the dictionary creation time during the input method kernel generation process.

[0090] S104. Based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components, the input method kernel is integrated to obtain the input method kernel.

[0091] The target kernel functional component may include one or more different kernel functional components. When the target kernel functional component includes only one kernel functional component, the electronic device can configure the target dictionary to that kernel functional component, package and integrate the kernel functional component configured with the target dictionary, and use the integrated result as the input method kernel.

[0092] When the target kernel functional components include multiple kernel functional components, the electronic device can first integrate the multiple kernel functional components according to the functional architecture of the input method to obtain the kernel architecture, and then integrate the target word library corresponding to each of the multiple kernel functional components into a large word library and configure it to the kernel architecture to obtain the input method kernel; the electronic device can also first configure each target word library to the corresponding kernel functional component, and then integrate the multiple kernel functional components configured with the target word library according to the functional architecture to obtain the input method kernel.

[0093] It is understood that the functional architecture describes the relationships between different target kernel functions, such as whether they are inclusive or parallel, and thus different input method kernels can be generated based on different functional architectures. The functional architecture can be set according to actual needs, and this application does not limit it.

[0094] For example, Figure 4This is a schematic diagram of the architecture of an input method kernel provided in an embodiment of this application. The input method kernel 4-1 includes a conversion function component 4-11 responsible for generating related words, and a word-filling function component 4-12 responsible for inserting words into a list. The conversion function component 4-11 includes four functional components: a basic conversion component 4-111 (containing a syllable network component 4-1111 and a retrieval component 4-1112; the syllable network component 4-1111 is used to segment the input string and generate syllable information, and the retrieval component 4-1112 is used to traverse the syllable information and retrieve corresponding words from a dictionary, which can be a system dictionary, a professional domain dictionary, a geographic location dictionary, a personal name dictionary, etc.), an intelligent word grouping component 4-112 (used to concatenate two or more words to obtain longer words or sentences; therefore, it is necessary to clarify the relationship between the two or more words, and thus it will also retrieve multiple dictionaries, such as a binary dictionary, a ternary dictionary, etc.), and an intelligent error correction component 4-113. (Used to correct incorrect strings entered by the user, obtain the correct string, and provide the correct words), auxiliary function component 4-114 (e.g., custom phrase function component, mispronunciation prompt function component, emoticon function component, etc.); word-filling function component 4-12 includes 3 function components, namely filtering component 4-121 (used to filter out words that do not meet the requirements, such as profanity filtering, word filtering prohibited by the user, etc.), frequency tuning component 4-122 (rewarding or penalizing words to change their scores, which can include single-context frequency tuning, multi-context frequency tuning, time frequency tuning, quantifier frequency tuning, etc.), and sorting component 4-123 (used to sort words according to their scores and display the sorted words to the user). The vocabulary queried by the above function components can be a public vocabulary configured for the entire functional architecture, such as vocabulary 4-13, vocabulary 4-14, and vocabulary 4-15, or a vocabulary configured separately for this function component.

[0095] Understandably, compared to related technologies, there is a problem that it takes a long time to generate a new input method kernel, resulting in low generation efficiency. In this embodiment, the electronic device can, based on the functional configuration information of the input method kernel, select target kernel functional components that can directly execute the kernel functions required by the input method kernel from the kernel functional components that are available in the functional component pool (i.e., directly usable). Then, based on the determined dictionary configuration information, it selects the target dictionary of the target kernel functional component from the dictionary that is available in the dictionary pool (i.e., directly usable). Finally, the target kernel functional component and the target dictionary are integrated to obtain a brand-new input method kernel. Therefore, in this embodiment, the development process of the kernel functional components and the dictionary can be omitted, thus requiring less time to generate an input method kernel and improving the generation efficiency of the input method kernel.

[0096] based on Figure 3 See Figure 5 , Figure 5 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 2 In some embodiments of this application, before selecting the target kernel functional component from the functional component pool based on the input method kernel's functional configuration information, i.e., before S101, the method may further include: S105-S106, as follows:

[0097] S105. Receive kernel requirement information corresponding to the input method kernel.

[0098] S106. Based on kernel requirement information, determine the functional configuration information of the input method kernel.

[0099] It is understood that electronic devices can receive kernel requirement information for the input method kernel from the cloud or other electronic devices, and parse this information to clarify the personalized requirements for the input method kernel, such as the required functions, the specified installation package size, etc. Then, the electronic device can configure appropriate functions for the input method kernel based on the kernel requirement information, thereby obtaining function configuration information, which is then used to generate the corresponding input method kernel. In other words, in this embodiment, the electronic device can achieve personalized customization of the input method kernel.

[0100] It should be noted that the kernel requirement information can be generated by the users of the information platform, where users refer to those who have registered their identities on the information platform and use the functions provided by the platform. The kernel requirement information can also be generated by the management objects of the information platform, where management objects refer to those who operate the information platform and manage its functions. In other words, in this embodiment, the electronic device can provide input method kernel customization from two dimensions: ordinary users and platform administrators.

[0101] The kernel requirements information allows you to specify the target kernel level (which affects the number of functions the input method kernel can provide), kernel parameters such as the installation package size and applicable keyboard types, or directly specify the kernel functions required by the input method kernel, i.e., specify the target kernel functions. The following sections will explain each of these scenarios.

[0102] In some embodiments of this application, the kernel requirement information specifies the target kernel level of the input method kernel. At this time, the functional configuration information of the input method kernel is determined based on the kernel requirement information. That is, the specific implementation process of S106 can be achieved by the following steps: among the candidate configuration information corresponding to multiple kernel levels, the candidate configuration information corresponding to the target kernel level is determined as the functional configuration information of the input method kernel.

[0103] The candidate configuration information corresponding to multiple kernel levels can be determined based on the kernel functions provided by each kernel level. For example, multiple kernel levels may include an advanced kernel, a basic kernel, and a simplified kernel. Different kernel levels provide different functions, and therefore the corresponding candidate configuration information will also differ. For instance, an advanced kernel includes all the kernel functions of an input method, so the candidate configuration information for an advanced kernel will record information about all kernel functions; a basic kernel includes kernel functions such as phonetic-word conversion, intelligent word grouping, intelligent error correction, intelligent frequency tuning, and cloud input, but does not include auxiliary typing functions, custom phrases, or fuzzy pronunciation, so the candidate configuration information for a basic kernel will include information about phonetic-word conversion, intelligent error correction, intelligent frequency tuning, and cloud input; a simplified kernel only includes phonetic-word conversion and cloud input, so the candidate configuration information will only include information corresponding to these two kernel functions.

[0104] The target kernel level can be any one of several kernel levels. When the target kernel level is a basic kernel, the electronic device will determine the candidate configuration information corresponding to the basic kernel as the feature configuration information; when the target kernel is an advanced kernel, the electronic device will determine the candidate configuration information corresponding to the basic kernel as the feature configuration information.

[0105] based on Figure 5 See Figure 6 , Figure 6 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 3 In some embodiments of this application, the kernel requirement information specifies multiple application type parameters of the input method kernel. In this case, based on the kernel requirement information, determining the functional configuration information of the input method kernel, i.e., the specific implementation process of S106, may include: S1061-S1062, as follows:

[0106] S1061. Based on the attribute parameters of each application, determine the candidate function information for the kernel of the input method.

[0107] Among them, the application attribute parameters are used to specify the attributes of the input method kernel when it is applied. More specifically, the application attribute parameters are used to specify at least the type of information platform applied by the input method kernel, the type of operating system applied, and the type of keyboard applied.

[0108] For each application attribute parameter, electronic devices pre-configure candidate function information. The input method kernel, constructed using the kernel function specified by this candidate function information and the corresponding dictionary of that kernel function component, satisfies the requirements of each application attribute parameter. For example, when the application attribute parameter indicates that the keyboard type is a virtual keyboard, the input method kernel generated by the electronic device based on the kernel function component that supports virtual keyboards will necessarily support virtual keyboards.

[0109] S1062. Obtain the function configuration information by taking the intersection of the candidate function information of multiple application attribute parameters.

[0110] An electronic device can take the intersection of candidate function information for multiple application attribute parameters and then determine function configuration information based on the intersection result. In some embodiments, the electronic device can directly determine the intersection result as the function configuration information. In other embodiments, the electronic device can further filter suitable target kernel functions from the intersection result and then use the information of the target kernel functions to form the function configuration information.

[0111] based on Figure 6 See Figure 7 , Figure 7 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 4 In some embodiments of this application, the function configuration information is obtained by taking the intersection of the candidate function information of multiple application attribute parameters, i.e., the specific implementation process of S1062, which may include: S1062a-S1062c, as follows:

[0112] S1062a. Take the intersection of the candidate function information for each of the multiple application attribute parameters to obtain the intersection function information.

[0113] Multiple application attribute parameters correspond to multiple candidate function information. Electronic devices take the intersection of multiple candidate function information, and the resulting intersection result is the intersection function information.

[0114] S1062b: Extract the target kernel function from the intersection function information by utilizing the weight information of the kernel function contained in the intersection function information.

[0115] The intersection function information contains kernel functions that appear in multiple candidate function information, and each kernel function has corresponding weight information. It should be noted that the weight information represents the degree of negative impact of the kernel function on the running attribute parameters of the input method kernel. The running attribute parameters include: installation package size, memory usage, and running performance.

[0116] In other words, the electronic device obtains the degree of negative impact of each kernel function in the intersection function information on the installation package size, memory usage, and running performance of the input method kernel. Based on this degree of negative impact, it filters out the target kernel functions from the kernel functions appearing in the intersection function information. For example, the electronic device will eliminate kernel functions that have a significant negative impact on memory usage (even if memory usage exceeds a threshold), a significant negative impact on running performance (even if running performance is below a threshold), and a significant negative impact on installation package size (even if installation package size exceeds a threshold), thus obtaining the target kernel functions.

[0117] It is understandable that when electronic devices complete the development of kernel function components corresponding to kernel functions, they will score them based on factors such as installation package size, memory usage, and running performance. The resulting scores are the weight information of the kernel functions.

[0118] S1062c: Utilize the target kernel's functions to integrate and obtain functional configuration information.

[0119] After determining the target kernel function, the electronic device will use the target kernel function to generate a function configuration table, which is the function configuration information.

[0120] In some embodiments of this application, the kernel requirement information directly specifies the target kernel functions required by the input method kernel, and each target kernel function has its corresponding configuration information. At this time, the electronic device can directly organize the configuration information corresponding to these target kernel functions into a function configuration table, and the resulting function configuration table is the function configuration information.

[0121] It is understood that, in the embodiments of this application, the electronic device generates personalized functional configuration information based on kernel requirement information, in dimensions such as kernel level, kernel parameters and functions, so as to facilitate the subsequent input method kernel based on personalized functional configuration information. This not only improves the generation efficiency of the input method kernel, but also enables the input method kernel to meet different needs.

[0122] In some embodiments of this application, the specific implementation process of determining the corresponding dictionary configuration information for a target kernel functional component, i.e., S102, can be achieved through the following steps: based on the target kernel function corresponding to the target kernel functional component, query at least one matching dictionary information for the target kernel functional component from the functional dictionary mapping table; and use the at least one matching dictionary information to determine the dictionary configuration information corresponding to the target kernel functional component.

[0123] It should be noted that the function terminology mapping table records the terminology information required by different kernel functions through mapping relationships. The target kernel function component is found based on the target kernel function and corresponds to it. In other words, the electronic device uses the target kernel function as an index condition to query the function terminology mapping table, extracts the terminology information that has a mapping relationship with the target kernel function, uses it as matching terminology information, and then integrates all the matching terminology information into a configuration table. The resulting configuration table is the terminology configuration information.

[0124] based on Figure 3 See Figure 8 , Figure 8 This is a flowchart illustrating the input method kernel generation method provided in this application embodiment. Figure 5 In some embodiments of this application, after integrating the input method kernel based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components, i.e. after S104, the method may further include: S107-S109, as follows:

[0125] S107. Load the target dictionary for the target kernel functional component in the input method kernel.

[0126] It should be noted that after loading the target dictionary into the target kernel functional component in the input method kernel, the input method kernel will become active, thus enabling it to process the input strings of the user.

[0127] The target dictionary includes one or more dictionaries. In some embodiments, the electronic device can load all dictionaries into the target kernel functional component through centralized loading. In other embodiments, the electronic device can specify the dictionaries to be loaded and load only the specified dictionaries into the target kernel functional component.

[0128] S108. In response to the input operation, obtain the input string.

[0129] S109. Using the target kernel functional component in the input method kernel, retrieve candidate words from the target word library loaded in the target kernel functional component for the input string, and display the candidate words.

[0130] The electronic device passes the input string to the input method kernel, and the target kernel function component in the input method kernel performs corresponding processing on the input string. For example, the input string is segmented to obtain syllable information, and words are searched from the loaded target dictionary using the syllable information. The matched words are used as candidate words, or the matched words are processed by frequency tuning, error correction, etc., to obtain candidate words. Finally, the electronic device displays the candidate words to the user.

[0131] In some embodiments of this application, the target kernel functional component in the input method kernel includes multiple sub-target functional components. In this case, candidate words are retrieved from the target word library loaded in the target kernel functional component for the input string through the target kernel functional component in the input method kernel. The specific implementation process of S109 can be achieved through the following steps: determine the sub-target functional component to be executed from the multiple sub-target functional components for the input string; use the retrieval code corresponding to the sub-target functional component to be executed to retrieve the target word library loaded in the target kernel functional component to obtain candidate words.

[0132] It should be noted that, in this embodiment, the target kernel function can be subdivided into multiple sub-target functions. For example, the intelligent word grouping function (target kernel function) may include place name word grouping and personal name word grouping (both sub-target functions). Each sub-target function has a corresponding sub-target function component, such as a place name word grouping component, a personal name word grouping component, etc. Furthermore, different sub-target function components will search the target word library using different branch codes (different branch codes have different search methods and search conditions). Thus, when the electronic device processes the input string using the target kernel function component in the input method kernel, it first determines the sub-target function component to be executed that needs to process the input string from the multiple sub-target function components contained in the target kernel function component, and determines the branch code corresponding to the sub-target function component to be executed as the retrieval code to search the target word library and obtain candidate words.

[0133] In some embodiments, before the electronic device processes the input string through the target kernel function component in the input method kernel, it needs to determine whether the target kernel function component is available, that is, whether the target kernel function is enabled (the target kernel function component is available when the target kernel function is enabled, and unavailable otherwise). Only when it is available will the sub-target function component to be executed be determined from the multiple sub-target function components of the target kernel function component.

[0134] In some embodiments of this application, the input string includes at least two substrings, and the candidate words include candidate characters corresponding to each substring, wherein each substring can be regarded as a syllable information, and the electronic device can determine one or more available character information, i.e., candidate characters, through the input method kernel. In this case, after displaying the candidate words, i.e., S109, the method may further include the following processing: in response to the selection operation of the target character in the candidate characters corresponding to each substring, the target characters corresponding to each of the at least two substrings are integrated into an updated word; and the updated word is written to the target dictionary.

[0135] The number of candidate words is finite. When the electronic device detects that the user is switching between candidate words, it will determine that the candidate word is not the expected result. Therefore, it will continue to segment the input string, for example, by syllables, obtaining at least two substrings. It will then retrieve the character information corresponding to each substring from the target dictionary to obtain candidate characters and display them. When the electronic device detects that the user has selected a target character among the candidate characters, it will concatenate the target characters corresponding to each substring to obtain a new word; this new word is the updated word. Finally, the electronic device will write the updated word into the target dictionary to update it.

[0136] Understandably, the target lexicon may include one or more lexicons. The electronic device may save the updated lexicon to each lexicon, or it may save it only to a specified lexicon. For example, when updating a word as a person's name, the electronic device may save the updated word only to the person's name lexicon.

[0137] In this embodiment of the application, when the candidate words are not the expected result of the user, the electronic device will respond to the user's operation, regenerate and update the words, and update the target word library with the updated words. In this way, the target word library can gradually conform to the user's usage habits.

[0138] In some embodiments of this application, after loading the target dictionary for the target kernel functional component in the input method kernel, i.e. after S107, the method may further include the following processing: in response to the shutdown operation of the target kernel function corresponding to the target kernel functional component, unloading the target dictionary from the target kernel functional component in the input method kernel.

[0139] It is understandable that when the target kernel function corresponding to the target kernel function component is closed by the user, the target dictionary will no longer be used. Therefore, in order to save memory space, electronic devices can choose to unload the target dictionary from the target kernel function component.

[0140] For example, when an object disables the cloud input function through a close operation, the cloud input dictionary loaded in the cloud input function component will no longer be used, and the electronic device will uninstall it.

[0141] In some embodiments of this application, the input method kernel is applied to multiple information platforms. In this case, after the input method kernel is obtained by integrating the target kernel functional components and the target dictionary corresponding to the target kernel functional components, that is, after S104, the method further includes the following processing: updating the input method kernel to obtain the updated input method kernel; and distributing the updated input method kernel to multiple information platforms.

[0142] In other words, in this embodiment, the input method kernels used by multiple information platforms are the same. After the electronic device completes the generation of the input method kernel, it can also maintain and update the input method kernel, and then redistribute the updated input method kernel to each information platform. In this way, only one maintenance update is needed to update and upgrade the input method kernels of different information platforms, thereby improving the maintenance efficiency of the input method kernel.

[0143] The following will describe an exemplary application of the embodiments of this application in a real-world application scenario.

[0144] The embodiments of this application are implemented in the scenario of custom-generated input method kernels, thereby enabling the rapid acquisition of input method kernels that meet personalized needs.

[0145] In this embodiment, the server (electronic device) provides three different customization methods: kernel-level customization, kernel parameter customization, and kernel function customization. Kernel-level customization (i.e., the kernel requirement information specifies the target kernel level for the input method kernel) refers to dividing the input method kernel into three levels: an advanced kernel containing all functions and a 100% dictionary size; a basic kernel containing only core typing functions (e.g., phonetic word conversion, intelligent word grouping, intelligent error correction, intelligent frequency adjustment, cloud input) but excluding auxiliary typing functions (e.g., custom phrases, fuzzy pronunciation) and a dictionary size reduced to 80%; and a minimalist kernel retaining only phonetic word conversion and cloud input functions and a dictionary size reduced to 60%. In kernel parameter customization, the kernel parameters involved in the customization mainly include platform type, system type, and keyboard type (these three parameters are called application attribute parameters), as well as installation package size, memory usage, and running performance (these three parameters are called running attribute parameters). Kernel function customization directly specifies the functions required by the input method kernel (target kernel functions). Core functions may include phonetic word conversion, intelligent word grouping, intelligent error correction, intelligent frequency tuning, intelligent association, cloud input, input habit learning, etc. Core functions may also include detailed configuration functions (sub-target functions). For example, phonetic word conversion may include cell words, address book words, personal names, and professional field words; intelligent word grouping may include English word grouping, classifier word grouping, and personal name word grouping; intelligent error correction may include error correction with context, key position error correction, and personalized input error correction; intelligent frequency tuning may include frequency tuning with multiple contexts, time-based tuning, location-based tuning, personalized input tuning, and cloud data-based tuning; intelligent association may include association with multiple contexts, personalized input association, cloud data-based association, and poetry association; cloud input may include cloud association and cloud frequency tuning; other functions may include website and email functions, character splitting functions, emoji functions, and fuzzy pronunciation.

[0146] The configuration process of the input method kernel in this application embodiment will be described below.

[0147] In this embodiment of the application, a function manager and a dictionary manager are added to the architecture of the input method kernel. For example, Figure 9 This is a schematic diagram of another input method kernel architecture provided in this application embodiment. The input method kernel 9-1 includes a function manager 9-11, a dictionary manager 9-12, a conversion module 9-13, and a word-filling module 9-14. The conversion module 9-13 includes a general conversion module 9-131 (subdivided into a syllable segmentation module 9-1311 and a search module 9-1312 for searching words), an intelligent word grouping module 9-132, an intelligent error correction module 9-133, and other modules 9-134. The word-filling module 9-14 includes a filtering module 9-141 for filtering, a frequency modulation module 9-142, and a sorting module 9-143 for sorting. It should be noted that the search module 9-1312, intelligent word grouping module 9-132, intelligent error correction module 9-133, other modules 9-134, filtering module 9-141, and frequency modulation module 9-142 all need to be managed by the function manager, and their dictionaries all need to be managed by the dictionary manager. For example, the dictionaries 9-151, 9-152, and 9-153 corresponding to the search module 9-1312.

[0148] When managing kernel functions, Function Manager 9-11 mainly includes the following operations:

[0149] 1. Register kernel functions. This involves receiving function configuration information and registering the kernel functions to the function manager, which essentially means extracting the implementation module (target kernel function component) corresponding to the kernel function.

[0150] Function configuration information can be generated through the three customization methods described above. For kernel-level customization, the server pre-generates a function configuration table (candidate configuration information) for each kernel level. When a specific level is specified, the corresponding function configuration table for that level is retrieved. For kernel parameter customization, function configuration tables (candidate function information) corresponding to the three parameters (platform type, system type, and keyboard type, multiple application attribute parameters) are first obtained. Then, the intersection of these three function configuration tables is taken to obtain a temporary function configuration table (intersection configuration information). Finally, based on the three parameters (installation package size, memory usage, and performance, runtime attribute parameters), a greedy algorithm is used to select kernel functions that meet the conditions from this temporary function configuration table, forming the final function configuration information. For kernel function customization, the configuration information for each required kernel function can be directly constructed.

[0151] 2. Generate a dictionary information configuration table (not shown in the diagram). This involves querying the kernel function-dictionary mapping table to obtain the dictionary information corresponding to the required kernel function (target kernel function), and then organizing it into a dictionary information configuration table (dictionary configuration information).

[0152] 3. Kernel function control. This involves querying the function list to determine whether to enable a kernel function. If a function is in the function list, it is enabled.

[0153] The dictionary manager 9-12 includes the following five operations when managing a dictionary:

[0154] 1. Register the dictionary. This involves receiving the dictionary configuration information from the function manager and registering the required dictionaries into the dictionary manager, which means selecting dictionaries for the required kernel functions.

[0155] In addition to maintaining a general list of required dictionaries, the dictionary manager can also maintain corresponding lists based on the needs of various kernel function implementation modules. For example, this includes lists for the retrieval dictionary module, intelligent error correction module, intelligent word grouping module, intelligent association module, intelligent frequency tuning module, filtering module, and dictionary write-back module. For instance, for the dictionary write-back module, the server will mark which dictionaries will be used in this module in its dictionary configuration table—that is, which dictionaries need to be written back—and add these dictionaries to the corresponding list for the dictionary write-back module.

[0156] 2. Dictionary loading is divided into two methods: centralized loading and individual loading. Centralized loading refers to traversing the overall dictionary list and loading each dictionary in the list. Individual loading refers to loading a specific dictionary that is specified in the overall list individually.

[0157] 3. Dictionary uninstallation is divided into two methods: centralized uninstallation and individual uninstallation. Centralized uninstallation refers to traversing the overall dictionary list and uninstalling each dictionary in the list (this method is usually used when stopping the use of the input method kernel, such as when switching input method kernels). Individual uninstallation is to uninstall a specific dictionary from the overall dictionary list (this method is usually used when disabling a certain kernel function).

[0158] 4. Dictionary saving is divided into centralized saving and individual saving. Centralized saving means saving new words (updated words) to each dictionary in the overall dictionary list, while individual saving means saving new words only to a specific dictionary in the overall dictionary list.

[0159] 5. Thesaurus Search. This is divided into centralized search and individual search. Centralized search refers to searching the content of all thesauruses in the overall thesaurus list to obtain the words (candidate words) to be displayed. Individual search refers to searching only a specific thesaurus in the overall thesaurus list to obtain the words to be displayed.

[0160] For example, when filtering words, the filtering module only needs to check whether the word is in the thesaurus related to the filtering module. If it is in the thesaurus related to the filtering module, then the word is filtered to obtain the words that need to be displayed.

[0161] Figure 10 This is a schematic diagram illustrating the activation process of the input method kernel provided in this application embodiment. The activation process of the input method kernel mainly includes the following steps:

[0162] S201. Generate the function configuration table. The function configuration table is generated based on requirements (kernel requirement information). The function configuration table will be packaged into the input method's installation package and sent to the terminal that has the input method kernel installed, or it can be sent to the terminal via the cloud.

[0163] S202. Register the functions according to the function configuration table.

[0164] S203. Generate the dictionary configuration table and configure the dictionary.

[0165] S204. Load the thesaurus based on the registered thesaurus.

[0166] Figure 11 This is a flowchart illustrating the processing of the input method kernel during use, as provided in this application embodiment. The method may include the following steps:

[0167] S301. Obtain the input string of the user object. After the input method kernel is installed via the installation package, the user object will input information through the virtual keyboard or the physical keyboard.

[0168] S302. Determine if the function is configured or enabled. If yes, proceed to S303; otherwise, proceed to S304.

[0169] S303. Determine the sub-function type (corresponding to the sub-target kernel function component), that is, determine whether the input string is sub-function type A or sub-function type B.

[0170] When using an input method kernel, each function is first controlled by the function manager to determine whether it is configured or enabled, and then sub-functions are determined from more granular functions for each function. Then, the dictionary manager uses the determined sub-functions to retrieve branch codes of different dictionaries for dictionary searching.

[0171] S304, Skip this function.

[0172] It is understood that in the embodiments of this application, user information, such as personal names, personalized input, and other related data, is involved. When the embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions.

[0173] The following description continues to illustrate the exemplary structure of the input method kernel generation device 255 provided in the embodiments of this application as a software module. In some embodiments, such as Figure 2 As shown, the software module stored in the input method kernel generation device 255 in the memory 250 may include:

[0174] The component filtering module 2551 is used to filter target kernel functional components from the functional component pool based on the functional configuration information of the input method kernel; wherein, the functional component pool is used to provide kernel functional components that are in an available state;

[0175] The information determination module 2552 is used to determine the corresponding dictionary configuration information for the target kernel functional component; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends;

[0176] The dictionary filtering module 2553 is used to filter the target dictionary corresponding to the target kernel functional component from the dictionary pool according to the dictionary configuration information; the dictionary pool is used to provide a dictionary in an available state;

[0177] The kernel generation module 2554 is used to integrate the input method kernel based on the target kernel functional component and the target dictionary corresponding to the target kernel functional component.

[0178] In some embodiments of this application, the input method kernel generation device 255 further includes: a configuration generation module 2555; the configuration generation module 2555 is used to receive kernel requirement information corresponding to the input method kernel; and determine the functional configuration information of the input method kernel based on the kernel requirement information.

[0179] In some embodiments of this application, the kernel requirement information specifies the target kernel level of the input method kernel; the configuration generation module 2555 is further configured to determine the candidate configuration information corresponding to the target kernel level from the candidate configuration information corresponding to multiple kernel levels as the function configuration information of the input method kernel; the target kernel level is any one of the multiple kernel levels.

[0180] In some embodiments of this application, the kernel requirement information specifies multiple application attribute parameters of the input method kernel; the configuration generation module 2555 is further configured to determine candidate function information for the input method kernel based on each of the application attribute parameters; wherein, the application attribute parameters are at least used to specify the type of information platform, the type of operating system, and the type of keyboard of the input method kernel application; the function configuration information is obtained by taking the intersection of the candidate function information of each of the multiple application attribute parameters.

[0181] In some embodiments of this application, the configuration generation module 2555 is further configured to: take the intersection of the candidate function information for each of the multiple application attribute parameters to obtain intersection function information; extract the target kernel function from the intersection function information using the weight information of the kernel function contained in the intersection function information; the weight information characterizes the degree of negative impact of the kernel function on the running attribute parameters of the input method kernel, the running attribute parameters including: installation package size, memory usage, and running performance; and integrate the function configuration information using the target kernel function.

[0182] In some embodiments of this application, the information determination module 2552 is further configured to query at least one matching term information of the target kernel functional component from a function term mapping table based on the target kernel function corresponding to the target kernel functional component; wherein, the function term mapping table records term information required by different kernel functions through mapping relationships; and using at least one matching term information, determine the term configuration information corresponding to the target kernel functional component.

[0183] In some embodiments of this application, the input method kernel generation device 255 further includes: an input processing module 2556; the input processing module 2556 is configured to load the target word library for the target kernel functional component in the input method kernel; obtain an input string in response to an input operation; retrieve candidate words from the target word library loaded in the target kernel functional component for the input string through the target kernel functional component in the input method kernel, and display the candidate words.

[0184] In some embodiments of this application, the target kernel functional component in the input method kernel includes: multiple sub-target functional components; the input processing module 2556 is further configured to determine the sub-target functional component to be executed from the multiple sub-target functional components for the input string; and to use the retrieval code corresponding to the sub-target functional component to be executed to search the target word library loaded in the target kernel functional component to obtain the candidate words.

[0185] In some embodiments of this application, the input string includes at least two substrings, and the candidate words include candidate characters corresponding to each substring; the input processing module 2556 is further configured to, in response to a selection operation of a target character in the candidate characters corresponding to each substring, integrate the target characters corresponding to each of the at least two substrings into an updated word; and write the updated word into the target word library.

[0186] In some embodiments of this application, the input processing module 2556 is further configured to unload the target dictionary from the target kernel function component in the input method kernel in response to a shutdown operation for the target kernel function component corresponding to the target kernel function component.

[0187] In some embodiments of this application, the input method kernel generation device 255 further includes: a kernel update module 2557; the kernel update module 2557 is used to update the input method kernel to obtain an updated input method kernel; and to distribute the updated input method kernel to multiple information platforms.

[0188] This application provides a computer program product or computer program that includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the input method kernel generation method described above in this application.

[0189] This application provides a computer-readable storage medium storing executable instructions. When these executable instructions are executed by a processor, they cause the processor to execute the input method kernel generation method provided in this application. For example, ... Figure 3 The input method kernel generation method is shown.

[0190] In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface memory, optical disk, or CD-ROM; or it may be a variety of devices including one or any combination of the above-mentioned memories.

[0191] In some embodiments, executable instructions may take the form of a program, software, software module, script, or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.

[0192] As an example, executable instructions may, but do not necessarily, correspond to files in a file system. They may be stored as part of a file that holds other programs or data, for example, in one or more scripts in a Hyper Text Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple collaborating files (e.g., a file that stores one or more modules, subroutines, or code sections).

[0193] As an example, executable instructions can be deployed to execute on a single electronic device, or on multiple electronic devices located in one location, or on multiple electronic devices distributed across multiple locations and interconnected via a communication network.

[0194] In summary, through the embodiments of this application, the development process of kernel functional components and dictionary can be omitted, thus requiring less time to generate an input method kernel and improving the generation efficiency of the input method kernel. Based on kernel requirement information, the electronic device generates personalized functional configuration information at the kernel level, kernel parameters, and functional dimensions, thereby facilitating the subsequent generation of the input method kernel based on this personalized configuration information. This not only improves the generation efficiency of the input method kernel but also enables the input method kernel to meet different needs. Furthermore, the input method kernel can be maintained and updated, and the updated input method kernel can be redistributed to each information platform. In other words, only one maintenance update is needed to upgrade the input method kernels of different information platforms, thereby improving the maintenance efficiency of the input method kernel.

[0195] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, and improvements made within the spirit and scope of this application are included within the scope of protection of this application.

Claims

1. An input method kernel generating method, characterized in that, The method includes: Based on the functional configuration information of the input method kernel, target kernel functional components are selected from the functional component pool; wherein, the functional component pool is used to provide kernel functional components that are in an available state; For the target kernel functional component, the corresponding dictionary configuration information is determined; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends; Based on the dictionary configuration information, the target dictionary corresponding to the target kernel functional component is obtained by filtering from the dictionary pool; the dictionary pool is used to provide dictionaries that are in an available state. The input method kernel is obtained by integrating the target kernel functional components and the target dictionary corresponding to the target kernel functional components.

2. The method according to claim 1, characterized in that, Before selecting the target kernel functional component from the functional component pool based on the input method kernel's functional configuration information, the method further includes: Receive kernel requirement information corresponding to the input method kernel; Based on the kernel requirement information, the functional configuration information of the input method kernel is determined.

3. The method according to claim 2, characterized in that, The kernel requirement information specifies the target kernel level of the input method kernel; determining the functional configuration information of the input method kernel based on the kernel requirement information includes: The candidate configuration information corresponding to the target kernel level among the candidate configuration information corresponding to multiple kernel levels is determined as the function configuration information of the input method kernel; the target kernel level is any one of the multiple kernel levels.

4. The method according to claim 2, characterized in that, The kernel requirement information specifies multiple application attribute parameters of the input method kernel; determining the functional configuration information of the input method kernel based on the kernel requirement information includes: Based on each of the application attribute parameters, candidate function information is determined for the kernel of the input method; wherein, the application attribute parameters are used to specify at least the type of information platform, the type of operating system, and the type of keyboard of the input method kernel application; The function configuration information is obtained by taking the intersection of the candidate function information of each of the multiple application attribute parameters.

5. The method according to claim 4, characterized in that, The step of obtaining the function configuration information by taking the intersection of the candidate function information of each of the multiple application attribute parameters includes: The intersection of the candidate function information for each of the multiple application attribute parameters is taken to obtain the intersection function information; Using the weight information of kernel functions contained in the intersection function information, the target kernel function is extracted from the intersection function information; the weight information characterizes the degree of negative impact of the kernel function on the running attribute parameters of the input method kernel, and the running attribute parameters include: installation package size, memory usage, and running performance; The functional configuration information is obtained by integrating the target kernel functions.

6. The method according to any one of claims 1 to 5, characterized in that, The step of determining the corresponding dictionary configuration information for the target kernel functional component includes: Based on the target kernel function corresponding to the target kernel functional component, at least one matching dictionary information of the target kernel functional component is obtained from the functional dictionary mapping table; wherein, the functional dictionary mapping table records the dictionary information required by different kernel functions through mapping relationships; Using at least one of the matching dictionary information, the dictionary configuration information corresponding to the target kernel functional component is determined.

7. The method according to any one of claims 1 to 5, characterized in that, After integrating the input method kernel based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components, the method further includes: For the target kernel functional component in the input method kernel, load the target dictionary; Responding to input operations, retrieve the input string; The target kernel functional component in the input method kernel retrieves candidate words from the target word library loaded in the target kernel functional component for the input string, and displays the candidate words.

8. The method according to claim 7, characterized in that, The target kernel functional component in the input method kernel includes: multiple sub-target functional components; the step of retrieving candidate words from the target lexicon loaded in the target kernel functional component for the input string through the target kernel functional component in the input method kernel includes: From the plurality of said sub-target functional components, determine the sub-target functional component to be executed based on the input string; Using the retrieval code corresponding to the sub-target functional component to be executed, the target thesaurus loaded in the target kernel functional component is searched to obtain the candidate words.

9. The method according to claim 7, characterized in that, The input string includes at least two substrings, and the candidate words include candidate characters corresponding to each substring; after displaying the candidate words, the method further includes: In response to the selection operation of the target character in the candidate characters corresponding to each of the substrings, the target characters corresponding to at least two of the substrings are integrated into an updated word; The updated words are written into the target vocabulary.

10. The method according to claim 7, characterized in that, After loading the target dictionary for the target kernel functional component in the input method kernel, the method further includes: In response to a shutdown operation targeting the target kernel function corresponding to the target kernel function component, the target dictionary is unloaded from the target kernel function component in the input method kernel.

11. The method according to any one of claims 1 to 5, characterized in that, The input method kernel is applied on multiple information platforms; after integrating the input method kernel based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components, the method further includes: The input method kernel is updated to obtain the updated input method kernel; The updated input method kernel is then distributed to multiple information platforms.

12. An input method kernel generation device, characterized in that, The device includes: The component filtering module is used to filter target kernel functional components from the functional component pool based on the functional configuration information of the input method kernel; wherein, the functional component pool is used to provide kernel functional components that are in an available state; The information determination module is used to determine the corresponding dictionary configuration information for the target kernel functional component; the dictionary configuration information indicates the target dictionary on which the target kernel functional component depends; The dictionary filtering module is used to filter the target dictionary corresponding to the target kernel functional component from the dictionary pool according to the dictionary configuration information; the dictionary pool is used to provide dictionaries that are in an available state. The kernel generation module is used to integrate the input method kernel based on the target kernel functional components and the target dictionary corresponding to the target kernel functional components.

13. An electronic device, characterized in that, The electronic device includes: Memory, used to store executable instructions; A processor, when executing executable instructions stored in the memory, implements the input method kernel generation method according to any one of claims 1 to 11.

14. A computer-readable storage medium storing executable instructions, characterized in that, When the executable instructions are executed by the processor, they implement the input method kernel generation method according to any one of claims 1 to 11.

15. A computer program product, comprising a computer program or instructions, characterized in that, When the computer program or instructions are executed by the processor, they implement the input method kernel generation method according to any one of claims 1 to 11.