Information retrieval method and device, equipment and storage medium
By determining action elements and historical interaction information and providing information retrieval results for search needs, it solves the problem that traditional information retrieval tools are difficult to support natural language search, and achieves more efficient information retrieval.
Patent Information
- Application Number
- CN202311559495.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-21
- Publication Date
- 2025-05-23
AI Technical Summary
Traditional information retrieval tools are difficult to support users in natural language searches, and it is difficult to improve the efficiency of information retrieval.
By obtaining input content from the target object, a set of search elements is determined, including at least an action element, which is used to describe events associated with the business object to be retrieved, and to provide a set of search results for search needs based on this set of search elements and historical interaction information.
It realizes the use of historical interactive information between users and business components to support users' natural language search of business objects, and improves the efficiency and accuracy of information retrieval.
Smart Images

Figure CN120030215A_ABST
Abstract
Description
Technical Field
[0001] Example embodiments of the present disclosure generally relate to the field of computers, and more particularly, to methods, devices, apparatuses, and computer-readable storage media for information retrieval. Background Art
[0002] With the rapid development of Internet technology, the Internet has become an important platform for people to obtain and share content. Users can access the Internet through terminal devices to enjoy various Internet services. The Internet platform can also provide users with capabilities related to various types of information retrieval. How to improve the efficiency of such information retrieval has become the focus of people's attention. Summary of the invention
[0003] In a first aspect of the present disclosure, a method for information retrieval is provided. The method comprises: obtaining input content indicating a retrieval requirement from a target object; determining a set of retrieval elements based on the input content, the set of retrieval elements at least including an action element, the action element being used to describe an event associated with a business object to be retrieved; and providing a set of retrieval results for the retrieval requirement based on the set of retrieval elements and historical interaction information, the historical interaction information being generated based on a set of interaction events for at least one business component.
[0004] In a second aspect of the present disclosure, a device for information retrieval is provided. The device includes: a content acquisition module configured to acquire input content indicating a retrieval requirement from a target object; an element determination module configured to determine a set of retrieval elements based on the input content, wherein the set of retrieval elements at least includes an action element, and the action element is used to describe an event associated with a business object to be retrieved; and a result providing module configured to provide a set of retrieval results for the retrieval requirement based on the set of retrieval elements and historical interaction information associated with at least one target object, wherein the historical interaction information is generated based on a set of interaction events for at least one business component.
[0005] In a third aspect of the present disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit. When the instructions are executed by the at least one processing unit, the device executes the method of the first aspect.
[0006] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to implement the method of the first aspect.
[0007] It should be understood that the contents described in this content section are not intended to limit the key features or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0009] Figure 1 A schematic diagram showing an example environment in which embodiments of the present disclosure can be implemented;
[0010] Figure 2 A flowchart of a method for information retrieval according to some embodiments of the present disclosure is shown;
[0011] Figure 3 shows an example interface according to some embodiments of the present disclosure;
[0012] Figure 4 An example retrieval process according to some embodiments of the present disclosure is shown;
[0013] Figure 5 A block diagram showing an apparatus for information retrieval according to some embodiments of the present disclosure; and
[0014] Figure 6 A block diagram of a device capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0015] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, and usage scenarios of the information involved in the present disclosure should be informed to the relevant users in an appropriate manner in accordance with relevant laws and regulations, and the authorization of the relevant users should be obtained. The relevant users may include any type of right holders, such as individuals, enterprises, and groups.
[0016] For example, in response to receiving an active request from a user, a prompt message is sent to the relevant user to clearly prompt the relevant user that the operation requested to be performed will require obtaining and using the relevant user's information. Thus, the relevant user can autonomously choose whether to provide information to the electronic device, application, server, storage medium, or other software or hardware that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0017] As an optional but non-limiting implementation, in response to receiving an active request from a relevant user, the method of sending a prompt message to the relevant user may be, for example, a pop-up window, in which the prompt message may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.
[0018] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0019] It is understandable that when adopting this technical solution, the data involved (including but not limited to the data itself, data acquisition, use, storage, and transmission) shall comply with the requirements of relevant laws, regulations and relevant provisions.
[0020] The term "in response to" as used herein refers to a state in which a corresponding event occurs or a condition is satisfied. It will be understood that the timing of executing a subsequent action executed in response to the event or condition is not necessarily strongly related to the time when the event occurs or the condition is satisfied. For example, in some cases, the subsequent action may be executed immediately when the event occurs or the condition is satisfied; while in other cases, the subsequent action may be executed some time after the event occurs or the condition is satisfied.
[0021] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0022] It should be noted that the titles of any sections / subsections provided herein are not restrictive. Various embodiments are described throughout this article, and any type of embodiment may be included under any section / subsection. In addition, the embodiments described in any section / subsection may be combined in any manner with any other embodiments described in the same section / subsection and / or different sections / subsections.
[0023] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may be included below. The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may be included below.
[0024] As used herein, the term "model" can learn the association between the corresponding input and output from the training data, so that the corresponding output can be generated for a given input after the training is completed. The generation and use of the model can be based on the technology permitted by laws and regulations such as machine learning, referred to as available technology. For example, deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs by using multiple layers of processing units. In this article, "model" may also be referred to as "machine learning model", "machine learning network" or "network", and these terms are used interchangeably in this article. A model can also include different types of processing units or networks.
[0025] As briefly mentioned above, people can use various types of information retrieval tools to improve the efficiency of information retrieval. However, traditional information retrieval tools usually find matching retrieval results for users based on keyword filtering and matching. Such information retrieval tools are difficult to support users' needs for natural language search.
[0026] The embodiments of the present disclosure provide a scheme for information retrieval. Specifically, input content for indicating retrieval requirements can be obtained from a target object (e.g., a user, an organization, a team, etc.). Further, a set of retrieval elements can be determined based on the input content, and a set of retrieval elements at least includes an action element, and the action element is used to describe an event associated with a business object to be retrieved. Further, a set of retrieval results for the retrieval requirements can be provided based on a set of retrieval elements and historical interaction information, and the historical interaction information is generated based on a set of interaction events for at least one business component.
[0027] Therefore, the embodiments of the present disclosure can utilize historical interaction information between users and business components to support users' natural language searches for business objects.
[0028] Example embodiments of the present disclosure are described below with reference to the accompanying drawings.
[0029] Example Environment
[0030] Figure 11 is a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. Figure 1 As shown, in the environment 100, the terminal device 110 can be used to provide a digital assistant 102 for a target object 150. Such a target object may include a user or an organization, etc., wherein the organization may be an enterprise, a group, a department, etc.
[0031] Exemplarily, such a digital assistant 102 may also be referred to as a digital assistant, or a digital robot. Figure 1 The digital assistant 102 is shown to be included in the terminal device 110, but part of the processing capabilities of the digital assistant 102 may also be at least partially based on the server 120. For example, the front-end part of the digital assistant 102 (e.g., the part for presentation) may be included in the terminal device 110, but the back-end part of the digital assistant 102 (e.g., the part for information retrieval) may be included in the server 120.
[0032] In some examples, the digital assistant 102 may be, for example, a digital assistant that assists the target object 150 in working, or may be any other appropriate entity form. The digital assistant 102 may also run independently or be integrated into a specific application.
[0033] In some embodiments, the digital assistant 102 can be enabled, for example, called or awakened, by an appropriate means (e.g., a shortcut key, a button, or voice). If the digital assistant 102 is active, the terminal device 110 can present an interface 104 associated with the digital assistant 102. The interface 104 can be in the style of a conversational user interface (also referred to as a conversation interface or a conversation window), or in any other appropriate interface form. As will be described in detail below, such an interface 104 can also include interface elements for information interaction, such as a message input box, a message list, a message bubble, and so on. Through the interface 104, the digital assistant 102 can obtain information input by the target object 150.
[0034] Such input information may include, for example, any appropriate type of message, such as a text message, a picture message, a voice message, a form message, a link message, other appropriate types of messages, and the like.
[0035] Further, the server 120 may allow the target object 150 to interact with the digital assistant 102 to obtain information generated by the digital assistant 102. Alternatively, as will be described in detail below, with the authorization of the target object 150, the information generated by the digital assistant 102 may also be based on the historical interaction between the target object 150 and at least one business component 115.
[0036] Such business components may include components that can provide appropriate types of business services for the target object 150, examples of which may include but are not limited to: office components, tool components, etc. In some embodiments, such business components may be installed on the same terminal device 110. Alternatively or additionally, such business components may also be installed on other terminal devices, or provided in the form of cloud services.
[0037] In some embodiments, such business components 115 may include multiple office components in an office suite. An office suite may be a set of office components developed to improve office efficiency, such as office components for creating and editing documents, office components for creating and editing tables, office components for drawing, and the like.
[0038] In some embodiments, the multiple office components include multiple items of the following: a chat component, a document component, an audio and video conferencing component, an email component, a calendar component, a schedule component, a task component, an Objectives and Key Results (OKR) component, and / or appropriate office components that are currently available or may be developed in the future.
[0039] In some embodiments, the digital assistant 102 may be a separate application from the business component 115. Alternatively, the digital assistant 102 may also be a function or component appropriately integrated into the business component 115.
[0040] In some embodiments, the historical interaction information 130 may be maintained in an appropriate electronic device as needed, such as the terminal device 110, the server 120, and / or other appropriate electronic devices. The historical interaction information 130 may include, for example, both interaction information stored on the terminal device 110 and interaction information uploaded to the server 120.
[0041] As will be described in detail below, the historical interaction information 130 may be provided for processing an information retrieval request for the target object 150 .
[0042] In some embodiments, the terminal device 110 communicates with the server 120 to provide services for the digital assistant 102. The terminal device 110 can be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio broadcast receiver, an e-book device, a gaming device, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. In some embodiments, the terminal device 110 can also support any type of interface for the target object 150 (such as a "wearable" circuit, etc.). The server 120 can be various types of computing systems / servers that can provide computing capabilities, including but not limited to mainframes, edge computing nodes, computing devices in cloud environments, and the like.
[0043] Despite Figure 1 Only one server 120 is shown, but the environment 100 may include multiple servers 120. For example, the historical interaction information 130 may be stored locally or in a second server 120 as needed and with relevant user authorization. It should be understood that this is only an exemplary description and does not imply any limitation on the scope of the present disclosure.
[0044] It should be understood that the structure and functionality of environment 100 are described for exemplary purposes only and does not imply any limitation on the scope of the present disclosure.
[0045] Example Process
[0046] Figure 2 200 is a flowchart of a process 200 for information retrieval according to some embodiments of the present disclosure. The process 200 may be implemented by a suitable electronic device or a combination of electronic devices (e.g., Figure 1 For the convenience of description, the following takes the server 120 as an example and refers to Figure 1 The process 200 is described below.
[0047] As shown in the figure, in block 210 , the server 120 obtains input content indicating a search requirement from a target object.
[0048] In some embodiments, the terminal device 110 may, for example, receive the input of the target object 150 in the search control to obtain the input content 310 indicating the search requirement, and send it to the server 120. Figure 3As shown, the terminal device 110 may, for example, provide the target object 150 with an interface 300 as shown in the figure.
[0049] The interface 300A may include a search control 305 for receiving input. The terminal device 110 may, for example, receive input content 310 input by the target object 150 using the search control 305. Exemplarily, the target object 150 may, for example, directly type the input content 310, for example, text content, in the search control 305. Alternatively, the target object 150 may, for example, also input voice content, which is transcribed into text content by the terminal device 110.
[0050] In some embodiments, the terminal device 110 may also receive the input content 310 indicating the search requirement in other appropriate ways, and send it to the server 120. As an example, as shown in FIG. Figure 1 As discussed, the terminal device 110 may, for example, provide an interactive interface between the target object 150 (e.g., user) and the digital assistant 102, and such an interactive interface may, for example, display a conversation between the target object 150 and the digital assistant 102. Further, the terminal device 110 may obtain input content entered by the target object 150 into the conversation indicating a retrieval requirement.
[0051] For the convenience of description, the following will take the search control as an example to describe the example interface according to the present disclosure. It should be understood that such a feature can also be used in scenarios such as triggering information retrieval in a session.
[0052] Continue to refer Figure 2 In block 220, the server 120 determines a set of search elements based on the input content 310. The set of search elements at least includes an action element, and the action element is used to describe an event associated with the business object to be retrieved.
[0053] In some embodiments, before presenting the search element 320, the server 120 may determine whether the input content 310 corresponds to a natural language search scenario. Specifically, the server 120 may provide the input content 310 to the first model to determine whether the input content indicates a natural language search scenario. If it is determined that the input content 310 indicates a natural language search scenario, the server 120 may further determine a set of search elements to which the input content 310 corresponds.
[0054] Exemplarily, such a first model may be implemented based on an appropriate machine learning model to determine the search scenario of the input content 310. For example, if the input content 310 is a simple keyword expression, the server 120 may not trigger the parsing of the input content 310. On the contrary, if the input content 310 corresponds to a natural language search scenario, the server 120 may trigger the parsing of one or more search elements indicated in the input content 310.
[0055] In some embodiments, the server 120 may, for example, use the second model to parse one or more search elements indicated in the input content 310. Specifically, the server 120 may provide the input content 310 to the second model, and obtain a set of search elements determined by the second model based on the input content 310.
[0056] In some embodiments, the second model can be implemented based on a machine learning model to have the ability to extract retrieval elements from natural language expressions.
[0057] In some embodiments, the server 120 may construct a training sample for training the second model based on the reference action element and the reference knowledge element. As will be described below, the server 120 may obtain historical interaction information 130, such historical interaction information 130 may include action elements for describing historical interaction events and knowledge elements for describing corresponding business objects.
[0058] Further, the server 120 may use such action elements as reference action elements, and such knowledge elements as reference knowledge elements to construct training query items for training the second model. Specifically, the server 120 may, for example, combine specific reference action elements and corresponding reference knowledge elements. As an example, such reference action elements may include "a document written by XX on a certain date in a certain year", and the reference knowledge element may include "topic A". Thus, the server 120 may combine and obtain an intermediate sample, namely "a document on topic A written by XX on a certain date in a certain year".
[0059] In some embodiments, considering that such a combination may not conform to the user's expression habits, the server 120 may also use a third model to process the intermediate samples to obtain more training samples. In some embodiments, such a third model may include, for example, an appropriate machine learning model such as a language model, which may rewrite the intermediate samples into training samples under various expression styles.
[0060] In some embodiments, the server 120 may, for example, train the second model based on the training samples and the corresponding reference action elements, so that the second model can have the ability to extract action elements from natural language text.
[0061] In some embodiments, in order to improve the generalization ability of the model, the server 120 may also delete at least one limiting factor in the sample output by the third model to construct an additional training sample. For example, the third model may output a sample "A-themed document written by XX last week", and the server 120 may delete the time limiting factor and construct a new training sample "A-themed document written by XX". Accordingly, the server 120 may train the second model based on the new training sample.
[0062] by Figure 3 As an example, the server 120 may parse out the action element (e.g., action: share in a meeting) corresponding to the input content 310. For another example, if the input content 310 is "document on subject A", the electronic device may determine that the corresponding knowledge element is "knowledge: subject A" and use it as a search element.
[0063] In some embodiments, the set of search elements may also include, for example, user elements associated with the business object to be searched. Figure 3 As an example, the search element 320 - 1 may indicate user information (eg, user “XX”) associated with the business object to be retrieved.
[0064] In some embodiments, the set of search elements may also include, for example, a time element associated with the business object to be searched. Figure 3 As an example, the search element 320 - 2 may indicate time information (eg, “last week”) associated with the business object to be retrieved.
[0065] In some embodiments, the set of search elements may also include, for example, a type element of the business object to be searched. Figure 3 As an example, the search element 320 - 3 may indicate type information (eg, “document”) of a business object to be retrieved.
[0066] In some embodiments, for knowledge elements, user elements, time elements, type elements, etc., the server 120 may extract them based on the grammatical analysis of the input content 310. As an example only, the server 120 may determine the adverbial as a "knowledge element", the subject as a "user element", the object as a "type element", etc. It should be understood that in some scenarios, the content of some search elements may be empty. For example, the user may not indicate time information, etc. in the input content 310.
[0067] Based on this approach, the embodiment of the present disclosure can complete the search element parsing of the input content 310 for executing the natural language search process.
[0068] For example, Figure 4 An example retrieval process 400 according to some embodiments of the present disclosure is shown. Figure 4 As shown, the parsing module 410 may obtain the input content 310 from the target object 150 , and may parse it into one or more search elements, such as an action element 420 and / or other elements 430 .
[0069] In some embodiments, in order to improve the accuracy of the search, the server 120 may also obtain the associated information of the target object 150 to assist in parsing the search elements. For example, some target objects 150 may express user elements in a pinyin manner.
[0070] In some embodiments, the server 120 may also obtain association information of the target object 150, wherein the association information indicates a group of associated objects associated with the target object. For example, the association information may indicate the degree of association between other objects in the organization and the target object.
[0071] Further, the server 120 may determine a set of search elements indicated by the input content based on the association information. For example, in the case where the input content 310 includes a pinyin, the server 120 may parse the pinyin based on the association information. In some cases, the pinyin may match multiple candidate objects within the organization, and accordingly, the server 120 may determine another object with a higher degree of association with the target object 150 as the "user element" corresponding to the pinyin.
[0072] Continue to refer Figure 2 In block 230 , the server 120 provides a set of search results for the search requirement based on a set of search elements and the historical interaction information 130 . As discussed above, the historical interaction information 130 is generated based on a set of interaction events for at least one business component 115 .
[0073] The following will take the interaction event performed by the target object 150 as an example to introduce the generation process of the historical interaction information 130. In some embodiments, when the target object 150 interacts with the business component 115, the business component 115 can generate a log record and send the log record to the recording module. Further, the recording module can generate a corresponding record entry based on the received log record as the corresponding historical interaction information 130. In some embodiments, such a record entry can include a knowledge element (Knowledge) to describe the business object corresponding to the historical interaction event.
[0074] In some embodiments, such business objects may include business objects generated by the target object 150 during the interaction with the business component 115, business objects edited, business objects referenced, business objects shared, etc. Taking the business component 115 as a document component as an example, the historical interaction event may include the creation event of a specific document in the document component by the target object 150, and accordingly, the business object corresponding to the document creation event may include the specific document. For another example, taking the business component 115 as an audio and video conference component, the historical interaction event may include an audio and video conference event in which the target object 150 participated, and accordingly, the business object corresponding to the audio and video conference event may include the audio and video conference itself.
[0075] In some embodiments, the knowledge element may be a natural language description of the business object, which is intended to abstract and / or compress the content of the business object. For example, taking a document object as an example of a business object, the knowledge element may be used to describe the subject, completion status, audience, language and expression style of the document object, etc. Taking an audio or video conference as an example of a business object, the knowledge element may be used to describe the subject, agenda, summary of the conference content, etc. of the audio or video conference.
[0076] It should be understood that information of different dimensions can be selected according to the type of business object to generate knowledge elements for describing the business object. For example, taking a conversation as an example of a business object, the knowledge element can be used to describe the type of conversation (e.g., whether it is a one-on-one chat), an overview of the conversation content, etc.
[0077] Therefore, by maintaining knowledge elements in record entries, embodiments of the present disclosure can describe or characterize the business objects involved in the corresponding historical interaction events through limited content length.
[0078] In some embodiments, the record entry may also include a time element for indicating the time of occurrence of the historical interaction event. For example, continuing to use the creation of a document as an example of a historical interaction event, such a time element may, for example, indicate the creation time of the document.
[0079] In some other embodiments, the record entry may also include an action element for indicating the event type of the historical interaction event. Continuing to use the creation of a document as an example of a historical interaction event, such an action element may, for example, indicate that the type of the historical interaction event is a "create document" type.
[0080] It should be understood that the types of events can be appropriately divided according to the needs of the scenario. Taking documents as an example of business objects, the corresponding types may include: document production events (e.g., creation), document consumption events (e.g., browsing), document circulation events (e.g., sharing), and document management events (e.g., permission setting).
[0081] In some embodiments, the record entry may also include a payload element for indexing a business object corresponding to the corresponding historical interaction event. Taking a document as an example of a business object, the payload element may include, for example, a document number or a document identifier for indexing the document.
[0082] Thus, in some scenarios, after the target object 150 interacts with the business component 115, the recording module can generate corresponding record entries. Such record entries can be represented as {time element, action element, knowledge element, load element}, for example, to describe the historical interaction event from multiple preset dimensions.
[0083] like Figure 4 As shown, the server 140 can generate corresponding historical interaction information based on the interaction event 450 between one or more target objects 440 and at least one business component 115. Specifically, the recording module 460 can, for example, generate action information 470 for the interaction event 450. Such action information 470 can, for example, include the action elements in the record entry introduced above. In some embodiments, such action elements can be described by natural language.
[0084] Further, the server 120 may construct a reference vector set based on the action elements in the historical interaction information 130. Such a reference vector set may correspond to a text vector of an action element expressed in a natural language, for example. Thus, such a reference vector set may be associated with a business object set to support searching for corresponding business objects through vector matching of action elements.
[0085] like Figure 4 As shown, the server 120 can construct an action vector library 480 (i.e., a reference vector set) based on the action information 470, and can determine the recall result 490 based on the matching of the target vector of the action element 420 with the action vector library 480, that is, the action elements matched in the historical interaction information.
[0086] In some embodiments, the action information 470 in the historical interaction information may be associated with a set of candidate business objects (e.g., multiple documents). Thus, the server 120 may determine corresponding matching business objects (e.g., matching documents) from the set of candidate business objects based on the recall result 490, and may provide the matching business objects as retrieval results.
[0087] Specifically, the server 120 may determine one or more search results matching the input content 310 based on the match between the target vector of the action element indicated in the input content 310 and the reference vector set (eg, the distance between the vectors).
[0088] In some embodiments, the action vector library 480 used to determine the recall result 490 may be constructed based on the historical interaction information 130 of the current target object 150. Alternatively or additionally, the action vector library 480 used to determine the recall result 490 may be constructed based on the historical interaction information of one or more other target objects. For example, when the current target object 150 has access rights to a specific business object, the server 120 may also obtain the action information 470 generated by the historical interaction events of other target objects regarding the business object, and add the corresponding vectors to the action vector library 480 used for recall. In this way, the embodiments of the present disclosure can support users to retrieve specific business objects by describing the actions performed by other users regarding the business object, for example, "the document that XX liked in the meeting."
[0089] Based on this approach, the embodiments of the present disclosure can support the target object to express the search requirements through natural language, and can quickly locate the corresponding business object through the matching of action elements.
[0090] like Figure 3 As shown, the terminal device 110 may, for example, provide search results 325, 335, and 345 in the interface 300 (also referred to as the result page) as a response to the search request. Figure 3 As shown, the interface 300 may further include indication information 315 for indicating a group of search elements 320 determined based on the input content 310 .
[0091] Furthermore, at least one of the search results 325 , 335 , and 345 may be determined based on a set of search elements 320 described by the indication information 315 , for example.
[0092] In some embodiments, the terminal device 110 may also display description information 330 , description information 340 , and description information 350 to intuitively demonstrate the reasons why the corresponding search results 325 , 335 , and 345 are determined to match the input content 310 .
[0093] In some embodiments, Figure 3As shown, the search result 345 may not match at least one search element. Accordingly, the terminal device 110 may also present matching information 355 in association with the search result 345. The matching information 355 may indicate one or more elements in a set of search elements 320 that do not match the search result 345. Additionally or alternatively, the matching information 355 may also list one or more elements in the set of search elements 320 that match the search result 345.
[0094] In some embodiments, the group of search results may also include at least one search result that matches a portion of the search elements in a group of search elements. In some embodiments, when the search results cannot be determined based on all search elements or the search results are limited, the server 120 may not perform strict matching on all searches.
[0095] Continue with Figure 3 As an example, in some cases, due to memory problems, the target object 150 may not accurately express the time element (e.g., search element 320-2). In some embodiments, the server 120 may, for example, expand the search scope from "last week" expressed by the time element to the time range of the previous month, and may search for business objects matching other search elements from this range.
[0096] As an example, the search result 345 may be determined based on a larger time range. Accordingly, the terminal device 110 also presents matching information 355 to indicate that the search result 345 does not match the search element 320 - 2 (ie, the time element) indicated in the input content 310 .
[0097] Based on this approach, the embodiments of the present disclosure can further improve the retrieval efficiency of natural language retrieval.
[0098] Furthermore, it should be understood that although Figure 3 The process of presenting search elements and search results is described in conjunction with a specific search page, but such a process is also applicable to searches triggered by conversations with digital assistants, such as those described above.
[0099] Example devices and equipment
[0100] Figure 5 : shows a schematic structural block diagram of an apparatus 500 for information retrieval according to some embodiments of the present disclosure. The apparatus 500 may be implemented as or included in Figure 1 The server 120, the terminal device 110 or the combination of the server 120 and the terminal device 110. Each module / component in the apparatus 500 may be implemented by hardware, software, firmware or any combination thereof.
[0101] As shown in the figure, the device 500 includes a content acquisition module 510, which is configured to acquire input content for indicating retrieval requirements for the target object; an element determination module 520, which is configured to determine a set of retrieval elements based on the input content, and the set of retrieval elements includes at least action elements, and the action elements are used to describe events associated with the business object to be retrieved; and a result providing module 530, which is configured to provide a set of retrieval results for the retrieval requirements based on the set of retrieval elements and historical interaction information, and the historical interaction information is generated based on a set of interaction events for at least one business component.
[0102] In some embodiments, the historical interaction information is associated with a set of candidate business objects, and a set of search results includes at least one business object determined from the set of candidate business objects.
[0103] In some embodiments, the target object is a first target object, and a set of interaction events is associated with the first target object and / or at least one second target object.
[0104] In some embodiments, the element determination module 520 is further configured to: provide input content to the first model to determine whether the input content indicates a natural language search scenario; and in response to determining that the input content indicates a natural language search scenario, determine a set of retrieval elements based on the input content.
[0105] In some embodiments, the content acquisition module 510 is further configured to: acquire input content received by the target object in a retrieval control; or acquire input content input by the target object to the digital assistant in a conversation between the target object and the digital assistant.
[0106] In some embodiments, a set of search elements further includes at least one of the following: a knowledge element for describing the content of a business object; a user element associated with the business object; a time element associated with the business object; and a type element of the business object.
[0107] In some embodiments, the element determination module 520 is further configured to: provide input content to the second model; and obtain a set of retrieval elements determined by the second model based on the input content.
[0108] In some embodiments, the second model is trained based on the following process: constructing a set of training samples based on a set of reference action elements and a set of reference knowledge elements; and training the second model based on the set of training samples and the set of reference action elements.
[0109] In some embodiments, constructing a set of training input samples based on a set of reference action elements and a set of reference knowledge elements includes: generating intermediate samples by combining specific reference action elements and corresponding reference knowledge elements; and processing the intermediate samples using a third model to obtain at least one training sample corresponding to the specific reference action elements.
[0110] In some embodiments, the at least one training sample includes: a first training sample output by the third model; and / or a second training sample, where the second training sample is generated by deleting at least one limiting element in the first training sample.
[0111] In some embodiments, the element determination module 520 is further configured to: obtain association information of the target object, the association information indicating a group of associated objects associated with the target object; and determine a group of retrieval elements indicated by the input content based on the association information.
[0112] In some embodiments, the result providing module 530 is further configured to provide a set of retrieval results for the retrieval requirement based on the target vector of the action element and the reference vector set associated with the business object set, wherein the reference vector set is generated based on events associated with the corresponding business objects indicated by historical interaction information.
[0113] In some embodiments, the result providing module 530 is further configured to provide at least one search result that matches some of the search elements in a set of search elements.
[0114] In some embodiments, the result providing module 530 is further configured to provide matching information to the target object to indicate that at least one result does not match at least one search element in the set of search elements.
[0115] In some embodiments, the apparatus 500 further includes a control module configured to: cause a set of search results and a set of search elements to be displayed in a result page as a response to the search request.
[0116] Figure 6 6 shows a block diagram of an electronic device 600 in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 6 The electronic device 600 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Figure 6 The electronic device 600 shown can be used to implement Figure 1 server 120, terminal device 110 or a combination of server 120 and terminal device 110.
[0117] like Figure 6As shown, the electronic device 600 is in the form of a general electronic device. The components of the electronic device 600 may include, but are not limited to, one or more processors or processing units 610, a memory 620, a storage device 630, one or more communication units 640, one or more input devices 650, and one or more output devices 660. The processing unit 610 may be an actual or virtual processor and is capable of performing various processes according to a program stored in the memory 620. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capability of the electronic device 600.
[0118] The electronic device 600 typically includes a plurality of computer storage media. Such media may be any accessible media that is accessible to the electronic device 600, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 620 may be a volatile memory (e.g., registers, caches, random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 630 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data and may be accessed within the electronic device 600.
[0119] The electronic device 600 may further include additional removable / non-removable, volatile / non-volatile storage media. Figure 6 As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. The memory 620 may include a computer program product 625 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.
[0120] The communication unit 640 implements communication with other electronic devices through a communication medium. Additionally, the functions of the components of the electronic device 600 can be implemented with a single computing cluster or multiple computing machines that can communicate through a communication connection. Therefore, the electronic device 600 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0121] The input device 650 may be one or more input devices, such as a mouse, a keyboard, a tracking ball, etc. The output device 660 may be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 600 may also communicate with one or more external devices (not shown) through the communication unit 640 as needed, such as a storage device, a display device, etc., communicate with one or more devices that allow a user to interact with the electronic device 600, or communicate with any device that allows the electronic device 600 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0122] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0123] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0124] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0125] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0126] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0127] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.
Claims
1. An information retrieval method, include: Obtaining input content indicating a retrieval requirement from a target object; Based on the input content, determining a set of search elements, the set of search elements at least including an action element, the action element being used to describe an event associated with the business object to be searched; as well as Based on the set of search elements and historical interaction information, a set of search results for the search requirement is provided, wherein the historical interaction information is generated based on a set of interaction events for at least one business component. 2 . The method according to claim 1 , wherein the historical interaction information is associated with a set of candidate business objects, and the set of search results includes at least one business object determined from the set of candidate business objects. 3 . The method according to claim 1 , wherein the target object is a first target object, and the set of interaction events is associated with the first target object and / or at least one second target object.
4. The method according to claim 1, wherein a set of search elements is determined based on the input content. include: providing the input content to a first model to determine whether the input content indicates a natural language search scenario; as well as In response to determining that the input content indicates a natural language search scenario, the set of search elements is determined based on the input content.
5. The method according to claim 1, wherein the input content for indicating the search requirement is obtained include: Acquire the input content received by the target object in the search control; or In the conversation between the target object and the digital assistant, the input content input by the target object to the digital assistant is obtained.
6. The method according to claim 1, wherein the set of search elements further comprises at least one of the following: Knowledge elements, used to describe the content of the business object; a user element associated with the business object; a time element associated with the business object; The type element of the business object.
7. The method according to claim 1, wherein a set of search elements is determined based on the input content. include: providing the input content to a second model; as well as The group of search elements determined by the second model based on the input content is obtained.
8. The method of claim 7, wherein the second model is trained based on the following process: constructing a set of training samples based on a set of reference action elements and a set of reference knowledge elements; and The second model is trained based on the set of training samples and the set of reference action elements.
9. The method according to claim 8, wherein a set of training input samples is constructed based on a set of reference action elements and a set of reference knowledge elements. include: By combining specific reference action elements and corresponding reference knowledge elements, an intermediate sample is generated; as well as The intermediate samples are processed using a third model to obtain at least one training sample corresponding to the specific reference action element.
10. The method according to claim 9, wherein the at least one training sample include: a first training sample output by the third model; and / or A second training sample, wherein the second training sample is generated by deleting at least one limiting element in the first training sample.
11. The method according to claim 1, wherein a set of search elements is determined based on the input content. include: Acquire association information of the target object, where the association information indicates a group of associated objects associated with the target object; as well as Based on the association information, the group of search elements indicated by the input content is determined.
12. The method according to claim 1, wherein a set of search results for the search requirement is provided include: Based on the target vector of the action element and the reference vector set associated with the business object set, the set of retrieval results for the retrieval requirement is provided, wherein the reference vector set is generated based on the event associated with the corresponding business object indicated by the historical interaction information.
13. The method according to claim 1, wherein a set of search results for the search requirement is provided include: At least one search result matching some of the search elements in the set of search elements is provided.
14. The method according to claim 13, further comprising: include: Match information is provided to the target object to indicate that the at least one result does not match at least one search element in the set of search elements.
15. The method according to claim 1, further comprising: include: The set of search results and the set of search elements are displayed in a result page as a response to the search requirement.
16. A device for information retrieval, include: A content acquisition module, configured to acquire input content indicating a retrieval requirement from a target object; An element determination module is configured to determine a set of search elements based on the input content, wherein the set of search elements at least includes an action element, and the action element is used to describe an event associated with a business object to be retrieved; as well as The result providing module is configured to provide a group of search results for the search requirement based on the group of search elements and historical interaction information, wherein the historical interaction information is generated based on a group of interaction events for at least one business component.
17. An electronic device, include: at least one processing unit; as well as At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the method according to any one of claims 1 to 15 when executed by the at least one processing unit.
18. A computer-readable storage medium having a computer program stored thereon, wherein the computer program can be executed by a processor to implement the method according to any one of claims 1 to 15.