Material recommendation method and device, equipment, medium and product
By automatically recommending relevant materials during the document editing process, the problem of low editing efficiency caused by users manually collecting materials is solved, and an efficient document editing workflow is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING ZITIAO NETWORK TECH CO LTD
- Filing Date
- 2026-02-28
- Publication Date
- 2026-05-29
AI Technical Summary
During document editing, users need to manually collect and integrate materials, resulting in low editing efficiency.
By triggering actions within a document, recommended content related to specific content blocks can be generated and automatically sent based on the user's access permissions, reducing the steps required for users to manually collect and integrate such content.
It improves document editing efficiency, allowing users to improve or update content directly using recommended materials without having to manually collect and integrate them.
Smart Images

Figure CN122113868A_ABST
Abstract
Description
Technical Field
[0001] One or more embodiments of this document relate to a material recommendation method, material recommendation apparatus, electronic device, computer-readable storage medium, and computer program product. Background Technology
[0002] A document processing system can be understood as a software system used to manage documents. Users can use the document processing system to perform document-related operations, such as creating documents, editing documents, and viewing documents.
[0003] In the process of users editing documents using document processing systems, it is especially important to help users improve their editing efficiency. Summary of the Invention
[0004] This summary section is provided to briefly introduce the concepts, which will be described in detail in the detailed description section below. This summary section is not intended to identify key or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.
[0005] At least one embodiment of this document provides a material recommendation method, comprising: receiving a first operation triggered in a first document, wherein the first operation is used to trigger material recommendation for a first content block in the first document; generating a first recommended material based on the first content block and the access permissions of the operator of the first operation, wherein the first recommended material is related to at least a portion of the document content to be improved in the first content block; and sending the first recommended material to the operator of the first operation.
[0006] At least one embodiment of this document provides a material recommendation device, comprising: a receiving module configured to receive a first operation triggered in a first document, wherein the first operation is used to trigger material recommendation for a first content block in the first document; a generating module configured to generate first recommended material based on the first content block and the access permissions of the operator of the first operation, wherein the first recommended material is related to at least a portion of the document content to be improved in the first content block; and a sending module configured to send the first recommended material to the operator of the first operation.
[0007] At least one embodiment of this document provides an electronic device, including: at least one processor; and at least one memory, including one or more computer program instructions; wherein the one or more computer program instructions are executed by the processor to perform the material recommendation method provided in at least one embodiment of this document.
[0008] At least one embodiment of this document provides a computer-readable storage medium for non-transitory storage of computer-readable instructions, wherein the material recommendation method provided by at least one embodiment of this document is implemented when the computer-readable instructions are executed by a processor.
[0009] At least one embodiment of this document provides a computer program product, including a computer program that, when executed by a processor, implements the material recommendation method provided in at least one embodiment of this document.
[0010] In a material recommendation method provided in at least one embodiment of this article, in a document editing scenario, a material recommendation process for a specific content block in the document is initiated by triggering a first operation, generating recommended materials, and providing feedback to the user. Since the recommended materials are related to the document content to be improved in the content block and comply with the user's access permissions, the user can use the recommended materials to improve the document content of the content block, such as supplementing incomplete document content or modifying document content that needs to be updated. In this way, the materials required for document editing are automatically recommended to the user, eliminating the need for the user to manually collect and integrate materials, thus improving document editing efficiency. Attached Figure Description
[0011] The above and other features, advantages, and aspects of the embodiments herein will become more apparent when taken in conjunction with the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0012] Figure 1 This illustration schematically depicts an application scenario of a material recommendation method provided in at least one embodiment of this paper.
[0013] Figure 2 The illustration shows a flowchart of a material recommendation method provided in at least one embodiment of this document;
[0014] Figure 3 The illustration shows a flowchart of a material recommendation method provided in at least one embodiment of this document;
[0015] Figure 4 The schematic diagram illustrates a structural schematic of a material recommendation device provided in at least one embodiment of this document; and
[0016] Figure 5 A schematic diagram of the structure of an electronic device suitable for implementing at least one embodiment of the present invention is shown. Detailed Implementation
[0017] One or more embodiments of this document will now be described in more detail with reference to the accompanying drawings. While some embodiments of this document are shown in the drawings, it should be understood that this document can be implemented in various forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided to provide a more thorough and complete understanding of this document. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of this document.
[0018] It should be understood that the steps described in the method embodiments herein may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this document is not limited in this respect.
[0019] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0020] It should be noted that the concepts of "first" and "second" mentioned in this article are only used to distinguish different devices, modules or units, and are not used to limit the order of the functions performed by these devices, modules or units or their interdependencies.
[0021] It should be noted that the terms "one" and "more" used in this document are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0022] The names of the messages or information exchanged between the various devices in the embodiments herein are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0023] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition, use, storage or deletion of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0024] It is understood that before using the technical solutions disclosed in the embodiments of this article, relevant users should be informed of the type, scope of use, and usage scenarios of the information involved in this article and their authorization should be obtained in accordance with relevant laws and regulations through appropriate means. Relevant users may include any type of rights holder, such as individuals, enterprises, or groups.
[0025] For example, in response to receiving an active request from a user, a prompt message is sent to the relevant user to clearly inform the user that the requested operation will require obtaining and using the user's information, thereby enabling the relevant user to choose whether to provide information to the software or hardware such as the electronic device, application, server, or storage medium that performs the operation of any embodiment of the present document based on the prompt message.
[0026] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide information to the electronic device.
[0027] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation method described in this article. Other methods that comply with relevant laws and regulations may also be applied to the implementation method described in this article.
[0028] A document processing system can be understood as a software system used to manage documents. It is widely used in various scenarios such as office work, study, and creation. Users can use the document processing system to perform document-related operations, such as creating, editing, and viewing documents.
[0029] When users edit documents using a document processing system, they often need to use some materials to edit the document content. For example, users need to manually collect the necessary materials and then combine the collected materials to edit the document in the document processing system.
[0030] Taking the example of a user editing a technical introduction document for technology A in a document processing system, the user needs to search for materials related to technology A from different channels such as the internal document library and the Internet, organize the materials related to technology A, and then input the document content into the technical introduction document for technology A.
[0031] However, the above methods require users to manually collect and integrate materials, which takes up a lot of time in the material preparation process and reduces the user's document editing efficiency.
[0032] To at least partially solve the above-mentioned technical problem, at least one embodiment of this paper provides a material recommendation method, the method comprising: receiving a first operation triggered in a first document, the first operation being used to trigger material recommendation of a first content block in the first document; generating a first recommended material based on the first content block and the access permissions of the operator of the first operation, the first recommended material being related to at least a portion of the document content to be improved in the first content block; and sending the first recommended material to the operator of the first operation.
[0033] Based on the material recommendation method provided in at least one embodiment of this article, at least one embodiment of this article also provides a material recommendation device, an electronic device, a computer-readable storage medium, and a computer program product.
[0034] In a material recommendation method provided in at least one embodiment of this article, in a document editing scenario, a material recommendation process for a specific content block in the document is initiated by triggering a first operation, generating recommended materials, and providing feedback to the user. Since the recommended materials are related to the document content to be improved in the content block and comply with the user's access permissions, the user can use the recommended materials to improve the document content of the content block, such as supplementing incomplete document content or modifying document content that needs to be updated. In this way, the materials required for document editing are automatically recommended to the user, eliminating the need for the user to manually collect and integrate materials, thus improving document editing efficiency.
[0035] The following detailed description, with reference to the accompanying drawings, describes one or more embodiments and some examples thereof.
[0036] Figure 1 The illustration shows an application scenario diagram of a material recommendation method provided in at least one embodiment of this article.
[0037] like Figure 1 As shown, the application scenario provided in this embodiment may include user 101, terminal device 102, and server 103. Terminal device 102 can be various electronic devices capable of providing interactive pages, such as smart wearable devices, smart appliances, smart cars, mobile phones, tablets, laptops, or desktop computers.
[0038] In one or more embodiments of this document, a client may be installed in the terminal device 102. The client may be a client of a document processing system. The server 103 may be a server that provides support for the operation of the client installed in the terminal device 102. That is, the server 103 may be a server of a document processing system. For example, the server 103 may be a server for a local area network or a wide area network, or a cloud server, etc. The one or more embodiments of this document do not limit this.
[0039] User 101 can be a user of a client installed on terminal device 102. For example, user 101 can be an editor who edits documents, a viewer who views documents, or a commenter who makes comments on documents in a document processing system.
[0040] In one or more embodiments described herein, the document processing system can be deployed in different ways. In some embodiments, the document processing system can be deployed locally, for example, it can be a document processing application (APP), document processing tool, document processing plugin, etc., installed on terminal device 102; or, for example, it can be deployed in the cloud, that is, it can provide document management services in the form of cloud services, for example, it can be an online document processing tool. Furthermore, the document processing system can be integrated into other systems, providing document processing functions as a functional module within those systems. For example, it can be integrated into an office collaboration system, providing document processing services (e.g., cloud document processing services) within that system.
[0041] The server 103 can communicate with the terminal device 102, for example, by providing the client installed on the terminal device 102 with relevant data (such as document content) required by the terminal device to run the client; or, for example, the server 103 can also receive relevant data returned by the terminal device 102 during the running of the client (such as operation data on the document triggered by user 101 on the client).
[0042] For example, the material recommendation method provided in one or more embodiments of this document can be implemented in software, hardware, firmware, or any combination thereof.
[0043] For example, the material recommendation method provided in one or more embodiments of this document is applicable to a terminal device, which can load and execute the material recommendation method. The embodiments of this document do not limit this. For example, the terminal device may include a central processing unit (CPU), graphics processing unit (GPU), digital signal processor (DSP), neural network processing unit (NPU), or other forms of processing units with data processing capabilities and / or instruction execution capabilities, storage units, etc. The server or terminal device may also have an operating system and various types of application programming interfaces (APIs) installed, implementing the material recommendation method provided in the embodiments of this document by running code or instructions.
[0044] The following will combine Figure 2 and Figure 3 This paper provides a detailed description of a material recommendation method based on at least one embodiment.
[0045] Figure 2 The illustration shows a flowchart of a material recommendation method provided in at least one embodiment of this document.
[0046] like Figure 2 As shown, the material recommendation method of this embodiment includes steps S201 to S203. In some embodiments, the entity performing the material recommendation can be an electronic device with a client deployed, an electronic device with a server deployed, or any electronic device that communicates between the client and the server; one or more embodiments herein do not limit this. The steps included in this material recommendation method are described below:
[0047] Step S201: Receive the first operation triggered in the first document.
[0048] In one or more embodiments herein, the first document may be understood as any document, for example, the first document may be a document that is currently open and being viewed.
[0049] By dividing the first document in terms of structural logic, the first document is divided into at least one content block. That is, the first document may include one or more content blocks. A content block can be understood as a document section. A content block corresponds to at least a continuous portion of the document content in the first document. For example, the first document may include multiple subheadings. The document content under a subheading can form a content block. Or, for example, the first document may include a table. At least one adjacent area in the table can form a content block.
[0050] In one or more embodiments of this document, a user is supported in triggering a first operation in a first document. The first operation can be used to trigger material recommendations for a first content block in the first document. The first content block can be any content block among one or more content blocks included in the first document.
[0051] In other words, when a user is processing the first document (for example, editing the document), if there is a need for reference materials for the first content block, the first operation can be triggered to recommend materials for the first content block.
[0052] One or more embodiments of this document support triggering the first operation in different ways. For example, the document page of the first document can provide a material recommendation control, and the user can trigger the first operation by triggering the material recommendation control; or, for another example, the triggering logic of the first operation can be pre-configured, and the first operation is triggered when the operation triggered by the user in the first document meets the triggering logic of the first operation.
[0053] For example, the triggering logic for the first operation can be: when the user opens the first document, the first operation is triggered; or, the triggering logic for the first operation can also be: when the user opens the first document and moves to the first content block, the first operation is triggered; or, when the user edits the first content block, the first operation is triggered.
[0054] Material recommendation for the first content block in the first document can be understood as: recommending materials for the document content corresponding to the first content block in the first document; that is, the object of material recommendation is the first content block. In other words, in one or more embodiments of this paper, material recommendation is based on content blocks, providing targeted and fine-grained material recommendations for a specific content block in the first document.
[0055] In some embodiments, considering that document type may affect the material recommendation effect, it is also possible to determine whether to provide material recommendation function to user based on document type. For example, obtain the first document type corresponding to the first document, and in response to the first document type matching the set of document types, provide an operation entry for receiving the first operation in the first document.
[0056] Document type can be used to represent the characteristics of document content. For example, document type can be periodically updated document, technical related document, creative document, etc. The first document type can be understood as the document type of the first document. Setting a document type set can include multiple document types. Setting multiple document types in the document type set can be understood as document types that need to be recommended for materials. In other words, by obtaining the first document type corresponding to the first document, it is determined whether the first document type belongs to a set of document types. This determines whether to recommend materials to the content blocks in the first document. When the first document type matches the set of document types, indicating that material recommendations are needed, an operation entry point for receiving the first operation is provided in the first document, allowing the user to trigger the first operation within the first document. For example, when the first document type matches the set of document types, a material recommendation control is provided on the document page of the first document to receive the first operation. Alternatively, when the first document type matches the set of document types, the system detects in real-time whether the operation triggered in the first document meets the triggering logic of the first operation to receive the first operation and enable material recommendations for the first content block. When the first document type does not match the set of document types, indicating that material recommendations are not needed, there is no need to provide an operation entry point for receiving the first operation in the first document, nor is there any need to detect the first operation within the first document.
[0057] For example, the document type set can include periodically updated documents and technology-related documents. Periodically updated documents can be understood as documents that are updated and maintained periodically, such as weekly reports and quarterly meeting documents. Since writing periodically updated documents usually requires the use of external materials, the document type set can include periodically updated documents. Technology-related documents can be understood as documents related to technology, such as technical introduction documents and product manuals. Since writing technology-related documents usually requires the use of external materials, the document type set can include technology-related documents.
[0058] In this way, by pre-configuring a set of document types, a subset of documents is selected based on their document types to check whether the first operation should be triggered. On the one hand, the triggering of the first operation is only detected in documents whose document types match the set of document types, rather than in all documents, saving computing resources and improving the efficiency of material recommendation. On the other hand, the document types in the set of document types can be those with good material recommendation performance, such as document types whose content is more related to external materials than a set threshold (i.e., a high degree of correlation). Therefore, by selecting the document types that need to be recommended, the effectiveness of material recommendation is ensured.
[0059] In one or more embodiments of this document, the first document type corresponding to the first document can be obtained in different ways. For example, in response to the document type associated with the first document being non-empty, the first document type associated with the first document can be obtained, or in response to the document type associated with the first document being empty, the first document type corresponding to the first document can be obtained based on at least one of the document title of the first document and the content of the first document in the first document.
[0060] The fact that the document type associated with the first document is not empty can be understood as the first document belonging to a document whose document type has been marked. For example, within a historical time period, the first document type corresponding to the first document is obtained, and the obtained first document type is associated with the first document. For a first document that has already been marked with a document type, the first document type corresponding to the first document can be obtained directly based on the document type associated with the first document.
[0061] If the document type associated with the first document is empty, it can be understood that the first document belongs to a category of documents that have not been tagged with a document type. For example, the first document is a newly created document, and its document type has not been retrieved within the historical time period, meaning the first document is not associated with any document type. For a first document that has not been tagged with a document type, the corresponding first document type can be retrieved by combining at least one of the document title and document content. In addition, the first document type can be associated with the first document; that is, the first document can be tagged after its document type is retrieved for the first time.
[0062] In this way, after obtaining the first document type corresponding to the first document, the document type of the first document is marked by associating the first document with the first document type. When it is necessary to obtain the document type of the first document in the future, if the first document has already been associated with a document type, there is no need to repeat the step of obtaining the document type of the first document, thereby improving the efficiency of obtaining the document type of the first document and thus improving the efficiency of material recommendation.
[0063] Furthermore, to ensure the accuracy of the document type associated with the first document, in one or more embodiments of this document, the document type may also be updated. For example, in response to a second operation triggered in the first document, the document type associated with the first document may be updated; this second operation may be used to modify the document title of the first document.
[0064] For example, the second operation could be a renaming operation of the first document, or it could be a modification operation triggered in the document title area of the first document.
[0065] Since document titles typically reflect document characteristics and features, after the second operation modifies the title of the first document, the corresponding first document type is retrieved again based on the modified title. By updating the first document type in real time, the accuracy of the first document type is ensured, guaranteeing a precise recommendation of materials.
[0066] As mentioned above, in one or more embodiments of this article, the first document type corresponding to the first document can be obtained by combining at least one of the document title of the first document and the content of the first document in the first document. The document title of the first document can be understood as the name of the first document, and the content of the first document in the first document can be understood as the existing document content in the first document. That is, the first document type corresponding to the first document is determined by using the document title and the content of the first document together.
[0067] For example, the mapping relationship between keywords and document types can be pre-configured. Based on at least one of the document title and the content of the first document, the first document type corresponding to the first document can be obtained. This includes: performing keyword recognition on at least one of the document title and the content of the first document; and finding the document type that has a mapping relationship with the recognized related words based on the recognized keywords and the mapping relationship. This document type is the first document type corresponding to the first document.
[0068] For example, obtaining the first document type corresponding to the first document based on at least one of the document title and the content of the first document includes: sending the document title and at least one of the content of the first document to the first model, and determining the first document type corresponding to the first document based on the output of the first model.
[0069] The first model can be understood as any artificial intelligence model with the ability to recognize element information. For example, the first model can include any one or a combination of multiple large-scale models such as language models, speech models, vision models, and multimodal models. For example, the first model can be a model built on a transformer architecture, a model built on a recurrent neural network, a model built on an attention mechanism, etc. Alternatively, the first model can also be a model obtained by improving on the transformer architecture, such as a mixture of experts (MoE) model.
[0070] One or more embodiments in this paper do not limit the method of obtaining the first model. For example, the first model can be an existing, open-source artificial intelligence model. Alternatively, the first model can be an artificial intelligence model obtained by fine-tuning the pre-trained artificial intelligence model based on the pre-trained artificial intelligence model using training data related to document type recognition (such as the document titles of other documents, the document content of other documents, and the document types of other documents).
[0071] The first model can acquire the document type and prompt words of the first document based on prompt learning. In generative tasks (such as text generation, question answering, and dialogue tasks), it can be used to guide the artificial intelligence model to make specific outputs. By configuring prompt words, it helps the artificial intelligence model understand the background and requirements of the task. Without retraining the artificial intelligence model, it enables the artificial intelligence model to handle different types of processing tasks, increasing the scalability and flexibility of the artificial intelligence model.
[0072] For example, a first prompt word is generated and sent to a first model. The first prompt word may include at least one of the document title of the first document and the content of the first document in the first document, as well as prompt information for analyzing the document type of the first document using at least one of the document title and the content of the first document in the first document. The output of the first model is received (e.g., output results including the document type). Based on the output of the first model (e.g., information extraction from the output of the first model), the first document type is determined.
[0073] By sending the first prompt word to the first model, the first model can analyze at least one of the document title and the content of the first document to determine the document type of the first document, and then output the output result including the first document type of the first document. This realizes the automatic acquisition of the first document type of the first document, and improves the automation and efficiency of document type acquisition.
[0074] In one or more embodiments of this document, the first operation is used to trigger the material recommendation of the first content block in the first document. Therefore, after receiving the first operation, the first content block that needs to be recommended can be located in the first document in conjunction with the first operation.
[0075] In some embodiments, the first content block can be obtained by determining the first content block based on the operation position of the first operation in the first document.
[0076] The position of the first operation in the first document can be understood as the trigger position of the first operation in the first document. For example, when the first operation is triggered at the 5th character of the 10th line in the first document, the position of the first operation in the first document can be the 5th character of the 10th line.
[0077] Since the party performing the first operation can trigger the first operation at the location where material recommendation is needed based on its own material recommendation needs, the content block where the first operation is located in the first document is taken as the first content block according to the operation location of the first operation in the first document.
[0078] For example, the first operation is triggered by the material recommendation control at the 5th character of the 10th line in the first document. Since the 5th character of the 10th line belongs to content block A in the first document, the first content block is content block A.
[0079] Thus, based on the material recommendation needs indicated by the operation position of the operator in the first operation, the first content block that meets the material recommendation needs of the operator in the first operation is located from the first document, ensuring that the material recommendation process targets the content block needed by the operator and guaranteeing the material recommendation effect.
[0080] In other embodiments, the first document may include first document content, and the operator of the first operation corresponds to a first operator identifier. For example, the first operator identifier may be the account name of the operator of the first operation. In this case, the first content block can be obtained as follows: in response to the first document content including the first operator identifier, the first content block is determined based on the position information of the first operator identifier in the first document.
[0081] For example, some document processing systems support mentioning account names in documents. This can be done to clearly identify the person in charge of a task and the communication partner. In this case, the document content can include the operator's identifier.
[0082] When the content of the first document includes the identifier of the first operator, it indicates that the first document contains some document content related to the operator of the first operation. The operator of the first operation may need to edit the document content related to the operator of the first operation in the first document. Therefore, the first operation may recommend materials for the document content related to the operator of the first operation in the first document. Based on the position information of the identifier of the first operator in the first document, the content block containing the document content related to the operator of the first operation in the first document is taken as the first content block.
[0083] For example, the triggering logic of the first operation is pre-configured as follows: when the user opens the first document, the first operation is triggered. The operator of the first operation triggers the first operation by opening the first document. Since the document content of content block B in the first document includes the identifier of the first operator, the first content block is obtained as content block B.
[0084] In this way, by combining the operator identifier mentioned in the first document, the content block targeted by the first operation is automatically located, and the first content block that needs to be recommended for materials related to the operator of the first operation is identified. The operator of the first operation does not need to specify the content block, which makes it easy for the operator of the first operation to quickly start the material recommendation process.
[0085] Furthermore, considering that one or more embodiments of this paper recommend materials, recommending materials after the first content block has already included complete document content would lead to a waste of computing resources. Therefore, it is also possible to determine whether the first content block has at least some document content that needs to be improved. That is, to determine whether the document content of the first content block is complete. Incomplete document content of the first content block can be understood as the first content block being empty, the document content in the first content block not being fully edited, or the document content in the first content block needing to be updated.
[0086] For example, based on the content block title and content block body of the first content block, it is determined whether the first content block has at least some document content that needs to be improved. In response to the content block title being not empty and the content block body including incomplete content, the first content block has at least some document content that needs to be improved.
[0087] One or more embodiments in this document do not limit the method of determining whether the content block body includes incomplete content. For example, the content block title and content block body can be sent to an artificial intelligence model, the determination result returned by the artificial intelligence model can be received, and the artificial intelligence model can be used to analyze whether the content block body is complete under the content block title.
[0088] In this way, if it is determined that at least some of the document content in the first content block needs to be improved, then material recommendations will be made for the first content block, ensuring the necessity of material recommendations and reducing the computing resources consumed by making unnecessary material recommendations.
[0089] One or more embodiments of this document do not limit the method of obtaining the content block title. For example, identifying multi-level titles related to the first content block, which may include a first title in the first content block and at least one parent title associated with the first title, and concatenating the multi-level titles to obtain the content block title.
[0090] In other words, considering the accuracy of content block titles, in one or more embodiments of this paper, not only is the first title in the first content block identified, but also the higher-level parent titles associated with the first content block are identified. By splicing, the content block titles include multi-level titles from broad to narrow scope, ensuring the semantic coherence and accuracy of the content block titles.
[0091] In this way, by splicing multi-level headings, the accurate content block title of the first content block can be obtained. Based on the accurate content block title of the first content block, the accurate and complete content of the content block body can be obtained, thereby improving the accuracy of the content block body completeness judgment.
[0092] For example, identifying multi-level headings related to the first content block includes: identifying multi-level headings related to the first content block based on the table of contents information of the first document; or, for another example, identifying multi-level headings related to the first content block includes: obtaining the first table in the first document that includes the first content block, identifying the first table based on the hierarchical relationship of the first table, and obtaining multi-level headings related to the first content block.
[0093] Step S202: Generate the first recommended material based on the access permissions of the first content block and the operator of the first operation.
[0094] In one or more embodiments of this document, recommended materials can be understood as material information used to assist in editing document content. The first recommended material can be related to at least part of the document content to be improved in the first content block. The at least part of the document content to be improved can be understood as lacking at least part of the document content or having at least part of the document content that needs to be updated. That is, the first recommended material can be used to assist the operator of the first operation in editing the at least part of the document content that is missing in the first content block, or the first recommended material can be used to assist the operator of the first operation in editing the at least part of the document content that needs to be updated in the first content block.
[0095] For example, the first content block should include five document contents from (1) to (5). The first content block is missing two document contents from (3) and (4). The document contents from (5) in the first content block need to be updated. The first recommended material is related to the three document contents from (3) to (5) and can be used to assist the operator of the first operation in editing the three document contents from (3) to (5) in the first content block.
[0096] The first recommended material can include material information in different forms, such as text material information, video material information, image material information, audio material information, file material information, etc.
[0097] The access permissions of the operator of the first operation can be used to indicate the range of information that the operator of the first operation can access. Considering that the first recommended material is used to assist the operator of the first operation in editing the first content block, the first recommended material provided to the operator of the first operation should all be material information that the operator of the first operation has access to. By combining the access permissions of the operator of the first operation to generate the first recommended material, it is ensured that the material information included in the first recommended material complies with the access permissions of the operator of the first operation, thereby reducing the adverse effects caused by recommending first recommended material outside the access permissions of the operator of the first operation.
[0098] In some possible implementations, the first document corresponds to the first document type. In this case, the first recommended material is generated based on the first content block and the access permissions of the operator of the first operation. This includes: obtaining at least one data source that corresponds to the first document type and that the operator of the first operation has access permissions; searching in at least one data source corresponding to the first document type according to the first information associated with the first content block to obtain candidate materials; and generating the first recommended material based on the candidate materials.
[0099] In other words, different document types are configured with different data sources. That is, when recommending materials for documents of different document types, the recommended materials can be generated from different data sources as material acquisition channels.
[0100] For example, for the first document, which is a periodically updated document, since periodically updated documents need to be updated and maintained periodically, and the material information for updating and maintaining periodically updated documents is usually scattered in different functional modules of the office collaboration system, at least one data source corresponding to the periodically updated document can include different functional modules of the office collaboration system, such as instant messaging module, meeting module, document module, etc. Based on the information in different functional modules of the office collaboration system, the first recommended material is generated.
[0101] For the first document, which is a technical document, since technical documents are related to technology and the material information for editing technical documents usually exists in Internet resources or other materials, at least one data source corresponding to the technical document can include the Internet and internal knowledge bases, such as online search engines. Based on the information in the Internet and internal knowledge bases, the first recommended material is generated.
[0102] In this way, by combining the characteristics of different document types, recommended materials are generated from data sources corresponding to the document types, making the source of the recommended materials match the first document type corresponding to the first document, and making the process of generating recommended materials more targeted and efficient.
[0103] The first information associated with the first content block can be understood as information in the first document that is related to the first content block and can help generate the first recommended material. For example, the first information associated with the first content block may include at least one of the following: the context information of the first content block, the title of the content block corresponding to the first content block, and the content of the historical content block corresponding to the first content block (such as the body text and comments of the historical content block).
[0104] In other words, the process of generating the first recommended material can be divided into two stages: candidate material retrieval and candidate material integration. In the candidate material retrieval stage, at least one data source corresponding to the first document type is used as the retrieval database, and the first information associated with the first content block is used as the retrieval statement. Candidate materials related to the first information associated with the first content block are selected from at least one data source corresponding to the first document type. In the candidate material integration stage, the candidate materials are analyzed and organized to generate the first recommended material that meets the material recommendation requirements and can be provided to the operator of the first operation.
[0105] In some possible implementations, generating the first recommended material based on the candidate materials includes: sending the candidate materials to the second model and determining the first recommended material based on the output of the second model.
[0106] The second model can be understood as any artificial intelligence model with the ability to recognize element information. For example, the second model can include any one or a combination of multiple large-scale models such as language models, speech models, vision models, and multimodal models. For example, the second model can be a model built on a transformer architecture, a model built on a recurrent neural network, a model built on an attention mechanism, etc. Alternatively, the second model can also be a model obtained by improving on the transformer architecture, such as a mixture of experts (MoE) model.
[0107] It should be noted that in some embodiments, the first model and the second model can be the same artificial intelligence model, while in other embodiments, the first model and the second model can be different artificial intelligence models. One or more embodiments herein do not limit this.
[0108] One or more embodiments in this paper do not limit the method of obtaining the second model. For example, the second model can be an existing, open-source artificial intelligence model. Alternatively, the second model can be an artificial intelligence model obtained by fine-tuning the pre-trained artificial intelligence model using training data related to the generation of recommendation materials (such as other candidate materials, recommendation materials generated from other candidate materials, etc.) based on the pre-trained artificial intelligence model.
[0109] The second model can generate the first recommended material based on prompt learning. For example, it can generate a second prompt word and send the second prompt word to the second model. The first prompt word may include candidate materials and prompt information for integrating candidate materials to form recommended materials. The model can receive the output of the second model (e.g., output results that include instructions for recommending materials) and determine the first recommended material based on the output of the second model (e.g., information extraction from the output of the second model).
[0110] By sending the second prompt word to the second model, the second model can analyze the content of the candidate materials and organize them into recommended materials, thereby outputting the first recommended material. This achieves automatic generation of the first recommended material without requiring the first operator to manually organize the candidate materials.
[0111] For example, the first recommended material may include one or more of the following: information related to the first document and the first content block, detailed information about the recommended material, and source information about the recommended material. The information related to the first document and the first content block helps the operator of the first operation to quickly understand the document and content block corresponding to the first recommended material. The detailed information about the recommended material helps the operator of the first operation to quickly determine whether the recommended material is available. The source information about the recommended material helps the operator of the first operation to view the original text of the recommended material and verify its authenticity.
[0112] In this way, through the two stages of candidate material retrieval and candidate material integration, candidate materials related to at least part of the document content to be improved in the first content block are obtained from different data sources to ensure the richness of candidate materials. Then, the candidate materials are automatically integrated to form the first recommended materials that can be provided to the operator of the first operation. This eliminates the need for the operator of the first operation to manually organize candidate materials, and the first recommended materials can provide intuitive assistance in the document editing scenario.
[0113] In some embodiments, considering the accuracy and efficiency of generating the first recommended material, candidate materials can be filtered to remove some of them. For example, candidate materials can be filtered based on their update time, retaining at least a portion of them.
[0114] Unreserved candidate materials may include at least one of the following: candidate materials from the first document, candidate materials from multiple historical documents, and candidate materials whose time period does not match that of the first document. Multiple historical documents include documents corresponding to the first document in multiple historical update cycles. The time period corresponding to the first document is obtained through the document title of the first document or the update cycle of the first document.
[0115] Candidate materials from the first document can be understood as document content belonging to the first document. For the first document currently being edited, the document content inside the first document has low reference value for the document editing of the first document. Therefore, candidate materials from the first document are filtered out.
[0116] Candidate materials from multiple historical documents can be understood as the document content of the first document in multiple historical update cycles. Since the document content of historical documents belongs to different update cycles than the first document, the document content of historical documents has low reference value for the editing of the first document. Therefore, candidate materials from multiple historical documents are filtered out.
[0117] The time period corresponding to the first document can be obtained from the document title. For example, if the document title of the first document is "Project Progress Update from January 2nd to January 8th", then the time period corresponding to the first document can be from January 2nd to January 8th. The time period corresponding to the first document can also be obtained from the update cycle of the first document. For example, if the update cycle of the first document is one week and the last update time of the first document is January 1st, then the time period corresponding to the first document can be from January 2nd to January 8th.
[0118] Candidate materials that do not match the time period corresponding to the first document can be understood as candidate materials whose update time is outside the time period corresponding to the first document. Since the update time of the above candidate materials does not match the time period corresponding to the first document, the above candidate materials have low reference value for the editing of the first document. Therefore, candidate materials that do not match the time period corresponding to the first document will be filtered out.
[0119] In this way, by filtering and screening the candidate materials, only those materials that have reference value and learning value for at least part of the document content to be improved in the first content block are retained, thereby reducing the number of candidate materials and improving the generation efficiency of the first recommended material.
[0120] Furthermore, considering that during the editing process of the first content block, the first recommended material may change as the document content input by the operator of the first operation changes, the first recommended material may also change. Therefore, in response to the third operation triggered in the first content block, and if the third operation meets the material update conditions, the first recommended material is updated. This third operation can be used to trigger the judgment logic of whether to update the first recommended material.
[0121] On one hand, the third operation can be understood as an operation used to trigger a new material recommendation process. For example, the third operation can be an operation of inputting a set character, such as a newline character. When the operator of the first operation inputs a newline character in the first content block, a new material recommendation process can be triggered. In this case, since the operator of the first operation has input new document content in the first content block, at least part of the document content to be improved in the first content block has changed. Therefore, the first recommended material will also change. By triggering a new material recommendation process, the first recommended material is updated, and the recommended material is updated to the operator of the first operation in real time, so that the first recommended material is updated in real time with the current document editing content of the operator of the first operation.
[0122] On the other hand, configuring material update conditions involves determining whether the third operation meets the material update conditions. If the conditions are met, the first recommended material is then updated. For example, when the third operation is inputting set characters, the material update condition could be that the length between two adjacent set characters in the first content block is greater than a set threshold, such as 50 characters. This means determining the length of the content input by the operator in the first operation between two material recommendation processes. If the length between two adjacent set characters in the first content block is less than the set threshold, it indicates that the operator in the first operation did not edit much content after the previous material recommendation process. If a new material recommendation process is triggered at this time, the difference between the first recommended materials in the two adjacent material recommendation processes will be small, and the excessively frequent material recommendations will negatively impact the document editing experience of the operator in the first operation.
[0123] In this way, by detecting the third operation triggered in the first content block and determining whether the third operation meets the material update conditions, the first recommended material is provided to the operator of the first operation in real time without affecting the document editing experience, thereby further enhancing the correlation between the first recommended material and the part of the document content that needs to be improved in the first content block.
[0124] Step S203: Send the first recommended material to the operator of the first operation.
[0125] By generating a first recommended material, the first recommended material is provided as response data for the first operation to the operator of the first operation. For example, the first recommended material is sent to the client installed on the terminal device used by the operator of the first operation, so that the first recommended material can be rendered and displayed on the terminal device used by the operator of the first operation.
[0126] In some embodiments, considering that the operator of the first operation may trigger the first operation multiple times, in order to ensure the effectiveness of the material recommendation and reduce the possibility of providing the first recommended material with poor availability to the first operator, it can also be determined whether the first recommended material needs to be provided to the operator of the first operation. For example, sending the first recommended material to the operator of the first operation includes: in response to the historical recommended material corresponding to the first content block being empty, or in response to the historical recommended material corresponding to the first content block being different from the first recommended material, sending the first recommended material to the operator of the first operation.
[0127] Historical recommended materials can be understood as recommended materials sent to the first operator within a historical time period. In other words, if no recommended materials were sent to the first operator within a historical time period (i.e., no material recommendations were made for the first content block), or if recommended materials were sent to the first operator within a historical time period but were different from the first recommended materials (i.e., the recommended materials for the first content block were updated), it indicates that the first recommended materials have recommendation significance for the first operator, and the first recommended materials are sent to the first operator.
[0128] Thus, by adding a step to determine whether the first recommended material needs to be provided to the first operator before sending the first recommended material to the first operator, the duplicate material recommendations caused by sending the same recommended material to the first operator are reduced, ensuring the real-time nature of material recommendations.
[0129] In one or more embodiments of this document, the first recommended material can provide multifaceted assistance to the operator of the first operation in the document editing scenario of the first content block. For example, sending the first recommended material to the operator of the first operation includes any one of the following: sending the first recommended material to the operator of the first operation so that the first recommended material is presented to the operator of the first operation at a first position associated with the first content block, or sending the first recommended material to the operator of the first operation so that the second document content generated based on the first recommended material is presented to the operator of the first operation in the first content block.
[0130] The first position associated with the first content block can be understood as a position that is related to the location of the first content block. For example, the first position associated with the first content block could be above the first content block.
[0131] On the one hand, the first recommended material can be directly pushed to the operator of the first operation. By presenting the first recommended material to the operator, the operator can view the first recommended material and use it to edit at least some of the document content that needs to be improved in the first content block. For example, the operator can write at least some of the missing document content in the first content block, or modify at least some of the document content that needs to be updated in the first content block. On the other hand, the first recommended material can also be used to generate second document content. The second document content can be at least some of the missing document content in the first content block, or at least some of the updated document content in the first content block. By presenting the second document content to the operator of the first operation, the operator does not need to manually edit the document, thus realizing the automatic continuation or automatic rewriting of the first content block.
[0132] In this way, by generating the first recommended material and sending it to the operator who performs the first operation, the efficiency of document writing can be improved by utilizing the first recommended material.
[0133] Figure 3 The illustration shows a flowchart of a material recommendation method provided in at least one embodiment of this document.
[0134] The following is combined with Figure 3 and one This paper describes a specific document editing scenario to illustrate the material recommendation method provided in one or more embodiments. In some scenarios, the first document can be a periodically updated document, such as a weekly report document, in which multiple employees in an office team need to update their work progress.
[0135] First, employee A can trigger the first operation in the first document to determine whether the first document needs material recommendation. The first document type is a periodically updated document, which is the type of document that needs material recommendation. Next, the first content block to be recommended is located in the first document. For example, the content of the first document may include a work progress table, which has multiple rows, each corresponding to a content block. Each row in the work progress table includes a different operator identifier. Based on the position of employee A's operator identifier in the work progress table, the first content block is located; that is, the content block that employee A needs to update in the work progress is identified. Then, the first recommended material is generated, for example, based on the first... The first piece of information associated with the content block is retrieved from other documents in the document module of the office collaboration system accessible to employee A, instant messaging messages in the instant messaging module, and meeting minutes in the meeting module to obtain candidate materials. Then, the second model is used to integrate the candidate materials to obtain the first recommended material. After that, it is determined whether to recommend the first recommended material. If the historical recommended material corresponding to the first content block is empty, or the historical recommended material corresponding to the first content block is different from the first recommended material, the first recommended material is sent to employee A. Employee A can use the first recommended material as a reference to quickly edit the content block that needs to update the work progress, without having to spend time manually collecting and organizing the materials required for document editing from different data sources.
[0136] Based on the material recommendation method provided in at least one embodiment of this paper, at least one embodiment of this paper also provides a material recommendation device. The following will be combined with... Figure 4 A detailed description of the material recommendation device is provided.
[0137] Figure 4 The schematic diagram illustrates a structural schematic of a material recommendation device provided in at least one embodiment of this document.
[0138] like Figure 4 As shown, the material recommendation device 400 of this embodiment includes a receiving module 401, a generating module 402, and a sending module 403. For example, the receiving module 401, generating module 402, and sending module 403 can be implemented using hardware (e.g., circuit) modules or software modules. The following embodiments are similar and will not be described again. For example, the receiving module 401, generating module 402, and sending module 403 can be implemented using a central processing unit (CPU), a general-purpose graphics processor (GPGPU), a graphics processing unit (GPU), a tensor processor (TPU), a field-programmable gate array (FPGA), or other processing units with data processing capabilities and / or instruction execution capabilities, along with corresponding computer instructions.
[0139] The receiving module 401 is configured to receive a first operation triggered in a first document, wherein the first operation is used to trigger material recommendation for a first content block in the first document. For example, the receiving module 401 can be configured to execute step S201 described above; its specific implementation principle can be found in the relevant description of step S201, and will not be repeated here.
[0140] The generation module 402 is configured to generate first recommended material based on the first content block and the access permissions of the operator of the first operation, wherein the first recommended material is related to at least a portion of the document content to be improved in the first content block. For example, the generation module 402 can be configured to execute step S202 described above; its specific implementation principle can be found in the relevant description of step S202, and will not be repeated here.
[0141] The sending module 403 is configured to send the first recommended material to the operator of the first operation. For example, the sending module 403 can be configured to execute step S203 described above. The specific implementation principle can be found in the relevant description of step S203, and will not be repeated here.
[0142] In at least one embodiment of this document, the receiving module 401 is further configured to: obtain a first document type corresponding to the first document; and, in response to the first document type matching a set of document types, provide an operation entry point in the first document for receiving the first operation.
[0143] In at least one embodiment of this document, the receiving module 401 is further configured to: in response to the document type associated with the first document being not empty, obtain the first document type associated with the first document; or in response to the document type associated with the first document being empty, obtain the first document type corresponding to the first document based on at least one of the document title of the first document and the first document content in the first document.
[0144] In at least one embodiment of this document, the receiving module 401 is further configured to: update the document type associated with the first document in response to a second operation triggered in the first document, wherein the second operation is used to modify the document title of the first document.
[0145] In at least one embodiment of this document, the receiving module 401 is further configured to: send at least one of the document title of the first document and the first document content in the first document to the first model; and determine the first document type corresponding to the first document based on the output of the first model.
[0146] In at least one embodiment of this document, the first document includes first document content, and the operator of the first operation corresponds to a first operator identifier; the first content block is obtained by: in response to the first document content including the first operator identifier, determining the first content block based on the position information of the first operator identifier in the first document.
[0147] In at least one embodiment of this document, the first content block is obtained by determining the first content block based on the operation position of the first operation in the first document.
[0148] In at least one embodiment of this document, the first document corresponds to a first document type; the generation module 402 is further configured to: obtain at least one data source corresponding to the first document type and having access rights for the operator of the first operation; search in at least one data source corresponding to the first document type based on the first information associated with the first content block to obtain candidate materials; and generate the first recommended material based on the candidate materials.
[0149] In at least one embodiment of this document, the generation module 402 is further configured to: send the candidate material to a second model, and determine the first recommended material based on the output of the second model.
[0150] In at least one embodiment of this document, the sending module 403 is further configured to: send the first recommended material to the operator of the first operation in response to the fact that the historical recommended material corresponding to the first content block is empty, or in response to the fact that the historical recommended material corresponding to the first content block is different from the first recommended material.
[0151] In at least one embodiment of this document, the sending module 403 is further configured to: send the first recommended material to the operator of the first operation so that the first recommended material is presented to the operator of the first operation at a first position associated with the first content block; or send the first recommended material to the operator of the first operation so that second document content generated based on the first recommended material is presented to the operator of the first operation in the first content block.
[0152] It should be noted that, for clarity and brevity, at least one embodiment herein does not show all the constituent units of the material recommendation device 400. To achieve the necessary functions of the material recommendation device 400, those skilled in the art can provide and configure other constituent units (not shown) according to specific needs, and one or more embodiments herein do not impose any limitations on this.
[0153] At least one embodiment of this document also provides an electronic device, including a processing device and a storage device, the storage device including one or more computer program modules; wherein the one or more computer program modules are stored in the storage device and configured to be executed by the processing device, the one or more computer program modules being used to implement the material recommendation method provided in any embodiment of this document.
[0154] For example, the processing device may be a processor, such as a central processing unit (CPU), digital signal processor (DSP), image processor (GPU), general-purpose graphics processor (GPGPU), or other form of processing unit with data processing capabilities and / or instruction execution capabilities. It may be a general-purpose processor or a dedicated processor and may control other components in the electronic device to perform the desired functions.
[0155] For example, the storage device may be a memory, and may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may, for example, include random access memory (RAM) and / or cache memory. The non-volatile memory may, for example, include read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and a processing device may execute the program instructions to implement the functions (implemented by the processing device) in at least one embodiment herein and / or other desired functions. Various application programs and various data may also be stored in the computer-readable storage medium, which is not limited by one or more embodiments herein.
[0156] The following is for reference. Figure 5 This document illustrates a structural schematic of an electronic device (e.g., a terminal device or a server) 500 suitable for implementing at least one embodiment of this document. The terminal device in at least one embodiment of this document may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of at least one embodiment herein.
[0157] like Figure 5As shown, electronic device 500 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 501, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 502 or a program loaded from storage device 508 into random access memory (RAM) 503. RAM 503 also stores various programs and data required for the operation of electronic device 500. Processing unit 501, ROM 502, and RAM 503 are interconnected via bus 504. Input / output (I / O) interface 505 is also connected to bus 504.
[0158] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 5 An electronic device 500 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0159] In particular, according to one or more embodiments herein, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, one or more embodiments herein include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 509, or installed from storage device 508, or installed from ROM 502. When the computer program is executed by processing device 501, it performs the functions defined in the methods of at least one embodiment herein.
[0160] It should be noted that the computer-readable medium described above can be a computer-readable signal medium, a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this document, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0161] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0162] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0163] The aforementioned computer-readable medium carries one or more programs, which, when executed by the electronic device, cause the electronic device to perform the aforementioned material recommendation method.
[0164] Computer program code for performing the operations described herein may be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0165] One or more embodiments of this document also provide a computer program product comprising one or more computer instructions. When the computer instructions are loaded and executed on a computing device, all or part of the processes or functions described in any embodiment of this document are generated.
[0166] The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, or data center to another website, computer, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means.
[0167] When the computer program product is executed by a computer, the computer performs any of the aforementioned material recommendation methods. The computer program product can be a software installation package; when any of the aforementioned material recommendation methods needs to be used, the computer program product can be downloaded and executed on the computer.
[0168] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments herein. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0169] The units or modules described in at least one embodiment herein can be implemented in software or hardware. The names of the units or modules do not, in some cases, constitute a limitation on the unit or module itself.
[0170] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.
[0171] In the context of this document, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0172] According to one or more embodiments of this document, Example 1 provides a material recommendation method, including:
[0173] Receive a first operation triggered in a first document, wherein the first operation is used to trigger material recommendation in a first content block in the first document;
[0174] Based on the first content block and the access permissions of the operator of the first operation, a first recommended material is generated, wherein the first recommended material is related to at least part of the document content to be improved in the first content block;
[0175] Send the first recommended material to the operator of the first operation.
[0176] According to one or more embodiments of this document, Example 2 provides the method of Example 1, and further includes:
[0177] Obtain the first document type corresponding to the first document;
[0178] In response to the first document type matching the set of document types, an operation entry point for receiving the first operation is provided in the first document.
[0179] According to one or more embodiments of this document, Example 3 provides the method for obtaining the first document type corresponding to the first document in Example 2, including:
[0180] In response to the document type associated with the first document being non-empty, obtain the first document type associated with the first document; or
[0181] In response to the fact that the document type associated with the first document is empty, the first document type corresponding to the first document is obtained based on at least one of the document title of the first document and the first document content in the first document.
[0182] According to one or more embodiments of this document, Example 4 provides the method of Example 3, and further includes:
[0183] In response to a second operation triggered in the first document, the document type associated with the first document is updated, wherein the second operation is used to modify the document title of the first document.
[0184] According to one or more embodiments of this document, Example 5 provides the method of obtaining the first document type corresponding to the first document based on at least one of the document title and the first document content in the first document, as described in Example 3, including:
[0185] Send at least one of the document title of the first document and the content of the first document in the first document to the first model;
[0186] Based on the output of the first model, the first document type corresponding to the first document is determined.
[0187] According to one or more embodiments of this document, Example Six provides a first document from Example One including first document content, where the operator of the first operation corresponds to a first operator identifier; the first content block is obtained as follows:
[0188] In response to the fact that the first document content includes the first operator identifier, the first content block is determined based on the position information of the first operator identifier in the first document.
[0189] According to one or more embodiments of this document, Example 7 provides that the first content block in Example 1 is obtained as follows:
[0190] The first content block is determined based on the location of the first operation in the first document.
[0191] According to one or more embodiments of this document, Example 8 provides a first document type corresponding to the first document in Example 1; the generation of first recommended materials based on the first content block and the access permissions of the operator of the first operation includes:
[0192] Obtain at least one data source that corresponds to the first document type and that the operator of the first operation has access rights to;
[0193] Based on the first information associated with the first content block, a search is performed in at least one data source corresponding to the first document type to obtain candidate materials;
[0194] Based on the candidate materials, the first recommended material is generated.
[0195] According to one or more embodiments of this document, Example 9 provides the generation of the first recommended material based on the candidate material as in Example 8, including:
[0196] The candidate materials are sent to the second model, and the first recommended material is determined based on the output of the second model.
[0197] According to one or more embodiments of this document, Example 10 provides sending the first recommended material to the operator of the first operation in any of Examples 1 to 9, including:
[0198] In response to the fact that the historical recommended material corresponding to the first content block is empty, or in response to the fact that the historical recommended material corresponding to the first content block is different from the first recommended material, the first recommended material is sent to the operator of the first operation.
[0199] According to one or more embodiments of this document, Example 11 provides sending the first recommended material to the operator of the first operation in any of Examples 1 to 9, including any one of the following:
[0200] Send the first recommended material to the operator of the first operation, so that the first recommended material is presented to the operator of the first operation at a first position associated with the first content block; or
[0201] The first recommended material is sent to the operator of the first operation so that the second document content generated based on the first recommended material is presented to the operator of the first operation in the first content block.
[0202] According to one or more embodiments of this document, Example Twelve provides a material recommendation apparatus, comprising:
[0203] The receiving module is configured to receive a first operation triggered in a first document, wherein the first operation is used to trigger a material recommendation for a first content block in the first document;
[0204] The generation module is configured to: generate first recommended material based on the first content block and the access permissions of the operator of the first operation, wherein the first recommended material is related to at least part of the document content to be improved in the first content block;
[0205] The sending module is configured to send the first recommended material to the operator of the first operation.
[0206] According to one or more embodiments herein, Example Thirteen provides an electronic device comprising:
[0207] At least one processor; and
[0208] At least one memory, including one or more computer program instructions;
[0209] The one or more computer program instructions are executed by a processor at runtime using the material recommendation method provided in at least one embodiment of this document.
[0210] According to one or more embodiments herein, Example Fourteen provides a computer-readable storage medium that non-transitory stores computer-readable instructions, wherein the material recommendation method provided in at least one embodiment herein is implemented when the computer-readable instructions are executed by a processor.
[0211] According to one or more embodiments of this document, Example Fifteen provides a computer program product including a computer program that, when executed by a processor, implements the material recommendation method provided in at least one embodiment of this document.
[0212] The above description is merely a preferred embodiment and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure herein is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-disclosed concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed herein that have similar functions.
[0213] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in sequential order. Multitasking and parallel processing may be advantageous in certain environments. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this document. Certain features described in the context of a single embodiment may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0214] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A method for recommending materials, comprising: Receive a first operation triggered in a first document, wherein the first operation is used to trigger material recommendation in a first content block in the first document; Based on the first content block and the access permissions of the operator of the first operation, a first recommended material is generated, wherein the first recommended material is related to at least part of the document content to be improved in the first content block; Send the first recommended material to the operator of the first operation.
2. The method according to claim 1, wherein, The method further includes: Obtain the first document type corresponding to the first document; In response to the first document type matching the set of document types, an operation entry point for receiving the first operation is provided in the first document.
3. The method according to claim 2, wherein, The step of obtaining the first document type corresponding to the first document includes: In response to the document type associated with the first document being non-empty, obtain the first document type associated with the first document; or In response to the fact that the document type associated with the first document is empty, the first document type corresponding to the first document is obtained based on at least one of the document title of the first document and the first document content in the first document.
4. The method according to claim 3, further comprising: In response to a second operation triggered in the first document, the document type associated with the first document is updated, wherein the second operation is used to modify the document title of the first document.
5. The method according to claim 3, wherein, The step of obtaining the first document type corresponding to the first document based on at least one of the document title and the content of the first document includes: Send at least one of the document title of the first document and the content of the first document in the first document to the first model; Based on the output of the first model, the first document type corresponding to the first document is determined.
6. The method according to claim 1, wherein, The first document includes the content of the first document, and the operator of the first operation corresponds to the first operator identifier; The first content block is obtained in the following way: In response to the fact that the first document content includes the first operator identifier, the first content block is determined based on the position information of the first operator identifier in the first document.
7. The method according to claim 1, wherein, The first content block is obtained in the following way: The first content block is determined based on the location of the first operation in the first document.
8. The method according to claim 1, wherein, The first document corresponds to a first document type. The step of generating the first recommended material based on the first content block and the access permissions of the operator of the first operation includes: Obtain at least one data source that corresponds to the first document type and that the operator of the first operation has access rights to; Based on the first information associated with the first content block, a search is performed in at least one data source corresponding to the first document type to obtain candidate materials; Based on the candidate materials, the first recommended material is generated.
9. The method according to claim 8, wherein, The step of generating the first recommended material based on the candidate materials includes: The candidate materials are sent to the second model, and the first recommended material is determined based on the output of the second model.
10. The method according to any one of claims 1 to 9, wherein, Sending the first recommended material to the operator of the first operation includes: In response to the fact that the historical recommended material corresponding to the first content block is empty, or in response to the fact that the historical recommended material corresponding to the first content block is different from the first recommended material, the first recommended material is sent to the operator of the first operation.
11. The method according to any one of claims 1 to 9, wherein, Sending the first recommended material to the operator of the first operation includes any one of the following: Send the first recommended material to the operator of the first operation, so that the first recommended material is presented to the operator of the first operation at a first position associated with the first content block; or The first recommended material is sent to the operator of the first operation so that the second document content generated based on the first recommended material is presented to the operator of the first operation in the first content block.
12. A material recommendation device, comprising: The receiving module is configured to receive a first operation triggered in a first document, wherein the first operation is used to trigger a material recommendation for a first content block in the first document; The generation module is configured to: generate first recommended material based on the first content block and the access permissions of the operator of the first operation, wherein the first recommended material is related to at least part of the document content to be improved in the first content block; The sending module is configured to send the first recommended material to the operator of the first operation.
13. An electronic device, comprising: At least one processor; as well as At least one memory, including one or more computer program instructions; The one or more computer program instructions are executed by the processor to perform the method according to any one of claims 1 to 11.
14. A computer-readable storage medium for non-transitory storage of computer-readable instructions, wherein, The method of any one of claims 1 to 11 is implemented when the computer-readable instructions are executed by a processor.
15. A computer program product comprising a computer program that, when executed by a processor, implements the method of any one of claims 1 to 11.