Text information processing method and device, electronic equipment and storage medium

The cross-application function of an input method application in text editing interfaces addresses inefficiencies in AI-driven text editing by directly displaying processed text, enhancing user convenience and efficiency.

CN119227643APending Publication Date: 2024-12-31BEIJING SOGOU TECHNOLOGY DEVELOPMENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310805068.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-30
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

Existing text editing technologies through artificial intelligence are inefficient, requiring users to engage in multi-round dialogues with AI software to obtain required information, limiting user convenience and processing efficiency.

Method used

A method and device that utilize a cross-application function of an input method application to directly display processed text in the text editing interface, allowing multiple candidate texts to be displayed without the need to switch interfaces, thereby improving editing efficiency.

Benefits of technology

Enhances text editing efficiency by allowing quick generation and display of multiple candidate texts, saving computing resources and reducing the need for additional interface switching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119227643A_ABST
    Figure CN119227643A_ABST
Patent Text Reader

Abstract

The invention provides a text information processing method and device, electronic equipment and a storage medium. The method comprises the steps that a text editing interface and a first control of an input method application program are displayed, and the text editing interface is used for inputting a text through the input method application program; in response to an editing operation for a first text in the text editing interface, a second text is displayed in the text editing interface, and the second text is generated after the first text is processed; in response to a trigger operation for the first control, at least one candidate text is displayed in an interactive interface of the input method application program, and the candidate text is generated after the first text is processed and is different from the second text. Through the application, the text processing efficiency in the application program can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to artificial intelligence technology, and in particular to a method, device, electronic device and storage medium for processing text information. Background Art

[0002] Artificial Intelligence (AI) is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that machines have the functions of perception, reasoning and decision-making.

[0003] In related technologies, text editing through artificial intelligence has become a mainstream trend, but in related technologies, users need to obtain the required content by communicating with artificial intelligence, and can only call the corresponding functions of artificial intelligence in specific software to obtain the required information, which limits the convenience of users using artificial intelligence to obtain text information.

[0004] In the related art, there is currently no good way to improve the processing efficiency of users when editing text. Summary of the invention

[0005] The embodiments of the present application provide a method, device, electronic device, computer-readable storage medium, and computer program product for processing text information, which can improve the efficiency of text processing in an application.

[0006] The technical solution of the embodiment of the present application is implemented as follows:

[0007] The present application provides a method for processing text information, the method comprising:

[0008] Displaying a text editing interface and a first control of an input method application, wherein the text editing interface is used to input text through the input method application;

[0009] In response to an editing operation on a first text in the text editing interface, displaying a second text in the text editing interface, wherein the second text is generated by processing the first text;

[0010] In response to a triggering operation on the first control, at least one candidate text is displayed in an interactive interface of the input method application, wherein the candidate text is generated after processing the first text and is different from the second text.

[0011] The present application provides a text information processing device, including:

[0012] A display module configured to display a text editing interface and a first control of an input method application, wherein the text editing interface is used to input text through the input method application;

[0013] A display module, configured to display a second text in the text editing interface in response to an editing operation on the first text in the text editing interface, wherein the second text is generated after processing the first text;

[0014] The display module is configured to display at least one candidate text in the interactive interface of the input method application in response to a trigger operation on the first control, wherein the candidate text is generated after processing the first text and is different from the second text.

[0015] An embodiment of the present application provides an electronic device, the electronic device comprising:

[0016] A memory for storing computer executable instructions;

[0017] The processor is used to implement the text information processing method provided in the embodiment of the present application when executing the computer executable instructions stored in the memory.

[0018] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions for implementing a text information processing method provided in an embodiment of the present application when executed by a processor.

[0019] An embodiment of the present application provides a computer program product, including a computer program or computer executable instructions. When the computer program or computer executable instructions are executed by a processor, the text information processing method provided by the embodiment of the present application is implemented.

[0020] The embodiments of the present application have the following beneficial effects:

[0021] In the process of editing text, a corresponding second text is generated and displayed based on the first text, and multiple candidate texts are displayed by triggering the first control of the input method application, thereby improving the efficiency of text editing. Through the cross-application function of the input method application, multiple texts can be quickly generated in different applications with text editing interfaces, thereby improving the user's text editing efficiency; there is no need to implant additional functions into the application with the text editing interface, thus saving computing resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1It is a schematic diagram of an application mode of the text information processing method provided in an embodiment of the present application;

[0023] Figure 2 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0024] Figures 3A to 3G It is a flowchart of a method for processing text information provided in an embodiment of the present application;

[0025] Figure 4 It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application;

[0026] FIG. 5A to FIG. 5D It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application;

[0027] FIG. 6A to FIG. 6C It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application;

[0028] 7A to 7D It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application;

[0029] Figure 8 It is a flowchart of a method for processing text information provided in an embodiment of the present application. DETAILED DESCRIPTION

[0030] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of this application.

[0031] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it can be 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.

[0032] In the following description, the terms "first\second\third" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0033] It should be pointed out that the collection and processing of relevant data in this application (for example, text information entered by users in the application) should be strictly in accordance with the requirements of relevant national laws and regulations when applied in practice, and the informed consent or separate consent of the personal information subject should be obtained. Subsequent data use and processing should be carried out within the scope of authorization of laws and regulations and the personal information subject.

[0034] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.

[0035] Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations.

[0036] 1) GPT technology: The abbreviation of Generative Pre-trained Transformer, is a pre-trained language model based on the Transformer architecture.

[0037] 2) Natural Language Processing (NLP): It is an important direction in the fields of computer science and artificial intelligence. It studies various theories and methods that can achieve effective communication between people and computers using natural language. Natural language processing is a science that integrates linguistics, computer science, and mathematics. Therefore, research in this field will involve natural language, that is, the language people use in daily life, so it is closely related to the study of linguistics. Natural language processing technology usually includes text processing, semantic understanding, machine translation, robot question answering, knowledge graph and other technologies.

[0038] 3) Prompt: In natural language processing, a prompt refers to a piece of text or some keywords that guide the model to generate specific text or complete a specific task. In the GPT model, prompts are usually used to generate text, such as generating articles and dialogues.

[0039] 4) Instructions: codes that control the computer to perform a certain operation. Computer instructions are the instructions and commands that direct the machine to work. Programs are a series of instructions arranged in a certain order. The process of executing a program is the working process of the computer.

[0040] 5) On-screen: The process of directly displaying the content input by the user or the related content of the input information on the human-computer interaction interface. For example, when the user is searching or talking, the system can automatically identify the user's intention and needs, and display the most relevant and useful content directly on the screen, so that the user can quickly obtain the required information or proceed to the next step.

[0041] 6) Secondary description of content: After the system outputs search results or dialogue responses, users can further describe or explain the results so that the system can better understand the user's intentions and needs and provide more accurate responses and search results.

[0042] 7) Input method: Input method refers to the coding method used to input various symbols into electronic information devices (such as computers and mobile phones). Input methods are basically divided into two categories: one is based on the shape and meaning of characters, which is fast and accurate, but requires special learning; the other is based on the pronunciation of characters, which is not very accurate (there is a built-in dictionary that has little effect on popular words and idioms), but currently all keyboards are printed with pinyin letters, so there is no need to learn specifically when inputting common words.

[0043] In the related art, users usually acquire text through artificial intelligence in multi-round dialogue software corresponding to artificial intelligence. Users have multi-scenario content requirements, and multi-round dialogue software can only output a single piece of content, which has low efficiency in acquiring content, affecting the efficiency of users in processing text during text editing. In the embodiment of the present application, the cross-application function of the input method software is utilized, and the input method software is used to directly present the processed text in the text editing interface in the text editing interface of other applications, and more candidate text content is displayed by triggering the interactive interface. The processed text can be directly displayed in the text editing interface without the user switching the interface, which improves the text editing efficiency and saves the process required for users to edit text.

[0044] The embodiments of the present application provide a text information processing method, a text information processing device, an electronic device, a computer-readable storage medium, and a computer program product, which can improve the text processing efficiency in an application.

[0045] The following describes an exemplary application of an electronic device provided by an embodiment of the present application. The electronic device provided by an embodiment of the present application can be implemented as a laptop, a tablet computer, a desktop computer, a set-top box, a mobile device (for example, a mobile phone, a portable music player, a personal digital assistant, a dedicated messaging device, a portable gaming device), a vehicle terminal, a virtual reality (VR) device, an augmented reality (AR) device, and other types of user terminals), and can also be implemented as a server. Below, an exemplary application when the device is implemented as a terminal device or a server will be described.

[0046] refer to Figure 1 , Figure 1 is a schematic diagram of an application mode of the text information processing method provided in an embodiment of the present application; for example, Figure 1 The invention involves a server 200, a network 300, a terminal device 400, and a database 500. The terminal device 400 is connected to the server 200 via the network 300, and the network 300 can be a wide area network or a local area network, or a combination of the two.

[0047] In some embodiments, the terminal device 400 may be a computer used by a user, and a first application and a second application are installed in the computer, the first application is a document editing application, the second application is an input method software, the server 200 is a server of a platform corresponding to the second application, and the database 500 is, and the function corresponding to the instruction may be search, translation, continuation, error correction, text content expansion or text content simplification. In the embodiments of the present application, the search instruction is used as an example for explanation. The following is explained in combination with the above examples.

[0048] For example, the user opens the first application in the terminal device 400, and enters the search command "swss" and text information "artificial intelligence" of the second application in the first application, wherein the screen in the first application is presented as the document interface 101; the terminal device 400 generates a search request based on the search command and text information, and sends the search request to the server 200, and the server 200 retrieves the search results from the database 500 according to the text information carried in the search request, and sends the search results to the terminal device 400, and the document interface 101 in the first application of the terminal device 400 displays the search results (generated content 104), and the user can trigger the first control 105 to display the interactive interface 106 of the input method software, and the interactive interface 106 displays the candidate generated content. Through the above-mentioned text information processing method, it is convenient for users to quickly obtain search results in the document editing application, save the time required for users to collect information during the writing process, and improve the efficiency of text processing.

[0049] In some embodiments, the text information processing method of the embodiments of the present application can also be applied in the following application scenarios: writing, text translation, and information query.

[0050] The embodiments of the present application can be implemented through database technology. In short, a database can be regarded as an electronic file cabinet where electronic files are stored. Users can add, query, update, delete, etc. data in the files. The so-called "database" is a collection of data that is stored together in a certain way, can be shared with multiple users, has as little redundancy as possible, and is independent of the application program.

[0051] A database management system (DBMS) is a computer software system designed for managing databases. It generally has basic functions such as storage, retrieval, security, and backup. Database management systems can be classified according to the database model they support, such as relational, XML (Extensible Markup Language); or according to the type of computer they support, such as server clusters, mobile phones; or according to the query language used, such as Structured Query Language (SQL), XQuery; or according to the performance focus, such as maximum scale, maximum operating speed; or other classification methods. Regardless of the classification method used, some DBMS can cross categories, for example, supporting multiple query languages ​​at the same time.

[0052] The embodiments of the present application can also be implemented through cloud technology. Cloud technology is a general term for network technology, information technology, integration technology, management platform technology, application technology, etc. based on the cloud computing business model application. It can form a resource pool, which is used on demand and is flexible and convenient. Cloud computing technology will become an important support. The background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture websites and more portal websites. With the high development and application of the Internet industry, as well as the promotion of search services, social networks, mobile commerce and open collaboration, each item may have its own hash code identification mark in the future, and all need to be transmitted to the background system for logical processing. Data of different levels will be processed separately, and all kinds of industry data require strong system backing support, which can only be achieved through cloud computing.

[0053] In some embodiments, Figure 1 The server 200 in the example may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The electronic device may be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, etc., but is not limited thereto. The terminal device and the server may be directly or indirectly connected via wired or wireless communication, which is not limited in the embodiments of the present invention.

[0054] See also Figure 2 , Figure 2 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. The electronic device may be Figure 1 The terminal device 400 in Figure 2 The terminal device 400 shown includes: at least one processor 410, a memory 450, at least one network interface 420 and a user interface 430. The various components in the terminal device 400 are coupled together via a bus system 440. It is understood that the bus system 440 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 440 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, the bus system 440 is not shown in FIG. Figure 2 Various buses are labeled as bus system 440 .

[0055] Processor 410 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., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0056] The user interface 430 includes one or more output devices 431 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The user interface 430 also includes one or more input devices 432, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0057] The memory 450 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. The memory 450 may optionally include one or more storage devices that are physically remote from the processor 410.

[0058] The memory 450 includes a volatile memory or a non-volatile memory, and may also include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), and the volatile memory may be a random access memory (RAM). The memory 450 described in the embodiments of the present application is intended to include any suitable type of memory.

[0059] In some embodiments, memory 450 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0060] Operating system 451, including system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks;

[0061] A network communication module 452, used to reach other electronic devices via one or more (wired or wireless) network interfaces 420, exemplary network interfaces 420 include: Bluetooth, Wireless Compatibility Certification (WiFi), and Universal Serial Bus (USB), etc.;

[0062] a presentation module 453 for enabling presentation of information via one or more output devices 431 (e.g., display screen, speaker, etc.) associated with the user interface 430 (e.g., a user interface for operating peripherals and displaying content and information);

[0063] The input processing module 454 is used to detect one or more user inputs or interactions from one of the one or more input devices 432 and translate the detected inputs or interactions.

[0064] In some embodiments, the device provided in the embodiments of the present application can be implemented in software. Figure 2 The text information processing device 455 stored in the memory 450 is shown, which can be software in the form of programs and plug-ins, including the following software modules: display module 4551, text processing module 4552, these modules are logical, so according to the functions implemented, they can be arbitrarily combined or further divided. Figure 2 For the sake of convenience, all the above modules are shown at once, but it should not be considered that the text information processing device 455 excludes the implementation that can only include the display module 4551. The functions of each module will be explained below.

[0065] In some embodiments, the terminal or server can implement the text information processing method provided in the embodiments of the present application by running a computer program. For example, the computer program can be a native program or software module in the operating system; it can be a native application (APP, Application), that is, a program that needs to be installed in the operating system to run, such as a document APP or an input method APP; it can also be a small program, that is, a program that can be run only by downloading it to a browser environment; it can also be a small program that can be embedded in any APP. In short, the above-mentioned computer program can be an application, module or plug-in in any form.

[0066] The text information processing method provided in the embodiment of the present application will be described in conjunction with the exemplary application and implementation of the terminal provided in the embodiment of the present application.

[0067] The following describes the text information processing method provided by the embodiment of the present application. As mentioned above, the electronic device that implements the text information processing method of the embodiment of the present application can be a terminal device, or a combination of a terminal device and a server. Therefore, the execution subject of each step will not be repeatedly described below.

[0068] See also Figure 3A , Figure 3A is a flowchart of a method for processing text information provided by an embodiment of the present application, which will be combined with Figure 3A The steps shown are explained.

[0069] In step 301, a text editing interface and a first control of an input method application are displayed.

[0070] For example, the text editing interface is used to input text through an input method application. The application to which the text editing interface belongs may be a document application, a chat application, a social application, or other application that has text editing requirements. The input method application can perform text editing in different types of applications. The first control of the input method application can be used to trigger an interactive interface or an option list. In the following, the embodiments of the present application take a document application as an example, and the text editing interface of the document application is referred to as a document interface.

[0071] refer to Figure 4 , Figure 4 4 is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; a document interface 414 (text editing interface) includes: a floating ball control 411 and a prompt control 412 associated with the floating ball control 411. The floating ball control 411 is a first control represented by a floating ball. The prompt control 412 is presented in the form of an option list.

[0072] In step 302, in response to an editing operation on a first text in a text editing interface, a second text is displayed in the text editing interface.

[0073] Here, the second text is generated by processing the first text.

[0074] For example, the processing performed on the first text is determined based on the editing operation, and the processing method may be translation, search, text continuation, text content expansion, text simplification, text content correction, and text style change.

[0075] In some embodiments, the display method of the second text includes: in the text editing interface, the second text is displayed as additional content of the first text, or the second text is displayed as alternative content of the first text. The additional content can be displayed before or after the first text. Alternative content means that only the second text is displayed and the first text is hidden.

[0076] In some embodiments, the second text is generated after invoking an input method application to process the first text, and the input method application is used to be called in different types of text editing interfaces to process the first text in different text editing interfaces.

[0077] In some embodiments, the second text is obtained by the input method application calling the interface of other applications, using the application interface to obtain data, and converting the obtained data into a natural language text format. For example, calling a weather application to obtain weather information of a certain city, and converting the obtained weather information into a natural language text format, and displaying it in the text editing interface.

[0078] In step 303, in response to a triggering operation on the first control, at least one candidate text is displayed in an interactive interface of the input method application.

[0079] For example, the candidate text is generated after processing the first text and is different from the second text. The candidate text and the second text are obtained by the same type of processing. For example, the candidate text and the second text are both obtained by translating the first text.

[0080] The text in the target language type.

[0081] Example, reference Figure 5C , Figure 5C : is a schematic diagram of the interface of the text information processing method provided by the embodiment of the present application; assuming that the processing for the first text is search, the search function is performed based on the first text "artificial intelligence", and the generated content 501C (second text) is obtained. The generated content 501C is the search result associated with the text "artificial intelligence". Figure 5D , Figure 5D It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; Figure 5C When the floating ball control 502A (first control) in the input method application is triggered, the interactive interface 501D of the input method application is displayed, and the interactive interface 501D includes at least one search result (candidate text) and a switching control 503D. The switching control 503D is used to switch between different search results.

[0082] In an embodiment of the present application, by displaying the second text to the user and displaying the candidate text in the input method interaction interface, it is convenient for the user to obtain more text information, and then the user can edit the text according to the obtained text information, thereby improving the user's text editing efficiency; there is no need to implant additional functions into the application of the text editing interface, thus saving computing resources.

[0083] In some embodiments, the editing operation includes: input operation; reference Figure 3B , Figure 3B is a flowchart of a method for processing text information provided by an embodiment of the present application. Figure 3A Before step 302, execute Figure 3B Steps 3021A to 3022A are described in detail below.

[0084] In step 3021A, in response to an instruction input operation on the text editing interface, a first instruction and a first editing option list called by the first instruction are displayed in the text editing interface.

[0085] Here, the first editing option list includes at least one editing option, and different editing options correspond to different editing functions. The function of the first instruction is to trigger the display of the first editing option list.

[0086] refer to Figure 5A , Figure 5A : is a schematic diagram of the interface of the text information processing method provided by the embodiment of the present application; the document interface 501A includes a floating ball control 502A and a command 504A input by the user, wherein the content of the command 504A (the first command) is " / sw", and the command 504A is used to call the option list 503A (the first editing option list) for display. The editing functions in the option list 503A include translation, search, and continuation.

[0087] Continue to refer Figure 3B In step 3022A, in response to a selection operation on an editing option in the first editing option list, a second instruction is displayed.

[0088] Here, the second instruction is generated based on the first instruction and the selected editing option.

[0089] Example, reference Figure 5B , Figure 5B It is an interface diagram of the text information processing method provided in an embodiment of the present application; assuming that the user selects the search option in the option list 503A, instruction 501B (the second instruction) is displayed, and the content of instruction 501B is " / swss", where ss refers to search, and / sw is the content of the first instruction.

[0090] After step 3022A, step 302 may be implemented through steps 3023A to 3024A.

[0091] In step 3023A, in response to a text input operation on the text editing interface, the input first text is displayed in an adjacent position after the second instruction in the text editing interface.

[0092] Continue to refer Figure 5B , the user enters the first text “artificial intelligence” after the second instruction 501B in the document interface 501A.

[0093] In step 3024A, in response to the indication operation of completing the first text by inputting the representation, the second text is displayed in the text editing interface.

[0094] Here, the second text is generated based on the first text calling the editing function of the editing option corresponding to the second instruction.

[0095] For example, the indication operation may be inputting a carriage return, or the time without inputting content reaches a preset time. The types of editing functions include: translation, search, text continuation, text content expansion, text simplification, text content correction, and text style change. The editing function may be implemented by the input method application calling the natural language processing model.

[0096] For example, assuming the editing function is search, refer to Figure 5C , Figure 5C It is an interface diagram of the text information processing method provided in an embodiment of the present application; a search function is performed based on the text "artificial intelligence" to obtain generated content 501C (second text), and the generated content 501C is the search result associated with the text "artificial intelligence".

[0097] In an embodiment of the present application, an option menu is called through instructions to facilitate users to select the required editing functions, improve editing efficiency, and directly display the text obtained by the editing function in the text editing interface, without the need for users to switch windows for copying and pasting, thus saving the user's text editing process.

[0098] In some embodiments, the editing operation includes an input operation; Figure 3C , Figure 3C It is a flowchart of the text information processing method provided in an embodiment of the present application. Before step 302, step 3021B is executed, which is described in detail below.

[0099] In step 3021B, in response to the instruction input operation in the text editing interface, a third instruction is displayed in the text editing interface.

[0100] For example, the third instruction is used to call the corresponding editing function. Fig. 6A , Fig. 6A It is an interface diagram of the text information processing method provided in an embodiment of the present application; the document interface 601A includes a floating ball control 602A and an instruction 603A (third instruction) input by the user, wherein the content of instruction 604A is " / zxss", and instruction 603A is used to call the search function of the input method application.

[0101] After step 3021B, step 302 can be implemented by following steps 3022B to 3023B.

[0102] In step 3022B, in response to a text input operation in the text editing interface, the input first text is displayed in an adjacent position after the third instruction in the text editing interface.

[0103] Continue to refer Fig. 6A , where “famous quotes” after instruction 603A (the third instruction) is the first text entered by the user.

[0104] In step 3023B, in response to the indication operation of completing the first text input, the second text is displayed in the text editing interface.

[0105] Here, the second text is generated based on the first text calling the editing function corresponding to the third instruction. The instruction operation is the same as step 3024A above.

[0106] Example, reference Figure 6B , Figure 6B It is an interface diagram of the text information processing method provided in the embodiment of the present application; the search function is executed based on the text "famous quotes", and the generated content 601B (second text) is obtained. The generated content 601B is the search result associated with the text "famous quotes".

[0107] In some embodiments, the first text is text that has been displayed in a text editing interface, and the editing operation includes: a focusing operation and a selecting operation.

[0108] refer to Figure 3D , Figure 3D is a flowchart of a method for processing text information provided in an embodiment of the present application. Step 302 can be performed by Figure 3D Steps 3021C to 3022C are implemented as described in detail below.

[0109] In step 3021C, in response to a focus operation on the first text in the text editing interface, the first text is displayed in a selected state and a second editing option list is displayed.

[0110] Here, the second editing option list includes at least one editing option, and different editing options correspond to different editing functions.

[0111] For example, the focus operation can be circling the text, underlining it, taking a screenshot of the area, etc. Fig. 7A , Fig. 7A It is an interface diagram of the method for processing text information provided by the embodiment of the present application. The document interface 701A includes a floating ball control 702A and a text, "Today's weather is sunny and turning to heavy rain, with concentrated precipitation in some areas, which may be accompanied by strong convective weather such as lightning, short-term heavy precipitation, and thunderstorms and strong winds; the temperature is between 23 and 29 degrees, the humidity is high, and the body feels generally stuffy." Among them, "may be accompanied by strong convective weather such as lightning, short-term heavy precipitation, and thunderstorms and strong winds" is the selected content 703A (first text) selected by the user through the swiping operation.

[0112] refer to Figure 7B , Figure 7B 701B (second editing option list) is displayed when the floating ball control 702A is triggered. The option list 701B includes icons corresponding to multiple editing options. The editing options may include translation, search, etc.

[0113] In step 3022C, in response to a selection operation on an editing option in the second editing option list, a second text is displayed in the text editing interface.

[0114] Here, the second text is generated by calling an editing function of the selected editing option based on the first text.

[0115] For example, the translation function is used as an example. Figure 7C , Figure 7C Schematic diagram of the interface of the text information processing method provided in the embodiment of the present application. Figure 7B The translation option in the option list 701B is triggered, and the generated content 701C (second text) translated based on the selected content 703A is displayed, "It may be accompanied by strong convective weather such as lightning, short-term heavy precipitation and thunderstorms and gales".

[0116] In the embodiment of the present application, by editing the displayed text, the text content can be quickly replaced with other content, thereby improving the efficiency of text editing.

[0117] In some embodiments, after step 302, the second text is displayed in a selected state, and a third editing option list for the second text is displayed, and in response to a selection operation for an editing option in the third editing option list, the third text is displayed in the text editing interface.

[0118] Here, the third editing option list includes at least one editing option, and different editing options correspond to different editing functions; the third text is generated by calling the editing function of the selected editing option based on the second text.

[0119] Continue to refer Figure 7C , an option list 702C (third editing option list) is displayed, and the option list 702C includes functional options such as finish, continue, try again, expand content (write longer) and simplify content (simplify), so that the user can edit the generated content 701C.

[0120] For example, the third edit option list also includes an edit option (eg Figure 7C ); in response to a trigger operation of editing the option again in the third editing option list, replacing the second text in the text editing interface with any one of the candidate texts.

[0121] In the embodiment of the present application, by displaying editing options for the second text, it is convenient for the user to modify the second text to obtain a text that meets the user's needs, thereby improving text editing efficiency.

[0122] In some embodiments, when a second editing option list or a third editing option list for the second text is displayed, the function of the input method application can be called to edit the second text, and the third editing option list includes a completion option. When the completion option is selected, the third editing option list is hidden, and the second text is displayed in a non-selected state, and the function of the text editing interface itself can be called to edit the second text.

[0123] For example: Figure 5C In the embodiment, when the generated content 501C is displayed in a selected state and the third editing option list is displayed, the function of the input method application is called to edit the second text; in response to a selection operation on the completion option in the option list 501C (the third editing option list), or in response to a click operation on the enter key on the keyboard, the third editing option list is hidden, the second text is displayed in a non-selected state, and the function of the text editing interface itself can be called to edit the second text.

[0124] In some embodiments, when the interactive interface of the input method application is displayed, the function of the input method application can be called to edit the second text; in response to the close option of displaying the interactive interface of the input method application being triggered, the interactive interface is hidden and the function of the text editing interface itself is called to edit the second text.

[0125] For example: Reference Figure 5D When the interactive interface 501D is displayed, the function of the input method application is called to edit the second text. When the X-shaped close option in the upper right corner of the interactive interface 501D is triggered, the interactive interface 501D is hidden, and the second text is edited based on the function of the text editing interface itself.

[0126] In the embodiment of the present application, by making the input method application and the application corresponding to the text editing interface execute the editing functions alternately, the editing functions of the input method application and the text editing interface are made compatible with each other, thereby avoiding memory occupation and jamming caused by both responding to editing operations at the same time, and saving the computing resources of the processor.

[0127] In some embodiments, after step 301, at least one text template option applicable to the text editing interface is displayed; in response to a selection operation on a text template option, the content of the text template corresponding to the selected text template option is displayed in the text editing interface.

[0128] refer to Figure 4 , Figure 4 It is a schematic diagram of the interface of the text information processing method provided in the embodiment of the present application; before the user starts to edit the text, a text template is recommended to the user. The document interface 414 includes: a floating ball control 411, a prompt control 412, and the prompt control 412 includes multiple template options, including: work templates, meeting minutes, paper outlines, etc. The user clicks on the option in the prompt control 412, and the corresponding template can be implanted into the document with one click; if it is a text editing interface of a chat application, it is a template recommendation of other types.

[0129] In some embodiments, the interactive interface of the input method application includes a text input control; in response to a text input operation on the text input control, a fourth text is displayed in the text input control, and multimedia information obtained by processing the fourth text is displayed in the interactive interface of the input method application.

[0130] For example, the types of multimedia information include: text, audio, video and image.

[0131] Continue to refer Fig.7D , taking the multimedia information as text as an example, Fig.7DThe input box 702D (text input control) is used to input text content, and the interactive interface 701D calls the chat robot model (ChatGPT) according to the text content input in the input box 702D to obtain the text answer corresponding to the text content.

[0132] In some embodiments, reference Figure 3E , Figure 3E is a flowchart of a method for processing text information provided by an embodiment of the present application. Before step 302, the text information can be processed by Figure 3E Steps 304 to 305 obtain the second text, which are described in detail below.

[0133] In step 304, the first text is processed according to the editing function corresponding to the editing operation to obtain a plurality of candidate texts.

[0134] For example, the editing function can be implemented through a natural language processing model or a search engine.

[0135] In some embodiments, step 304 may be implemented by:

[0136] 1. When the editing function is search, a search engine is called based on the first text to perform search processing, and a plurality of candidate texts having similarities with the first text greater than a similarity threshold are obtained.

[0137] For example, the search process may be performed by obtaining a first text feature of a first text, obtaining a second text feature of each text in a database, obtaining a similarity between the first text feature and each second text feature, and selecting a text having a similarity greater than a similarity threshold as a candidate text.

[0138] 2. When the editing function is translation, a plurality of candidate texts of the target language type corresponding to the first text are obtained.

[0139] For example, a transformer model is called to perform encoding and decoding processing on the first text to obtain a candidate text of the target language type. The transformer model can convert an input sequence into an output sequence while retaining important information in the input sequence. The transformer model is widely used in translation processing.

[0140] 3. When the editing function is text modification, a natural language processing model is called based on the first text to perform text modification processing to obtain multiple candidate texts.

[0141] For example, the types of text modification include: text continuation, text content expansion, text simplification, text content correction and text style change. Text modification can be achieved through a natural language processing model.

[0142] In step 305, texts satisfying the display condition among the plurality of candidate texts are used as second texts.

[0143] For example, the display condition includes at least one of the following:

[0144] Condition 1: Among multiple candidate texts, the second text is the text with the highest similarity to the first text.

[0145] For example, the process of obtaining the similarity is referred to the method 1 in step 304 above, which will not be described in detail here.

[0146] Condition 2: Among multiple candidate texts, the second text is the text with the highest frequency of use within a preset time period.

[0147] For example, the preset duration can be determined according to the application scenario, and the usage frequency refers to indicators such as click rate, collection rate, etc. that characterize the use of the text by users.

[0148] Condition 3: Among the multiple candidate texts, the second text is the text with the highest similarity to the historical input text of the input method application.

[0149] For example, historical input texts may reflect the text preferences of users who use the input method and reflect input habits. Determining the second text based on the historical input texts may improve the user's satisfaction with the second text.

[0150] In the embodiment of the present application, by screening the second text from a plurality of candidate texts, the second text displayed in the text editing interface is made better than other candidate texts, thereby improving the text editing efficiency of the user.

[0151] In some embodiments, reference Figure 3F , Figure 3F is a flowchart of a text information processing method provided in an embodiment of the present application. After step 301, execute Figure 3F Steps 306 to 307 in are described in detail below.

[0152] In step 306, in response to an editing operation on the first text in the text editing interface, the first multimedia information is displayed in the text editing interface.

[0153] For example, the first multimedia information is generated after processing the first text, and the types of the first multimedia information include: image, video, and audio.

[0154] In step 307, in response to a triggering operation on a first control in the input method application, at least one candidate multimedia information is displayed in an interactive interface of the input method application.

[0155] For example, the candidate multimedia information is generated after processing the first text and is different from the first multimedia information.

[0156] In some embodiments, before step 307, the multimedia information may be obtained in the following manner:

[0157] Mode 1: When the editing operation is a search operation, a search engine is called based on the first text to search for the first multimedia information and at least one candidate multimedia information.

[0158] Mode 2: When the editing operation is an image generation operation, an image processing model is called based on the first text to perform image drawing to obtain the first multimedia information in image form and at least one candidate multimedia information.

[0159] In an example, an image processing model performs feature extraction processing on a first text, obtains an image corresponding to an image feature whose similarity with the first text feature reaches a similarity threshold through a search engine, uses the obtained image as a reference image, performs image drawing processing based on the reference image, and obtains first multimedia information in image form and at least one candidate multimedia information.

[0160] In the embodiment of the present application, multimedia information is obtained through text information, so that different multimedia information can be obtained through text in different applications, thereby improving information acquisition efficiency.

[0161] In some embodiments, reference Figure 3G , Figure 3G is a flowchart of a method for processing text information provided by an embodiment of the present application. Figure 3A After step 301 in Figure 3G Steps 3011 to 3014 are described in detail below.

[0162] In step 3011, the handle of the text editing interface is obtained.

[0163] Assuming that the terminal device executing the embodiment of the present application is a computer, in the Windows operating system of the computer, the GetForegroundWindow function can be used to obtain the handle of the text editing interface. The function return value is a window handle (Handle to A Window, HWND) type, indicating the handle of the current text editing interface.

[0164] In step 3012, based on the handle of the text editing interface, a window thread acquisition function is called to query the name of the process to which the text editing interface belongs.

[0165] For example, use the GetWindowThreadProcessld function to obtain the process ID to which the current text editing interface belongs. The GetWindowThreadProcessld function takes the window handle as a parameter, and the return value is a registry key value (Double Word, DWORD) type, which indicates the process ID to which the current text editing interface belongs. Use the application program interface provided by the process manager, such as EnumProcesses and OpenProcess functions, to obtain the process name to which the current text editing interface belongs based on the process ID. Functions such as EnumProcesses and OpenProcess require the process ID to be passed in as a parameter, and the return value is a handle type, which indicates the handle of the current process. Use the GetModuleBaseName function to obtain the name of the current process.

[0166] In step 3013, the application to which the text editing interface belongs is determined based on the process name.

[0167] For example, the software environment in which the text editing interface is located can be determined based on the process name to which the text editing interface belongs. For example, if the process name to which the text editing interface belongs is "notepad.exe", it can be determined that the software environment in which the text editing interface is located is the Notepad application. The Notepad application can be used for text editing.

[0168] In step 3014, multiple instructions of the input method application are configured for the application to which the text editing interface belongs.

[0169] Here, multiple instructions are used to call different editing functions respectively.

[0170] For example, you can configure multiple instructions for input method applications in different applications in the following way:

[0171] 1. Use custom shortcut keys: Set custom shortcut keys in the current application, for example, set the shortcut key command " / zx" in the Notepad application to call the input method with artificial intelligence function. When the user enters the shortcut key command, the first control of the input method application will be automatically displayed, and the generated text will be displayed in the text editing interface.

[0172] 2. Use command line tools: Use command line tools in the current application, such as using command line tools in the terminal. Encapsulate the function into a command line tool and set a shortcut command, such as " / zs", to call the function. When the user enters the " / zs" command, the first control of the input method application is automatically displayed, and the generated text is displayed in the text editing interface.

[0173] In the embodiment of the present application, there is no need to configure new functions for the application to which the text editing interface belongs. By calling the editing function corresponding to the input method application in the application to which the text editing interface belongs, the effect of obtaining different texts or multimedia information in the text editing interface can be achieved, which saves computing resources and has strong versatility.

[0174] In the process of editing text, the embodiment of the present application generates and displays the corresponding second text based on the first text, and displays multiple candidate texts through the triggering of the first control of the input method application, thereby improving the text editing efficiency. Through the cross-application function of the input method application, multiple texts can be quickly generated in different applications with text editing interfaces, thereby improving the user's text editing efficiency; there is no need to implant additional functions into the application of the text editing interface, thus saving computing resources.

[0175] The following describes an exemplary application of the text information processing method according to an embodiment of the present application in a practical application scenario.

[0176] Currently, mainstream artificial intelligence includes ChatGPT and NotionAI. Both of these artificial intelligence software can conduct multi-round conversations, learn and understand the grammar, semantics, and context of human language, and can generate more natural and fluent responses.

[0177] Currently, ChatGPT is used in a conversation mode on web pages, and each conversation only outputs one result. If you want to ask for more results, you need to input again to get more content. If users want to use the results output by ChatGPT, they need to copy and paste the content into other software that requires text content.

[0178] NotionAI is an artificial intelligence tool in Notion software, which can help users quickly generate text content, such as articles, notes, task lists, etc. However, using NotionAI requires calling up a separate input box in Notion software, in which users need to enter prompts, and the output results are displayed in Notion software. If the user is currently using a software other than Notion notes for text editing, then the output results need to be copied and pasted into other software. The quick call commands in Notion can only be used alone in Notion software, and the quick call commands are used to call up rich text editing functions, not quick call up artificial intelligence functions. This means that if users want to use NotionAI, they need to open Notion software first, and they need to operate in Notion software, and they cannot use it like in any application. Users will have multi-scenario content requirements, that is, users have the need to obtain text information in multiple applications. ChatGPT and NotionAI can only output a single piece of content in the current software and cannot output results across software, which has disadvantages.

[0179] The embodiment of the present application utilizes the cross-application function of the input method. By calling the large model function through quick instructions in an application with a writing function, the user can select a prompt or enter the instruction himself. The instruction quickly generates natural language text based on the text entered by the user; and the instruction can be entered in the current application, reducing the number of operation steps; at the same time, other instruction results generated by the instruction can be queried. If the user is not satisfied with the current instruction content, he can arbitrarily select a generated result to be displayed in the application.

[0180] In the embodiment of the present application, a floating ball is displayed in the human-computer interaction interface. The floating ball can be displayed in the interface of any application program, and the software environment corresponding to the current window is obtained. The input method software obtains the shortcut command entered in the current window or the triggered command line tool, obtains the search content according to the called command or command line according to artificial intelligence, and displays the optimal search content on the screen. Figure 8 , Figure 8 is a flowchart of a text information processing method provided in an embodiment of the present application, which will be combined with Figure 8 The steps shown are explained.

[0181] In step 801, a floating ball control is displayed in an application.

[0182] The floating ball control can be implemented through the Electron framework or WebRTC technology. The Electron framework is a desktop application development framework based on Web technology. It can develop desktop applications using front-end technologies such as HTML, Css, and JavaScript. Through the Electron framework, you can display a floating ball on your computer, and you can use JavaScript to implement the user's prompt word function. WebRTC technology is a real-time communication technology that can implement audio and video calls, file transfers, and other functions in the browser. Through WebRTC technology, you can display a floating ball on your computer, and you can use the data channel function of WebRTC to implement the user's prompt word function.

[0183] refer to Figure 4 , Figure 4 It is a schematic diagram of the interface of the text information processing method provided in the embodiment of the present application; before the user starts to edit the text, a text template is recommended to the user. The document interface 414 includes: a floating ball control 411, a prompt control 412, and the prompt control 412 includes multiple template options, including: work template, meeting minutes, paper outline, etc. The user clicks on the option in the prompt control 412, and the corresponding template can be implanted into the document with one click; if it is a chat environment, other instructions are recommended.

[0184] Continue to refer Figure 8 In step 802, the operating system interface is called to obtain the current process of the application.

[0185] For example, the handle of the current active window (interface) is obtained, the process ID of the current active window is obtained based on the handle, the process name is determined based on the process ID, and the application to which the current active window belongs is determined based on the process name.

[0186] In some embodiments, obtaining the handle of the current active window can be implemented in the following manner: Assuming that the terminal device is a computer, in the Windows operating system, the GetForegroundWindow function can be used to obtain the handle of the current active window. The function return value is a window handle (Handle to A Window, HWND) type, indicating the handle of the current active window.

[0187] In some embodiments, obtaining the process ID of the current active window based on the handle and determining the process name based on the process ID can be achieved in the following ways: using the GetWindowThreadProcessld function to obtain the process ID to which the current active window belongs. The GetWindowThreadProcessld function takes the window handle as a parameter, and the return value is a registry key value (Double Word, DWORD) type, indicating the process ID to which the current active window belongs; obtaining the process name to which the current active window belongs, using the API provided by the process manager, such as EnumProcesses and OpenProcess functions, to obtain the process name to which the current active window belongs according to the process ID. Functions such as EnumProcesses and OpenProcess require the process ID to be passed in as a parameter, and the return value is a handle type, indicating the handle of the current process. Use the GetModuleBaseName function to obtain the name of the current process.

[0188] In some embodiments, judging the application to which the current active window belongs according to the process name is implemented in the following manner: according to the process name to which the current active window belongs, the software environment in which the current active window is located can be judged. For example, if the process name to which the current active window belongs is "notepad.exe", it can be judged that the software environment in which the current active window is located is the notepad application. The notepad application can be used for text editing.

[0189] In step 803, an input operation and a text acquisition operation are received, a first natural language text is generated according to the instruction input by the input operation and the text acquired by the text acquisition operation, and the first natural language text is displayed in the application.

[0190] For example, the text acquisition operation may be an operation of inputting text by voice or typing, or an operation of selecting displayed text. The text acquired by the text acquisition operation is the first text mentioned above, and the first natural language text is the second text mentioned above.

[0191] In some embodiments, the text input operation is implemented through speech recognition technology, for example, using speech recognition technology to convert the audio of the user's voice input into text content. The user inputs instructions through voice without manual input, which improves input efficiency and accuracy. In the speech recognition process, open source speech recognition libraries are used, such as Google Cloud Speech-to-Text, Microsoft Azure Speech-to-Text and other libraries.

[0192] For example, the function call of the input method application can be implemented in different applications in the following ways: 1. Use custom shortcut keys; set custom shortcut keys in the current application, such as setting the shortcut key " / zx" in the Notepad application to call the input method with artificial intelligence function. When the user presses the shortcut key, the input method with artificial intelligence function will pop up automatically and quickly generate natural language text. 2. Use command line tools; use command line tools in the current application, such as using command line tools in the terminal. Encapsulate the function into a command line tool, and set shortcut instructions, such as " / zs", to call the function. When the user enters the " / zs" command, the corresponding function of the input method is automatically started, and natural language text is quickly generated.

[0193] In some embodiments, the instructions input by the user may be obtained in the following manner: the instructions input by the user are obtained by detecting events input by the user, such as keyboard input events or mouse click events, etc. The instructions input by the user are passed to the GPT model for processing.

[0194] For example, you can fine-tune the instructions input by the user, for example, by adding some keywords or restrictions to the input, to get different output results. You can also run the model multiple times, for example, using different random seeds or parameter settings, to get multiple different output results. After getting multiple output results, use some evaluation indicators to determine the best result.

[0195] For example, commonly used evaluation indicators in natural language processing such as BLEU and ROUGE are used to evaluate the quality and accuracy of each output result. At the same time, manual evaluation and user feedback are combined to determine the optimal result. After the optimal result is determined, it is used for on-screen display. Generally, the optimal result should have high quality and accuracy, and should also meet the needs and expectations of users. If it is necessary to display multiple results on the screen, sort and display the multiple results according to certain rules, such as sorting by relevance (similarity), weight, time and other factors.

[0196] For example, natural language text is obtained by calling a natural language processing model. The natural language text can be a text that describes, answers questions, or completes tasks. The natural language processing model can be a pre-trained model or a model trained according to actual application scenarios. Different models can be selected according to specific needs.

[0197] In some embodiments, when the instruction is a search instruction, the database may be queried according to the search instruction, and the database may be queried using SQL statements, and the query results may be converted into a natural language text format. For example, the price, inventory, and other information of a certain product may be queried, and the query results may be converted into a natural language text format and displayed in the interface.

[0198] In some embodiments, when the instruction is to call an application program interface (API), the application program interface is used to obtain data, and the obtained data is converted into a natural language text format. For example, a weather application is called to obtain weather information of a certain city, and the obtained weather information is converted into a natural language text format and displayed in the interface.

[0199] In some embodiments, when the instruction input by the user requires the execution of a script, the corresponding operation is performed using the scripting language, and the execution result is converted into a natural language text format. For example, a Python script is executed to obtain information about a certain website, and the obtained information is converted into a natural language text format and displayed in the interface.

[0200] In some embodiments, when the instruction input by the user needs to call a third-party service, the API interface provided by the third-party service is used to obtain data, and the obtained data is converted into a natural language text format. For example, the API interface of the translation service is called to translate a text into another language, and the translation result is converted into a natural language text format and displayed in the interface.

[0201] In some embodiments, displaying the first natural language text in the application can be achieved by: directly displaying the generated natural language text result on the screen, using an API provided by the operating system, such as Windows API or Mac OS X API, etc., to display the text content on the screen.

[0202] For example, a window control, a text box control or a label control is used to display the text on the user's current software interface. The converted text is directly displayed at the cursor, and some special technologies are used, such as hook technology, injection application extension (DLL) technology, etc.

[0203] Hook technology is a commonly used technology in operating systems, which intercepts various events in the system, such as keyboard events, mouse events, etc. Through Hook technology, user input events are intercepted, and when input events occur, the converted text is directly displayed at the cursor.

[0204] The DLL injection technique is a common technique in Windows operating systems. It injects DLL files into other processes and performs some operations in other processes. By injecting DLL technology, when the user inputs, the converted text is directly displayed at the cursor, thereby directly replacing the user's input instructions and input text.

[0205] For example, the user's input event is intercepted through the Hook technology or the DLL injection technology, and when the input event occurs, the converted text is directly displayed at the cursor. In this way, the user's input instructions and input text are directly replaced, thereby achieving the differentiated implementation of directly presenting the result at the cursor.

[0206] Continue to refer Figure 3A In step 804, a list of options for natural language text is displayed, and in response to a selection operation on an option in the list of options, a second natural language text generated by calling a function corresponding to the selected option is displayed.

[0207] In step 805, in response to a trigger operation on the floating ball control, the generated plurality of third natural language texts are displayed in an interactive interface of the input method application.

[0208] For example, the third natural language text is other first natural language text generated based on the text input by the user and the instruction.

[0209] In the interactive interface of the input method application, users can flip pages to view more natural language text as the result, and select the result they are satisfied with and click it on the screen. The front-end framework provides a variety of UI components and event processing mechanisms to easily implement multiple display methods such as segmented display, label display, list display or graphical display.

[0210] In some embodiments, the intelligent assistant technology can be called in the text editing interface through the input method application. The interaction process of the intelligent assistant technology generally includes the following steps: 1. User triggering: The user initiates a request to the intelligent assistant through voice, text or image, such as asking about the weather, booking a flight ticket, etc. 2. Intent recognition: The intelligent assistant analyzes and understands the user's request through natural language processing technology to identify the user's intention and needs. 3. Information acquisition: The intelligent assistant obtains the required information from relevant data sources according to the user's intention and needs, such as obtaining weather information from a weather forecast website. 4. Result generation: The intelligent assistant processes and analyzes the acquired information to generate results that meet the user's needs, such as generating weather forecast information. 5. Result presentation: The intelligent assistant presents the generated results to the user, such as outputting weather forecast information through voice, text or image. 6. Interaction feedback: The intelligent assistant performs further interaction and processing based on the user's feedback and instructions, such as modifying the date of booking a flight ticket according to the user's requirements. When the user's request is met or the user ends the interaction, the intelligent assistant ends the current interaction process. Using intelligent assistant technology, understand the user's intention and needs, generate natural language text, and provide more intelligent services. Use open source intelligent assistant libraries such as Rasa, Botpress, Dialogflow, etc.

[0211] The visualization effects achieved by steps 801 to 805 described above are explained below with reference to the accompanying drawings.

[0212] refer to Figure 5A , Figure 5A It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; FIG. 5A to FIG. 5D It represents an implementation of step 801 to step 805. The document interface 501A includes a floating ball control 502A and a command 504A input by a user, wherein the content of the command 504A is " / sw", and the command 504A is used to call the option list 503A for display. The editing functions in the option list 503A include translation, search, and continuation.

[0213] refer to Figure 5B , Figure 5B 5 is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; assuming that a user selects the search option in the option list 503A, an instruction 501B is displayed, and the content of the instruction 501B is " / swss", where ss refers to search. The user enters the text "artificial intelligence" after the instruction 501B in the document interface 501A. The user can enter the input completion by pressing the Enter key.

[0214] refer to Figure 5C , Figure 5CIt is an interface diagram of the method for processing text information provided in an embodiment of the present application; a search function is performed based on the text "artificial intelligence" to obtain generated content 501C, which is a search result associated with the text "artificial intelligence". Generated content 501C is displayed in a selected state, and option list 502C is an option for generated content 501C. Option list 502C includes functional options such as completion, continuation, try again, extended content (write longer) and simplified content (simplified). If the user clicks Try Again, generated content 501C is replaced by other search results associated with the text "artificial intelligence". The number of search results displayed in the icon of the floating ball control 502A includes 16.

[0215] In some embodiments, generated content 501C may be optimal on-screen content, which is the following types of generated content: the content that is most relevant to the user's input information (input habits, history, language environment), the content that is clicked most frequently at the preset time, and the content that is most similar to the searched input content.

[0216] refer to Figure 5D , Figure 5D It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; Figure 5C When the floating ball control 502A in the input method application is triggered, the interactive interface 501D of the input method application is displayed, and the interactive interface 501D includes at least one search result, a switch control 503D, and an input box 502D. The switch control 503D is used to switch between different search results, and the input box 502D is used to input text content. The interactive interface 501D calls the chat robot model (ChatGPT) according to the text content input in the input box 502D to obtain the answer corresponding to the text content.

[0217] refer to Fig. 6A , Fig. 6A It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; FIG. 6A to FIG. 6C It represents an implementation of step 801 to step 805. Document interface 601A includes floating ball control 602A and instruction 603A input by the user, wherein the content of instruction 604A is " / zxss", and instruction 603A is used to call the search function of the input method application. "Famous Quotes" is the text content input by the user.

[0218] refer to Figure 6B , Figure 6BIt is an interface diagram of the method for processing text information provided in an embodiment of the present application; a search function is performed based on the text "famous quotes" to obtain generated content 601B, which is a search result associated with the text "famous quotes". Generated content 601B is displayed in a selected state, and option list 602B is an option for generated content 601B. Option list 602B includes functional options such as completion, continuation, try again, extended content (write longer) and simplified content (simplified). If the user clicks Try Again, generated content 601B is replaced by other search results associated with the text "famous quotes". The number of search results displayed in the icon of the floating ball control 602A includes 16.

[0219] refer to Figure 6C , Figure 6C It is a schematic diagram of an interface of a method for processing text information provided in an embodiment of the present application; Figure 6B When the floating ball control 602A in the input method application is triggered, the interactive interface 601C of the input method application is displayed, and the interactive interface 601C includes at least one search result, a switch control 603C, and an input box 602C. The switch control 603C is used to switch between different search results, and the input box 602C is used to input text content. The interactive interface 601C calls the chat robot model (ChatGPT) according to the text content input in the input box 602C to obtain the answer corresponding to the text content.

[0220] refer to Fig. 7A , Fig. 7A It is a schematic diagram of the interface of the text information processing method provided in the embodiment of the present application. 7A to 7D It represents an implementation method of step 801 to step 805. The document interface 701A includes a floating ball control 702A and a text, "Today's weather is sunny and turning to heavy rain, with concentrated precipitation in some areas, which may be accompanied by strong convective weather such as lightning, short-term heavy precipitation, and thunderstorms and strong winds; the temperature is between 23 and 29 degrees, the humidity is high, and the body feels generally stuffy." Among them, "may be accompanied by strong convective weather such as lightning, short-term heavy precipitation, and thunderstorms and strong winds" is the selected content 703A selected by the user through the swiping operation.

[0221] refer to Figure 7B , Figure 7B 701B is a schematic diagram of an interface of a text information processing method provided by an embodiment of the present application. When the floating ball control 702A is triggered, an option list 701B is displayed. The option list 701B includes icons corresponding to multiple editing options. The editing options may include translation, search, etc.

[0222] refer to Figure 7C , Figure 7C Schematic diagram of the interface of the text information processing method provided in the embodiment of the present application. Figure 7BThe translation option of option list 701B in the text field is triggered, and generated content 701C translated based on selected content 703A is displayed, “It may be accompanied by strong convective weather such as lightning,short-term heavy precipitation and thunderstorms and gales”, and option list 702C is displayed for the user to edit generated content 701C.

[0223] refer to Fig.7D , Fig.7D It is a schematic diagram of the interface of the text information processing method provided in the embodiment of the present application. Figure 7C When the floating ball control 702A in the input method is triggered, the interactive interface 701D of the input method application is displayed, and the interactive interface 701D includes at least one translation result, a switching control 703D, and an input box 702D. The switching control 703D is used to switch between different translation results, and the input box 702D is used to input text content. The interactive interface 701D calls the chat robot model (ChatGPT) according to the text content input in the input box 702D to obtain the answer corresponding to the text content.

[0224] The text information processing method provided in the embodiment of the present application has the following effects:

[0225] 1. Improve input efficiency during text editing: By calling the GPT model function through shortcut commands in the current software, the efficiency and accuracy of user input text can be improved. Quickly call the input method of the GPT model function through shortcut commands to generate natural language text, avoiding the tedious process of manual input and improving input efficiency and accuracy. Enter instructions in the current software and display the results directly in the current software without switching to other applications. Quickly generate natural language text, avoiding the time and energy of switching applications, improving user work efficiency and saving time costs.

[0226] 2. Simplify the operation process: You can directly call up the prompt word in the current software, without switching applications or searching for input boxes, and can quickly enter instructions. And the results are directly displayed at the cursor, without switching applications or searching for the result location, which simplifies the operation process and improves the user experience.

[0227] 3. Improve the accuracy of text editing: When entering commands in the prompt word, you can use functions such as automatic completion and command prompts to reduce user input errors and omissions, thereby improving the accuracy and reliability of work.

[0228] 4. Improve customizability: By entering instructions in the prompt words, users can customize instructions and parameters to meet different needs and scenarios, improving customizability and flexibility. Users can choose different display methods according to their needs, such as segmented display, label display, list display or graphical display, etc., which improves user selectivity.

[0229] 5. Improved the visualization effect of text editing software: The visualization effect is improved by displaying multiple results generated by the GPT model.

[0230] 6. Improve user experience and satisfaction: User experience and satisfaction can be improved by improving user input efficiency and accuracy, improving user work efficiency, improving user selectivity and visualization effects, etc. Users can use the software more conveniently, quickly generate natural language text, and display results in a variety of ways, which improves user satisfaction.

[0231] The following is a description of an exemplary structure of a text information processing device 455 provided in an embodiment of the present application implemented as a software module. In some embodiments, Figure 2 As shown, the software modules in the text information processing device 455 stored in the memory 450 may include: a display module 4551, configured to display a text editing interface and a first control of an input method application, wherein the text editing interface is used to input text through the input method application; a display module 4551, configured to display a second text in the text editing interface in response to an editing operation on a first text in the text editing interface, wherein the second text is generated after processing the first text; a display module 4551, configured to display at least one candidate text in the interactive interface of the input method application in response to a trigger operation on the first control, wherein the candidate text is generated after processing the first text and is different from the second text.

[0232] In some embodiments, the second text is generated after calling the input method application to process the first text, and the input method application is used to be called in different types of the text editing interfaces to process the first text in different text editing interfaces.

[0233] In some embodiments, the editing operation includes: an input operation; a display module 4551, configured to display a first instruction and a first editing option list called by the first instruction in the text editing interface in response to an instruction input operation on the text editing interface before displaying the second text in the text editing interface in response to an editing operation on the first text in the text editing interface, wherein the first editing option list includes at least one editing option, and different editing options correspond to different editing functions; in response to a selection operation on an editing option in the first editing option list, display a second instruction, wherein the second instruction is generated based on the first instruction and the selected editing option; in response to an editing operation on the first text in the text editing interface, displaying the second text in the text editing interface includes: in response to a text input operation on the text editing interface, displaying the input first text at an adjacent position after the second instruction in the text editing interface; in response to an indication operation representing the completion of the input of the first text, displaying the second text in the text editing interface, wherein the second text is generated based on the editing function of the editing option corresponding to the second instruction called by the first text.

[0234] In some embodiments, the editing operation includes an input operation; the display module 4551 is configured to display a third instruction in the text editing interface in response to an instruction input operation in the text editing interface before displaying the second text in the text editing interface in response to an editing operation on the first text in the text editing interface, wherein the third instruction is used to call a corresponding editing function; the displaying of the second text in the text editing interface in response to the editing operation on the first text in the text editing interface comprises: in response to a text input operation in the text editing interface, displaying the inputted first text at an adjacent position after the third instruction in the text editing interface; in response to an indication operation representing the completion of the input of the first text, displaying the second text in the text editing interface, wherein the second text is generated based on the editing function corresponding to the third instruction called by the first text.

[0235] In some embodiments, the first text is text that has been displayed in the text editing interface, and the editing operation includes: a focus operation and a selection operation; the display module 4551 is configured to display the first text in a selected state and display a second editing option list in response to a focus operation on the first text in the text editing interface, wherein the second editing option list includes at least one editing option, and different editing options correspond to different editing functions; in response to the selection operation on the editing option in the second editing option list, the second text is displayed in the text editing interface, wherein the second text is generated based on the editing function of the selected editing option called by the first text.

[0236] In some embodiments, the display module 4551 is configured to display a third editing option list for the second text after displaying the second text in the text editing interface, wherein the third editing option list includes at least one editing option, and different editing options correspond to different editing functions; in response to a selection operation of an editing option in the third editing option list, the third text is displayed in the text editing interface, wherein the third text is generated based on the editing function of the selected editing option called by the second text.

[0237] In some embodiments, the third editing option list also includes an edit again option; the display module 4551 is configured to replace the second text in the text editing interface with any one of the candidate texts in response to a trigger operation for the edit again option in the third editing option list.

[0238] In some embodiments, the types of editing functions include: translation, search, text continuation, text content expansion, text simplification, text content correction, and text style change.

[0239] In some embodiments, the display module 4551 is configured to display at least one text template option applicable to the text editing interface after the text editing interface is displayed; and in response to a selection operation on the text template option, display the content of the text template corresponding to the selected text template option in the text editing interface.

[0240] In some embodiments, the display module 4551 is configured to display the second text as additional content of the first text, or to display the second text as alternative content of the first text in the text editing interface.

[0241] In some embodiments, the interactive interface of the input method application includes a text input control; a display module 4551 configured to display a fourth text in the text input control in response to a text input operation on the text input control, and

[0242] The multimedia information obtained by processing the fourth text is displayed in the interactive interface of the input method application, wherein the types of the multimedia information include: text, audio, video and image.

[0243] In some embodiments, the text processing module 4552 is configured to process the first text according to the editing function corresponding to the editing operation to obtain multiple candidate texts before displaying the second text in the text editing interface; and use the text that meets the display conditions among the multiple candidate texts as the second text, wherein the display conditions include at least one of the following: among the multiple candidate texts, the second text is the text with the highest similarity to the first text; among the multiple candidate texts, the second text is the text with the highest frequency of use within a preset time length; among the multiple candidate texts, the second text is the text with the highest similarity to the historical input text of the input method application.

[0244] In some embodiments, the text processing module 4552 is configured to, when the editing function is search, call a search engine based on the first text to perform search processing, and obtain multiple candidate texts whose similarity with the first text is greater than a similarity threshold; when the editing function is translation, obtain multiple candidate texts of the target language type corresponding to the first text; when the editing function is text modification, call a natural language processing model based on the first text to perform text modification processing, and obtain multiple candidate texts, wherein the text modification includes: text continuation, text content expansion, text simplification, text content correction, and text style change.

[0245] In some embodiments, the display module 4551 is configured to, after the text editing interface is displayed, display first multimedia information in the text editing interface in response to an editing operation on a first text in the text editing interface, wherein the first multimedia information is generated after processing the first text, and types of the first multimedia information include: image, video, audio; and display at least one candidate multimedia information in the interactive interface of the input method application in response to a triggering operation on the first control in the input method application, wherein the candidate multimedia information is generated after processing the first text and is different from the first multimedia information.

[0246] In some embodiments, the text processing module 4552 is configured to, before displaying the first multimedia information in the text editing interface, when the editing operation is a search operation, call a search engine based on the first text to search for the first multimedia information and the at least one candidate multimedia information; when the editing operation is an image generation operation, call an image processing model based on the first text to perform image drawing to obtain the first multimedia information and the at least one candidate multimedia information in image form.

[0247] In some embodiments, the text processing module 4552 is configured to obtain the handle of the text editing interface after the text editing interface is displayed; call the get window thread function based on the handle of the text editing interface to query the process name to which the text editing interface belongs; determine the application to which the text editing interface belongs based on the process name; and configure multiple instructions of the input method application for the application to which the text editing interface belongs, wherein the multiple instructions are used to call different editing functions respectively.

[0248] The embodiment of the present application provides a computer program product, which includes a computer program or a computer executable instruction, and the computer program or the computer executable instruction is stored in a computer readable storage medium. The processor of the electronic device reads the computer executable instruction from the computer readable storage medium, and the processor executes the computer executable instruction, so that the electronic device executes the text information processing method described in the embodiment of the present application.

[0249] The present application embodiment provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions or computer programs are stored. When the computer-executable instructions or computer programs are executed by a processor, the processor will be caused to execute the text information processing method provided by the present application embodiment, for example, Figure 3A The text information processing method is shown.

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

[0251] In some embodiments, computer executable instructions may be in 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 stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0252] As an example, computer-executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file storing other programs or data, such as in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files storing one or more modules, subroutines, or code portions).

[0253] As an example, the executable instructions may be deployed to be executed on one electronic device, or on multiple electronic devices located at one site, or on multiple electronic devices distributed at multiple sites and interconnected by a communication network.

[0254] In summary, in the process of editing text, the corresponding second text is generated and displayed based on the first text through the embodiment of the present application, and multiple candidate texts are displayed by triggering the first control of the input method application, thereby improving the text editing efficiency. Through the cross-application function of the input method application, multiple texts can be quickly generated in different applications with text editing interfaces, thereby improving the user's text editing efficiency; there is no need to implant additional functions into the application of the text editing interface, thus saving computing resources.

[0255] The above is only an embodiment of the present application and is not intended to limit the protection scope of the present application. Any modifications, equivalent substitutions and improvements made within the spirit and scope of the present application are included in the protection scope of the present application.

Claims

1. A method for processing text information, characterized in that: The method comprises: Displaying a text editing interface and a first control of an input method application, wherein the text editing interface is used to input text through the input method application; In response to an editing operation on a first text in the text editing interface, displaying a second text in the text editing interface, wherein the second text is generated by processing the first text; In response to a triggering operation on the first control, at least one candidate text is displayed in an interactive interface of the input method application, wherein the candidate text is generated after processing the first text and is different from the second text.

2. The method according to claim 1, characterized in that The second text is generated after calling the input method application to process the first text. The input method application is used to be called in different types of text editing interfaces to process the first text in different text editing interfaces.

3. The method according to claim 1, characterized in that The editing operation includes: an input operation; before displaying the second text in the text editing interface in response to the editing operation on the first text in the text editing interface, the method further includes: In response to an instruction input operation on the text editing interface, displaying a first instruction and a first editing option list called by the first instruction in the text editing interface, wherein the first editing option list includes at least one editing option, and different editing options correspond to different editing functions; In response to a selection operation on an editing option in the first editing option list, displaying a second instruction, wherein the second instruction is generated based on the first instruction and the selected editing option; The step of displaying the second text in the text editing interface in response to an editing operation on the first text in the text editing interface comprises: In response to a text input operation on the text editing interface, displaying the input first text at an adjacent position after the second instruction in the text editing interface; In response to the indication operation of completing the first text by the representation input, the second text is displayed in the text editing interface, wherein the second text is generated based on the editing function of the editing option corresponding to the second instruction called by the first text.

4. The method according to claim 1, characterized in that: The editing operation includes an input operation; Before displaying the second text in the text editing interface in response to the editing operation on the first text in the text editing interface, the method further includes: In response to an instruction input operation in the text editing interface, displaying a third instruction in the text editing interface, wherein the third instruction is used to call a corresponding editing function; The step of displaying the second text in the text editing interface in response to an editing operation on the first text in the text editing interface comprises: In response to a text input operation in the text editing interface, displaying the input first text in an adjacent position after the third instruction in the text editing interface; In response to the indication operation of completing the first text by inputting the representation, the second text is displayed in the text editing interface, wherein the second text is generated based on the first text calling the editing function corresponding to the third instruction.

5. The method according to claim 1, characterized in that The first text is text that has been displayed in the text editing interface, and the editing operation includes: a focusing operation and a selecting operation; The step of displaying the second text in the text editing interface in response to an editing operation on the first text in the text editing interface comprises: In response to a focus operation on a first text in the text editing interface, displaying the first text in a selected state and displaying a second editing option list, wherein the second editing option list includes at least one editing option, and different editing options correspond to different editing functions; In response to the selection operation on an editing option in the second editing option list, the second text is displayed in the text editing interface, wherein the second text is generated based on the first text calling an editing function of the selected editing option.

6. The method according to claim 1, characterized in that After displaying the second text in the text editing interface, the method further includes: Displaying a third editing option list for the second text, wherein the third editing option list includes at least one editing option, and different editing options correspond to different editing functions; In response to a selection operation on an editing option in the third editing option list, the third text is displayed in the text editing interface, wherein the third text is generated by calling an editing function of the selected editing option based on the second text.

7. The method according to claim 6, characterized in that The third editing option list also includes an edit again option; the method further includes: In response to a triggering operation on the re-editing option in the third editing option list, the second text in the text editing interface is replaced with any one of the candidate texts.

8. The method according to any one of claims 2 to 7, characterized in that: The types of editing functions include: translation, search, text continuation, text content expansion, text simplification, text content correction and text style change.

9. The method according to any one of claims 1 to 7, characterized in that: After displaying the text editing interface, the method further includes: displaying at least one text template option applicable to the text editing interface; In response to a selection operation on the text template option, the content of the text template corresponding to the selected text template option is displayed in the text editing interface.

10. The method according to any one of claims 1 to 7, characterized in that: The displaying of the second text in the text editing interface includes: In the text editing interface, the second text is displayed as additional content of the first text, or the second text is displayed as alternative content of the first text.

11. The method according to any one of claims 1 to 7, characterized in that: The interactive interface of the input method application includes a text input control; the method further includes: In response to a text input operation on the text input control, displaying a fourth text in the text input control, and The multimedia information obtained by processing the fourth text is displayed in the interactive interface of the input method application, wherein the types of the multimedia information include: text, audio, video and image.

12. The method according to any one of claims 1 to 7, characterized in that: Before displaying the second text in the text editing interface, the method further includes: Processing the first text according to the editing function corresponding to the editing operation to obtain multiple candidate texts; The text that meets the display condition among the multiple candidate texts is used as the second text, wherein the display condition includes at least one of the following: Among the multiple candidate texts, the second text is the text with the highest similarity to the first text; Among the multiple candidate texts, the second text is the text with the highest frequency of use within a preset time period; Among the plurality of candidate texts, the second text is the text having the highest similarity to the historical input text of the input method application.

13. The method according to claim 12, characterized in that The first text is processed according to the editing function corresponding to the editing operation to obtain multiple candidate texts, including: When the editing function is searching, calling a search engine to perform a search process based on the first text to obtain a plurality of candidate texts whose similarity to the first text is greater than a similarity threshold; When the editing function is translation, obtaining a plurality of candidate texts of a target language type corresponding to the first text; When the editing function is text modification, a natural language processing model is called based on the first text to perform text modification processing to obtain multiple candidate texts, wherein the text modification includes: text continuation, text content expansion, text simplification, text content correction and text style change.

14. The method according to any one of claims 1 to 7, characterized in that: After displaying the text editing interface, the method further includes: In response to an editing operation on a first text in the text editing interface, displaying first multimedia information in the text editing interface, wherein the first multimedia information is generated after processing the first text, and the types of the first multimedia information include: image, video, audio; In response to a triggering operation on the first control in the input method application, at least one candidate multimedia information is displayed in the interactive interface of the input method application, wherein the candidate multimedia information is generated after processing the first text and is different from the first multimedia information.

15. The method according to claim 14, characterized in that Before displaying the first multimedia information in the text editing interface, the method further includes: When the editing operation is a search operation, calling a search engine based on the first text to search for the first multimedia information and the at least one candidate multimedia information; When the editing operation is an image generation operation, an image processing model is called based on the first text to perform image drawing to obtain the first multimedia information and the at least one candidate multimedia information in image form.

16. The method according to any one of claims 1 to 7, characterized in that: After displaying the text editing interface, the method further includes: Get the handle of the text editing interface; Based on the handle of the text editing interface, a window thread acquisition function is called to query the process name to which the text editing interface belongs; Determine the application to which the text editing interface belongs based on the process name; The application to which the text editing interface belongs is configured with a plurality of instructions of the input method application, wherein the plurality of instructions are respectively used to call different editing functions.

17. A text information processing device, characterized in that: The device comprises: A display module configured to display a text editing interface and a first control of an input method application, wherein the text editing interface is used to input text through the input method application; A display module, configured to display a second text in the text editing interface in response to an editing operation on the first text in the text editing interface, wherein the second text is generated after processing the first text; The display module is configured to display at least one candidate text in the interactive interface of the input method application in response to a trigger operation on the first control, wherein the candidate text is generated after processing the first text and is different from the second text.

18. An electronic device, characterized in that: The electronic device comprises: A memory for storing computer executable instructions; A processor, configured to implement the text information processing method according to any one of claims 1 to 16 when executing the computer executable instructions or computer programs stored in the memory.

19. A computer-readable storage medium storing computer-executable instructions or a computer program, characterized in that: When the computer executable instructions or computer program are executed by a processor, the text information processing method according to any one of claims 1 to 16 is implemented.

20. A computer program product comprising computer executable instructions or a computer program, characterized in that When the computer executable instructions or computer program are executed by a processor, the text information processing method according to any one of claims 1 to 16 is implemented.