Task cooperation method and device based on intention
By analyzing user intentions and disassembling them into multiple response tasks, using the agent to query response information in the preset database, the problem of the inability to accurately handle complex or fuzzy user instructions in the prior art is solved, and an efficient and personalized task collaboration experience is achieved.
Patent Information
- Application Number
- CN202510396155.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-31
- Publication Date
- 2025-07-01
AI Technical Summary
Existing intention-based task collaboration technologies cannot accurately understand the user's true intentions when dealing with complex or vague user instructions, resulting in poor interaction results.
By analyzing user input information, the user's intent is determined and broken down into multiple response tasks with execution order. The agent performs these tasks using the agent corresponding to the operation category. The agent queries the matching response information in the preset database, and finally integrates the response information according to the execution order to feed it back to the user.
It improves the efficiency and accuracy of task processing, can flexibly respond to complex or vague user requests, provides efficient and personalized services, and significantly improves the user experience.
Smart Images

Figure CN120234119A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and particularly to a method and apparatus for task collaboration based on intent. Background Art
[0002] With the rapid development of Internet technology, as an important entry for users to access network resources, the interaction experience of browsers has become increasingly important. From the early static page browsing to the current dynamic interaction, interaction based on intent has become a key factor in enhancing user experience and improving the value of network applications.
[0003] Among the diverse current means of task collaboration based on intent, dynamic interaction technology has emerged and gradually become the mainstream trend. In the existing task collaboration mechanism based on intent, users can easily send instructions to the browser by means of voice input or text expression, and quickly complete tasks such as searching and information extraction. The browser is responsible for parsing these natural language instructions and converting them into executable operation commands. The development of this technology not only simplifies the user operation process, but also greatly improves the speed and accuracy of information acquisition, further promoting the task collaboration experience based on intent to a higher level.
[0004] However, although the existing technologies can meet the basic needs of users to a certain extent, there are still certain limitations in dealing with complex multi-task scenarios. In particular, in the face of complex or ambiguous instructions, it is often impossible to understand the true intent of the user and thus give accurate feedback. Therefore, how to overcome these limitations to respond to the user's intent more efficiently and accurately has become an urgent problem to be solved in the current technological development. Summary of the Invention
[0005] In view of the above problems, the main object of the present invention is to provide a method and apparatus for task collaboration based on intent, which can solve the problem that when performing task collaboration based on intent, it is impossible to give feedback for complex or ambiguous instructions of users, thus affecting the interaction effect. To solve the above technical problems, the embodiments of the present invention provide the following technical solutions:
[0006] The first aspect of the present invention provides a method for task collaboration based on intent, the method comprising:
[0007] Determining the user intent based on the user input information;
[0008] Parsing the user intent to obtain a plurality of response tasks with an execution order, and different response tasks have different operation categories;
[0009] Executing each response task by using an agent corresponding to the operation category to obtain response information, where the agent is used to query the response information matching the response task in a preset database;
[0010] Process the response information according to the execution order to obtain the response result corresponding to the user intention, and feedback the response result to the user through the browser page.
[0011] The second aspect of the present invention provides an intention-based task collaboration device, which includes:
[0012] A determination unit for determining the user intention based on the user's input information;
[0013] An analysis unit for analyzing the user intention in the determination unit to obtain multiple response tasks with an execution order, and different response tasks have different operation categories;
[0014] A query unit for using an agent corresponding to the operation category to execute each response task in the analysis unit to obtain response information, and the agent is used to query the response information matching the response task in a preset database;
[0015] A feedback unit for processing the response information in the query unit according to the execution order in the analysis unit to obtain the response result corresponding to the user intention, and feedbacking the response result to the user through the browser page.
[0016] The third aspect of the present invention provides an electronic device, which includes at least one processor, at least one memory connected to the processor, and a bus; wherein, the processor and the memory complete communication with each other through the bus; the processor is used to call program instructions in the memory to execute the intention-based task collaboration method.
[0017] The fourth aspect of the present invention provides a readable storage medium, which is used to store a computer program, wherein the computer program controls the device where the storage medium is located to execute the intention-based task collaboration method when running.
[0018] With the above technical solution, the present invention proposes an intent-based task collaboration method. First, based on the user's input information, the method can accurately identify and determine the user's true intent. Through further parsing, these intents are refined into multiple response tasks with a clear execution order. This step ensures that even in the face of complex or ambiguous user requests, they can be broken down into steps of different operation categories. For different operation categories, agents corresponding to these categories are used to execute each response task. These agents query the response information that matches the response tasks in a preset database, and the response tasks in the database are composed of a series of unit operations. This design not only improves the efficiency of task processing but also can flexibly handle various different types of requests. Since the agents can directly call the combination of unit operations in the preset database to generate response information, the response time is greatly shortened. In addition, by integrating and processing the response information according to the execution order, the final response result is more in line with the user's true intent. In summary, the present invention can more effectively handle complex and ambiguous user requests, provide more efficient and personalized services, not only can feedback accurate results but also greatly improve the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] By reading the following detailed description with reference to the accompanying drawings, the above and other objects, features, and advantages of the exemplary embodiments of the present invention will become readily understandable. In the drawings, several embodiments of the present invention are shown in an exemplary rather than restrictive manner, and the same or corresponding reference numerals represent the same or corresponding parts, wherein:
[0020] Figure 1 It is a schematic flowchart of an intent-based task collaboration method proposed by an embodiment of the present invention;
[0021] Figure 2 It is a schematic flowchart of another intent-based task collaboration method proposed by an embodiment of the present invention;
[0022] Figure 3 It is a schematic structural diagram of an intent-based task collaboration device proposed by an embodiment of the present invention;
[0023] Figure 4 It is a schematic structural diagram of another intent-based task collaboration device proposed by an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0024] Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided so that the present disclosure can be more thoroughly understood and the scope of the present disclosure can be fully conveyed to those skilled in the art.
[0025] It should be noted that unless otherwise specified, the technical terms or scientific terms used in this application should have the ordinary meaning understood by those skilled in the art to which this application belongs.
[0026] As described above, the above is only the specific embodiment of this application, but the protection scope of this application is not limited thereto. Any person skilled in the art within the technical scope disclosed in this application can easily think of changes or substitutions, which should be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claims.
[0027] The design inspiration of the present invention comes from an in-depth analysis of the limitations of existing intent-based task collaboration technologies. Specifically, there are obvious bottlenecks in the current intent-based task collaboration technologies in enhancing the user experience and optimizing service efficiency. The main problem is that it is difficult to handle complex or ambiguous requests from users, that is, when the requests made by users exceed the preset browser instruction range, effective interaction results cannot be provided. This limitation significantly restricts the freedom of interaction between users and browsers, reducing the user's usage efficiency and interaction experience.
[0028] Therefore, the above problems have prompted the inventors to propose a new technical concept, aiming to provide accurate feedback to users in the face of complex and ambiguous instructions to enhance the user experience of intent-based task collaboration technologies. The core of this technical concept is to parse the fuzzy and complex user intentions into multiple tasks, then use an agent to match the multiple tasks with the tasks in a preset database to obtain task information, and finally integrate the task information to obtain the feedback result corresponding to the user intention.
[0029] In response to the above technical concept, the present invention proposes an intent-based task collaboration method. The execution entity of this method is an interaction unit. In some examples, the interaction unit can be an interaction plugin or component, and the interaction plugin or component is responsible for providing the interaction function with the browser, providing input and output capabilities, and bringing a rich interaction experience. Among them, the interaction plugin or component includes a large language model, a scheduler, an agent, and a preset database.
[0030] The large language model is responsible for parsing user intentions and decomposing user intentions into response tasks.
[0031] The scheduler is responsible for scheduling different agents to execute different response tasks and receiving task information feedback from the agents. The scheduler allocates and manages tasks based on the priority of the tasks, resource occupancy, and current status, so as to make efficient use of resources and avoid resource conflicts.
[0032] The agent is responsible for executing the tasks scheduled by the scheduler, finding the corresponding task information in the preset database, and feeding it back to the scheduler.
[0033] The preset database is equivalent to a knowledge and function storage center, which contains a set of predefined automation skills (such as AI analysis) and basic execution units (such as data processing, semantic processing). Among them, the automation technology can be understood as an automatic processing function based on AI. For example, it can analyze and process tasks by simulating the operation mode of a person based on the built-in AI chip; the basic execution unit can be understood as the specific operation behavior or function obtained after each task is parsed. After being optimized, these automation skills and basic execution units can be used in the task execution process of the agent, enabling the agent to quickly respond to various task requirements. In the preset database, these automation skills and basic execution units can be updated based on a dynamic update mechanism, which can ensure that the most cutting-edge tools and methods in various fields can be integrated into the preset database in a timely manner, expanding the functional breadth and depth of the interaction unit.
[0034] Specifically, in this embodiment, the process of how the interaction plugin processes the received user input information to feedback the user result is elaborated in detail. This process aims to not only limit the user to inputting preset simple information to obtain the corresponding result, but also analyze the complex and ambiguous input information of the user and give an accurate result, thereby improving the user's interaction experience. The specific execution steps are as Figure 1 shown, including at least steps 101-104.
[0035] Step 101: Determine the user intention based on the user's input information.
[0036] In this step, the user can input information in various ways, including but not limited to text, voice, gestures, audio and video, etc. No matter which form is adopted, the interaction unit can receive and preliminarily process these input data. For non-text input (such as voice), conversion (such as speech recognition) is required to ensure that the subsequent large language model can parse it.
[0037] Step 102: Parse the user intention to obtain multiple response tasks with an execution order.
[0038] In step 101, the preliminary user intention has been determined based on the user's input information. However, when faced with complex or ambiguous requests, the user intention still needs to be further parsed in this step. The purpose is to convert it into specific response tasks with an execution order to ensure that accurate feedback results can be generated.
[0039] Specifically, in step 102, a more in-depth analysis will be carried out on the preliminarily parsed user intention, the detailed requirements behind it will be clarified, and these requirements will be transformed into a series of ordered tasks. Each task corresponds to a clear operation category and is arranged in a reasonable execution order, so as to ensure that the response is not only efficient but also accurate. In this way, even when dealing with complex or ambiguous user requests, clear and personalized services can be provided, significantly improving the user experience and satisfaction.
[0040] Since the user intention determined in step 101 may contain irrelevant content or format errors. Therefore, in this step, when parsing the user intention, it is usually necessary to preprocess the input information first to improve the accuracy of parsing. Including but not limited to:
[0041] Text normalization: Convert all text to a unified case format for subsequent processing. Remove or standardize punctuation marks to reduce interference with analysis.
[0042] Stop word removal: Remove common meaningless words (such as "de", "shi", "zai", etc.), which are not very helpful for understanding the user intention.
[0043] Spelling correction: Use a spelling check algorithm to automatically correct spelling mistakes in the input to ensure the accuracy of parsing.
[0044] Word segmentation: For languages that are not space-separated such as Chinese, perform word segmentation to split the continuous character stream into meaningful lexical units.
[0045] Lemmatization and stemming: Restore words to their basic forms (roots) to better identify different variants of the same word. For example, the singular and plural forms of nouns such as "apple" and "apples" will be normalized to "apple", and different tenses of verbs such as "jumps", "jumped", and "jumping" will be unified to "jump".
[0046] Semantic role labeling: Mark the roles of each component in the sentence, such as the subject, object, predicate, etc., which helps to understand the sentence structure and intention more deeply.
[0047] Context understanding: Consider the conversation history or user background information to more accurately infer the true meaning of the current request.
[0048] After preprocessing, natural language understanding technology is used to deeply analyze the preprocessed user intent. The goals of this stage are:
[0049] Intent classification: Based on the analysis results, classify the user intent into one or more predefined operation categories. These operation categories can be queries, commands, requests for help, etc. The specific classification criteria depend on the application domain.
[0050] Entity recognition: Extract and identify key entities in the input information, such as names of people, locations, times, dates, etc. This helps to build more specific and targeted tasks.
[0051] Action recognition: Determine the specific actions the user wishes to perform, such as booking, querying, setting reminders, etc. These actions will guide the creation of subsequent response tasks.
[0052] Dependency analysis: Analyze the logical relationships between different parts to determine which tasks need to be executed first and which tasks depend on the results of previous tasks. This step ensures that the finally generated response tasks have a reasonable execution order.
[0053] It should be noted that if there is uncertainty about the user intent, it may generate clarification questions, asking the user to provide more information, or provide several possible explanations for the user to choose from. In some cases, it may also combine the user's profile, preference settings, or historical behavior records to assist in judging their intent.
[0054] Once the in-depth analysis of the user intent is completed, it will be transformed into a series of specific response tasks. Each task has a clear operation category and execution order, laying the foundation for the subsequent task allocation and execution. These tasks may be single operations or multi-step processes, depending on the complexity of the user request.
[0055] In this embodiment, the operation category refers to the functional type to which the response task obtained by parsing the user intent belongs. These categories are divided according to the nature and function of the tasks, aiming to classify different types of response tasks so that corresponding agents can be called to process different categories of tasks. Among them, common operation categories include the following, including:
[0056] (1) Data query: Tasks involving obtaining information from a database or external data source, such as querying a movie list, obtaining the user's location, etc.
[0057] (2) Personalized recommendation: Tasks of providing personalized suggestions based on the user's preferences and historical behavior, such as recommending movies, restaurants, etc.
[0058] (3) Location-based services: Tasks involving location information, such as finding nearby cinemas, restaurants, etc.
[0059] (4) Schedule query: Tasks related to time arrangement information, such as obtaining the screening schedule of a cinema, the business hours of a restaurant, etc.
[0060] (5) Natural language processing: Tasks related to text parsing and generation, such as understanding user input, generating responses, etc.
[0061] (6) AI analysis: Tasks related to complex data analysis and prediction, such as predicting user preferences based on user behavior, etc.
[0062] Furthermore, in this embodiment, the process of determining the operation category can be carried out according to Steps 1 to 3.
[0063] Step 1, Based on user intention parsing: By analyzing and understanding the user input information, determine the user's needs and intentions. For example, when the user inputs "Find out if there are any good movies nearby recently", it can be parsed that the user has the need to search for movies.
[0064] Step 2, Task decomposition: Decompose the user intention into specific response tasks, and each task corresponds to one or more operation categories. For example, the task of searching for movies can be further decomposed into subtasks such as screening movies, obtaining the user's location, and searching for nearby cinemas.
[0065] Step 3, Matching predefined categories: Match the decomposed tasks with the predefined operation categories to determine the category to which each task belongs. For example, screening movies belongs to the "data query" category, and obtaining the user's location belongs to the "geographic location service" category.
[0066] In addition, in the embodiments of this application, the execution order can be understood as the sequence of response tasks during execution. The purpose of determining the execution order is to ensure that tasks can be correctly executed in a logical order and avoid task failure or inaccurate results caused by incorrect order.
[0067] Specifically, the process of determining the execution order can be divided into the following (1)-(3).
[0068] (1) First, analyze the dependency relationship. Analyze the dependency relationship between different response tasks to determine which tasks need to be executed first and which tasks need to be executed later. For example, the task of obtaining the user's location needs to be executed before searching for nearby cinemas because searching for nearby cinemas requires knowing the user's location.
[0069] (2) Then, determine the task priority. Determine the execution order according to the importance and urgency of the tasks. For example, obtaining the user's location is a basic task that needs to be executed first, and obtaining the screening schedule of the cinema can be executed later.
[0070] After (3), set up the logical process. Design the execution order according to the logical relationship of the tasks to ensure that the tasks can be executed in a reasonable process. For example, first screen the movies, then obtain the user's location, then search for nearby cinemas, and finally obtain the screening schedule.
[0071] Exemplarily, the above content can be demonstrated based on the following example, specifically:
[0072] Example 1: Movie recommendation scenario
[0073] User input: "Find out if there are any good movies nearby"
[0074] (1) The process of responding to tasks and operation categories is as follows:
[0075] Task 1: Screen movies that have been recently released and have high ratings: Data query
[0076] Task 2: Query movies of a specific type (such as action movies): Data query
[0077] Task 3: Provide movie recommendations that best suit the user's taste by combining the user's viewing history and personal preferences: Personalized recommendation
[0078] Task 4: Obtain the user's current location: Geolocation service
[0079] Task 5: Search for nearby cinemas: Geolocation service
[0080] Task 6: Obtain the latest screening schedule of Cinema A: Schedule query
[0081] Task 7: Obtain the latest screening schedule of Cinema B: Schedule query
[0082] (2) The process of determining the execution order:
[0083] Tasks 1, 2, and 3: These tasks do not depend on the results of other tasks and can be executed simultaneously.
[0084] Task 4: Obtain the user's location, which needs to be executed before searching for nearby cinemas.
[0085] Task 5: Search for nearby cinemas, which depends on the result of Task 4.
[0086] Tasks 6 and 7: Obtain the screening schedule of the cinema, which depends on the result of Task 5.
[0087] Execution order: Tasks 1, 2, 3 → Task 4 → Task 5 → Tasks 6, 7
[0088] Example 2: Restaurant recommendation scenario
[0089] User input: "Find out if there are any good Italian restaurants nearby."
[0090] (1) The process for responding to tasks and operation categories is as follows:
[0091] Task 1: Screen out Italian restaurants with high ratings: Data query
[0092] Task 2: Provide restaurant recommendations that best suit the user's taste by combining the user's dietary preferences: Personalized recommendation
[0093] Task 3: Obtain the user's current location: Geolocation service
[0094] Task 4: Find nearby Italian restaurants: Geolocation service
[0095] Task 5: Obtain the business hours of Restaurant A: Schedule query
[0096] Task 6: Obtain the business hours of Restaurant B: Schedule query
[0097] (2) The process for determining the execution order:
[0098] Tasks 1 and 2: These tasks do not depend on the results of other tasks and can be executed simultaneously.
[0099] Task 3: Obtain the user's location, which needs to be executed before finding nearby restaurants.
[0100] Task 4: Find nearby Italian restaurants, which depends on the result of Task 3.
[0101] Tasks 5 and 6: Obtain the business hours of the restaurants, which depend on the result of Task 4.
[0102] Execution order: Tasks 1, 2 → Task 3 → Task 4 → Tasks 5, 6
[0103] In summary, through further analysis of the user's intention, step 102 transforms it into specific and ordered response tasks, ensuring that complex or ambiguous requests can be processed efficiently and accurately, providing personalized and relevant services, and thus significantly improving the user experience.
[0104] Step 103: Use the agents corresponding to the operation categories to execute each response task to obtain response information.
[0105] Among them, the response tasks in the preset database are obtained according to the unit operations combination.
[0106] In this solution, the relationship between the response task and the unit operation is a composition relationship, that is, the response task is composed of multiple unit operations. The unit operation is actually different specific behaviors split from the task, and the unit operation is implemented by the agent using the aforementioned automation skills and / or basic execution units. For example, when the unit operation is "analyze user instructions", then the agent specialized in analysis operations will use the AI analysis function in the automation skills to analyze the user's instructions. The response task realizes more complex functions by combining unit operations to meet different needs of users.
[0107] For example, when the user inputs "Find out if there are any good movies recently", the interaction unit will generate multiple response tasks, such as "Filter out movies released recently and with high ratings", "Query movies of a specific type", "Combine the user's viewing history and personal preferences to provide movie recommendations that best suit the user's taste", "Get the user's current location", "Find nearby cinemas", "Get the latest screening schedule of Cinema A", "Get the latest screening schedule of Cinema B", etc. Each of these response tasks can be further decomposed into multiple unit operations. For example, the task of "Filter out movies released recently and with high ratings" can be split into "Get a list of movies from the movie database", "Query the screening schedule of the cinema", and "Query the ratings of each movie in the movie list", etc.
[0108] In this step, according to the multiple response tasks obtained in step 102, call the agents that match the operation categories corresponding to these response tasks to execute. Each agent is responsible for a specific type of task and obtains the required response information by querying the preset database. The following is the implementation solution of step 103, including at least 1031-1032.
[0109] 1031. Select the most suitable agent according to the operation category of the response task, such as data query, location-based service, schedule query, personalized recommendation, etc. After receiving the task, each agent is initialized and prepares to execute the required operations, which may include but are not limited to loading necessary resources, configuring API interfaces, or setting parameters to ensure that the agent can execute the task smoothly.
[0110] In this embodiment, the cooperation process between agents is specifically carried out in the way of the following processes: "task allocation - concurrent execution - result feedback - dynamic adjustment":
[0111] (A1) The task allocation process refers to allocating tasks to the corresponding agents according to the operation category of the response task. For example, the data query task is allocated to the data query agent, and the location-based service task is allocated to the location-based service agent.
[0112] (A2)Concurrent execution means that tasks in the same category can be executed concurrently, which can improve efficiency. For example, multiple data query tasks can be carried out simultaneously.
[0113] (A3)Result feedback means that after the agent completes the task, the result is fed back to the scheduler, and then the scheduler will integrate these results and perform subsequent processing according to the execution order.
[0114] (A4)Dynamic adjustment means that during task execution, if a certain agent is overloaded, it can be merged through strategies such as task merging. For example, a certain task can be processed by any one of two agents. At this time, one of the agents has a high load and the other has a low load. Then this task can be merged with the tasks to be executed by the agent with a low load, so that the agent with a low load can share the task volume of the agent with a high load, thus ensuring that the task can be efficiently executed while also balancing the load pressure of the agents and ensuring the overall stable operation of the interaction unit.
[0115] When agents cooperate and run, the process of determining the execution order of each agent can be carried out in any one of the following several ways:
[0116] One way is that the execution order can be analyzed according to the dependency relationship. In some embodiments, the dependency relationship between tasks can be analyzed to determine which tasks need to be executed first and which tasks need to be executed later. For example, the task of obtaining the user's location needs to be executed before searching for nearby cinemas.
[0117] Another way is that the execution order can be determined based on the task priority. In some embodiments, the execution order can be determined according to the importance and urgency of the tasks. For example, the basic information acquisition task takes precedence over the detailed information query task.
[0118] Another way is that the execution order can also be determined based on a pre-set logical process. In some embodiments, the execution order can be designed according to the logical relationship of the tasks to ensure that the tasks can be executed in a reasonable process. For example, data query is performed first, and then personalized recommendation is carried out.
[0119] 1032. The agent searches for matching response information in a preset database according to the requirements of the response task. It should be noted that for response tasks with the same execution order, after the response tasks are assigned to the agent, the agent can execute them concurrently to improve efficiency. In this embodiment, the response task is specifically composed of unit operations. In some cases, the unit operation can be further split to obtain each basic unit operation, so that the agent can flexibly combine them according to needs to cope with different task requirements. For example, when the task is "call the movie database to screen recent popular movies", it can be split into three unit operations: "obtain the movie list from the movie database", "obtain the current time", and "screen the movie list based on popularity". And for the unit operation "screen the movie list based on popularity", it can be further split into more subordinate and more basic operation behaviors, that is, basic operation units, such as "obtain the popularity of each movie" and "screen the movie list based on popularity".
[0120] In this embodiment, the basic execution unit mentioned above is different from the basic unit operation. Their specific meanings are as follows: Among them, the basic unit operation is the operation behavior obtained by further splitting the unit operation downward, while the basic execution unit is to execute the unit operation to implement the function corresponding to the unit operation. That is to say, for example, the basic execution unit can be "query function", and the basic operation unit can be "query a certain movie". Then when it is parsed that the user's intention contains "query a certain movie", this operation can be implemented based on the "query function".
[0121] Furthermore, for the relationship between the task and the basic execution unit, in fact, it can be understood that each task is composed of multiple basic execution units. The task is a concept obtained by abstracting the user's needs, while the basic execution unit is the specific operation steps to complete the task. For example, the task of "calling the movie database to screen recent popular movies" may include basic execution units such as "connect to the movie database", "construct a query statement for screening popular movies", and "execute the query statement to obtain the results".
[0122] In addition, for the correspondence between the task and the category, in this embodiment, the tasks are divided into different categories according to their nature and functions, such as "data query", "geographical location service", etc. The category of the task determines which agents should be used to execute the task, and how to search for and combine the basic execution units in the preset database to complete the task.
[0123] Regarding the storage method of the basic operation unit in the database, specifically, it is divided into two parts: the storage of the basic unit operation and the storage of the combination method, specifically as follows:
[0124] (11) Storage of basic unit operations. Specifically, in fact, unique identifiers, operation types, input parameters, output parameters, etc. are defined for each basic unit operation in the database. For example, for the "connect to database" operation, it may have an identifier "DB_CONNECT", a type of "data query", input parameters of "database address, username, password", and an output parameter of "database connection object".
[0125] (22) Storage of combination methods. The database also stores the rules and templates for how to combine basic unit operations into response tasks. For example, for tasks in the "data query" category, there may be a template that defines the combination order of first executing "connect to database", then executing "construct query statement", and finally executing "execute query statement to obtain results".
[0126] Furthermore, the method for the intelligent agent to select and match the basic execution units is as follows (A)-(C):
[0127] (A) Matching based on task category and requirements. Among them, the intelligent agent searches in the preset database for basic execution units that match the basic unit operations according to the operation category and specific requirements of the response task. For example, for the data query task of "call the movie database to screen recent popular movies", the data query intelligent agent will search in the database for basic unit operations related to "movie database query", such as "connect to the movie database", "execute movie screening query", etc., and then match the corresponding basic execution units according to the operation type for each basic unit operation.
[0128] (B) Combining according to the task execution logic. Among them, the intelligent agent not only matches a single basic execution unit, but also combines multiple basic unit operations according to the execution logic and process of the task to complete complex tasks. For example, to complete the geographical location service task of "recommend nearby cinemas according to the user's location", the geographical location service intelligent agent needs to combine multiple basic unit operations such as "obtain the user's location", "construct query conditions for nearby cinemas", and "execute cinema query".
[0129] (C) Further, if it encounters complex or ambiguous requests, the intelligent agent can generate response tasks that adapt to the requests by combining existing basic unit operations. This mechanism can quickly adjust and provide accurate results, ensuring efficient processing even in the face of complex user requests.
[0130] When there is no response task stored in the preset database that exactly matches the current task, multiple unit operations can be flexibly edited and combined to edit the new response task into the preset database, and then the agent executes the corresponding query operation to obtain the response information and feedback it. Specifically, the specific execution process of this step can be as follows: when there is no response task in the preset database that exactly matches the current task, the interaction unit will parse the task requirements and clarify the specific goals. For example, for the task of "calling the movie database to screen recent popular movies", it is necessary to determine the information to be obtained from the database and the screening conditions. Then, relevant basic unit operations are selected from the preset database, such as "connect to the database", "construct a query statement", "execute the query", etc., and these unit operations are combined into a new response task in logical order. During this process, the combined new task will be defined as a newly created independent task, and a unique identifier will be assigned to it, as well as a description of its function and purpose, where the description of its function and purpose can provide a basis for subsequent tracing of the response information. After that, its response information is stored in the preset database, including the name of the task, the identifier, the list of component unit operations and their execution order, etc., and the index structure of the database is updated for subsequent quick retrieval and call. Then, after receiving the task, the agent will perform a matching search in the preset database according to the description and requirements of the task (wherein, during the search process, it can also perform a query based on the function and purpose corresponding to the task). If no exactly matching task is found, it will try to find the basic unit operation or task component that is closest to the task requirements, and execute the combined unit operations by calling stored procedures, functions or other database functions in the database. For example, call the stored procedure in the database to complete operations such as "connect to the database" and "execute the query". In some cases, the agent may need to dynamically combine multiple database functions to complete the task. For example, to complete the task of "recommending nearby cinemas based on the user's location", the agent may first call a function to obtain the user's location, and then call another stored procedure to find nearby cinemas. Finally, the agent calls each unit operation in the predetermined order according to the matching database functions and combination logic, and passes the intermediate results to the next operation until the entire task is completed, and the execution result is fed back to the user.
[0131] Through the above process, not only can complex or ambiguous user intents be efficiently processed, but also accurate and personalized services can be provided, significantly improving the user's interaction experience.
[0132] Step 104: Process the response information according to the execution order to obtain the response result corresponding to the user intent, and feedback the response result to the user through the browser page.
[0133] In this step, according to the response information obtained by each agent after executing the response task in step 103, it is integrated and processed in a predetermined execution order, and finally a result that conforms to the user's intention is generated and presented to the user through the browser page. In some embodiments, 104 is implemented by the following solution (1), and solution (1) can also be combined with solution (2) and / or solution (3) to implement 104.
[0134] Solution (1): Integrate the response information returned by each agent according to the execution order of each response task. When processing the user request, the interaction unit generates multiple response tasks, and these tasks are processed in a certain execution order. To ensure that the result finally presented to the user is both accurate and concise, the interaction unit needs to effectively integrate the results of each task. During the integration process, the results are first arranged according to the execution order of the tasks, which can ensure that the logic of the results is consistent with the original logical structure of the user request. For example, if the user request contains multiple steps, such as first searching for information, then filtering, and finally making recommendations, the arrangement order of the results should also follow this process.
[0135] During the integration process, the interaction unit removes duplicate or irrelevant content. This is mainly because the results of some tasks may be referenced by subsequent tasks and used as intermediate information. Once these intermediate information have completed their roles in subsequent tasks, they can be deleted to avoid redundant information in the final result. For example, in the movie recommendation scenario, the interaction unit first obtains the user's current location, then searches for nearby cinemas, and finally obtains the screening schedules of these cinemas. In this process, the user's current location information is used as intermediate information in the task of searching for nearby cinemas. Once the screening schedules of the cinemas are obtained, this intermediate information of the user's current location can be deleted because ultimately what the user cares about is the screening schedules of the cinemas, rather than the location information itself.
[0136] Through such an integration process, the interaction unit can ensure that the information presented to the user is concise and clear, while fully reflecting the logical structure of the user's original request. For example, in the above movie recommendation scenario, the result finally presented to the user will be a list containing nearby cinemas and their latest screening schedules, without including irrelevant content such as the location information used in the intermediate steps. Such a result is not only logically clear but also can meet the user's needs and improve the user experience.
[0137] Solution (2): The response result is fed back to the user through the browser page. In this way, presenting the specific response result in the form of a browser page can ensure that the user can directly learn about the processing status of the current task from the browser during use, improving the user experience. Moreover, during the process of the user waiting for the response result, rich interaction functions are provided, enabling the user to adjust the task corresponding to their question at any time. For example, the user can further refine the search results through filtering conditions.
[0138] Solution (3): Feedback can also be collected by asking the user about their satisfaction with the result. Based on the user feedback and interaction records, the content stored in the preset database is continuously enriched to improve the service quality. Specifically, when this step is executed, it can be specifically as follows:
[0139] After processing the user request and presenting the result, feedback information can be collected by actively asking the user about their satisfaction with the result. Based on this feedback and the records of previous interactions, the interaction unit can expand and optimize the content stored in the preset database, thereby continuously improving the service quality.
[0140] Specifically, when the user expresses dissatisfaction with the processing result of a certain task or puts forward improvement suggestions, the interaction unit will deeply analyze these feedbacks to clarify which aspects of the content in the database need to be further enriched and improved. For example, if the user frequently questions the processing result of a certain type of task or requests more detailed output, it is necessary to consider adding new unit operations related to this task or more refined task combination methods.
[0141] In addition, when enriching the database content, the interaction unit will associate and set up the calling relationship between the newly added unit operations or task combinations and the existing functions in the database. In this way, when the intelligent agent encounters a similar task again, it can accurately match and select the corresponding unit operation or function combination from the database according to the specific requirements and descriptions of the task. When selecting these functions or unit operations, the intelligent agent will comprehensively consider factors such as the category, priority, and execution order of the task to ensure that the final call can efficiently and accurately meet the user's needs. For example, in the movie recommendation scenario, if the user feedback indicates that they hope to obtain more types of movie recommendations or question the accuracy of the recommendation results, the interaction unit may add new movie type filtering operations or optimize the existing recommendation algorithm in the database based on this feedback. At the same time, the interaction unit will clarify the association method between these newly added operations and the stored procedures or functions in the database, enabling the intelligent agent to accurately call these updated contents when performing movie recommendation tasks subsequently, thereby providing more recommendation results that meet the user's expectations.
[0142] This step ensures that the provided results are both comprehensive and relevant by integrating and optimizing response information. At the same time, the user's sense of participation is enhanced through real-time updates and interactive features. Based on user feedback, it can also continuously learn and improve to provide more personalized services.
[0143] Based on the above Figure 1 implementation method, it can be seen that the intention-based task collaboration method proposed by the present invention can accurately identify and determine the user's true intention based on the user's input information. Through further parsing, these intentions are refined into multiple response tasks with a clear execution order. This step ensures that even in the face of complex or ambiguous user requests, they can be broken down into steps of different operation categories. For different operation categories, agents corresponding to these categories are used to execute each response task. These agents query the response information that matches the response task in the preset database, and the response tasks in the database are composed of a series of unit operations. This design not only improves the efficiency of task processing but also can flexibly handle various different types of requests. Since the agent can directly call the combination of unit operations in the preset database to generate response information, the response time is greatly shortened. In addition, by integrating and processing the response information according to the execution order, the final response result is more in line with the user's true intention. In summary, the present invention can more effectively handle complex and ambiguous user requests, provide more efficient and personalized services, not only can feedback accurate results but also greatly improve the user experience.
[0144] In some other embodiments, as a refinement and extension of the Figure 1 embodiment shown, the embodiment of the present invention also provides another intention-based task collaboration method, as Figure 2 shown, which at least includes steps 201-206.
[0145] Step 201: Determine the user intention based on the user's input information.
[0146] Step 202: Parse the user intention to obtain multiple response tasks with an execution order.
[0147] Among them, the implementation manners of steps 201 to 202 are the same as those of steps 101 to 102, and can achieve the same technical effects and solve the same technical problems, so they will not be repeated here.
[0148] Step 203: Classify the response tasks according to the execution order to obtain response tasks of different classifications.
[0149] Among them, there is no dependency relationship among the response tasks in the same classification. In this embodiment, in the application document, the basis for classification is the dependency relationship and execution order among the response tasks. Specifically, it is to determine their execution order according to whether a task requires other tasks to be completed first, and then divide the tasks into different groups according to this order. The purpose of doing this is to execute tasks efficiently and avoid problems caused by incorrect order.
[0150] Based on the above description, it can be seen that in this step, it is also necessary to classify the response tasks with different execution orders. The response tasks included in each order classification can be executed in parallel by the corresponding intelligent agent and are independent of each other to ensure the maximum efficiency of processing response tasks and response tasks.
[0151] Specifically, according to the dependency relationship among the response tasks analyzed by the large language model, it has been determined which tasks must be completed first to start other tasks. For example, in the movie recommendation scenario, obtaining the location information of nearby cinemas (geographic location service) should be completed before querying the specific screening schedules of these cinemas (schedule query).
[0152] Then, according to the dependency relationship of the tasks, the tasks are divided into multiple order classifications. The tasks in each order classification can be executed in parallel by the corresponding intelligent agent, but different order classifications need to be executed sequentially according to a predetermined order. For example, the first order classification includes all prerequisite tasks, the second order classification includes tasks that depend on the results of the first order classification, and so on.
[0153] It should be noted that within the same order classification, ensure that there is no direct dependency relationship among each response task. If a dependency relationship is found, adjust the task allocation or move it to a different order classification. For example, data query tasks can be executed concurrently in the same order classification because they usually do not depend on each other's results.
[0154] Example illustration
[0155] Suppose the user inputs "Find out if there are any good movies nearby recently", and the specific response tasks generated by the interaction unit are as follows:
[0156] First order classification (prerequisite tasks):
[0157] Operation category: Data query
[0158] Task 1: Filter out movies that have been released recently and have high ratings.
[0159] Task 2: Query movies of a specific type (such as action movies).
[0160] Operation category: Personalized recommendation
[0161] Task 3: Provide movie recommendations that best suit the user's taste by combining the user's viewing history and personal preferences.
[0162] Concurrent execution: Task 1, Task 2, and Task 3 can be executed concurrently because there are no dependencies between them.
[0163] Second order classification (Location-based service):
[0164] Operation category: Location-based service
[0165] Task 4: Obtain the user's current location.
[0166] Independent execution: Task 4, as a prerequisite task, must be completed first to provide the location information required for subsequent tasks.
[0167] Third order classification (Dependent on prerequisite tasks):
[0168] Operation category: Location-based service
[0169] Task 5: Find nearby cinemas.
[0170] Dependent on Task 4: Task 5 depends on the result of Task 4 and therefore must be started after Task 4 is completed.
[0171] Fourth order classification (Final task):
[0172] Operation category: Schedule query
[0173] Task 6: Obtain the latest screening schedule of Cinema A.
[0174] Task 7: Obtain the latest screening schedule of Cinema B.
[0175] Concurrent execution: Task 6 and Task 7 can be executed concurrently because there are no dependencies between them. Tasks 6 and 7 need to depend on the results of Tasks 1, 2, and 3 in order to find the screening schedules corresponding to the movies queried in Tasks 1, 2, and 3 in the cinema.
[0176] Through the concurrent execution method provided above, it is possible to significantly improve the speed and efficiency of task processing without affecting the accuracy of the results, and enhance the user's interaction experience.
[0177] Step 204: Assign corresponding agents to the response tasks in the same classification according to the operation category.
[0178] In step 204, according to the execution order and classification results determined in step 203, the response tasks in the same order classification are assigned to the corresponding agents according to the operation category. Since the tasks in the same order classification can be executed concurrently, in order to maximize resource utilization and avoid waste, the response tasks of the same operation category will be merged according to the bearing capacity and load conditions of the agents.
[0179] First, identify multiple mergeable response tasks existing in the response tasks of the same classification. In this process, when processing the response tasks of the same classification, it is necessary to first identify the tasks that can be merged. For example, if multiple tasks all involve querying the movie database, they can be merged into a batch query request, which can reduce the number of database calls and save response time. The prerequisite for merging is that these tasks come from the same data group.
[0180] Then, for each identified mergeable task, it is necessary to determine the operation category to which it belongs in order to find the agent corresponding to this operation category. At this time, it is necessary to determine the operation category to which these mergeable tasks belong in order to assign them to the corresponding agents. In this process, it is necessary to evaluate the current load status of the agents, including the number of tasks they are processing, CPU and memory usage, etc. The purpose of doing this is to avoid allocating a large number of merged tasks to one agent, causing it to be overloaded while other agents are idle, thereby reducing the overall execution efficiency.
[0181] In some embodiments, if it is found that all agents are in a fully loaded state, the merging strategy will be selected according to the characteristics of the tasks at this time. Specifically, the characteristics of the tasks can include the following aspects:
[0182] (1) The urgency or priority of the tasks. In some cases, some tasks may be more urgent or important to the user and need to be processed first. For example, in the movie recommendation scenario, the task of obtaining the user's current location may have a higher priority because it directly affects the subsequent search for cinemas and query of screening schedules.
[0183] (2) The operation category of the tasks. In some embodiments, tasks of the same operation category are easier to merge. For example, multiple data query tasks can be merged into a batch query request because these tasks all involve obtaining data from the database.
[0184] (3) The similarity of the tasks. Among them, tasks with similar operations or objectives can generally be merged. For example, obtaining the schedules of multiple cinemas can be merged into a batch request because they are all queries for the same type of information for different cinemas.
[0185] (4) Dependency relationships of tasks. In some embodiments, certain tasks may depend on the results of other tasks. For such tasks, when merging tasks, these dependency relationships need to be considered to ensure the correct execution order of the tasks.
[0186] (5) Execution time or resource requirements of tasks. Among them, in multiple tasks, some tasks may be completed relatively quickly or require fewer resources to complete. Such tasks, that is, tasks with relatively short expected execution times or low resource requirements, can be merged first to quickly release the resources of the agent.
[0187] (6) Impact of tasks on user experience. In some cases, tasks with a greater impact on user experience can be processed first, while some background or auxiliary tasks can be postponed appropriately.
[0188] For example, it can be illustrated by the following examples:
[0189] Suppose the information input by the user is: "Find out if there are any good movies nearby recently."
[0190] The interaction unit generates the following response tasks:
[0191] Task 1: Filter movies that have been recently released and have high ratings (data query category)
[0192] Task 2: Query movies of a specific type (such as action movies) (data query category)
[0193] Task 3: Provide personalized recommendations based on user preferences (personalized recommendation category)
[0194] Task 4: Obtain the user's current location (geographic location service category)
[0195] Task 5: Find nearby cinemas (geographic location service category)
[0196] Task 6: Obtain the latest screening schedule of Cinema A (schedule query category)
[0197] Task 7: Obtain the latest screening schedule of Cinema B (schedule query category)
[0198] Next, the agent load is evaluated and tasks are merged:
[0199] Data query agent: Responsible for Task 1 and Task 2
[0200] Personalized recommendation agent: Responsible for Task 3
[0201] Geographic location service agent: Responsible for Task 4 and Task 5
[0202] Schedule query agent: Responsible for Task 6 and Task 7
[0203] If all agents are at full load, the interaction unit will select a merging strategy according to the characteristics of the tasks:
[0204] When the characteristic is "urgency or priority": Task 4 (obtaining the user's current location) has a higher priority because it directly affects the execution of subsequent tasks 5, 6, and 7. The interaction unit can merge Task 4 first to ensure its completion as soon as possible.
[0205] When the characteristic is "operation category": Task 1 and Task 2 both belong to the data query category and can be merged into a single batch query request to reduce the number of database calls.
[0206] When the characteristic is "operation similarity": Task 6 and Task 7 are both tasks to obtain the movie theater schedule and can be merged into a single batch request to obtain the schedule information of all relevant theaters at once.
[0207] When the characteristic is "dependency": Task 5 depends on the result of Task 4, so Task 4 needs to be executed first. Task 6 and Task 7 depend on the result of Task 5, so their merging needs to be carried out after Task 5 is completed.
[0208] When the characteristic is "execution time length or resource requirement size": Task 1 and Task 2 may have a short execution time and can be merged and executed first to quickly release the resources of the data query agent.
[0209] When the characteristic is "impact on user experience": Task 3 (personalized recommendation) has a greater impact on the user experience and can be carried out after the main query tasks are completed without affecting the user's immediate needs.
[0210] By considering the characteristics of the tasks, it is possible to ensure that when the agents are at full load, a merging strategy suitable for the user is selected, enabling the efficient completion of tasks even when the agents are at full load and providing a good user experience.
[0211] In some other embodiments, if all agents are at full load, the interaction unit will allocate tasks in a round-robin manner, selecting the agent with relatively lower load to execute the task each time. For tasks of the same operation category, the interaction unit will try to merge similar operations, such as merging the tasks of obtaining the schedules of multiple movie theaters into a single batch request to obtain all relevant information at once.
[0212] In this embodiment, generally, it is best for the agents not to be idle to make full use of the processing power of each agent as much as possible during task allocation and avoid resource waste. However, in some special cases, such as when all agents are at full load, in order to ensure that tasks can be completed step by step, the round-robin method can be used to allocate tasks. Even if some agents are temporarily idle, their processing power will be gradually utilized in subsequent tasks.
[0213] For example, take the following example: the movie recommendation scenario
[0214] User input: "Find out if there are any good movies recently." At this time, the following response tasks are generated: specifically tasks 1-7.
[0215] Task 1: Filter movies that have been recently released and have relatively high ratings.
[0216] Task 2: Query movies of a specific genre (such as action movies).
[0217] Task 3: Provide personalized recommendations by combining user preferences.
[0218] Task 4: Obtain the user's current location.
[0219] Task 5: Find nearby cinemas.
[0220] Task 6: Obtain the latest screening schedule of Cinema A.
[0221] Task 7: Obtain the latest screening schedule of Cinema B.
[0222] Then, based on the classification of the response tasks, agents are allocated (that is, agents corresponding to the classification are allocated for tasks 1 to 7):
[0223] First classification: Task 1, Task 2, Task 3 (data query and personalized recommendation, which can be carried out simultaneously), Second classification: Task 4 (geographical location service, which needs to be completed first), Third classification: Task 5, Task 6, Task 7 (query based on geographical location, depending on the result of Task 4)
[0224] After that, tasks are merged based on the agent load. Among them, the data query agent: responsible for tasks 1, 2, and 3; the geographical location service agent: responsible for task 4; the schedule query agent: responsible for tasks 5, 6, and 7.
[0225] During the execution process, if it is found that the load of the data query agent is relatively low while the load of the schedule query agent is relatively high, at this time, in order to optimize resource utilization, tasks 1 and 2 can be merged into a batch query request and both are allocated to the data query agent. This can reduce the number of database calls and improve the response speed. However, if all agents are in a fully loaded state at this time, the interaction unit will use a polling method to allocate tasks. For example, tasks 5 and 6 can be merged into a batch request and allocated to the schedule query agent with a relatively low load. This can not only avoid overloading a single agent but also ensure the efficient completion of tasks. In this way, through this dynamic task merging and allocation strategy, the interaction unit can make full use of the processing power of the agents under different load conditions and provide efficient services.
[0226] Through these strategies, it is possible to efficiently process tasks even when the agent is fully loaded, ensuring that the user experience is not affected. For the example in step 203: Suppose the user inputs "Find out if there are any good movies nearby recently". The task 1 and task 2 in the generated response task can be combined into a batch query request to obtain a list of movies that meet the criteria at one time. The task 5 and task 6 can also be combined into a batch schedule query request to obtain the schedule information of all relevant cinemas at one time.
[0227] Step 205: Receive the response information fed back by the agent.
[0228] In this step, the scheduler in the interaction plug-in collects the response information after executing the response tasks from each agent. This process not only involves collecting and integrating this information, but also requires processing and optimizing it, that is, entering step 206, so as to finally present it to the user in a user-friendly manner.
[0229] In summary, steps 203 - 205 assign corresponding agents to the response tasks in the same category according to the operation category. Through detailed load assessment and task merging, it is possible to significantly improve the speed and efficiency of task processing without affecting the accuracy of the results, providing the user with a faster and smoother interaction experience. Especially by merging similar tasks, unnecessary resource consumption is reduced, further optimizing the performance of the interaction unit.
[0230] Step 206: When it is determined that there is corresponding response information for all response tasks, delete the intermediate response information in the response information, and combine the remaining response information according to the execution order to obtain the response result corresponding to the user intention.
[0231] Among them, the intermediate response information is the response information for subsequent response tasks, and the execution order of the subsequent response tasks is after the response tasks corresponding to the intermediate response information.
[0232] In this step, it will first check whether all response tasks have been successfully completed and ensure that each task has corresponding response information. If a certain task fails to return the expected information, the following measures will be taken:
[0233] Start the alternative plan and try to re-execute the task through other agents or external API services to obtain the required response information. If necessary, the user can be prompted to re-enter or supplement the missing relevant information so that the task can be successfully completed.
[0234] If a response task fails to match the corresponding response information, resulting in no expected information being returned, the response information may be edited and updated. Specifically, after step 206, if it is determined that the response task fails to match the corresponding response information, the method of this embodiment may include:
[0235] S1. Analyze multiple unit operations and combinations that constitute the response task.
[0236] When the response task does not match the corresponding response information, the interaction unit needs to conduct an in-depth analysis of the task to determine which unit operations it consists of and how these operations are combined. The unit operation is a task operation unit pre-defined in the preset database, such as "connect to database", "build query statement", "execute query", etc.
[0237] For example, suppose the user inputs: "Find out if there are any good movies recently." The response task generated by the interaction unit is "Filter out recently released movies with high ratings", but the task does not match the corresponding response information. At this time, it is necessary to parse out what unit operations the task consists of based on the method in this step, which can be:
[0238] Operation 1: Connect to the movie database
[0239] Operation 2: Build a filter query statement (filter recently released movies with high ratings)
[0240] Operation 3: Execute the query to get the results
[0241] S2. Edit the rejected response information based on the input information to obtain target response information, wherein the rejected response information is response information whose matching degree with the response task does not reach a matching threshold.
[0242] In this embodiment, the unselected response information refers to the response information whose matching degree with the response task does not reach the matching threshold, and is then "unselected". However, these "unselected" information are not useless, and may need to be further optimized or processed to meet the needs of the user. Therefore, in this step, these unselected response information need to be edited according to the information input by the user to generate the target response information.
[0243] For example, suppose the interactive unit finds some response information similar to the task of "filtering recently released movies with high ratings" in the preset database, but the matching degree of this information does not reach the threshold. For example, at this time, only two tasks, "filtering recently released movies" and "filtering highly rated movies" are found, but they do not meet the requirements of the current task. At this time, the response information of these two tasks can be edited according to the information entered by the user to generate a new target response information, namely "filtering recently released movies with high ratings".
[0244] S3. In the preset database, the plurality of unit operations are combined in the combination mode to generate the response task, and target response information corresponding to the response task is added.
[0245] In this step, when the previous step has edited the unselected response information into target response information, the parsed unit operations can be recombined in a combination manner to generate a new response task, namely, the target response information, and the target response information is added to the preset database so that it can be used directly when encountering similar tasks in the future.
[0246] For example, the three unit operations of "connecting to the movie database", "building a screening query statement", and "executing the query to obtain the result" are combined in a logical order into a new response task "screening out the recently released movies with high ratings". Then, the interaction unit adds this new task and its corresponding target response information to the preset database. Specifically, its execution process can be as follows:
[0247] (I) Perform task analysis:
[0248] User input: "Look for any good movies recently."
[0249] The interactive unit generates a response task: "Filter out the movies that have been released recently and have high ratings."
[0250] The interaction unit does not find response information that completely matches the task in the preset database.
[0251] (II) Analyze the task based on unit operation:
[0252] Specifically, the interaction unit parses the task into the following unit operations:
[0253] Connect to Movie Database
[0254] Construct a filter query statement (filter recently released movies with high ratings)
[0255] Execute the query to get the results
[0256] (III) Edit the unselected response information to obtain the target response information:
[0257] The following unselected response information is found in the preset database: "Filter out recently released movies" (a high match but not a complete match) and "Filter out highly rated movies" (a high match but not a complete match).
[0258] At this time, the response information of the two tasks can be edited according to the information entered by the user to generate new target response information: "Filter out the movies that have been released recently and have high ratings."
[0259] (IV) Combine unit operations and update the database:
[0260] The parsed unit operations are combined into a new response task in a logical order: "Filter out the recently released movies with high ratings." This new task and its corresponding target response information are added to the preset database. In this way, when the response task is executed again in the future, the target response information can be directly retrieved from the database and fed back to the user, which can improve the response speed and accuracy.
[0261] Through the above measures, the response information in the database can actually be updated based on user needs, which makes it more flexible to deal with various situations and ensure the smooth execution of tasks and the accuracy of response information.
[0262] If all response tasks have corresponding response information, you need to perform preliminary verification on the received response information to ensure that the data format is correct, the content is complete, and there are no obvious errors. For example, check whether the geographic location information is valid, whether the timetable query results contain necessary fields, etc.
[0263] After confirming that all response information is correct, all response information needs to be further sorted, such as deleting intermediate response information, to ensure that the most accurate and concise results are presented to the user.
[0264] Intermediate response information refers to temporary information that is only used for subsequent response tasks. For example, in the movie recommendation scenario, the task of obtaining the user's current location is to find nearby movie theaters, and this location information itself is not the direct result presented to the user in the end.
[0265] In addition, in the description of the present disclosure, the above examples and this example specifically involve information, data, and signals, which are all authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data comply with relevant laws, regulations, and standards of relevant countries and regions.
[0266] Further, before deleting the intermediate response information in the response information and combining the remaining response information according to the execution order to obtain the response result corresponding to the user intention in this step, tags can also be added to the corresponding response information based on the relationship between response tasks, so that the response information can also be combined and determined based on this order. Based on this, the method described in this step further includes:
[0267] Determine the dependency relationships between different types of response tasks, and clarify which task results are the preconditions for other tasks. Based on these dependency relationships, a dependency graph can be constructed to define specific dependency relationships. For example, the schedule query task depends on the cinema location information returned by the location service; the personalized recommendation task may depend on the movie list returned by the data query.
[0268] For the intermediate response information used for subsequent response tasks, specific tags will be added to this information. The tag content includes but is not limited to information type, purpose of use, associated task ID, etc. The tagged intermediate response information is temporarily stored in a preset data structure, such as a cache or a temporary database, to ensure quick access when needed. Record the intermediate response information it depends on and its tags in the metadata of each response task. In this way, when a subsequent response task is started, the required intermediate response information can be directly extracted from the tag information.
[0269] Through the tagging mechanism, the transfer and use of intermediate response information can be managed more efficiently, avoiding unnecessary repeated calculations or data transmissions, thereby optimizing the overall execution process. In addition, combined with the tagged intermediate response information, it is ensured that subsequent tasks can accurately obtain the required data, maintaining the consistency and accuracy of the entire task chain.
[0270] Since the response information of all response tasks has been obtained in this step, and the role of the intermediate response information has been realized, that is, the response information of subsequent response tasks has been obtained with the participation of the intermediate response information. Deleting the intermediate response information can not only simplify the final result, but also reduce unnecessary storage occupancy and improve the overall efficiency of the interaction unit. Then, when integrating the response result finally, the intermediate response information can be deleted.
[0271] It should be noted that ensure that no key response information is accidentally deleted during the deletion process. For example, the specific location of the cinema and the screening schedule are the information that the user finally needs and must be retained. Here, in order to avoid accidentally deleting key response information, in this embodiment, such relatively key response information can be set to be operable only in the engineer mode. That is to say, when such information needs to be deleted, the user can be prompted that the interaction unit needs to be operated to enter the engineer mode to operate on it, so as to avoid the problem of accidentally deleting key response information during the user deletion process.
[0272] Logically combine the remaining response information according to the predetermined execution order to ensure clear logic in the final result. Convert the combined response information into an easy-to-understand format, such as a list, table, or card layout, for the user to quickly browse and select. Ensure that the information is concise and avoid redundancy.
[0273] Further customize the final response result based on the user's personal preferences and historical behaviors. For example, recommend movies of the types the user liked before or remind the user that there are new releases at the cinemas the user has previously followed; or, according to the user's needs, additional relevant information can also be supplemented, such as movie synopses, user reviews, and ticket purchase links, to provide a more comprehensive service.
[0274] By deleting the intermediate response information in step 206 above and combining the remaining response information according to the execution order, the final response result corresponding to the user's intention can be efficiently generated, thereby improving the processing efficiency and user experience.
[0275] In addition, during the entire interaction process, the execution status of each response task will be tracked in real time, including startup, processing progress, completion time, and exceptions (such as timeouts, failures). At the same time, collect the user's feedback information, such as explicit evaluations (ratings, comments), implicit behaviors (number of clicks, dwell time), and direct interactions (re-querying, selecting options). This information helps to understand the user's needs and adjust strategies.
[0276] Once an abnormal task execution (such as timeout, error) is detected, an exception handling mechanism will be immediately launched to detect the exception by setting thresholds. The user feedback will also be analyzed in detail to identify improvement directions. In the embodiment of this application, the exception handling mechanism refers to the strategies and methods used to handle various possible abnormal situations or errors during the execution of the user's request. When the execution status of the task is monitored to be abnormal or the user's feedback on the interaction process is received, this mechanism will re-analyze the user's intention and generate a new response task based on the re-analysis result to ensure the smooth completion of the interaction between the user and the browser.
[0277] Based on the exception or feedback, the user's intention will be re-analyzed, which may involve re-parsing the input, combining the context, and natural language processing techniques of large language models (such as semantic processing techniques). If the existing model cannot meet the user's needs, update the user preference model.
[0278] Subsequently, new response tasks will be generated according to the analysis results, and priorities will be set according to the importance and urgency. These tasks will be assigned to appropriate agents for execution.
[0279] After execution, integrate the new response information and present it to the user to ensure the smooth completion of the interaction. For example, update the movie recommendation list and provide a booking link.
[0280] Through the above method, it is possible to quickly respond when encountering problems or user feedback, optimize the user experience, and provide better services.
[0281] It should be noted that in some embodiments, there may be abnormal situations in interacting with the user in certain cases. Then, if the acquisition and generation of response information continue, it is very likely to affect the normal use experience of the user. In view of this, before using the agent corresponding to the operation category to execute each response task and obtain the response information, the response task can also be monitored and analyzed in real time, and when there is a problem, re-analyze the user intention and re-generate the response task. Based on this, the method of this embodiment further includes:
[0282] Monitor the execution status of each of the response tasks and user feedback in real time;
[0283] If it is detected that the execution status is abnormal or a user feedback regarding the interaction process is received, re-analyze the user intention, and generate a new response task based on the result of the re-analysis;
[0284] Based on this, when using the agent corresponding to the operation category to execute each response task and obtain the response information, the specific implementation of this step is: use the agent corresponding to the operation category to re-execute each new response task to obtain the response information.
[0285] By monitoring the execution status of the response task and user feedback in real time, it is ensured that when there is an abnormality in task execution (abnormality of the execution status or abnormality determined by user feedback), the user intention can be re-analyzed, and based on the intention analysis, a processing result, that is, a new response task, can be obtained. Then, re-process based on the new response task to obtain the response information, which can ensure that the re-generated response information can eliminate the influence of the previous abnormality, thereby ensuring the accuracy of the interaction process and realizing a function that can automatically correct itself based on abnormalities, reducing the cost of manual maintenance.
[0286] As a specific implementation of the method in the above steps 201 - 206, in this embodiment, the process of steps 201 - 206 is also fully elaborated in the form of an example, specifically as follows.
[0287] (1) The process of task decomposition based on the user's input:
[0288] The user enters the instruction in the browser: "Help me find recently released science fiction movies with high ratings and recommend nearby cinemas."
[0289] After the interaction unit receives the input, it executes step 201 to determine the preliminary intention based on the user input, that is, the user hopes to obtain information about recently released high-rated science fiction movies and recommendations for nearby cinemas.
[0290] The interaction unit executes step 202 to parse the user intention and break it down into multiple response tasks with an execution order. Specifically, each response task can include tasks 1 to 5:
[0291] Task 1: Query the list of recently released science fiction movies (data query category);
[0292] Task 2: Filter out the movies with higher ratings (data processing category);
[0293] Task 3: Obtain the user's current location (geographical location service category);
[0294] Task 4: Find the cinemas near the user that have screenings of these movies (geographical location service category);
[0295] Task 5: Obtain the detailed information of these cinemas (data query category).
[0296] (2) The process of agent collaboration and task execution:
[0297] Execute step 203 to classify the response tasks according to the execution order to obtain response tasks of different classifications. Among them, there is no dependency relationship between the response tasks in the same category. Specifically, classify the above tasks 1 to 5:
[0298] First-order classification: Task 1, Task 2 (data query and processing, can be carried out simultaneously)
[0299] Second-order classification: Task 3 (geographical location acquisition, needs to be completed first)
[0300] Third-order classification: Task 4, Task 5 (query based on geographical location, dependent on the result of Task 3)
[0301] Then, execute step 204 to assign corresponding agents to the response tasks in the same classification according to the operation category. Specifically, the process for each agent to obtain the response tasks can be: ①. The data query agent is responsible for Task 1 and Task 2; ②. The geographical location service agent is responsible for Task 3, Task 4, and Task 5.
[0302] After that, execute step 205 to obtain the response information fed back by the agents. Among them, the data query agent returns the movie list, the filtered high-rated movies, and the detailed information of the cinemas, and the geographical location service agent returns the user location and the information of nearby cinemas.
[0303] (4) Result integration and feedback
[0304] Execute step 206. When it is determined that there is corresponding response information for all response tasks, delete the intermediate response information in the response information, and combine the remaining response information according to the execution order to obtain the response result corresponding to the user intention. Specifically, feedback the processed result to the user through the browser page, and display the detailed information of recently released high-score science fiction movies and the nearby cinemas.
[0305] (V) User Feedback and Optimization
[0306] During the process of task processing, also monitor the execution status of each response task and user feedback in real time. If it is detected that the execution status is abnormal or a user feedback regarding the interaction process is received, for example, the response information feedback by task 5 is actually not the response information expected by the user, then re-execute step 202 to analyze the user intention (or start from 201 again, that is, confirm with the user to determine whether it is necessary to re-receive the information input by the user), and then generate a new response task based on the re-analyzed result, and execute the new task to complete the interaction between the user and the browser.
[0307] Further, based on the same inventive concept, as an implementation of the above Figure 1 method embodiment, the embodiment of the present invention also provides an intention-based task collaboration method and device. The embodiment of this device corresponds to the foregoing method embodiment. For the convenience of reading, the details in the foregoing method embodiment will not be described one by one in this embodiment, but it should be clear that the device in this embodiment can correspondingly implement all the contents in the foregoing method embodiment. Specifically as Figure 3 shown, this device includes: a determination unit 31, an analysis unit 32, a query unit 33, and a feedback unit 34.
[0308] The determination unit 31 is used to determine the user intention based on the input information of the user;
[0309] The analysis unit 32 is used to analyze the user intention in the determination unit 31 to obtain multiple response tasks with an execution order, and different response tasks have different operation categories;
[0310] The query unit 33 is used to execute each response task in the analysis unit 32 by using an agent corresponding to the operation category to obtain response information, and the agent is used to query the response information matching the response task in the preset database;
[0311] The feedback unit 34 is used to process the response information in the query unit 33 according to the execution order in the analysis unit 32 to obtain the response result corresponding to the user intention, and feedback the response result to the user through the browser page.
[0312] Furthermore, the embodiment of the present invention also provides an intention-based task collaboration method and device for the above Figure 1-2 The device embodiment corresponds to the aforementioned method embodiment. For ease of reading, this device embodiment will not repeat the details of the aforementioned method embodiment one by one, but it should be clear that the device in this embodiment can correspond to all the contents of the aforementioned method embodiment. Figure 4 As shown, the device includes: a determination unit 31, a parsing unit 32, a query unit 33 and a feedback unit 34.
[0313] In an optional implementation manner, the query unit 33 includes:
[0314] A classification module 331 is used to classify the response tasks according to the execution order, and there is no dependency relationship between the response tasks in the same classification;
[0315] An allocation module 332 is used to allocate corresponding agents to response tasks in the same category according to the operation category in the order of execution in the classification module 331 from first to last;
[0316] The receiving module 333 is used to edit the rejected response information fed back by the agent in the allocation module 332 based on the input information to obtain the target response information; wherein, the rejected response information is the response information whose matching degree with the response task does not reach the matching threshold.
[0317] Among them, after the response task in the query unit 33 fails to match the corresponding response information, it is specifically used to: parse the multiple unit operations and combination methods that constitute the response task; receive the response information corresponding to the response task; in the preset database, combine the multiple unit operations according to the combination method, generate the response task, and add the target response information corresponding to the response task.
[0318] In an optional implementation, the allocation module 332 includes:
[0319] An identification submodule 3321 is used to identify multiple mergible response tasks existing in the response tasks in the same category;
[0320] An evaluation submodule 3322 is used to determine the operation category to which the multiple mergeable response tasks in the identification submodule 3321 belong, and to evaluate the current load status of all agents in the corresponding operation category;
[0321] The merging submodule 3323 is used to select a merging strategy based on the characteristics of the mergible response tasks if all the evaluation agents in the evaluation submodule 3322 are in a fully loaded state, merge multiple mergible response tasks into similar response tasks, and assign corresponding agents to execute them.
[0322] In an alternative embodiment, the feedback unit 34 includes:
[0323] A first determination module 341, configured to determine that there is corresponding response information for all response tasks;
[0324] A second determination module 342, configured to determine the response information for subsequent response tasks in the first determination module 341 as intermediate response information;
[0325] A deletion module 343, configured to delete the intermediate response information determined by the second determination module 342 from the response information determined by the first determination module 341, and combine the remaining response information according to the execution order to obtain a response result corresponding to the user intention.
[0326] In an alternative embodiment, the second determination module 342 includes:
[0327] A determination sub-module 3421, configured to determine the dependency relationship between response tasks of different categories;
[0328] An addition sub-module 3422, configured to add a mark to the intermediate response information for subsequent response tasks according to the dependency relationship in the determination sub-module, so as to obtain the response information of the subsequent response tasks in combination with the marked intermediate response information when executing the subsequent response tasks.
[0329] It should be noted that during any process of intent-based task collaboration, the execution status of each response task and user feedback are monitored in real time; if an abnormal execution status is detected or user feedback on the interaction process is received, the user intention is re-analyzed, and new response tasks are generated based on the results of the re-analysis; the new response tasks are executed to complete the interaction between the user and the browser.
[0330] Furthermore, an embodiment of the present invention further provides an electronic device, which includes at least one processor, at least one memory connected to the processor, and a bus; wherein, the processor and the memory complete communication with each other through the bus; the processor is configured to call program instructions in the memory to execute the intent-based task collaboration method.
[0331] Furthermore, an embodiment of the present invention further provides a readable storage medium, which is used to store a computer program, wherein the computer program controls the device where the storage medium is located to execute the intent-based task collaboration method when running.
[0332] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) that contain computer-usable program code.
[0333] The present application is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowchart and / or block diagram can be implemented by computer program instructions, and the combination of the flows and / or blocks in the flowchart and / or block diagram can also be implemented. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate means for implementing the functions specified in Figure 1 one or more of the processes Figure 1 or a plurality of processes and / or blocks.
[0334] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including instruction means, and the instruction means implements the functions specified in Figure 1 one or more of the processes Figure 1 or a plurality of processes and / or blocks.
[0335] These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in Figure 1 one or more of the processes Figure 1 or a plurality of processes and / or blocks.
[0336] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and a memory.
[0337] The memory may include non-permanent memory in the computer-readable medium, in the form of random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
[0338] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0339] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0340] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0341] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. An intention-based task collaboration method, characterized in that: The method comprises: Determining user intent based on user input information; Parsing the user intention to obtain a plurality of response tasks with execution order, where different response tasks have different operation categories; Utilizing an agent corresponding to the operation category to execute each response task to obtain response information, wherein the agent is used to query a preset database for response information matched by the response task; The response information is processed according to the execution order to obtain a response result corresponding to the user's intention, and the response result is fed back to the user through a browser page.
2. The method according to claim 1, characterized in that Utilize the agent corresponding to the operation category to perform each response task and obtain response information, including: The response tasks are classified according to the execution order to obtain response tasks of different classifications, and there is no dependency relationship between response tasks in the same classification; For response tasks in the same category, corresponding agents are assigned according to the operation category; Receive response information fed back by the agent.
3. The method according to claim 2, characterized in that For response tasks in the same category, corresponding agents are assigned according to the operation category, including: identifying a plurality of combinable response tasks existing in the response tasks in the same category; Determine the operation category to which the plurality of mergeable response tasks belong, and evaluate the current load status of all agents corresponding to the operation category; If the agents are all in a fully loaded state, a merging strategy is selected based on the characteristics of the mergible response tasks, a plurality of the mergible response tasks are merged into similar response tasks, and the corresponding agents are assigned to execute.
4. The method according to claim 1, characterized in that: After the response task fails to match corresponding response information, the method further includes: Analyze multiple unit operations and combination methods that constitute the response task; Editing the rejected response information based on the input information to obtain target response information, wherein the rejected response information is response information whose matching degree with the response task does not reach a matching threshold; In the preset database, the multiple unit operations are combined according to the combination method to generate the response task, and the target response information corresponding to the response task is added.
5. The method according to claim 1, characterized in that Processing the response information according to the execution order to obtain a response result corresponding to the user intention includes: When corresponding response information exists for all response tasks, the intermediate response information in the response information is deleted, and the remaining response information is combined according to the execution order to obtain the response result corresponding to the user intention; wherein the intermediate response information is the response information used for subsequent response tasks, and the execution order of the subsequent response tasks is after the response task corresponding to the intermediate response information.
6. The method according to claim 5, characterized in that Before deleting the intermediate response information in the response information and combining the remaining response information according to the execution order to obtain the response result corresponding to the user intention, the method includes: Identify dependencies between different categories of response tasks; According to the dependency, a mark is added to the intermediate response information used for the subsequent response task, so that when the subsequent response task is executed, the response information of the subsequent response task is obtained in combination with the marked intermediate response information.
7. The method according to any one of claims 1 to 6, characterized in that Before using the agent corresponding to the operation category to perform each response task and obtain response information, the method further includes: Real-time monitoring of the execution status and user feedback of each of the response tasks; If the execution state is detected to be abnormal or user feedback on the interaction process is received, the user intention is re-analyzed, and a new response task is generated based on the result of the re-analysis; The step of using the agent corresponding to the operation category to perform each response task and obtain response information includes: Each new response task is re-executed using the agent corresponding to the operation category to obtain the response information.
8. An intention-based task collaboration device, characterized in that: The device comprises: A determination unit, configured to determine a user intention based on user input information; A parsing unit, used for parsing the user intention in the determination unit to obtain a plurality of response tasks with execution order, wherein different response tasks have different operation categories; A query unit, used to use an agent corresponding to the operation category to execute each response task in the parsing unit to obtain response information, wherein the agent is used to query the response information matched by the response task in a preset database; The feedback unit is used to process the response information in the query unit according to the execution order in the parsing unit, obtain a response result corresponding to the user's intention, and feed back the response result to the user through a browser page.
9. An electronic device, characterized in that: The electronic device includes at least one processor, and at least one memory and a bus connected to the processor; wherein the processor and the memory communicate with each other through the bus; the processor is used to call program instructions in the memory to execute the intent-based task collaboration method described in any one of claims 1-7.
10. A readable storage medium, characterized in that: The storage medium is used to store a computer program, wherein when the computer program is running, it controls the device where the storage medium is located to execute the intention-based task collaboration method described in any one of claims 1-7.
Citation Information
Cited By
Content presentation method and device
CN121509724A