Matching method and device and electronic equipment
By performing parallel matching in two feature vector libraries, the problem of decreased retrieval efficiency due to the expansion of the database size is solved, and the user operation experience and system response speed are improved.
Patent Information
- Application Number
- CN202510725592.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-30
- Publication Date
- 2025-09-16
AI Technical Summary
As the number of applications and functional descriptions increase, the size of the feature vector database expands rapidly, resulting in a decrease in database retrieval efficiency and affecting the user operation experience.
The parallel matching method is used to match in two feature vector libraries. The corresponding relationship with the operation process is stored in the first feature vector library and the second feature vector library respectively, so as to quickly locate the target operation process.
It significantly shortens user waiting time, reduces storage and computing resource consumption, and improves system response speed and user experience.
Smart Images

Figure CN120653669A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data matching, and in particular to a matching method, device and electronic equipment. Background Art
[0002] With the rapid development of information technology, the functionality of various applications is becoming increasingly rich, and users' demands for operational processes when using these applications are also increasing. To improve the user experience, we collect and analyze application functional operation descriptions, convert them into feature vectors, and form a feature vector database. The core of this process is to standardize the functional characteristics of different applications, thereby effectively matching user input data and automatically completing related tasks.
[0003] However, with the increasing number of applications and the richer descriptions of their functionality, the size of the feature vector database is rapidly expanding. This expansion not only increases data storage requirements but also places higher demands on computing resources. The surge in the number of feature vectors has led to a decrease in database retrieval efficiency, making the process of matching operational processes based on input data much slower, seriously affecting the user experience. Summary of the Invention
[0004] An embodiment of the present application provides a matching method, including: receiving target input data; performing matching in a first feature vector library and a second feature vector library based on a target feature vector corresponding to the target input data, to obtain a target operation process that matches the target input data; wherein the first feature vector library and the second feature vector library respectively store a correspondence between feature vectors and operation processes; and the operation process is used to execute an operation to complete a target task.
[0005] Optionally, the operation flow stored in the first feature vector library is the operation flow corresponding to the first application; the operation flow stored in the second feature vector library is the operation flow corresponding to the second application; or the operation flow stored in the first feature vector library is the operation flow corresponding to the third application, and the feature vector stored in the first feature vector library is obtained by vectorizing the operation flow description corresponding to the third application by the target application; the operation flow stored in the second feature vector library is the operation flow corresponding to the fourth application, and the feature vector stored in the second feature vector library is obtained by vectorizing the operation flow description corresponding to the fourth application by the fourth application; or the first feature vector library is a static database; the second feature vector library is a dynamic database.
[0006] Optionally, the operation process stored in the first feature vector library is the operation process corresponding to the first application; the operation process stored in the second feature vector library is the operation process corresponding to the second application; based on the target feature vector corresponding to the target input data, matching is performed in the first feature vector library and the second feature vector library respectively to obtain a target operation process that matches the target input data, including: the first application matches in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a first target operation process that matches the target input data; the second application matches in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process that matches the target input data; or, the target application matches in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data to obtain a target operation process that matches the target input data.
[0007] Optionally, the first application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain a first target operation process that matches the target input data, including: the first application calls the vectorization interface of the target application, vectorizes the target input data, and obtains the first target feature vector; based on the first target feature vector, matches in the first feature vector library to obtain the first target operation process that matches the target input data; the second application matches in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process that matches the target input data, including: the second application calls the vectorization interface of the target application, vectorizes the target input data, and obtains the second target feature vector; based on the second target feature vector, matches in the second feature vector library to obtain the second target operation process that matches the target input data.
[0008] Optionally, the first application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain a first target operation process that matches the target input data, including: the first application obtains the target feature vector obtained by the target application through vectorization of the target input data, and matches it in the first feature vector library to obtain the first target operation process that matches the target input data; the second application matches the target feature vector corresponding to the target input data in the second feature vector library to obtain a second target operation process that matches the target input data, including: the second application obtains the target feature vector obtained by the target application through vectorization of the target input data, and matches it in the second feature vector library to obtain the second target operation process that matches the target input data.
[0009] Optionally, the first feature vector library is a static database, and the second feature vector library is a dynamic database; the method further includes: during the running of the fifth application, in response to detecting target running data that meets the update condition, updating the dynamic database based on the target running data.
[0010] Optionally, the operation process stored in the first feature vector library is the operation process corresponding to the third application, and the feature vector stored in the first feature vector library is obtained by vectorizing the operation process description corresponding to the third application by the target application; the operation process stored in the second feature vector library is the operation process corresponding to the fourth application, and the feature vector stored in the second feature vector library is obtained by vectorizing the operation process description corresponding to the fourth application by the fourth application; based on the target feature vector corresponding to the target input data, matching is performed in the first feature vector library and the second feature vector library respectively to obtain a target operation process that matches the target input data, including: the target application matches in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a third target operation process that matches the target input data; the fourth application matches in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a fourth target operation process that matches the target input data; or the target application matches in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data to obtain a target operation process that matches the target input data.
[0011] Optionally, the target application has the capability of instructing the target model to perform at least one task, the target model being used to vectorize target input data, and / or the target model being used to match vectorized data.
[0012] An embodiment of the present application also provides a matching device, including a receiving module for receiving target input data; an operation process matching module for matching in a first feature vector library and a second feature vector library based on a target feature vector corresponding to the target input data to obtain a target operation process that matches the target input data; wherein the first feature vector library and the second feature vector library respectively store the correspondence between the feature vector and the operation process; the operation process is used to execute a section of operation to complete a target task.
[0013] An embodiment of the present application also provides an electronic device, a target application running on the electronic device; the target application is configured to: parse at least one task based on input, call a target model to execute at least one task, and at least be used to execute: receive target input data; call the target model to obtain a target feature vector corresponding to the target input data; call the target model to match the target feature vector in the first feature vector library and the second feature vector library respectively, to obtain a target operation process that matches the target input data; execute the target operation process to complete the target task; wherein the first feature vector library and the second feature vector library respectively store the correspondence between feature vectors and operation processes. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 The flowchart of the matching method of the present application is exemplified;
[0015] Figure 2 This is a flowchart illustrating a matching method in which both the first application and the second application of the present application support calling a query matching interface;
[0016] Figure 3 Schematically illustrates a flow chart of a matching method in which neither the first application nor the second application of the present application supports calling a query matching interface;
[0017] Figure 4 A flowchart illustrating a matching method in which the third application of the present application does not support calling, but the fourth application supports calling, a query matching interface;
[0018] Figure 5 A flowchart of a matching method in which neither the third application nor the fourth application of the present application supports calling a query matching interface is exemplified;
[0019] Figure 6 The block diagram of the matching device of the present application is exemplarily shown;
[0020] Figure 7 The structural diagram of the electronic device of the present application is exemplarily shown. DETAILED DESCRIPTION
[0021] Various aspects and features of the present application are described herein with reference to the accompanying drawings.
[0022] It should be understood that various modifications may be made to the embodiments of the present application. Therefore, the above description should not be considered as limiting, but merely as an example of an embodiment. Other modifications within the scope and spirit of the present application will occur to those skilled in the art.
[0023] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the present application and, together with the general description of the present application given above and the detailed description of the embodiments given below, serve to explain the principles of the present application.
[0024] These and other characteristics of the present application will become apparent from the following description of a preferred form of embodiment given as a non-limiting example with reference to the accompanying drawings.
[0025] It should also be understood that although the present application has been described with reference to certain specific examples, those skilled in the art will readily be able to implement many other equivalent forms of the present application.
[0026] The above and other aspects, features and advantages of the present application will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
[0027] Specific embodiments of the present application will be described hereinafter with reference to the accompanying drawings; however, it should be understood that the embodiments described are merely examples of the present application and may be implemented in a variety of ways. Familiar and / or repetitive functions and structures are not described in detail to avoid obscuring the present application with unnecessary or redundant details. Therefore, the specific structural and functional details described herein are not intended to be limiting, but rather serve merely as a basis and representative basis for the claims to teach those skilled in the art to variously utilize the present application with substantially any suitable detailed structure.
[0028] This specification may use the phrases "in one embodiment," "in another embodiment," "in yet another embodiment," or "in other embodiments," which may all refer to one or more of the same or different embodiments according to the present application.
[0029] The matching method of the present application is described in detail below with reference to the accompanying drawings. Figure 1 This is a flowchart of the matching method according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps:
[0030] In step S110 , target input data is received.
[0031] For example, target input data can refer to data in various formats provided by users when interacting with an application. This data can take the form of text, audio, images, and more. By analyzing this input data, the user's operational intent can be identified. Text data can include natural language text input by users, such as search queries, commands, and comments. Natural language processing (NLP) techniques can be used to perform word segmentation, part-of-speech tagging, and entity recognition on text data to extract the user's intent. For example, if a user inputs "find nearby restaurants," it can be identified that "find" is the search intent and "nearby restaurants" is the search target. Audio data can refer to commands or requests input by the user via voice. Using speech recognition technology, the audio signal is converted into text data, and then the user's intent is extracted using the same analysis methods as for text data. For example, if a user says "play my favorite music," it can be identified that the user's intended action is "play music." Image data can include photos, screenshots, or other visual information uploaded by users. Computer vision techniques can analyze image content to identify objects, scenes, or text within the image. For example, if a user uploads an image of a product, the product can be identified and the user's intent can be inferred to be to obtain information about or purchase it. The diversity of target input data and analysis methods enable the system to accurately identify user intentions, thereby providing more personalized and efficient operation processes to meet the specific needs of users.
[0032] In step S120, based on the target feature vector corresponding to the target input data, a match is performed in the first feature vector library and the second feature vector library to obtain a target operation flow that matches the target input data. The first feature vector library and the second feature vector library each store a correspondence between feature vectors and operation flows; the operation flow is used to perform an operation to complete the target task.
[0033] Exemplarily, feature extraction is performed on target input data (such as text, audio, images, etc.). For example, NLP technology is used to convert text into vector representations. Common techniques include word embedding (such as Word2Vec, GloVe) or sentence embedding (such as BERT). Audio signals are converted into feature vectors through acoustic feature extraction (such as MFCC, spectrogram). Image features are extracted using a convolutional neural network (CNN) to obtain a high-dimensional vector representation of the image. The first feature vector library stores feature vectors related to specific operation processes and their corresponding operation processes. For example, for a specific search task, the first feature vector library may contain search-related feature vectors and corresponding operation steps. The second feature vector library stores feature vectors related to other operation processes or application scenarios. For example, the second feature vector library may include feature vectors related to user interface interaction, setting adjustment, etc. When matching, different algorithms can be used to calculate the similarity between feature vectors. Specifically, parallel matching is used to perform matching in the first feature vector library and the second feature vector library respectively. Through parallel processing, the feature vector closest to the target feature vector can be quickly found. Based on the matching results, the operation process corresponding to the target feature vector will be returned. If multiple matching results are found in the two feature vector libraries, they can be sorted according to the similarity score and the optimal operation process can be selected for execution. Once the target operation process is determined, the corresponding operation will be executed and feedback or suggestions can be provided to the user to ensure that the user can successfully complete the target task.
[0034] In the related art, data based on user input can only be matched with a single feature vector library, resulting in low matching efficiency. The embodiments of the present application enable parallel matching in two feature vector libraries to quickly locate the operational process related to the target input data. This parallel processing method significantly shortens user waiting time, thereby improving system response speed. Distributing the feature vectors and storing them in different feature vector libraries makes the size of each library relatively small, helping to reduce the consumption of storage and computing resources. This structured storage method can effectively manage the growth of the database and avoid excessive expansion of a single library. The first feature vector library and the second feature vector library can be optimized and adjusted according to different application scenarios or functions, allowing the system to flexibly adapt and provide more targeted operational processes when faced with different types of input data. Fast and accurate operational process matching can significantly improve the user's operational experience. After entering data, users can obtain feedback and complete related tasks in a timely manner, enhancing the system's ease of use and satisfaction.
[0035] In some embodiments, the operation flow stored in the first feature vector library is the operation flow corresponding to the first application; the operation flow stored in the second feature vector library is the operation flow corresponding to the second application; or the operation flow stored in the first feature vector library is the operation flow corresponding to the third application, and the feature vector stored in the first feature vector library is obtained by vectorizing the operation flow description corresponding to the third application by the target application; the operation flow stored in the second feature vector library is the operation flow corresponding to the fourth application, and the feature vector stored in the second feature vector library is obtained by vectorizing the operation flow description corresponding to the fourth application by the fourth application; or the first feature vector library is a static database.
[0036] For example, the first, second, third, fourth, and fifth applications can be any one or more of the following types of applications: search browsers, social applications, transportation applications, shopping applications, learning applications, multimedia applications, and so on. The aforementioned operation process can be any of the following: "searching through a browser based on a search term," "opening an application and finding the corresponding operation items in the operation interface to perform various operations." The target application can be deployed with vectorized interfaces, database interfaces, and query matching interfaces, which can be called by supported applications, such as voice assistants and smart screen recognition applications.
[0037] In the related art, when establishing a feature vector library, it is only possible to collect descriptions of the operation processes of each application through applications that do not have the above-mentioned interface to establish a feature vector library. The embodiments of this application provide multiple methods for establishing the first feature vector library and the second feature vector library, which are as follows:
[0038] For example, the first application and the second application may both support calling the vectorization interface and database interface of the target application. The first application creates a first feature vector library by calling the database interface of the target application, and stores the operation process corresponding to the first application in the first feature vector library. The first application vectorizes the operation process description of the first application by calling the vectorization interface of the target application, establishes a correspondence between the obtained feature vector and the corresponding operation process, and stores the correspondence in the first feature vector library. The second application creates a second feature vector library by calling the database interface of the target application, and stores the operation process corresponding to the second application in the second feature vector library. The second application vectorizes the operation process description of the second application by calling the vectorization interface of the target application, establishes a correspondence between the obtained feature vector and the corresponding operation process, and stores the correspondence in the second feature vector library.
[0039] For another example, the first application and the second application may not support calling the vectorization interface and database interface of the above-mentioned target application. In this case, the target application can help the first application establish a corresponding first feature vector library. The first feature vector library stores the operation process corresponding to the first application. The target application can vectorize the operation process description of the first application, and establish a correspondence between the obtained feature vector and its corresponding operation process, and send the correspondence between the feature vector and the operation process to the first feature vector library corresponding to the first application. Similarly, the target application can help the second application establish a corresponding second feature vector library. The second feature vector library stores the operation process corresponding to the second application. The target application can vectorize the operation process description of the second application, and establish a correspondence between the obtained feature vector and its corresponding operation process, and send the correspondence between the feature vector and the operation process to the second feature vector library corresponding to the second application.
[0040] For another example, the third application does not support calling the vectorization interface and database interface of the target application. In this case, the target application can help the first feature vector library corresponding to the third application. The first feature vector library stores the operation process corresponding to the third application. The target application can vectorize the operation process description of the third application, and establish a correspondence between the obtained feature vector and its corresponding operation process, and send the correspondence between the feature vector and the operation process to the first feature vector library corresponding to the third application. The fourth application supports calling the vectorization interface and database interface of the above-mentioned target application. In this case, the second feature vector library corresponding to the fourth application can be created by calling the database interface of the target application, and the operation process corresponding to the fourth application can be stored in the second feature vector library. The fourth application vectorizes the operation process description of the fourth application by calling the vectorization interface of the target application, establishes a correspondence between the obtained feature vector and the corresponding operation process, and stores the correspondence to the second feature vector library.
[0041] Based on the above embodiment, the first feature vector library can be a static database, and the second feature vector library can be a dynamic database. For example, the operation process stored in the static database can be a relatively fixed operation process, such as "the operation process of performing a search operation based on a search term", "the operation process of opening an application to enter a fixed interface to operate a fixed operation item of a fixed operation interface". Specifically, "the operation process of performing a search operation based on the name of a song", "the operation process of opening a social application to enter a settings interface to operate a personal data operation item". The operation process stored in the dynamic database can be a relatively flexible operation process, such as "the operation process of opening an application to enter a flexible interface to operate a flexible operation item", specifically "the operation process of opening a social application to enter a chat interface to find a user name to operate", "the operation process of opening a shopping application to enter a category interface to find a certain product to operate".
[0042] In one embodiment, the operation flow stored in the first feature vector library is the operation flow corresponding to the first application; the operation flow stored in the second feature vector library is the operation flow corresponding to the second application. The above step S120 may specifically include: the first application performs a match in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a first target operation flow that matches the target input data; the second application performs a match in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation flow that matches the target input data. Alternatively, the target application performs a match in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data to obtain a target operation flow that matches the target input data.
[0043] Specifically, in the case where both the first application and the second application support calling the query matching interface of the target application, the above step S120 may specifically include the first application matching the target feature vector corresponding to the target input data in the first feature vector library to obtain a first target operation process matching the target input data; the second application matching the target feature vector corresponding to the target input data in the second feature vector library to obtain a second target operation process matching the target input data. On this basis, the matching method of this application can refer to Figure 2 :
[0044] In step S210, the target application receives target input data, analyzes the target input data to determine user intent, and determines related applications, such as a first application and a second application, based on the user intent;
[0045] For example, the target application takes a voice assistant as an example. The voice assistant obtains the user intention of "help me book a plane ticket" by analyzing the target input data. The first application and the second application take the above-mentioned "transportation application" as an example, such as the first application is A transportation application and the second application is B transportation application.
[0046] In step S220, the first application calls the query matching interface based on the target feature vector, and performs a match in the first feature vector library through the query matching interface to obtain a first target operation process that matches the target input data. The second application calls the query matching interface based on the target feature vector, and performs a match in the second feature vector library through the query matching interface to obtain a second target operation process that matches the target input data.
[0047] For example, transportation app A invokes the voice assistant's query matching interface based on a target feature vector. This query matching interface calculates the similarity between the target feature vector and each feature vector in a first feature vector library, and determines the corresponding "ticket booking process" for transportation app A based on the sorted similarities. Transportation app B invokes the voice assistant's query matching interface based on a target feature vector. This query matching interface calculates the similarity between the target feature vector and each feature vector in a second feature vector library, and determines the corresponding "ticket booking process" for transportation app B based on the sorted similarities. Transportation app A and transportation app B execute their corresponding "ticket booking processes" and feed back the execution results to the voice assistant, which then displays them to the user.
[0048] Through the method of this embodiment, when both the first application and the second application support calling the query matching interface of the target application, the first application and the second application can call the query matching interface of the target application based on the target feature vector corresponding to the target input data to access their corresponding first feature vector library and second feature vector library, so as to achieve the matching of the target feature vector with the operation process in the first feature vector library and the second feature vector library. Compared with the related technology in which the voice assistant matches the operation process corresponding to the first application and the second application in its own feature vector library based on the feature vector, the matching method of this embodiment improves the matching efficiency and thus improves the response speed, reduces the user's waiting time, and further improves the user experience.
[0049] In the case where neither the first application nor the second application supports calling the query matching interface of the target application. The above step S120 may specifically include the target application matching the target feature vector corresponding to the target input data in the first feature vector library and the second feature vector library respectively to obtain the target operation process that matches the target input data. On this basis, the matching method of this application can refer to Figure 3 :
[0050] In step S310, the target application receives target input data, analyzes the target input data to determine user intent, and determines related applications, such as a first application and a second application, based on the user intent;
[0051] For example, the target application takes a voice assistant as an example. The voice assistant obtains the user intention of "help me book a plane ticket" by analyzing the target input data. The first application and the second application take the above-mentioned "transportation application" as an example, such as the first application is A transportation application and the second application is B transportation application.
[0052] In step S320, the target application can directly access the first feature vector library of the first application based on the target feature vector, and match the target feature vector with the first feature vector library based on the target feature vector to obtain a first target operation process that matches the target input data. The target application can directly access the second feature vector library of the second application based on the target feature vector, and match the target feature vector with the second feature vector library based on the target feature vector to obtain a second target operation process that matches the target input data.
[0053] For example, the voice assistant can calculate the similarity between the target feature vector and each feature vector in the first feature vector library, and determine the "ticket booking process" corresponding to transportation application A based on the sorted similarity scores. The voice assistant can then calculate the similarity between the target feature vector and each feature vector in the second feature vector library, and determine the "ticket booking process" corresponding to transportation application B based on the sorted similarity scores. Transportation application A and transportation application B then execute their corresponding "ticket booking processes" and feedback the execution results to the voice assistant, which then displays them to the user.
[0054] Through the method of this embodiment, when neither the first application nor the second application supports calling the query matching interface of the target application, the target application can directly access the first feature vector library corresponding to the first application and the second feature vector library corresponding to the second application based on the target feature vector, so as to achieve the matching of the target feature vector with the operation processes in the first feature vector library and the second feature vector library. Compared with the related art in which the voice assistant matches the operation processes corresponding to the first application and the second application in its own feature vector library based on the feature vector, the matching method of this embodiment improves the matching efficiency and thus improves the response speed, reduces the user's waiting time, and further improves the user experience.
[0055] In some embodiments, the first application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain a first target operation process that matches the target input data, including: the first application calls the vectorization interface of the target application, vectorizes the target input data, and obtains the first target feature vector; based on the first target feature vector, matches in the first feature vector library to obtain the first target operation process that matches the target input data; the second application matches in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process that matches the target input data, including: the second application calls the vectorization interface of the target application, vectorizes the target input data, and obtains the second target feature vector; based on the second target feature vector, matches in the second feature vector library to obtain the second target operation process that matches the target input data.
[0056] For example, when both the first application and the second application support calling the vectorization interface and query matching interface of the target application, the vectorization process of the target input data and the matching process of the operation flow can be completed by the first application and the second application calling the vectorization interface and query matching interface of the target application respectively.
[0057] The target application takes a voice assistant as an example, and the first application and the second application take the above-mentioned "traffic application" as an example, such as the first application is A traffic application and the second application is B traffic application.
[0058] Traffic application A can call the vectorization interface of the voice assistant, and through the vectorization interface, the target input data can be vectorized to obtain the first target feature vector corresponding to the target input data. Based on the first target feature vector, traffic application A can continue to call the query matching interface of the voice assistant, and access the first feature vector library corresponding to traffic application A through the query matching interface to achieve the matching of the first target feature vector with the operation process in the first feature vector library, and obtain the first target operation process corresponding to the target input data, such as the "first target air ticket booking process".
[0059] Traffic application B can call the vectorization interface of the voice assistant, and through the vectorization interface, the target input data can be vectorized to obtain the second target feature vector corresponding to the target input data. Based on the second target feature vector, traffic application B can continue to call the query matching interface of the voice assistant, and access the second feature vector library corresponding to traffic application B through the query matching interface to achieve the matching of the second target feature vector with the operation process in the second feature vector library, and obtain the second target operation process corresponding to the target input data, such as the "second target air ticket booking process".
[0060] Through the matching method of the above embodiment, when both the first application and the second application support calling the vectorization interface and query matching interface of the target application, the vectorization process and the matching process can be executed on the application side of the first application and the second application. Compared with the related technology in which the voice assistant executes the vectorization process and the matching process to access the voice assistant's own database, the method of this embodiment can further improve the speed of responding to users and reduce user waiting time.
[0061] In some embodiments, the first application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain a first target operation process that matches the target input data, including: the first application obtains the target feature vector obtained by the target application through vectorization of the target input data, and matches it in the first feature vector library to obtain the first target operation process that matches the target input data; the second application matches the target feature vector corresponding to the target input data in the second feature vector library to obtain a second target operation process that matches the target input data, including: the second application obtains the target feature vector obtained by the target application through vectorization of the target input data, and matches it in the second feature vector library to obtain the second target operation process that matches the target input data.
[0062] For example, when neither the first application nor the second application supports calling the vectorization interface of the target application but supports calling the query matching interface, the vectorization process of the target input data can be completed by the target application with the help of the first application and the second application, and the matching process of the operation flow can be completed by the first application and the second application calling the query matching interface of the target application.
[0063] The target application takes a voice assistant as an example, and the first application and the second application take the above-mentioned "traffic application" as an example, such as the first application is A traffic application and the second application is B traffic application.
[0064] The voice assistant vectorizes the target input data to obtain a first target feature vector corresponding to the target input data, and sends the first target feature vector to transportation application A. Based on the first target feature vector, transportation application A can call the voice assistant's query matching interface and access the first feature vector library corresponding to transportation application A through the query matching interface to match the first target feature vector with the operation processes in the first feature vector library to obtain the first target operation process corresponding to the target input data, such as the "first target flight booking process."
[0065] The voice assistant vectorizes the target input data to obtain a second target feature vector corresponding to the target input data, and sends the second target feature vector to transportation application B. Based on the second target feature vector, transportation application B can call the voice assistant's query matching interface and access the second feature vector library corresponding to transportation application B through the query matching interface to match the second target feature vector with the operation processes in the second feature vector library to obtain the second target operation process corresponding to the target input data, such as the "second target flight booking process."
[0066] Through the matching method of the above embodiment, when neither the first application nor the second application supports calling the vectorization interface of the target application but supports calling the query matching interface, the vectorization process can be completed by the target application with the help of the first application and the second application, and the matching process of the operation process is completed by the first application and the second application calling the query matching interface of the target application. Compared with the related technology in which the voice assistant executes the vectorization process and the matching process accesses the voice assistant's own database, the method of this embodiment can improve the speed of responding to users to a certain extent and reduce user waiting time.
[0067] In some embodiments, the first feature vector library is a static database, and the second feature vector library is a dynamic database. During the running of the fifth application, in response to detecting target running data that meets the update condition, the dynamic database is updated based on the target running data.
[0068] For example, let's take a "social application" as an example, such as Social Application 1. After Social Application 1 is released, the user downloads it to their terminal device. During the execution of Social Application 1 on the terminal device, the correspondence between the feature vectors and the operational flow in the static database remains unchanged, meaning no update is required. Instead, during the execution of Social Application 1 on the terminal device, it detects target operational data that meets the update criteria and updates the dynamic database based on the target operational data. For example, after an update to Social Application 1, a corresponding operational node is added, deleted, or modified during the original operational flow. In this case, Social Application 1 detects this change during execution and updates the corresponding feature vectors and operational flow in the dynamic database based on the new target operational flow. For another example, during the execution of Social Application 1, a new operational flow is generated based on user behavior. At this point, it is determined that the target operational data meets the update criteria. Specifically, if User A was previously pinned to the top of the chat interface of Social Application 1 and the user now unpins this setting, User A's position in the chat interface has changed. In this case, the original operational flow of "opening Social Application 1 to send a message to User A" will also change as the user unpins the setting. The location of user A in the chat interface is used as the target operation data to update the corresponding feature vector and operation process of the dynamic database.
[0069] For example, if the fifth application supports calling the target application's vectorized interface and database interface, the fifth application can call the target application's vectorized interface to vectorize the target operating data that meets the update conditions to obtain a feature vector for the target operating data. Based on the feature vector of the target operating data, the fifth application can call the target application's database interface and, through the database interface, update the relationship between the corresponding feature vector and the operation process in the dynamic database based on the feature vector of the target operating data.
[0070] The fifth application uses a "social application" as an example, such as social application 1. The target application is a voice assistant. During the operation of social application 1, if target operating data that meets the update conditions is detected, the voice assistant's vectorization interface can be called to vectorize the target operating data that meets the update conditions to obtain a feature vector of the target operating data. Based on the feature vector of the target operating data, the database interface of the target application is called. Through this database interface, the relationship between the corresponding feature vector and the operation process in the dynamic database is updated based on the feature vector of the target operating data.
[0071] For example, if the fifth application does not support calling the target application's vectorized interface but supports calling the database interface, the fifth application can request the target application to vectorize the target operating data that meets the update conditions and send the resulting feature vector of the target operating data to the fifth application. The fifth application then calls the target application's database interface based on the feature vector of the target operating data and, through the database interface, updates the relationship between the corresponding feature vector and the operation process in the dynamic database based on the feature vector of the target operating data.
[0072] The fifth application takes a "social application" as an example, such as social application 1. The target application is a voice assistant. During the operation of social application 1, if target operating data that meets the update conditions is detected, social application 1 can send a request instruction to the voice assistant to request the target application to vectorize the target operating data that meets the update conditions and send the obtained feature vector of the target operating data to social application 1. Based on the feature vector of the target operating data, the database interface of the target application is called, and through this database interface, the relationship between the corresponding feature vector and the operation process in the dynamic database is updated based on the feature vector of the target operating data.
[0073] Through the above method, the dynamic database can be quickly updated regardless of whether the fifth application supports or does not support calling the vectorized interface of the target application, effectively avoiding the situation where users feedback incorrect results or no response during use due to slow updates, thereby further improving the user experience.
[0074] In some embodiments, the operation process stored in the first feature vector library is the operation process corresponding to the third application, and the feature vector stored in the first feature vector library is obtained by the target application vectorizing the operation process description corresponding to the third application; the operation process stored in the second feature vector library is the operation process corresponding to the fourth application, and the feature vector stored in the second feature vector library is obtained by the fourth application vectorizing the operation process description corresponding to the fourth application; the above-mentioned step S120 may specifically include: the target application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain the third target operation process matching the target input data; the fourth application matches the target feature vector corresponding to the target input data in the second feature vector library to obtain the fourth target operation process matching the target input data; or the target application matches the target feature vector corresponding to the target input data in the first feature vector library and the second feature vector library respectively to obtain the target operation process matching the target input data.
[0075] Specifically, when the third application does not support calling the query matching interface of the target application, and the fourth application supports calling the query matching interface of the target application, the above step S120 may specifically include: the target application matches the target feature vector corresponding to the target input data in the first feature vector library to obtain a third target operation process that matches the target input data; the fourth application matches the target feature vector corresponding to the target input data in the second feature vector library to obtain a fourth target operation process that matches the target input data. Based on this, the matching method of this application can refer to Figure 4 :
[0076] In step S410, the target application receives target input data, analyzes the target input data to determine user intent, and determines related applications, such as the third application and the fourth application, based on the user intent;
[0077] For example, the target application takes a voice assistant as an example. The voice assistant obtains the user intention of "help me book a plane ticket" by analyzing the target input data. The third application and the fourth application take the above-mentioned "transportation application" as an example, such as the third application is a transportation application and the fourth application is b transportation application.
[0078] In step S420, the target application can directly access the first feature vector library of the third application based on the target feature vector, and match the target feature vector with the first feature vector library to obtain a third target operation process that matches the target input data. The fourth application calls the query matching interface based on the target feature vector and matches the second feature vector library through the query matching interface to obtain a fourth target operation process that matches the target input data.
[0079] For example, the voice assistant can calculate the similarity between the target feature vector and each feature vector in the first feature vector library, and determine the "ticket booking process" corresponding to transportation application a based on the ranking of the similarities. Transportation application b then calls the voice assistant's query matching interface based on the target feature vector. This query matching interface calculates the similarity between the target feature vector and each feature vector in the second feature vector library, and determines the "ticket booking process" corresponding to transportation application b based on the ranking of the similarities. Transportation application a and transportation application b then execute their corresponding "ticket booking processes" and feedback the execution results to the voice assistant, which then displays them to the user.
[0080] Through the method of this embodiment, when the third application does not support calling the query matching interface of the target application, and the fourth application supports calling the query matching interface of the target application, the target application can directly access the first feature vector library corresponding to the third application to achieve matching of the target feature vector with the operation process in the first feature vector library. The fourth application can call the query matching interface based on the target feature vector to access its corresponding second feature vector library to achieve matching of the target feature vector with the operation process in the second feature vector library. Compared with the voice assistant in the related art that matches the operation process corresponding to the third application and the fourth application in its own feature vector library based on the feature vector, the matching method of this embodiment improves the matching efficiency and thus improves the response speed, reduces the user's waiting time, and further improves the user experience.
[0081] In the case that neither the third application nor the fourth application supports calling the query matching interface of the target application. The above step S120 may specifically include the target application matching the target feature vector corresponding to the target input data in the first feature vector library and the second feature vector library respectively to obtain the target operation process matching the target input data. On this basis, the matching method of this application can refer to Figure 5 :
[0082] In step S510, the target application receives target input data, analyzes the target input data to determine user intent, and determines related applications, such as the third application and the fourth application, based on the user intent;
[0083] For example, the target application takes a voice assistant as an example. The voice assistant obtains the user intention of "help me book a plane ticket" by analyzing the target input data. The third application and the fourth application take the above-mentioned "transportation application" as an example, such as the third application is a transportation application and the fourth application is b transportation application.
[0084] In step S520, the target application can directly access the first feature vector library of the third application based on the target feature vector, and match the target feature vector with the first feature vector library to obtain a third target operation process that matches the target input data. The target application can directly access the second feature vector library of the fourth application based on the target feature vector, and match the target feature vector with the second feature vector library to obtain a fourth target operation process that matches the target input data.
[0085] For example, the voice assistant can calculate the similarity between the target feature vector and each feature vector in the first feature vector library, and determine the "ticket booking process" corresponding to transportation application a based on the sorted similarity scores. The voice assistant can then calculate the similarity between the target feature vector and each feature vector in the second feature vector library, and determine the "ticket booking process" corresponding to transportation application b based on the sorted similarity scores. Transportation application a and transportation application b then execute their corresponding "ticket booking processes" and feedback the execution results to the voice assistant, which then displays them to the user.
[0086] Through the method of this embodiment, when neither the third application nor the fourth application supports calling the query matching interface of the target application, the target application can directly access the first feature vector library corresponding to the third application and the second feature vector library corresponding to the fourth application based on the target feature vector, so as to achieve the matching of the target feature vector with the operation processes in the first feature vector library and the second feature vector library. Compared with the related technology in which the voice assistant matches the operation processes corresponding to the third application and the fourth application in its own feature vector library based on the feature vector, the matching method of this embodiment improves the matching efficiency and thus improves the response speed, reduces the user's waiting time, and further improves the user experience.
[0087] In some embodiments, the target application has the ability to instruct the target model to perform at least one task, the target model is used to vectorize target input data, and / or the target model is used to match the vectorized data.
[0088] Exemplarily, the target model can be a vectorization interface and / or a query matching interface. The vectorization interface is used to vectorize the target input data. The query matching interface is used to match the target feature vector obtained by vectorizing the target input data with the first feature vector library and the second feature vector library to obtain the target operation process corresponding to the target input data.
[0089] For example, if the target application is a voice assistant, the voice assistant has a target model deployed within it, meaning it is configured with a vectorization interface and / or a query matching interface. Third-party applications can call these vectorization interfaces to vectorize input data or operation flow descriptions, allowing them to quickly build their own feature vector libraries. After the third-party application has built its library, it can call the query matching interface to match the input data with the operation flows in the feature vector library.
[0090] In addition, in this embodiment, if the third-party application does not support calling the vectorization interface and / or the query matching interface, the third-party application can proactively send a request to the target application to establish a feature vector library, so that the target application can complete the establishment of its own feature vector library on the application side of the third-party application. The third-party application can also send a query matching request to the target application so that the target application can complete the matching of input data with the operation process in the feature vector library.
[0091] Through the above target application, it is possible to quickly establish a feature vector library corresponding to third-party applications, and implement the operation process corresponding to the matching input data from the feature vector library, so as to speed up the speed of third-party applications responding to the operation process, reduce user waiting time, and improve user experience.
[0092] Figure 6 is a block diagram of a matching device provided in an embodiment of the present application, such as Figure 6 As shown, the matching device 600 includes a receiving module 610 and an operation process matching module 620 .
[0093] Specifically, the receiving module 610 is used to receive target input data;
[0094] The operation process matching module 620 is used to match the target feature vector corresponding to the target input data in the first feature vector library and the second feature vector library respectively to obtain the target operation process that matches the target input data; wherein the first feature vector library and the second feature vector library respectively store the correspondence between the feature vector and the operation process; the operation process is used to perform a section of operation to complete the target task.
[0095] The matching device 600 can quickly locate the operation process related to the target input data by matching in two feature vector libraries in parallel. This parallel processing method significantly shortens the user's waiting time, thereby improving the system response speed. The feature vectors are stored in different feature vector libraries in a dispersed manner, so that the size of each library is relatively small, which helps to reduce the consumption of storage and computing resources. This structured storage method can effectively manage the growth of the database and avoid excessive expansion of a single library. The first feature vector library and the second feature vector library can be optimized and adjusted according to different application scenarios or functions, so that the system can flexibly adapt and provide more targeted operation processes when facing different types of input data. Fast and accurate operation process matching can significantly improve the user's operating experience. After entering the data, the user can get feedback in a timely manner and complete related tasks, which enhances the ease of use and satisfaction of the system.
[0096] Figure 7 Schematic diagram of the electronic device 7 provided in the embodiment of the present application. Figure 7 As shown, the electronic device 7 of this embodiment includes: a processor 701, a memory 702, and a target application 703 stored in the memory 702 and executable on the processor 701. The target application 703 is configured to: parse at least one task based on the input, call the target model to execute at least one task, and is at least configured to: receive target input data; call the target model to obtain a target feature vector corresponding to the target input data; call the target model to match the target feature vector in the first feature vector library and the second feature vector library respectively to obtain a target operation process that matches the target input data; execute the target operation process to complete the target task; wherein the first feature vector library and the second feature vector library respectively store the corresponding relationship between feature vectors and operation processes. The target application 703 in this embodiment is the target application in the method embodiment.
[0097] The electronic device 7 may be a desktop computer, a notebook, a PDA, a cloud server or other electronic device. The electronic device 7 may include but is not limited to a processor 701 and a memory 702. Those skilled in the art will understand that Figure 7 This is merely an example of the electronic device 7 and does not limit the electronic device 7 . The electronic device 7 may include more or fewer components than shown in the figure, or different components.
[0098] The processor 701 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0099] The memory 702 can be an internal storage unit of the electronic device 7, such as a hard disk or memory of the electronic device 7. The memory 702 can also be an external storage device of the electronic device 7, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash memory card, etc. equipped on the electronic device 7. The memory 702 can also include both an internal storage unit of the electronic device 7 and an external storage device. The memory 702 is used to store target applications and other programs and data required by the electronic device.
[0100] Those skilled in the art will clearly understand that for the sake of convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
[0101] The present application provides a computer program product storing a target application, wherein the target application is configured to: parse at least one task based on input, call a target model to execute at least one task, and at least be used to execute: receive target input data; call a target model to obtain a target feature vector corresponding to the target input data; call the target model to match the target feature vector in a first feature vector library and a second feature vector library respectively to obtain a target operation process that matches the target input data; and execute the target operation process to complete the target task.
[0102] If the integrated module is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by the target application program to the relevant hardware. The target application program is stored in a computer-readable storage medium. The target application is configured to: parse at least one task based on the input, call the target model to perform at least one task, and at least be used to perform: receive target input data; call the target model to obtain the target feature vector corresponding to the target input data; call the target model to match the target feature vector in the first feature vector library and the second feature vector library respectively, to obtain the target operation process that matches the target input data; execute the target operation process to complete the target task. The target application program includes computer program code, which can be in source code form, object code form, executable file or some intermediate form. Computer-readable media can include: any entity or device that can carry computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in computer-readable media can be appropriately increased or decreased according to the requirements of legislation and patent practices in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practices, computer-readable media does not include electrical carrier signals and telecommunications signals.
[0103] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.
Claims
1. A matching method, comprising: Receive target input data; Based on the target feature vector corresponding to the target input data, matching is performed in the first feature vector library and the second feature vector library respectively to obtain a target operation process matching the target input data; The first feature vector library and the second feature vector library respectively store corresponding relationships between feature vectors and operation processes; the operation process is used to execute an operation to complete a target task.
2. The method according to claim 1, wherein the operation process stored in the first feature vector library is an operation process corresponding to the first application; the operation process stored in the second feature vector library is an operation process corresponding to the second application; or The operation process stored in the first feature vector library is an operation process corresponding to a third application, and the feature vectors stored in the first feature vector library are obtained by the target application vectorizing the description of the operation process corresponding to the third application; the operation process stored in the second feature vector library is an operation process corresponding to a fourth application, and the feature vectors stored in the second feature vector library are obtained by the fourth application vectorizing the description of the operation process corresponding to the fourth application; or The first feature vector library is a static database; the second feature vector library is a dynamic database.
3. The method according to claim 2, wherein the operation process stored in the first feature vector library is an operation process corresponding to the first application; and the operation process stored in the second feature vector library is an operation process corresponding to the second application; The target feature vector corresponding to the target input data is matched in the first feature vector library and the second feature vector library respectively to obtain a target operation process matching the target input data, including: The first application performs matching in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a first target operation process that matches the target input data; the second application performs matching in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process that matches the target input data; or, The target application performs matching in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data to obtain a target operation process that matches the target input data.
4. The method according to claim 3, wherein the first application performs matching in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a first target operation process that matches the target input data, comprising: The first application calls the vectorization interface of the target application to vectorize the target input data to obtain a first target feature vector; Based on the first target feature vector, matching is performed in the first feature vector library to obtain a first target operation process that matches the target input data; The second application performs matching in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process matching the target input data, including: The second application calls the vectorization interface of the target application to vectorize the target input data to obtain a second target feature vector; Based on the second target feature vector, matching is performed in the second feature vector library to obtain a second target operation process that matches the target input data.
5. The method according to claim 3, wherein the first application performs matching in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a first target operation process matching the target input data, comprising: The first application obtains a target feature vector obtained by vectorizing the target input data by the target application, and matches the target feature vector in the first feature vector library to obtain a first target operation process that matches the target input data; The second application performs matching in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a second target operation process matching the target input data, including: The second application obtains a target feature vector obtained by vectorizing the target input data by the target application, and matches the target feature vector in the second feature vector library to obtain a second target operation process that matches the target input data.
6. The method according to claim 2, characterized in that The first feature vector library is a static database, and the second feature vector library is a dynamic database; The method further comprises: During the execution of the fifth application, in response to detecting target operation data that meets an update condition, the dynamic database is updated based on the target operation data.
7. The method according to claim 2, wherein the operation flow stored in the first feature vector library is an operation flow corresponding to a third application, and the feature vectors stored in the first feature vector library are obtained by the target application vectorizing the description of the operation flow corresponding to the third application; the operation flow stored in the second feature vector library is an operation flow corresponding to a fourth application, and the feature vectors stored in the second feature vector library are obtained by the fourth application vectorizing the description of the operation flow corresponding to the fourth application; The target feature vector corresponding to the target input data is matched in the first feature vector library and the second feature vector library respectively to obtain a target operation process matching the target input data, including: The target application performs matching in the first feature vector library based on the target feature vector corresponding to the target input data to obtain a third target operation process that matches the target input data; the fourth application performs matching in the second feature vector library based on the target feature vector corresponding to the target input data to obtain a fourth target operation process that matches the target input data; or The target application performs matching in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data to obtain a target operation process that matches the target input data.
8. According to the method according to any one of claims 1-7, the target application has the ability to instruct the target model to perform at least one task, the target model is used to vectorize the target input data, and / or the target model is used to match the vectorized data.
9. A matching device, comprising: A receiving module, configured to receive target input data; An operation process matching module is used to perform matching in the first feature vector library and the second feature vector library based on the target feature vector corresponding to the target input data, so as to obtain a target operation process matching the target input data; The first feature vector library and the second feature vector library respectively store corresponding relationships between feature vectors and operation processes; the operation process is used to execute an operation to complete a target task.
10. An electronic device comprising: a target application running on the electronic device; The target application is configured to: parse at least one task based on the input, call the target model to execute the at least one task, and at least perform: Receive target input data; Calling the target model to obtain a target feature vector corresponding to the target input data; Calling the target model to perform matching based on the target feature vector in the first feature vector library and the second feature vector library respectively, to obtain a target operation process that matches the target input data; Execute the target operation process to complete the target task; The first feature vector library and the second feature vector library respectively store corresponding relationships between feature vectors and operation processes.