Intelligent agent scheduling method, system and server

By deploying a unified interface and an adaptive scheduling interface on the server, the complexity of terminal scheduling caused by differences in intelligent agent interface protocols is solved, enabling efficient communication between the terminal and the intelligent agent and optimizing human-computer interaction, thereby improving the user experience.

CN120780421BActive Publication Date: 2026-07-10HONOR DEVICE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HONOR DEVICE CO LTD
Filing Date
2024-08-23
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Differences exist between the interface protocols of intelligent agents for different task types, which increases the difficulty of terminal scheduling of intelligent agents and leads to the complexity of communication between the terminal, large models and intelligent agents in human-computer dialogue scenarios.

Method used

A method for scheduling intelligent agents is provided. By deploying a unified interface and an adapted scheduling interface on the server, a unified scheduling of terminals and multiple intelligent agents can be achieved, eliminating protocol differences. This includes a standardized and adapted Service Provided Interface (SPI) and interface format conversion logic, ensuring that different intelligent agents can interact with the server through a unified interface.

Benefits of technology

It reduces the difficulty of connecting the terminal with intelligent agents of different task types, optimizes communication efficiency, improves the accuracy of human-computer interaction and user experience, and ensures the security and richness of output results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120780421B_ABST
    Figure CN120780421B_ABST
Patent Text Reader

Abstract

The application discloses an agent scheduling method and system and a server, relates to the technical field of artificial intelligence, and is applied to a server. The server provides a terminal with a preset unified docking interface, and provides a plurality of agents with a preset adaptive scheduling interface. The server receives a query request carrying input content sent by the terminal through the preset unified docking interface. The server inputs the input content into a large language model for intent recognition to obtain an intent recognition result corresponding to the input content. According to the intent recognition result, the server calls a corresponding agent to perform an operation in response to the intent recognition result through the preset adaptive scheduling interface, obtains an output result returned by the corresponding agent through the preset adaptive scheduling interface, and returns the output result to the terminal through the preset unified docking interface. The application reduces the docking difficulty between the terminal and the large model and the agents of different task types.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence technology, and in particular to an intelligent agent scheduling method, system, and server. Background Technology

[0002] The development of artificial intelligence (AI) has been widely applied in dialogue scenarios, enabling natural language interaction between machines and humans. For example, large AI models deployed in terminals can facilitate human-computer dialogue in various chat application scenarios provided by the terminal.

[0003] However, a single large-scale AI model cannot meet all user needs on the terminal. It is necessary to combine a large-scale AI model with intelligent agents of various task types to achieve human-computer dialogue and fulfill the task requirements involved in such dialogue. Different types of intelligent agents can provide different types of services. For example, by combining a large-scale AI model with intelligent agents, services such as knowledge question answering, summary extraction, real-time translation, lifestyle services, itinerary planning, e-commerce shopping, financial services, and sports and health services can be provided.

[0004] However, there are differences in the interface protocols between agents of different task types, which increases the difficulty for the terminal (or the large artificial intelligence model built into the terminal) to schedule the agents. Summary of the Invention

[0005] This application provides an intelligent agent scheduling method, system, and server. The server provides a unified interface for the terminal and an adaptive scheduling interface for multiple intelligent agents. In scenarios where the terminal achieves human-computer dialogue through a large model and intelligent agents, the difficulty of interfacing between the terminal and the large model and intelligent agents of different task types is greatly reduced.

[0006] To achieve the above objectives, the embodiments of this application adopt the following technical solutions.

[0007] Firstly, an agent scheduling method is provided, applied to a server. The server has a pre-defined unified interface and a pre-defined adaptive scheduling interface. The pre-defined unified interface is used for communication between the server and multiple terminals, and the pre-defined adaptive scheduling interface is used for communication between the server and multiple agents. The server deploys a large language model. The terminals include human-computer dialogue applications. The method includes:

[0008] The server receives query requests sent by the terminal through a pre-defined unified interface; the query request carries the user's input content obtained by the terminal in the human-computer dialogue application.

[0009] The server inputs the input content into a large language model for intent recognition and obtains the intent recognition result corresponding to the input content; the intent recognition result is used to characterize the intent corresponding to the input content.

[0010] Based on the intent recognition result, the server calls the corresponding agent to perform the operation in response to the intent recognition result through a preset adaptation scheduling interface, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface.

[0011] The server sends the output results to the terminal through a pre-defined unified interface.

[0012] In this application, the server provides a unified interface for the terminal. The terminal does not need to call interfaces of different types of large models or different types of intelligent agents to respond to user input in human-computer dialogue scenarios, thus eliminating protocol differences between large models. Similarly, the server schedules different types of intelligent agents through a protocol adaptation interface, eliminating protocol differences between agents. The unified interface between the terminal and the server, and between the server and the intelligent agents, reduces the difficulty for the terminal to respond to human-computer dialogue through the server.

[0013] In one possible implementation of the first aspect, the pre-defined adaptation scheduling interface includes a standardized adaptation service provider interface (SPI); the service provider interface (SPI) is used to provide service registration functionality to the agent.

[0014] Based on the intent recognition result, the server invokes the corresponding agent to perform operations in response to the intent recognition result through a pre-defined adaptation scheduling interface, and obtains the output results returned by the corresponding agent through the pre-defined adaptation scheduling interface, including:

[0015] After the agent registers for service through the Service Provider Interface (SPI), the server calls the corresponding agent through the Service Provider Interface (SPI) to perform operations in response to the intent recognition result, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface.

[0016] In this application, the agent registers services based on the Service Provider Interface (SPI), thereby interacting with the server through SPI. All agents can interact with the server via SPI through this customized adaptation method, eliminating protocol differences between agents of different task types and reducing the difficulty of interfacing the server and agents.

[0017] In another possible implementation of the first aspect, the pre-defined adaptation scheduling interface provides agreed-upon interface format conversion logic; the agreed-upon interface format conversion logic is used to provide the agent with execution logic to convert the agent's application programming interface (API) into a service provider interface (SPI).

[0018] Based on the intent recognition result, the server invokes the corresponding agent to perform operations in response to the intent recognition result through a pre-defined adaptation scheduling interface, and obtains the output results returned by the corresponding agent through the pre-defined adaptation scheduling interface, including:

[0019] After the agent converts the Application Programming Interface (API) into a Service Provider Interface (SPI) and registers the service through the SPI, the server calls the corresponding agent through the SPI to perform operations in response to the intent recognition result, and obtains the output result returned by the corresponding agent through a preset adaptation scheduling interface.

[0020] In this application, if an agent does not directly support service registration via the Service Provider Interface (SPI), the agent can convert the Application Programming Interface (API) into the SPI based on an agreed-upon interface format conversion logic to achieve SPI service registration, thereby enabling interaction with the server via SPI. All agents can interact with the server via SPI through this customized adaptation method, eliminating protocol differences between agents of different task types and reducing the difficulty of interfacing between the server and agents.

[0021] In another possible implementation of the first aspect, the server, based on the intent recognition result, invokes the corresponding agent to perform an operation in response to the intent recognition result through a preset adaptation scheduling interface, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface, including:

[0022] Based on the intent recognition result, the server determines at least one candidate agent from multiple agents that matches the intent recognition result.

[0023] The server invokes at least one candidate agent through a pre-defined adaptive scheduling interface to perform an operation in response to the intent recognition result.

[0024] The server obtains the output results returned by at least one candidate agent through a preset adaptation scheduling interface.

[0025] In this application, the server selects candidate agents from multiple agents that match the intent recognition results. This reduces the number of agents interacting with the server, optimizes communication efficiency between the server and agents, and improves the server's performance in scheduling candidate agents. Furthermore, selecting agents ensures that the scheduled agents are relevant to the scenario and user preferences, providing more accurate human-computer interaction results and enhancing the user experience.

[0026] In another possible implementation of the first aspect, when the intent recognition result includes the intent of the input content and there are multiple candidate agents, the server determines at least one candidate agent that matches the intent recognition result from among the multiple agents, including:

[0027] The server recalls multiple candidate agents that match the intent from a pool of agents.

[0028] The method also includes:

[0029] The server performs quantization processing on each candidate agent from the first and second dimensions to obtain the quantized value of each candidate agent.

[0030] The first dimension is used to characterize the user's preference for candidate agents; the second dimension is used to characterize the actual operation of candidate agents.

[0031] The server, through a pre-defined adaptive scheduling interface, invokes at least one candidate agent to perform operations in response to the intent recognition result, including:

[0032] The server, based on the candidate agents' quantization values ​​from highest to lowest, uses a pre-defined adaptation scheduling interface to prioritize scheduling the candidate agent with the highest quantization value to perform an operation in response to the intent recognition result.

[0033] If the server does not receive an output from a candidate agent within a preset time period, the server will schedule the next candidate agent to perform an operation in response to the intent recognition result, according to the candidate agent's quantization value from high to low, until an output from a candidate agent is obtained.

[0034] In this application, the server selects candidate agents from multiple agents that match the intent recognition results. This reduces the number of agents interacting with the server, optimizes communication efficiency between the server and agents, and improves the server's performance in scheduling candidate agents. Furthermore, selecting agents ensures that the scheduled agents are relevant to the scenario and user preferences, providing more accurate human-computer interaction results and enhancing the user experience.

[0035] In another possible implementation of the first aspect, the method further includes:

[0036] The server obtains the agent scheduling configuration policy; the agent scheduling configuration policy includes the relevant configurations for the number and type of agents.

[0037] Based on the intent recognition result, the server determines at least one candidate agent from multiple agents that matches the intent recognition result, including:

[0038] Based on the agent scheduling configuration policy and the intent recognition results, the server determines at least one candidate agent from multiple agents that matches the intent recognition results.

[0039] In this application, the agent scheduling and configuration strategy can characterize the quantitative results of the operation of agents by the maintenance personnel. The server combines the quantitative results of the operation of agents to screen agents. From the perspective of agent operation, it can be ensured that the screened agents are those with high quantitative operation values, which fit the needs of the scenario and user preferences. This can provide users with more accurate human-computer interaction results and improve the user's experience of using human-computer interaction.

[0040] In another possible implementation of the first aspect, the server, based on the intent recognition result, invokes the corresponding agent to perform an operation in response to the intent recognition result through a preset adaptation scheduling interface, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface, including:

[0041] When the server determines that the data type of the output result corresponding to the input content is non-text data based on the intent recognition result, the server calls the corresponding agent to perform the operation in response to the intent recognition result through the preset adaptation scheduling interface, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface.

[0042] Text data includes plain text data or rich text data.

[0043] In this application, when the data type of the output result corresponding to the input content is non-text data, the server calls the corresponding agent to perform operations in response to the intent recognition result through a preset adaptation scheduling interface. This reduces the number of times the server schedules the agent, optimizes the server's performance, and reduces the server's communication power consumption.

[0044] In another possible implementation of the first aspect, the server, based on the intent recognition result, invokes the corresponding agent to perform an operation in response to the intent recognition result through a preset adaptation scheduling interface, and obtains the output result returned by the corresponding agent through the preset adaptation scheduling interface, further including:

[0045] When the server determines that the data type of the output result corresponding to the input content is text data based on the intent recognition result, the server sends the output result corresponding to the input content to the terminal through a preset unified interface.

[0046] Text data includes plain text data or rich text data.

[0047] In this application, the server can directly send the output result corresponding to the input content to the terminal through a preset unified interface only when the data type of the output result corresponding to the input content is text data. This reduces the number of times the server schedules the intelligent agent, optimizes the server's working performance, and reduces the server's communication power consumption. At the same time, it improves the server's efficiency in responding to the terminal.

[0048] In another possible implementation of the first aspect, the method further includes:

[0049] After obtaining the output corresponding to the input content, the server records the input content and the output result in the designated storage space to form the context information of this round of dialogue.

[0050] Contextual information is used in the process of large language models recognizing the intent of input content, and also in the process of candidate agents performing operations in response to the results of intent recognition.

[0051] In this application, the context information recorded by the server provides a context reference for multi-turn input content in a scenario, enabling the server to respond to multi-turn input content in a scenario and automatically complete context recovery, thereby significantly reducing the size of the interactive data between the server and the terminal.

[0052] In another possible implementation of the first aspect, the method further includes, before the server feeds the input into a large language model for intent recognition:

[0053] The server performs risk detection on the input content and determines that the input content is safe; safe content is content that does not contain preset risk fields and conforms to preset data formats.

[0054] In this application, risk detection of input content makes human-computer interaction safer.

[0055] In another possible implementation of the first aspect, before the server sends the output to the terminal through a pre-defined unified interface, the method further includes:

[0056] The server performs risk detection on the output results and determines that the output results are safe content; safe content is content that does not contain risky fields and conforms to the data format.

[0057] In this application, risk detection of the output results can make human-computer interaction safer.

[0058] In another possible implementation of the first aspect, the method further includes:

[0059] The server receives user profile data sent by the terminal; the user profile data is used to provide a data source for the first dimension of quantitative processing of the intelligent agent, and the first dimension is used to characterize the user's preference for the intelligent agent.

[0060] In this application, the user profile data of the user regarding the use of the intelligent agent can provide data support when the server sorts the candidate intelligent agents by algorithm for intelligent agent scheduling, so that the candidate intelligent agents selected by the server are more in line with the user's usage habits and preferences, thereby improving the user's experience in using human-computer dialogue applications.

[0061] In another possible implementation of the first aspect, the output is structured data, which includes one or more of text, images, cards, and controls.

[0062] In this application, structured data may include text description data, image data, component data, cards and controls, etc., making the output results richer and more intuitive, realizing the diversity of services provided by the human-computer dialogue interface, and optimizing the user's human-computer dialogue experience.

[0063] Secondly, this application provides an intelligent agent scheduling system, which includes a server, a terminal, and multiple intelligent agents. The server has a preset unified interface and a preset adaptive scheduling interface, and a first language model is deployed in the server. The terminal is a terminal that includes human-computer dialogue applications.

[0064] A terminal is used to receive input from users in human-computer dialogue applications;

[0065] The terminal is used to send query requests carrying input content to the server through a pre-defined unified interface;

[0066] The server is used to receive query requests through a pre-defined unified interface, input the input content into a large language model for intent recognition, and obtain the intent recognition result corresponding to the input content; the intent recognition result is used to represent the intent corresponding to the input content.

[0067] The server is used to call the corresponding agent to perform operations in response to the intent recognition result through a preset adaptation scheduling interface, based on the intent recognition result, and to obtain the output result returned by the corresponding agent through the preset adaptation scheduling interface.

[0068] The server is used to send the output results to the terminal through a pre-defined unified interface; the output results are structured data, which includes one or more of the following: text, images, cards, and controls.

[0069] The terminal is used to receive output results through a pre-defined unified interface and display the output results in the interface of the human-computer dialogue application.

[0070] In this application, the server provides a unified interface for the terminal. The terminal does not need to call interfaces of different types of large models or different types of intelligent agents to respond to user input in human-computer dialogue scenarios, thus eliminating protocol differences between large models. Similarly, the server schedules different types of intelligent agents through a protocol adaptation interface, eliminating protocol differences between agents. The unified interface between the terminal and the server, and between the server and the intelligent agents, reduces the difficulty for the terminal to respond to human-computer dialogue through the server.

[0071] In one possible implementation of the second aspect, the pre-defined adaptation scheduling interface includes a standardized adaptation service provider interface (SPI); the service provider interface (SPI) is used to provide service registration functionality to the agent.

[0072] An intelligent agent is used to register services through the Service Provider Interface (SPI) in order to interact with the server through the SPI.

[0073] In this application, the agent registers services based on the Service Provider Interface (SPI), thereby interacting with the server through SPI. All agents can interact with the server via SPI through this customized adaptation method, eliminating protocol differences between agents of different task types and reducing the difficulty of interfacing the server and agents.

[0074] In another possible implementation of the second aspect, the pre-defined adaptation scheduling interface provides agreed-upon interface format conversion logic; the agreed-upon interface format conversion logic is used to provide the agent with execution logic to convert the agent's application programming interface (API) into a service provider interface (SPI).

[0075] An intelligent agent is used to convert an Application Programming Interface (API) into a Service Provider Interface (SPI) and register services through the SPI to interact with the server.

[0076] In this application, if an agent does not directly support service registration via the Service Provider Interface (SPI), the agent can convert the Application Programming Interface (API) into the SPI based on an agreed-upon interface format conversion logic to achieve SPI service registration, thereby enabling interaction with the server via SPI. All agents can interact with the server via SPI through this customized adaptation method, eliminating protocol differences between agents of different task types and reducing the difficulty of interfacing between the server and agents.

[0077] In another possible implementation of the second aspect, a second major language model is deployed in the terminal, and the terminal has a built-in business carrier.

[0078] The terminal is specifically used to receive input content, input the input content into the second language model, and obtain the output result of the input content;

[0079] If the output indicates that the task corresponding to the input content is a non-closed-loop task, the terminal is used to send a query request carrying the input content to the server through a preset unified interface.

[0080] If the output indicates that the task corresponding to the input content is a closed-loop task, the terminal is used to call the business carrier to perform the operation in response to the output result.

[0081] In this application, when the output result indicates a closed-loop task, the terminal can independently invoke the service carrier to execute operations in response to the output result. Only when the output result indicates a non-closed-loop task does the terminal interact with the server through a pre-defined unified interface to respond to the input content. This reduces the number of interactions between the terminal and the server to a certain extent and improves the effectiveness of the interaction between the terminal and the server.

[0082] In another possible implementation of the second aspect,

[0083] The terminal is also used to obtain user profile data of users interacting with human-computer dialogue applications.

[0084] The terminal is also used to send user profile data to the server; the user profile data provides the server with a data source for the first dimension of quantitative processing of the intelligent agent, and the first dimension is used to characterize the user's preference for the intelligent agent.

[0085] In this application, the terminal can collect user profile data and send the user profile data to the server, providing data support for the server to perform quantitative processing of intelligent agents, so that the server can schedule intelligent agents more closely based on user profile data (user preferences), thereby improving the user experience of using human-computer dialogue applications.

[0086] Thirdly, a server is provided, the server including a communication interface, a memory, a processor, and a computer program stored in the memory, the processor executing the computer program to implement the steps of the method described in any of the first aspects above.

[0087] Fourthly, a computer-readable storage medium is provided that stores instructions which, when executed by a processor, implement the steps of the method described in any of the first aspects above.

[0088] Fifthly, a computer program product comprising instructions is provided, including a computer program / instructions that, when executed by a processor, implement the steps of the method described in any of the first aspects above.

[0089] In a sixth aspect, embodiments of this application provide a chip system including a processor for calling a computer program in memory to perform the method as described in any one of the first aspects.

[0090] Understandably, the beneficial effects that the server described in the third aspect, the computer-readable storage medium described in the fourth aspect, the computer program product described in the fifth aspect, and the chip described in the sixth aspect can achieve can be referred to the beneficial effects of the first aspect and any possible design, and the second aspect and any possible design, which will not be repeated here. Attached Figure Description

[0091] Figure 1 A schematic diagram of the interface of a smart assistant for a mobile phone provided in an embodiment of this application;

[0092] Figure 2 A schematic diagram of the interface of another mobile phone smart assistant provided in an embodiment of this application;

[0093] Figure 3 A schematic diagram of the interface of another mobile phone smart assistant provided in an embodiment of this application;

[0094] Figure 4 A schematic diagram of an interface for a human-computer dialogue scenario in which a mobile phone calls a weather intelligence agent, as provided in an embodiment of this application;

[0095] Figure 5 A schematic diagram of an interface for a human-computer dialogue scenario in which a mobile phone invokes a travel intelligent agent, provided as an embodiment of this application;

[0096] Figure 6 This application provides a schematic diagram of an interface for a mobile phone to call a travel intelligence agent to implement the ticket booking / purchase function.

[0097] Figure 7 This application provides a schematic diagram of the structure of a server according to an embodiment of the present application.

[0098] Figure 8 This application provides a schematic diagram illustrating the interaction between functional modules between a server and a terminal in an embodiment of the present application.

[0099] Figure 9 A more detailed schematic diagram of the various functional modules of the server and terminal is provided for the embodiments of this application;

[0100] Figure 10 This is a schematic diagram illustrating the process of intelligent agent quantization provided in an embodiment of this application;

[0101] Figure 11This is a schematic diagram illustrating the interaction between various modules and the information processing flow, provided as an embodiment of this application.

[0102] Figure 12 A schematic diagram of a human-computer dialogue interface for a mobile phone's smart assistant provided in an embodiment of this application;

[0103] Figure 13 This application provides a schematic diagram of the structure of a server according to an embodiment of the present application.

[0104] Figure 14 This is a schematic diagram of a chip system provided in an embodiment of this application. Detailed Implementation

[0105] In the description of the embodiments of this application, the terminology used in the following embodiments is for the purpose of describing specific embodiments only and is not intended to be a limitation of this application. As used in the specification and appended claims of this application, the singular expressions "a," "the," "the," "the," and "this" are intended to also include expressions such as "one or more," unless the context clearly indicates otherwise. It should also be understood that in the following embodiments of this application, "at least one" and "one or more" refer to one or more (including two). The term "and / or" is used to describe the relationship between related objects, indicating that three relationships can exist; for example, A and / or B can indicate: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship.

[0106] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. The term "connection" includes direct connections and indirect connections, unless otherwise stated. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated.

[0107] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0108] The interaction method and intelligent agent scheduling system provided in this application can be applied to human-computer dialogue scenarios. Before introducing the interaction method and intelligent agent scheduling system provided in this application, some concepts involved in this application will be briefly introduced.

[0109] Large-scale AI models (also known as large language models or large models) are machine learning models with extremely large parameters (usually over a billion) and complex computational structures. They are capable of processing massive amounts of data and performing various complex tasks, such as Natural Language Processing (NLP) and image recognition. Large-scale AI models can be deployed on terminals or servers.

[0110] NLP (Natural Language Processing) is an important field within computer science and artificial intelligence, researching theories and methods for enabling effective communication between humans and computers using natural language. Its main applications include machine translation, public opinion monitoring, automatic summarization, opinion extraction, text classification, question answering, text semantic comparison, speech recognition, and Chinese optical character recognition (OCR).

[0111] NLP consists of two parts: Natural Language Understanding (NLU) and Natural Language Generation (NLG).

[0112] NLU (Natural Language Understanding) refers to the ability of computers to understand the meaning of natural language, converting it into domains, intentions, and slots that machines can process. For example, in human-computer dialogue, NLU can be represented as follows: a user inputs "I want to book a flight from Beijing to Shanghai." Through natural language understanding, it can be determined that the domain of this input is "flight," the intention is "book a flight," and the slot-value pairs include information such as "departure point: Beijing," "destination: Shanghai," and "quantity: 1 ticket."

[0113] NLG (Natural Language Learning) refers to the ability of a computer to output a given intent in the form of natural language text, graphics, or components. In human-computer dialogue, NLG means being able to return a result corresponding to the user's intent based on the user's input of natural language text.

[0114] Based on the content of human-computer dialogue, tasks can be categorized into closed-loop tasks and non-closed-loop tasks. For example, a large model is deployed in dialogue application A. Dialogue application A receives input statements from users and executes corresponding tasks. If the task can be completed within a closed loop in dialogue application A, it is a closed-loop task. If the task requires dialogue application A to call other intelligent agents to complete it, it is a non-closed-loop task.

[0115] For example, dialogue application A receives the user's input statement "Tell me a scary story." Based on its deployed large model, application A performs natural language understanding to determine that the input statement belongs to the domain "story," has the intent "tell a story," and includes information such as "type: scary story" in the slot-value pairs. Based on the understanding of the input statement, application A generates a scary story using natural language processing and outputs it as text to the user's dialogue interface. Application A can fulfill the user's needs without invoking other intelligent agents; this is a closed-loop task.

[0116] For example, conversational application A receives the user's input statement "I want to book a flight from Beijing to Shanghai." Through natural language understanding, it can be determined that the domain of this input statement is "flights," the intent is "book a flight," and the slot-value pairs include information such as "departure city: Beijing," "destination: Shanghai," and "quantity: 1 ticket." However, conversational application A is only used for dialogue and does not have the ability to book flights. In this case, conversational application A needs to call a corresponding task-type agent (e.g., a travel agent in this case) through a relevant interface to fulfill the user's expected flight booking request.

[0117] In this context, an intelligent agent refers to a sentient entity. Any independent entity capable of thought and interaction with its environment can be abstracted as an intelligent agent. Intelligent agents possess identifiers, states, behaviors, and interfaces. Typically, they have their own knowledge base and inference engine. Intelligent agents can autonomously decide whether to respond to information from other intelligent agents. Different types of intelligent agents can provide different types of services depending on the task. For example, by combining large-scale AI models with intelligent agents, services such as knowledge question answering, summary extraction, real-time translation, lifestyle services, trip planning, e-commerce shopping, financial services, and sports and health services can be provided. For instance, a travel intelligent agent can provide trip planning and ticket booking services; a food intelligent agent can provide food search and ordering services; a sports and health intelligent agent can monitor sports and health status, collect sports and health data, and provide emergency assistance services; and a weather intelligent agent can provide weather queries and forecasts.

[0118] Generally, the interface protocols of intelligent agents for different task types vary significantly. Even among intelligent agents of the same task type, such as travel agent 1 and travel agent 2, differences in their technical support will lead to variations in their interface protocols. These differences in interface protocols between intelligent agents increase the difficulty for the terminal to schedule and connect the agents during human-computer dialogue.

[0119] This application provides an agent scheduling method applied to a server. The server provides a pre-defined unified interface for the terminal (or various applications / services of the terminal) to receive user input in human-computer dialogue scenarios. The server calls a pre-defined large model to perform intent recognition on the input content, obtaining the intent recognition result corresponding to the input content. The server determines the corresponding agent based on the intent recognition result. Therefore, the server schedules the agent to perform corresponding operations through a pre-defined adaptive scheduling interface and receives the output result returned by the agent through the same interface. The server returns the output result to the terminal through the pre-defined unified interface. In this solution, the server provides a unified interface for the terminal to call the large model and agents in human-computer dialogue scenarios, reducing the difficulty of interfacing the terminal with agents of different task types and realizing human-computer interaction on the terminal side. Furthermore, the agent protocol interface and the interface define the format of transmitted data, and the output result can be structured data. Structured data can include data in different formats, such as text, images, links, components, etc. When the terminal receives the structured data returned by the server, it can display the output result in one or more formats such as text, images, links, and components on the display interface, optimizing the user experience.

[0120] In the agent scheduling method provided in this application embodiment, the process of the server executing the agent scheduling method is mostly implemented by internal algorithms. The following mainly uses the human-computer interaction interface of the terminal to briefly explain the agent scheduling method implemented by the terminal and the server through interaction.

[0121] Taking a mobile phone as an example, the human-computer interaction interface can be the dialogue interface of the phone's smart assistant. The smart assistant can be an application on the phone, or it can be an application-layer service provided by the phone.

[0122] It is understood that the human-computer interaction interface can be the interaction interface of any application on the mobile phone, or the interaction interface of a service provided by the application layer of the mobile phone. The application / service is an application / service with a built-in large model and human-computer dialogue function (hereinafter referred to as application). The application can send a query request carrying the input content to the server through a preset unified interface. The server can then call the large model to perform intent recognition and scheduling of intelligent agents of different task types based on the input content. Subsequently, the server can return the output result corresponding to the input content to the mobile phone, and the mobile phone can display the output result on the interaction interface of the application / service.

[0123] For example, Figure 1 A schematic diagram of the interface of a mobile phone's smart assistant is provided. Figure 1 The interface 100 shown in (a) can be the main interface of the smart assistant. The main interface can be the default interface displayed after the phone starts the smart assistant, or it can be a recommended interface of the smart assistant (such as...). Figure 1 (as shown in (a)). Figure 1 The main interface shown in (a) may include a sliding component 101 for providing hotspot information, a component 102 for providing smart functions, and a component 103 located at the bottom of the interface 100. For example, as Figure 1 The sliding component 101 shown in (a) may include a sliding component for "playing the movie / TV series 'xxx'" and a sliding component for "playing the song 'xxx'", etc. The mobile phone can trigger the execution of the corresponding operation when it receives a user's operation on the sliding component. For example, as... Figure 1 Component 102 shown in (a) may include calorie recognition, object recognition, QR code scanning, photo translation, etc. When the mobile phone receives a user's operation on component 102, it can trigger the corresponding operation to be performed. For example, ... Figure 1Component 103 shown in (a) may include a "Recommended" component, a "Discover" component, a "Skills" component, and a "My" component for switching interfaces. The phone displays the corresponding recommended interface in response to the user's operation on the "Recommended" component; displays the corresponding discovery interface in response to the user's operation on the "Discover" component; displays the corresponding skills interface in response to the user's operation on the "Skills" component; and displays the corresponding My interface in response to the user's operation on the "My" component.

[0124] In one example, the phone receives a user's action on the "Skills" component and displays the corresponding skill interface. The skills provided by the smart assistant's skill interface can include functions that depend on the calling agent (functions corresponding to non-closed-loop tasks) and functions that do not depend on the calling agent (functions corresponding to closed-loop tasks). For example, Figure 1 (b) provides a schematic diagram of a skill interface. For example... Figure 1 The interface shown in (b) is the skill interface of the smart assistant. Figure 1 The skill interface shown in (b) includes menu options 201 for representing skills of different task types, and an area 202 for displaying the skills contained in a particular menu option. Figure 1 As shown in (b), menu option 201 may include "Hot Recommendations" and "Social Leisure," and may also include "Utility Tools," "Audio-Visual Entertainment," "Convenient Living," "News and Information," "Shopping Price Comparison," "Travel," and "Skills and Visuals," etc.

[0125] The phone receives the user's action regarding "Hot Recommendations" in menu option 201 and displays individual components corresponding to the skills included in "Hot Recommendations" in area 202. For example, the individual components of the skills included in "Hot Recommendations" may include weather components, alarm clock components, leisure components, photo translation components, gallery components, and phone manager components, etc.

[0126] When a mobile phone receives a user's interaction with the weather component, it can display a corresponding dialog interface. After receiving the user's input in this interface, the phone can send a query request carrying the input content to the server through a pre-defined unified interface. For example, the input content could be "Query the weather" received by the phone. The server inputs the query request into a large model for intent recognition, obtains the intent recognition result, and dispatches the corresponding weather agent to return the output result corresponding to "Query the weather" based on the intent recognition result. The output result may include structured data containing information such as temperature at different times of the day. The mobile phone obtains and displays the output result through the pre-defined unified interface.

[0127] If the mobile phone receives a user's operation on the alarm clock component, it can display a corresponding dialogue interface. After receiving the user's input in this interface, the phone can send a query request carrying the input content to the server through a pre-defined unified interface. For example, the input content could be "Set an alarm for 7 AM on a weekday." The server inputs the input content from this query request into a large model for intent recognition, obtains the intent recognition result, and, based on the intent recognition result, schedules the corresponding alarm clock agent to return the output result corresponding to "Set an alarm for 7 AM on a weekday." The output result may include an indication that the target alarm clock agent has set an alarm for 7 AM on a weekday.

[0128] refer to Figure 2 . Figure 2 Provide a schematic diagram of another mobile phone's smart assistant interface. For example... Figure 2 As shown in (a), component 103 also includes a wake-up component 104. When the mobile phone receives an operation from the user on the wake-up component 104, it triggers the display of the corresponding interface. Specifically, the corresponding operation for the wake-up component 104 can be set according to the different input methods of the user through text input or voice input in the human-computer dialogue scenario.

[0129] For example, if the phone receives the user's first operation on the wake-up component 104, it will trigger the display as shown below. Figure 2 The interface 300 shown in (b) can be a single click, double click, long press, etc. For example... Figure 2 As shown in (b), the voice dialogue interface can be an interface 300 displayed as a transparent floating window in the main interface 100 of the smart assistant. The interface 300 includes a keyboard component 301 and a scanning component 302.

[0130] When the mobile phone receives a user's operation on the keyboard component 301, the mobile phone can display as follows: Figure 2 Interface 303 is shown in (c). Figure 2 As shown in (c), interface 303 can be a floating window displayed in the main interface 100 of the smart assistant. Interface 303 can be a dialogue interface for text input. Interface 303 may include a dialogue input box 304. The mobile phone can receive the user's input in the dialogue input box 304 and perform corresponding processing based on the input. Interface 303 may also include a voice conversion component 305. When the mobile phone receives an operation from the user on the voice conversion component 305, it displays a dialogue interface for voice input.

[0131] If the phone receives a user's operation on the voice conversion component 305 in interface 303, or if the phone receives a second operation from the user on the wake-up component 104 in interface 100, the phone can trigger the display as shown below. Figure 2 The voice dialogue interface is shown in (d). The second operation can be a long press, a single click, a double click, etc., and the first and second operations are different. For example... Figure 2 As shown in (d), the voice dialogue interface can be an interface 400 displayed as a floating window within the main interface 100 of the smart assistant. During user voice input, the phone can perform text recognition on the user's voice input and display the recognized text content in real-time in the input area 402 of the interface 400. Furthermore, to distinguish between the user's inputting state and paused input, the interface 400 also includes a wake-up component 401 with dynamic effects to indicate that the user is currently inputting. Optionally, the interface 400 may also include some quick phrase sliding components 403 to provide users with access to convenient functions.

[0132] In other scenarios, for example, users can also wake up the smart assistant through voice input in interface 100. When the phone detects that the smart assistant has been woken up, it displays the voice dialogue interface 400.

[0133] Understandably, a mobile phone can receive input actions triggered by the user on any display interface, acquire the user's input content, and perform corresponding interactive operations based on the input content. For example, the phone can receive the user's action of selecting a single component of a skill on the skills interface, display the corresponding dialogue interface, and acquire the user's input content. Alternatively, the phone can receive the user's first or second action on the wake-up component on the main interface, and display the corresponding dialogue interface. Or, the phone can respond to the user's voice activation of the smart assistant, and display the corresponding dialogue interface. In the above examples, the phone can acquire the user's input content through text or voice.

[0134] The above examples illustrate the application of the intelligent agent scheduling method provided in this application to human-computer dialogue scenarios in mobile phones. The following examples further illustrate the application of the intelligent agent scheduling method from the perspective of obtaining input content from the mobile phone and performing corresponding interactive operations.

[0135] Based on user input, the mobile phone can first perform intent recognition using a large model built into the application (such as a smart assistant) to obtain the intent recognition result of the input content. After obtaining the intent recognition result of the input content, in one feasible approach, the mobile phone can also determine, based on the intent recognition result, whether the task indicated by the input content is a closed-loop task that the application (such as a smart assistant) can respond to, or a non-closed-loop task that the application (such as a smart assistant) needs to call upon an intelligent agent to respond to.

[0136] If the phone confirms that the input content indicates a closed-loop task, it will use the application's built-in data or large model to perform natural language generation processing, obtain the output result corresponding to the input content, and display the output result on the display interface.

[0137] For example, Figure 3 A schematic diagram of another mobile phone's smart assistant interface is provided.

[0138] like Figure 3 As shown in (a), the user input obtained by the mobile phone in the voice dialogue interface 400 is "Tell a joke". The mobile phone performs intent recognition on the input based on the large model built into the smart assistant, determining the intent recognition result corresponding to the input. This intent recognition result may include the domain of the input as "story", the intent as "output joke", and the slot-value pair as "quantity: 1". The mobile phone determines that the task indicated by this input is a closed-loop task that the smart assistant can respond to. That is, the mobile phone can obtain the output result corresponding to the input through natural language generation technology using the large model and built-in database of the smart assistant. For example, as... Figure 3 As shown in (b), the output is "Joke 1", and the mobile phone can display the output 502 in the dialogue interface 500. The output is displayed in the dialogue interface 500 as a text description. For example... Figure 3 As shown in (b), the dialog interface 500 may also include user input content 501. Furthermore, as... Figure 3 As shown in (b), the dialog interface 500 may also include a component 503 for collecting information on whether the user is satisfied with the output. Component 503 includes components representing "satisfaction" and components representing "dissatisfaction".

[0139] After the phone displays the output result in the dialogue interface 500, if it receives an action from the user on the "Satisfied" component, it indicates that the user is satisfied with the output result; if it receives an action from the user on the "Dissatisfied" component, it indicates that the user is dissatisfied with the output result. The phone can acquire the user's actions on component 503 after each output result to form user behavior data for the corresponding question (input content) / scenario / domain. User behavior data can express the user's preference for the processing result of the question, and to a certain extent, it can also reflect the user's question and response habits.

[0140] Optionally, the dialog interface 500 may also include a keyboard component 504 and a scanning component 505. When the mobile phone receives an operation from the user on the keyboard component 504, it displays a text input dialog interface; when the mobile phone receives an operation from the user on the scanning component 505, it displays a QR code scanning interface. Including these two components in the dialog interface 500 can promptly meet the user's needs for frequently used functions.

[0141] If the mobile phone confirms that the task indicated by the input content is not a closed-loop task, it can send a query request carrying the input content to the server through a pre-defined unified interface to obtain the output result returned by the server. Specifically, after receiving the input content, the server inputs the input content into a large model for intent recognition and obtains the intent recognition result corresponding to the input content. Based on the intent recognition result, the server recalls matching agents, schedules at least one agent to respond to the input content through a pre-defined adaptation scheduling interface, and obtains the output result from at least one agent through the same interface. The server returns the output result to the mobile phone through the pre-defined unified interface. After receiving the output result, the mobile phone displays it on the corresponding interface.

[0142] Let's take a user querying the weather as an example in a human-computer dialogue scenario. For instance, Figure 4 A schematic diagram of a human-computer dialogue scenario where a mobile phone calls a weather intelligence agent is provided.

[0143] like Figure 4As shown in (a), the user input received by the mobile phone at the voice dialogue interface 400 is "Weather in City A". The mobile phone performs intent recognition on the input based on the large model built into the smart assistant, determining the intent recognition result corresponding to the input. This intent recognition result may include the domain of the input as "weather", the intent as "query weather", and the slot-value pair as "region: City A, date: August 13th". The mobile phone determines that the task indicated by this input is a non-closed-loop task that the smart assistant cannot respond to; that is, the mobile phone cannot obtain the weather in City A through the large model and built-in database of the smart assistant. The mobile phone needs to call the weather agent to obtain the weather in City A. In this case, the mobile phone can send a query request carrying the input content to the server through a preset unified interface. When the server receives the query request, it calls the large model to perform intent recognition on the input and obtain the intent recognition result for the input. For example, the intent recognition result includes the input content's domain as "weather," the intent as "query the weather," and the slot-value pair as "region: City A, date: August 13th." Based on the identified domain and intent, the server recalls candidate weather agents matching that domain / intent from multiple agents. Further, the server can sort (i.e., score) the recalled weather agents by quantification value, and based on the descending order of their quantification values ​​(i.e., scores), invoke the weather agents to respond to "query the weather in City A" through a pre-defined adaptation scheduling interface. Upon receiving output from at least one weather agent, the server can return the output to the mobile phone through a pre-defined unified interface. Weather agents can return structured data to the server through the adaptation scheduling interface; this structured data can include text descriptions, image data, component data, etc.

[0144] The mobile phone can display the output results in the dialogue interface 600. For example... Figure 4 As shown in (b), the output includes query results in text description format (e.g., Figure 4 (b) text box 602) and query results in component format (e.g. Figure 4 (b) Weather component 603). Structured data is not limited to the data format of the output results, and can display the output results in various data formats such as text / images / components, making the output results more intuitive. In addition, such as Figure 4 As shown in (b), the dialog interface 600 may also include user input content 601. For example... Figure 4 As shown in (b), the dialog interface 600 may also include a data source field 604, used to characterize the source of the output result (e.g., Figure 4(b) shows the weather information for xx (where xx weather is a weather agent). The dialog interface 600 may also include a component 605 for collecting user feedback on the output results. Component 605 includes components representing "satisfaction" and components representing "dissatisfaction".

[0145] After the phone displays the output result in the dialogue interface 600, if it receives an action from the user on the "Satisfied" component, it indicates that the user is satisfied with the output result; if it receives an action from the user on the "Dissatisfied" component, it indicates that the user is dissatisfied with the output result. Based on the user's actions on component 605, the phone generates user behavior data (i.e., user profile data) for the corresponding question (input content) / scenario / domain. This user behavior data can express the user's preference for the question's processing result and, to a certain extent, can also characterize the user's preference for the intelligent agent outputting the result.

[0146] Let's take a user querying flight information in a human-computer dialogue scenario as an example. For instance, Figure 5 A schematic diagram of a human-computer dialogue scenario in which a mobile phone invokes a travel intelligence agent is provided.

[0147] like Figure 5As shown in (a), the user input received by the mobile phone at the voice dialogue interface 400 is "Query flights from City A to City B today". The mobile phone performs intent recognition on the input based on the large model built into the smart assistant, determining the intent recognition result corresponding to the input. This intent recognition result can include the input's domain as "flights", the intent as "query flights", and the slot-value pair as "departure city: City A, arrival city: City B, date: August 13th". The mobile phone determines that the task indicated by this input is a non-closed-loop task that the smart assistant cannot respond to; that is, the mobile phone cannot obtain today's flights from City A to City B through the large model and built-in database of the smart assistant. The mobile phone needs to call the weather agent to obtain today's flights from City A to City B. In this case, the mobile phone can send a query request carrying the input content to the server through a preset unified interface. When the server receives the query request, it calls the large model to perform intent recognition on the input, obtaining the intent recognition result for the input. For example, the intent recognition result includes the input content's domain as "flights," the intent as "query flights," and the slot-value pair as "departure city: City A, arrival city: City B, date: August 13th." Based on the identified domain and intent, the server recalls candidate weather agents matching that domain / intent from multiple agents. Further, the server can sort the recalled travel agents by quantization value, and based on the travel agents' quantization values ​​from highest to lowest, it invokes the travel agents to respond to "query flights from City A to City B today" through a pre-defined adaptation scheduling interface. Upon receiving output from at least one travel agent, the server can return the output to the mobile phone through a pre-defined unified interface. Travel agents can return structured data to the server through the adaptation scheduling interface; this structured data can include text descriptions, image data, component data, etc.

[0148] The mobile phone can display the output results in the chat interface. For example... Figure 5 As shown in (b), the output includes query results in text description format (e.g., Figure 5 (b) text box 702) and query results in component format (e.g. Figure 5 (b) Flight component 703). Structured data is not limited to the data format of the output results, and can display the output results in various data formats such as text / images / components, making the output results more intuitive. In addition, such as Figure 5 As shown in (b), the dialog interface 700 may also include user input content 701. For example... Figure 5As shown in (b), the dialog interface 700 may also include a data source field 705, used to characterize the source of the output result (e.g., Figure 5 (b) shows xx trip, where xx trip is the travel agent. The dialogue interface 700 may also include a component 706 for collecting user satisfaction with the output results. Component 706 includes a component representing "satisfaction" and a component representing "dissatisfaction". After the mobile phone displays the output results in the dialogue interface 700, if it receives the user's operation on the "satisfaction" component, it indicates that the user is satisfied with the output results; if it receives the user's operation on the "dissatisfaction" component, it indicates that the user is dissatisfied with the output results. The mobile phone can collect the user's operation on component 706 after each output result to form user behavior data in the corresponding question (input content) / scenario / domain. User behavior data can express the user's preference for the processing results of the question, and to a certain extent, it can also represent the user's preference for the intelligent agent of the output results.

[0149] In some other feasible implementations, the travel agent can also provide ticket booking / purchasing functionality. The structured data returned by the travel agent may also include link components for booking / purchasing tickets. For example... Figure 5 Component 704 is shown in (b). When the mobile phone receives the user's operation on component 704, it can redirect to the corresponding application of xx Travel to perform the booking / ticket purchase operation. Figure 5 (c) provides a display interface 800 for xx travel. This display interface corresponds to the information in the output of interface 700 and is used to display flights from city A to city B today. Display interface 800 may include a booking / ticketing control 801 for triggering booking / ticketing operations.

[0150] above Figure 5 The given embodiment demonstrates that the travel agent can perform flight searches and provide links for booking / purchasing tickets. The following... Figure 6 The given embodiment is a schematic diagram of an interface for a mobile phone to call a travel intelligence agent to implement the ticket booking / purchase function.

[0151] In one feasible embodiment, such as Figure 6As shown in (a), the user input received by the mobile phone in the voice dialogue interface 400 is "Book me a flight from City A to City B around 5 PM." The mobile phone performs intent recognition on the input based on the large model built into the smart assistant, determining the intent recognition result corresponding to the input. The intent recognition result can include the domain of the input as "flight," the intent as "book a flight," and the slot-value pair as "departure city: City A, arrival city: City B, date: August 13th, departure time: around 5 PM." The mobile phone determines that the task indicated by this input is a non-closed-loop task that the smart assistant cannot respond to; that is, the mobile phone cannot complete the task of booking a flight using the large model and built-in database of the smart assistant. The mobile phone needs to call the weather intelligence agent to execute the flight booking task. In this case, the mobile phone can send a query request carrying the input content to the server through a preset unified interface. When the server receives the query request, the server calls the large model to perform intent recognition on the input and obtain the intent recognition result of the input. For example, the intent recognition result includes the input content's domain as "flights," the intent as "book a flight," and the slot-value pair as "departure city: City A, arrival city: City B, date: August 13th, departure time: around 5 PM." Based on the identified domain and intent, the server recalls candidate weather agents matching that domain / intent from multiple agents. Further, the server can sort the recalled travel agents by quantization value. Based on the travel agents' quantization values ​​from highest to lowest, it uses a pre-defined adaptation scheduling interface to invoke the travel agents to respond to "book me a flight from City A to City B around 5 PM." Upon receiving output from at least one travel agent, the server can return the output to the mobile phone via a pre-defined unified interface. Travel agents can return structured data to the server through the adaptation scheduling interface; this structured data can include text descriptions, image data, component data, etc.

[0152] The mobile phone can display the output results in the dialogue interface. For example... Figure 6 As shown in (b), the output includes query results in text description format (e.g., Figure 6 (b) text box 902) and query results in component format (e.g. Figure 6 (b) Flight component 903). Structured data does not limit the data format of the output results, and can display the output results in various data formats such as text / images / components, making the output results more intuitive. Component 903 displays the flight query results corresponding to the input content.

[0153] Considering that booking / purchasing tickets requires users' personal information, the travel intelligence agent can further obtain users' information permissions / consents before performing the booking / purchasing operation.

[0154] For example, the dialogue interface 900 may also include component 905, which includes a reminder message to the user to confirm the ticket purchase, and a confirmation control 906 for responding to the user's confirmation of the ticket purchase. When the mobile phone receives the user's operation on the confirmation control 906, the mobile phone returns a response to the server, and the server wakes up the travel agent to execute the booking / purchase operation.

[0155] In addition, such as Figure 6 As shown in (b), the dialogue interface 900 may also include user input content 901, data source field 904, and component 907 for collecting user satisfaction with the output results. Component 907 includes components representing "satisfaction" and components representing "dissatisfaction". After the mobile phone displays the output results in the dialogue interface 900, if it receives an operation from the user on the "satisfaction" component, it indicates that the user is satisfied with the output results; if it receives an operation from the user on the "dissatisfaction" component, it indicates that the user is dissatisfied with the output results. The mobile phone can collect user operations on component 907 after each output result to form user behavior data for the corresponding question (input content) / scenario / domain. User behavior data can express the user's preference for the processing results of the question and, to a certain extent, can also represent the user's preference for the intelligent agent of the output results.

[0156] As can be seen from the above embodiments, when a terminal (such as a mobile phone) responds to user input, after recognizing the intent of the input, if the input indicates a non-closed-loop task, the terminal needs to call the agent corresponding to the task type indicated by the input to perform the corresponding operation and obtain the output result for display. In traditional scenarios, the protocol differences between agents of different task types (or different agents) increase the difficulty of interfacing between the terminal and the agent. However, in the agent scheduling method provided in the above embodiments of this application, the server provides a preset unified interface for the terminal, through which the terminal can send query requests to the server; the server, facing the agent, presets an adaptation scheduling interface, through which the server schedules the agent and obtains the output result returned by the agent, and returns the output result to the terminal through the unified interface. Obviously, the server's collaborative operation and the setting of the unified interface and adaptation scheduling interface reduce the difficulty of the terminal interfacing with the agent in human-computer interaction scenarios.

[0157] The above embodiments combine human-computer dialogue in actual user scenarios (with different input content) and introduce how mobile phones respond to user input content by scheduling corresponding types of intelligent agents through servers.

[0158] The following embodiments illustrate the intelligent agent scheduling method provided in this application from the perspective of the actual technical implementation of mobile phones and servers.

[0159] The interaction method provided in this application can be applied to an intelligent agent scheduling system where a terminal interacts with a server. The server is the executing entity of the interaction method; for example, the server can be a cloud server, a dedicated server, a server cluster, etc.

[0160] For example, Figure 7 A schematic diagram of a server structure is provided. See also... Figure 7 , Figure 7 The server 1000 shown may include a processor 1001, a memory 1002, a communication interface 1003, and a bus 1004. The processor 1001, the memory 1002, and the communication interface 1003 can be connected to each other via the bus 1004.

[0161] Processor 1001 is the control center of the server. It can be a general-purpose central processing unit (CPU) or other general-purpose processors. The general-purpose processor can be a microprocessor or any conventional processor.

[0162] As an example, processor 1001 may include one or more CPUs, for example Figure 1 CPU 0 and CPU 1 are shown in the diagram.

[0163] In this embodiment, a large model can be built into the server, and the processor 1001 can input the input content into the large model for intent recognition and obtain the intent recognition result corresponding to the input content.

[0164] The memory 1002 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto.

[0165] In one possible implementation, the memory 1002 may exist independently of the processor 1001. The memory 1002 can be connected to the processor 1001 via a bus 1004 and is used to store data, instructions, or program code. When the processor 1001 calls and executes the instructions or program code stored in the memory 1002, it can implement the split-screen display method provided in this application embodiment.

[0166] In another possible implementation, the memory 1002 can also be integrated with the processor 1001.

[0167] The communication interface 1003 is used for the server to connect with other devices via a communication network, which can be Ethernet, radio access network (RAN), wireless local area network (WLAN), etc. The communication interface 1003 may include a receiving unit for receiving data and a transmitting unit for sending data.

[0168] The server can communicate with the terminal and the intelligent agent through communication interface 1003. Specifically, the server can receive query requests carrying input content sent by the terminal through the communication interface and a preset unified interface, and return the output results corresponding to the input content to the terminal through the preset unified interface. The server can schedule the intelligent agent to perform response operations to the input content through the communication interface and a preset adaptation scheduling interface, and receive the structured data returned by the intelligent agent in response to the input content through the preset adaptation scheduling interface.

[0169] Bus 1004 can be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 7 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0170] It should be pointed out that, Figure 7 The structure shown does not constitute a limitation on the server, except... Figure 7 In addition to the components shown, the server may include more or fewer components than illustrated, or combine certain components, or have different component arrangements.

[0171] The following embodiments illustrate the agent scheduling method provided in this application through the interaction of various functional modules between the server and the terminal. The server and the terminal constitute an agent scheduling system. (Reference) Figure 8 , Figure 8 A schematic diagram illustrating the interaction between functional modules between a server and a terminal is provided.

[0172] The server includes a processing module. This module receives query requests carrying input content from the terminal via a pre-defined unified interface, calls a large model to perform intent recognition on the received input content, and obtains the intent recognition result. Based on the intent recognition result, the processing module schedules intelligent agents to respond to the input content via a pre-defined scheduling interface, and receives structured data returned by the intelligent agents in response to the input content via a pre-defined adaptive scheduling interface. The processing module also returns the output result corresponding to the input content to the terminal via the pre-defined unified interface. The intelligent agents include agents for different task types, such as travel agents, food agents, and financial agents.

[0173] In some embodiments, the server may further include a scheduling policy management module for defining the type and number of schedulable agents, as well as defining agent scheduling policies.

[0174] The terminal includes at least one human-computer dialogue application, which comprises a built-in large model and a built-in business logic vehicle. The human-computer dialogue application receives user input on the dialogue interface, performs intent recognition on the input based on the built-in large model, and obtains the intent recognition result. Based on the intent recognition result, it can be determined whether the task indicated by the input is a closed-loop task that the application can respond to, or a non-closed-loop task that the application cannot respond to. If it is a closed-loop task, the human-computer dialogue application calls the built-in business logic vehicle to respond to the input and returns the corresponding output result on the dialogue interface. If it is a non-closed-loop task, the human-computer dialogue application can send a query request carrying the input content to the server through a preset unified interface, and receive the corresponding output result returned by the server through the same preset unified interface. The human-computer dialogue application then outputs the received output result.

[0175] The server's processing module involves operations including intent recognition of the input content and scheduling of the corresponding intelligent agent. Furthermore, the processing module may include multiple sub-modules for performing these corresponding operations.

[0176] For example, Figure 9 A more detailed schematic diagram of the various functional modules of the server and terminal is provided.

[0177] like Figure 9 As shown, the server's processing modules may include an input processing module, an output processing module, an agent scheduling module, an agent monitoring module, an agent execution module, a protocol adaptation module, a session management module, and a risk control module, etc.

[0178] The input processing module receives input from the terminal via a unified interface and inputs it into the large model for data processing (e.g., intent recognition). It also acquires the output data of the large model (e.g., intent recognition results) and outputs it to the agent scheduling module.

[0179] The unified interface, also known as the service distribution control unified interface, is an interface provided by the server using a unified protocol for data transmission between the server and the terminal. The large model interacting with the input processing module is an artificial intelligence large model (large language model), which possesses capabilities for tasks such as natural language understanding, generation, translation, and question answering.

[0180] The agent scheduling module receives output data from the input processing module. For example, the output data can be intent recognition results, which may include the domain, intent, and slot-value pairs (also known as intent slots) corresponding to the input content. The agent scheduling module also determines the corresponding agent based on the intent recognition results.

[0181] The process by which the agent scheduling module determines the corresponding agent based on the intent recognition result may include agent recall, affinity matching, real-time label calculation, and algorithm sorting.

[0182] The process by which the agent scheduling module determines the agent corresponding to the intent recognition result is essentially a process of selecting the corresponding agent from the agents connected to the server. The agents connected to the server can be managed and configured by operations and maintenance personnel through the scheduling policy management module. The agents connected to the server should be risk-free and already deployed. Specifically, the task types and number of the agents connected to the server can be determined according to the actual scenario; this embodiment does not impose any limitations on this.

[0183] The agent scheduling module recalls agents by retrieving those whose task types match the domain and intent identified in the intent recognition results. For example, if the domain of the intent recognition result is "flight" and the intent is "book a flight," then the agent scheduling module can recall agents whose task types are related to the domain "flight," such as travel or tourism. For instance, the recalled agents might include travel agents, tourism agents, and lifestyle agents. Optionally, agents recalled by the agent scheduling module that match the intent recognition results can become candidate agents.

[0184] The agent scheduling module can retrieve one or more candidate agents. When multiple candidate agents are retrieved, the agent scheduling module can perform affinity matching and real-time label calculation on the multiple candidate agents, thereby sorting the multiple candidate agents by algorithm and obtaining a queue of multiple candidate agents.

[0185] Specifically, and exemplarily, affinity matching refers to the agent scheduling module determining user preferences and habits for each candidate agent based on user profile data. The user profile data can be historical data collected with the user's consent regarding their use of the candidate agent on the terminal. For example, historical data includes the number of times the candidate agent was used, user feedback (satisfaction or dissatisfaction), usage scenarios, etc. The server can send point configuration information for the candidate agent usage scenarios to the terminal to obtain point data on user usage of the candidate agent, and so on. In some feasible embodiments, the agent scheduling module can perform quantification processing on the candidate agents based on the user profile data to obtain a first quantified value representing the corresponding user preferences and habits of the candidate agent. The server can also perform cost accounting for scheduling agents in human-computer dialogue scenarios based on the point data.

[0186] Real-time tag calculation refers to the process by which the agent scheduling module, through interaction with the agent monitoring module, obtains actual data on candidate agents and calculates a real-time tag based on this data. This tag can then be used to characterize the actual operational status of the candidate agent. The actual data of the candidate agent can include its operational status (e.g., normal operation, abnormal operation), load rate, scheduling cost, etc. In some feasible embodiments, weights can be assigned to each piece of actual data, and a weighted sum of these data points can be calculated to obtain a second quantitative value characterizing the actual operational status of the candidate agent.

[0187] The agent scheduling module can obtain the total quantized value of each agent based on the first and second quantized values ​​of each agent.

[0188] The agent scheduling module can also perform algorithm quantization on each candidate agent based on a preset quantization algorithm to obtain the algorithm quantization value of each agent. Based on the algorithm quantization value, the first quantization value, and the second quantization value, the quantization values ​​of multiple candidate agents are sorted from high to low to obtain a queue of multiple candidate agents.

[0189] In some feasible embodiments, specifically, the agent recall model can define information such as the agent's identity document (ID), agent ID, and agent dimensional information. Furthermore, the agent recall model can also define information related to the target type of the agent's deployment, such as the target audience / grayscale information. The agent recall model can also define scenario information for the agent, such as application ID and scenario ID. The agent recall model can also define information such as filtering conditions, which may include system control, algorithm control, and constraint control information.

[0190] Among them, system control refers to the operation and maintenance personnel's quantitative management of intelligent agents; algorithm control refers to the server's quantitative ranking of intelligent agents; and constraint control includes real-time quantitative management of intelligent agents, which includes the quantitative management of the actual operating status of intelligent agents, user preferences, and other relevant information.

[0191] In one feasible embodiment, Figure 10 A schematic diagram of the intelligent agent quantization process is given.

[0192] In this embodiment, the terminal can obtain user information (such as user ID and the device model of the user's terminal), media information (such as application ID and application version), and scene information (such as scene ID). Based on the user ID and the profiling platform, a profile list including multiple users can be generated. Based on the scene ID, scene details can be obtained, that is, the operation status of the intelligent agent application in a specific scene.

[0193] Based on the information corresponding to the aforementioned intelligent agents and the user profile data regarding their use, an intelligent agent deployment library containing multiple intelligent agents can be constructed. These multiple intelligent agents can include agents of different task types.

[0194] The agent scheduling module can recall at least one candidate agent matching the domain / intent from the agent deployment library based on the intent recognition result, forming a deployment list of at least one candidate agent. Based on the candidate agents in the deployment list, the agent scheduling module can obtain the comprehensive quantization value of each candidate agent from multiple dimensions, including the operational quantization result indicated by system control information, the algorithmic quantization result indicated by algorithm control information, and the real-time tag quantization result. This results in candidate agents sorted from highest to lowest comprehensive quantization value, which is then used by the agent execution module to schedule the corresponding candidate agents.

[0195] The real-time label quantification result is determined by constraint information, user profile data, and the actual operation of the agent. The user profile data can be determined from multiple user profile data uploaded by the terminal based on the user ID, and the actual operation of the agent can be obtained from the agent monitoring module based on the agent ID.

[0196] The agent monitoring module is used to monitor the actual operation of each agent. For example, data characterizing the actual operation of an agent may include indicators such as agent load rate, agent scheduling cost, and agent availability.

[0197] After obtaining the queue of candidate agents, the agent scheduling module can send the queue of candidate agents to the agent execution module.

[0198] The agent execution module is used to schedule the corresponding candidate agents to perform response operations to the input content according to the order of the candidate agents in the candidate agent queue, through the adaptation scheduling interface provided by the protocol adaptation module. Specifically, the agent execution module can schedule the corresponding candidate agents to perform response operations to the input content based on the dialogue context of the input content provided by the session management module.

[0199] Meanwhile, the agent monitoring module can also monitor the execution process of candidate agents.

[0200] The protocol adaptation module can provide a preset adaptation scheduling interface, which defines a unified calling protocol between different agents and the server (also known as the agent execution module). By defining the adaptation scheduling interface (call protocol), protocol differences between different agents can be eliminated.

[0201] During the scheduling of candidate agents by the agent execution module, if the agent execution module receives response data for the input content from the first candidate agent in the queue, it transmits this response data to the output processing module. If the agent execution module does not receive response data from the first candidate agent in the queue within a preset time period, it schedules the second candidate agent in the queue through the adapted scheduling interface, until it obtains response data from at least one candidate agent and transmits the response data to the output processing module.

[0202] After receiving the response data, the output processing module can return the response data as output to the terminal through a unified interface. Alternatively, the output processing module can perform some post-processing on the response data, such as data format conversion and data integration, to obtain the output result, which can then be returned to the terminal through the unified interface.

[0203] It is understandable that the response data returned by the candidate agent to the agent execution module is structured data.

[0204] In addition to returning output results to the terminal, the output processing module can also transmit output results to the session management module. Furthermore, when the server's input processing module receives input content through the unified interface, it can also transmit the input content to the session management module.

[0205] The conversation management module records input content and corresponding output results, enabling context management of dialogue input and output. It can also perform data processing on the recorded dialogue context, such as converting storage formats, deleting duplicate content, and standardizing storage formats.

[0206] The server may also include a risk control module. This module performs risk detection on the input content and its corresponding output. Risk detection can be based on risk fields (for compliance checks of specific content) or data format (for format compliance checks). For example, if the risk control module detects a risk field in the input content, it can notify the input processing module. Upon receiving the risk notification, the input processing module can choose not to process that input content. Simultaneously, the input processing module can send a rejection notification to the output processing module, which then returns a rejection response to the terminal through a unified interface. Similarly, if the risk control module detects a risk field in the output result, it can notify the output processing module. Upon receiving the risk notification, the output processing module returns a rejection response to the terminal through the unified interface. The risk control module's configuration makes human-computer interaction more secure.

[0207] In addition, the server may include a feedback module. This module generates user preferences for using the agent based on feedback received from the terminal, thus providing data support when the agent scheduling module ranks candidate agent algorithms for agent scheduling.

[0208] The terminal may include at least one human-computer dialogue application. A human-computer dialogue application refers to an interactive application capable of engaging in dialogue, retrieval, and other AI-enabled functions with the user. The human-computer dialogue application includes a built-in large model and built-in business carriers. After receiving user input through the dialogue interface, the human-computer dialogue application performs intent recognition on the input based on its built-in large model, obtaining the intent recognition result. Based on the intent recognition result, the human-computer dialogue application can determine whether the task indicated by the input is a closed-loop task or a non-closed-loop task. If the task indicated by the input is a closed-loop task, the human-computer dialogue application executes a response operation to the input through its built-in business carrier, achieving closed-loop processing of the task indicated by the input. For example, closed-loop processing may include device control, privacy data processing, etc. If the task indicated by the input is a non-closed-loop task, the human-computer dialogue application sends a query request carrying the input to the server through a unified interface to obtain the output result returned by the intelligent agent corresponding to the input.

[0209] The above describes the specific functions and interactions of the various modules involved in the server and terminal. In this embodiment, the server provides a unified interface for the terminal, eliminating the need for the terminal to call interfaces of different types of large models and different types of intelligent agents to respond to user input in human-computer dialogue scenarios, thus eliminating protocol differences between large models. During the scheduling of intelligent agents, the server also uses a protocol adaptation interface to schedule different types of intelligent agents, eliminating protocol differences between intelligent agents. The unified interface between the terminal and the server, and between the server and the intelligent agents, reduces the difficulty for the terminal to respond to human-computer dialogue through the server. Furthermore, during the intelligent agent selection and scheduling process, the server performs affinity matching (user preferences / habits) and real-time tag calculation (actual intelligent agent operation) to make the scheduled candidate intelligent agents more accurate and provide a better user experience. The session management module in the server provides contextual reference for multi-turn input content in a scenario, enabling the server to respond to and process multi-turn input content in a scenario.

[0210] This paper introduces the agent scheduling method provided in the embodiments of this application, using specific scenario examples and the interactions between various modules. (Refer to...) Figure 11 , Figure 11 exist Figure 9 A diagram of the information processing flow has been added to the existing diagrams illustrating the interactions between the various modules.

[0211] refer to Figure 11 Agent scheduling methods include:

[0212] 1. The terminal's human-computer dialogue application receives user input.

[0213] For example, Figure 12 A schematic diagram of a human-computer dialogue interface for a mobile phone's smart assistant is provided. (Reference) Figure 12 The input content (input query) can be "I want to drink milk tea".

[0214] 2. The human-computer dialogue application uses the large model built into the application to perform intent recognition on the input content and obtain the intent recognition result.

[0215] For example, if the input is "I want to drink milk tea", the corresponding intent recognition result can include the domain "food" and the intent "drink milk tea".

[0216] 3. The human-computer dialogue application determines that the task indicated by the input content is a closed-loop task based on the intent recognition result. Alternatively, if the human-computer dialogue application cannot obtain the specific intent of the input content through the application's built-in large model, it will perform a response operation to the input content through the application's built-in business carrier and return the result.

[0217] In this embodiment, for example, if the user's input is "play music", the human-computer dialogue application performs intent recognition on the input based on the application's built-in large model, determining that the intent corresponding to the input is "play music" (intent_open_music). The human-computer dialogue application then executes the action—opening the music app and playing music—through the application's built-in business mechanism.

[0218] 4. Based on the intent recognition results, the human-computer dialogue application determines that the task indicated by the input content is a non-closed-loop task. The human-computer dialogue application sends a query request carrying the input content to the server through a unified interface.

[0219] In this embodiment, the human-computer dialogue application sends a query request containing "I want to drink milk tea" to the server through a unified interface. The unified interface is a pre-defined interface protocol provided by the server to the terminal / application, which is compatible with different large models and agents of all task types.

[0220] 5. The server's input processing module receives input content sent by the terminal through a unified interface.

[0221] In this embodiment, the input processing module receives the input "I want to drink milk tea" sent by the terminal through a unified interface.

[0222] The input processing module can also transmit the input content to the risk control module. The risk control module performs risk detection on the input content "I want to drink milk tea". If the input content is not risky, the input processing module inputs the input content into the large model for data processing. If the input content is risky, for example, containing risky fields that do not meet the requirements or data in a risky format that does not meet the requirements, the input processing module can ignore this query request. Alternatively, the input processing module can also return a rejection response to the terminal through a unified interface.

[0223] 6. The input processing module inputs the input content into the large model for data processing (e.g., intent recognition) and obtains the output data of the large model (e.g., intent recognition result functionCall).

[0224] The input processing module obtains two types of output data from the large model.

[0225] One type of output data includes plain text or rich text (markdown) for large models. In this case, the following is executed:

[0226] 7. The input processing module directly transmits the output data to the output processing module.

[0227] For example, if the input is "How's the weather today?", the output can be plain text. For instance, the output data could be plain text: "Today's weather in Nanjing is as follows: Temperature: Lowest temperature 25℃, ...".

[0228] Another type of output data includes: the output data of the large model contains regular plugins and intent processing plugins. For example, regular plugins may include weather plugins, search plugins, etc., while intent processing plugins include plugins affected by intents. For regular plugins, the input processing module can generate the output data of the regular plugins through multiple interactions with the large model, and then transfer the output data to the output processing module (execute 7).

[0229] If the plugin is an intent-processing plugin, execute:

[0230] 8. The input processing module transmits the intent recognition result, carrying the intent and slot, to the agent scheduling module.

[0231] Here, intent refers to the intent mentioned in the above embodiments, and slot refers to slot-value pairs.

[0232] 9. The agent scheduling module receives the output data transmitted by the input processing module, determines the candidate agents corresponding to the input content, and transmits the candidate agents to the agent execution module.

[0233] The process by which the agent scheduling module determines candidate agents corresponding to the input content may include agent recall, affinity matching, real-time label calculation, and algorithm ranking.

[0234] The agent scheduling module recalls agents by retrieving those whose task types match the domain and intent identified in the intent recognition results. For example, if the domain of the intent recognition result is "flight" and the intent is "book a flight," then the agent scheduling module can recall agents whose task types are related to the domain "flight," such as travel or tourism. For instance, the recalled agents might include travel agents, tourism agents, and lifestyle agents. Optionally, agents recalled by the agent scheduling module that match the intent recognition results can become candidate agents.

[0235] The agent scheduling module can retrieve one or more candidate agents. When multiple candidate agents are retrieved, the agent scheduling module can perform affinity matching and real-time label calculation on the multiple candidate agents, thereby sorting the multiple candidate agents by algorithm and obtaining a queue of multiple candidate agents.

[0236] Specifically, and exemplarily, affinity matching refers to the agent scheduling module determining user preferences and habits for each candidate agent based on user profile data. The user profile data can be historical data collected with the user's consent regarding their use of the candidate agent on the terminal. For example, historical data includes the number of times the candidate agent was used, user feedback (satisfaction or dissatisfaction), usage scenarios, etc. The server can send point configuration information for the candidate agent usage scenarios to the terminal to obtain point data on user usage of the candidate agent, and so on. In some feasible embodiments, the agent scheduling module can perform quantification processing on the candidate agents based on the user profile data to obtain a first quantified value representing the corresponding user preferences and habits of the candidate agent. The server can also perform cost accounting for scheduling agents in human-computer dialogue scenarios based on the point data.

[0237] Real-time tag calculation refers to the process by which the agent scheduling module, through interaction with the agent monitoring module, obtains actual data on candidate agents and calculates a real-time tag based on this data. This tag can then be used to characterize the actual operational status of the candidate agent. The actual data of the candidate agent can include its operational status (e.g., normal operation, abnormal operation), load rate, scheduling cost, etc. In some feasible embodiments, weights can be assigned to each piece of actual data, and a weighted sum of these data points can be calculated to obtain a second quantitative value characterizing the actual operational status of the candidate agent.

[0238] The agent scheduling module can also perform algorithm quantization on each candidate agent based on a preset quantization algorithm to obtain the algorithm quantization value of each agent. Based on the algorithm quantization value, the first quantization value, and the second quantization value, the quantization values ​​of multiple candidate agents are sorted from high to low to obtain a queue of multiple candidate agents.

[0239] The agent scheduling module can obtain the comprehensive quantization value of each agent based on the algorithm quantization value, the first quantization value, and the second quantization value of each agent, and sort the quantization values ​​of multiple candidate agents from high to low to obtain a queue of multiple candidate agents.

[0240] Furthermore, the agent scheduling module can obtain the operational quantization value from the scheduling strategy management module, and obtain the comprehensive quantization value of each agent based on the operational quantization value, algorithm quantization value, first quantization value and second quantization value. The quantization values ​​of multiple candidate agents are sorted from high to low to obtain a queue of multiple candidate agents.

[0241] In this embodiment, the agent scheduling module determines one or more food agents based on the input "I want to drink milk tea", and transmits the queue (agent_list) corresponding to the food agents to the agent execution module.

[0242] 10. The agent execution module transmits the candidate agents to be called to the protocol adaptation module according to the order of the candidate agents in the candidate agent queue and the priority from high to low based on the quantization value.

[0243] 11. The protocol adaptation module calls the corresponding candidate intelligent agents through the adapted protocol interface.

[0244] The protocol adaptation module can provide a preset adaptation scheduling interface, which defines a unified calling protocol between different agents and the server (also known as the agent execution module). By defining the adaptation scheduling interface (call protocol), protocol differences between different agents can be eliminated.

[0245] For example, the adaptation methods of the agreed-upon adaptation scheduling interface include standardized adaptation and customized adaptation. Standardized adaptation involves providing a Service Provider Interface (SPI). The service provider of the intelligent agent implements the service according to the SPI and completes service registration, thereby achieving standardized adaptation. This allows interaction with the protocol adaptation module through the adaptation scheduling interface. Customized adaptation is used in scenarios where the intelligent agent is not implemented according to the standard SPI and requires customized development. Based on the intelligent agent's Application Programming Interface (API), a defined interface format conversion logic is used to convert the intelligent agent's API into the standard SPI and complete service registration, thereby achieving customized adaptation. This allows interaction with the protocol adaptation module through the adaptation scheduling interface.

[0246] During the process of scheduling candidate agents by the agent execution module, if the agent execution module receives the response data for the input content returned by the first candidate agent in the candidate agent queue (highest quantization value, highest priority), the protocol adaptation module transmits the response data to the output agent execution module.

[0247] If the agent execution module does not receive the response data of the first candidate agent in the queue within a preset time period, the agent execution module will schedule the second candidate agent in the queue through the adapted scheduling interface until the agent execution module obtains the response data of at least one candidate agent and transmits the response data to the output processing module.

[0248] The agent monitoring module monitors the actual operation of each agent. For example, data characterizing the actual operation of an agent may include indicators such as agent load rate, agent scheduling cost, and agent availability.

[0249] 12. The protocol adaptation module obtains the output results (messages) returned by the candidate intelligent agent through the adaptation protocol interface.

[0250] In this embodiment, the output result can be "["Recommended milk tea shops for you", [Shop card 1, Shop card 2]]".

[0251] 13. The protocol adaptation module transmits the output (message) returned by the candidate agent to the agent execution module.

[0252] 14. The agent execution module transmits the output results (messages) returned by the candidate agents to the output processing module.

[0253] 15. The output processing module returns the output result (message) to the terminal through a unified interface.

[0254] The output processing module can also transmit the output result (message) to the session management module to record the input content and the corresponding output result (message), thereby realizing context management of dialogue input and output.

[0255] The terminal receives the output results and displays them on the human-computer dialogue interface.

[0256] For example, refer to Figure 12 (b) The terminal can display the output results in the dialog interface 1200. For example... Figure 12 As shown in (b), the output includes a text description formatted as "We recommend the following milk tea shops for you" (e.g., Figure 12 (b) text box 1202) and the store query results of the card plugin (such as Figure 12 (b) Store cards 1203 and 1204). Furthermore, the dialog interface 1200 may also include component 1205, which includes a notification message reminding the user to navigate to the relevant application. When the terminal receives an operation from the user on component 1205, it can navigate to the application from which the store card originated.

[0257] In addition, such as Figure 12As shown in (b), the dialogue interface 1200 may also include user input 1201 and a component 1206 for collecting user feedback on the output results. Component 1206 includes a component representing "satisfaction" and a component representing "dissatisfaction". After the mobile phone displays the output results in the dialogue interface 1200, if it receives an operation from the user on the "satisfaction" component, it indicates that the user is satisfied with the output results; if it receives an operation from the user on the "dissatisfaction" component, it indicates that the user is dissatisfied with the output results. The mobile phone can collect user operations on component 1207 after each output result to form user behavior data for the corresponding question (input content) / scenario / domain. User behavior data can express the user's preference for the processing results of the question and, to a certain extent, can also represent the user's preference for the intelligent agent of the output results.

[0258] The terminal can generate user data based on the user's feedback experience of using the intelligent agent and upload it to the feedback module of the server.

[0259] 16. The server's feedback module generates user profile data on the user's experience of using the intelligent agent based on the user feedback obtained from the terminal.

[0260] 17. The server's feedback module transmits user profile data to the agent scheduling module, providing data support for the agent scheduling module to rank candidate agent algorithms for agent scheduling.

[0261] 18. The server receives management and configuration operations for the intelligent agent triggered by the operation and maintenance personnel through the scheduling policy management module.

[0262] The management configuration operation allows for the configuration of the type, quantity, and scheduling priority of intelligent agents. The intelligent agents connected to the server should be risk-free and already deployed. Specifically, the task types and quantity of the intelligent agents connected to the server can be determined based on the actual scenario; this embodiment does not impose any limitations on this.

[0263] In this embodiment, operations and maintenance personnel can perform operational quantification on the intelligent agent based on the agent's system control information to obtain operational quantification values. This provides data support when the intelligent agent scheduling module performs quantification processing on the intelligent agent.

[0264] In this embodiment, the server provides a unified interface for the terminal. The terminal does not need to call interfaces of different types of large models or different types of intelligent agents to respond to user input in human-computer dialogue scenarios, eliminating protocol differences between large models. Similarly, the server schedules different types of intelligent agents through a protocol adaptation interface, eliminating protocol differences between agents. The unified interface between the terminal and the server, and between the server and the intelligent agents, reduces the difficulty for the terminal to respond to human-computer dialogue through the server. It also enables the server to interface with other external large models and various intelligent agents.

[0265] Furthermore, during the agent selection and scheduling process, the server performs affinity matching (user preferences / habits) and real-time tag calculation (actual agent operation status) to ensure more accurate scheduling of candidate agents and a better user experience. The agent scheduling configuration strategy represents the quantitative results of agent operation by maintenance personnel. The server combines these quantitative results to select agents, ensuring that the selected agents have high operational quantification values, fit the scenario requirements, and align with user preferences. This provides users with more accurate human-computer interaction results and improves the user experience. The session management module in the server provides contextual reference for multi-turn input content within a scenario, enabling the server to respond to multiple rounds of input within a single scenario. The session management module can automatically restore the context, significantly reducing the size of the interaction data between the server and the terminal. In addition, in this embodiment, the output data returned by the server to the terminal supports different formats such as plain text, structured data, and custom rendering components, enriching the human-computer dialogue interface and enabling diverse services provided by the interface. Furthermore, the server's feedback module can collect user profile data, making the output data more in line with users' personalized usage needs and improving users' human-computer interaction experience.

[0266] It should be noted that the personal information used in the technical solution of this application is limited to information for which individual consent has been obtained, including but not limited to notifying and reminding users to read the relevant user agreement (notification) and sign the agreement (authorization) which includes authorization of relevant user information before users use the function.

[0267] The technical solutions disclosed in this application involve the collection, storage, use, processing, transmission, provision, and disclosure of users' personal information, all of which comply with relevant laws and regulations and do not violate public order and good morals.

[0268] Figure 13A possible structural diagram of the server involved in the above embodiments is shown. Figure 13 The server 1300 shown includes a processing module 1301, a communication module 1302, and a storage module 1303.

[0269] The processing module 1301 may be a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The processor may include an application processor and a baseband processor. It may implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.

[0270] For example, the processing module 1301 can be as follows: Figure 7 The processor 1001 shown; the communication module 1302 can be as follows: Figure 7 The communication interface 1003 shown; the storage module 1303 can be as follows: Figure 7 The memory 1002 shown. The server 1300 provided in this embodiment of the application can be a Figure 7 The server shown is 1000.

[0271] This application also provides a chip system (e.g., a system-on-a-chip (SoC)). Figure 14 As shown, the chip system includes at least one processor 1401 and at least one interface circuit 1402. The processor 1401 and the interface circuit 1402 are interconnected via lines. For example, the interface circuit 1402 can be used to receive signals from other devices (e.g., the memory of a server). As another example, the interface circuit 1402 can be used to send signals to other devices (e.g., the processor 1401). Exemplarily, the interface circuit 1402 can read instructions stored in memory and send those instructions to the processor 1401. When the instructions are executed by the processor 1401, the server can perform the steps in the above embodiments. Of course, the chip system may also include other discrete devices, and this application embodiment does not specifically limit this.

[0272] This application also provides a computer-readable storage medium including computer instructions that, when executed on the aforementioned server, cause the server to perform various functions or steps performed by server 1000 in the above method embodiments.

[0273] This application also provides a computer program product that, when run on a computer, causes the computer to perform the various functions or steps executed by the server 1000 in the above method embodiments. For example, the computer may be the server 1000 described above.

[0274] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0275] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0276] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0277] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0278] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, essentially or in other words, the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0279] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for scheduling intelligent agents, characterized in that, The system is applied to a server, which has a preset unified interface and a preset adaptive scheduling interface. The preset unified interface is used for communication between the server and multiple terminals, and its interface protocol is adapted to agents of different large models and task types. The preset adaptive scheduling interface is used for communication between the server and multiple agents. This interface includes a standardized service provider interface (SPI), and / or provides agreed-upon interface format conversion logic. This logic provides the agent with execution logic to convert its application programming interface (API) into the SPI. The SPI is used to provide service registration functionality to the agent. The server is deployed with a large language model; the terminal includes a human-computer dialogue application. The method includes: The server receives the query request sent by the terminal through the preset unified interface; the query request carries the user's input content obtained by the terminal in the human-computer dialogue application; The server inputs the input content into the large language model for intent recognition and obtains the intent recognition result corresponding to the input content; the intent recognition result is used to characterize the intent corresponding to the input content. After the agent registers a service through the standardized and adapted Service Provider Interface (SPI), or through the Service Provider Interface (SPI) obtained by converting the Application Programming Interface (API) based on the agreed interface format conversion logic, the server, based on the intent recognition result, calls the corresponding agent to perform an operation in response to the intent recognition result through the Service Provider Interface (SPI), and obtains the output result returned by the corresponding agent through the Service Provider Interface (SPI). The server sends the output results to the terminal through the preset unified interface.

2. The method according to claim 1, characterized in that, Based on the intent recognition result, the server invokes the corresponding agent through the Service Provider Interface (SPI) to perform an operation in response to the intent recognition result, and obtains the output result returned by the corresponding agent through the Service Provider Interface (SPI), including: Based on the intent recognition result, the server determines at least one candidate agent from the plurality of agents that matches the intent recognition result; The server invokes the at least one candidate agent to perform an operation in response to the intent recognition result through the Service Provided Interface (SPI). The server obtains the output results returned by the at least one candidate agent through the Service Provider Interface (SPI).

3. The method according to claim 2, characterized in that, The intent recognition result includes the intent of the input content. When there are multiple candidate agents, the server determines at least one candidate agent that matches the intent recognition result from among the multiple agents, including: The server recalls the candidate agents that match the intent from the plurality of agents; The method further includes: The server performs quantization processing on each candidate agent from the first dimension and the second dimension to obtain the quantized value of each candidate agent; Wherein, the first dimension is used to characterize the user's preference for the candidate agent; the second dimension is used to characterize the actual operation of the candidate agent. The server, through the preset adaptation scheduling interface, invokes at least one candidate agent to perform an operation in response to the intent recognition result, including: The server, according to the candidate agents' quantization values ​​from high to low, uses the preset adaptation scheduling interface to prioritize scheduling the candidate agent with the highest quantization value to perform the operation in response to the intent recognition result. If the server does not receive an output result from a candidate agent within a preset time period, the server schedules the next candidate agent to perform an operation in response to the intent recognition result, according to the quantization value of the candidate agent from high to low, until an output result is obtained from a candidate agent.

4. The method according to claim 2, characterized in that, The method further includes: The server obtains the agent scheduling configuration strategy; the agent scheduling configuration strategy includes relevant configurations for the number and type of agents. The server determines at least one candidate agent that matches the intent recognition result from the plurality of agents, including: The server determines at least one candidate agent that matches the intent recognition result from the plurality of agents based on the agent scheduling configuration strategy and the intent recognition result.

5. The method according to any one of claims 1-4, characterized in that, Based on the intent recognition result, the server invokes the corresponding agent through the Service Provider Interface (SPI) to perform an operation in response to the intent recognition result, and obtains the output result returned by the corresponding agent through the Service Provider Interface (SPI), including: When the server determines that the data type of the output result corresponding to the input content is non-text data based on the intent recognition result, the server calls the corresponding agent to perform the operation in response to the intent recognition result through the Service Provider Interface (SPI), and obtains the output result returned by the corresponding agent through the Service Provider Interface (SPI). The text data includes plain text data or rich text data.

6. The method according to claim 5, characterized in that, The server, based on the intent recognition result, invokes the corresponding agent to perform an operation in response to the intent recognition result via the Service Provider Interface (SPI), and obtains the output result returned by the corresponding agent via the SPI, further including: When the server determines that the data type of the output result corresponding to the input content is text data based on the intent recognition result, the server sends the output result corresponding to the input content to the terminal through the preset unified interface; The text data includes plain text data or rich text data.

7. The method according to any one of claims 1-4, characterized in that, The method further includes: After obtaining the output result corresponding to the input content, the server records the input content and the output result in a designated storage space to form the context information of this round of dialogue. The context information is used during the process of the large language model performing intent recognition on the input content, and the context information is also used during the process of the candidate agent performing an operation in response to the intent recognition result.

8. The method according to any one of claims 1-4, characterized in that, Before the server inputs the input content into the large language model for intent recognition, the method further includes: The server performs risk detection on the input content and determines that the input content is safe content; the safe content is content that does not contain preset risk fields and conforms to preset data formats.

9. The method according to any one of claims 1-4, characterized in that, Before the server sends the output result to the terminal through the preset unified interface, the method further includes: The server performs risk detection on the output results and determines that the output results are safe content; the safe content is content that does not contain risky fields and conforms to the data format.

10. The method according to any one of claims 1-4, characterized in that, The method further includes: The server receives user profile data sent by the terminal; the user profile data is used to provide a data source for the intelligent agent to perform a first-dimensional quantification process, and the first dimension is used to characterize the user's preference for the intelligent agent.

11. The method according to any one of claims 1-4, characterized in that, The output is structured data, which includes one or more of text, images, cards, and controls.

12. An intelligent agent scheduling system, characterized in that, The intelligent agent scheduling system includes a server, a terminal, and multiple intelligent agents. The server has a preset unified interface and a preset adaptive scheduling interface. The interface protocol of the preset unified interface is adapted to intelligent agents with different large models and task types. The preset adaptive scheduling interface includes a standardized adaptive Service Provider Interface (SPI) and / or provides agreed-upon interface format conversion logic. The agreed-upon interface format conversion logic is used to provide the intelligent agent with execution logic to convert the intelligent agent's Application Programming Interface (API) into the Service Provider Interface (SPI). The Service Provider Interface (SPI) is used to provide the intelligent agent with a service registration function. The server deploys the first major language model; the terminal is a terminal that includes a human-computer dialogue application. The terminal is used to receive input content from the user in the human-computer dialogue application; The terminal is used to send a query request carrying the input content to the server through the preset unified interface; The server is configured to receive the query request through the preset unified interface, input the input content into the large language model for intent recognition, and obtain the intent recognition result corresponding to the input content; The intent recognition result is used to characterize the intent corresponding to the input content; The intelligent agent is used to register services through the Service Provider Interface (SPI) and to interact with the server through the Service Provider Interface (SPI). The server is configured to, based on the intent recognition result, invoke the corresponding agent to perform an operation in response to the intent recognition result via the Service Provider Interface (SPI), and obtain the output result returned by the corresponding agent via the Service Provider Interface (SPI). The server is used to send the output results to the terminal through the preset unified interface; The output is structured data, which includes one or more of the following: text, images, cards, and controls. The terminal is used to receive the output results through the preset unified interface and display the output results in the interface of the human-computer dialogue application.

13. The system according to claim 12, characterized in that, The terminal deploys a second major language model and has a built-in service carrier. The terminal is specifically used to receive the input content, input the input content into the second language model, and obtain the output result of the input content; If the output result indicates that the task corresponding to the input content is a non-closed-loop task, the terminal is used to send a query request carrying the input content to the server through the preset unified interface. If the output indicates that the task corresponding to the input content is a closed-loop task, the terminal is used to call the service carrier to perform an operation in response to the output.

14. The system according to claim 12, characterized in that, The terminal is also used to acquire user profile data of the user acting on the human-computer dialogue application; The terminal is also used to send the user profile data to the server; the user profile data provides a data source for the server to perform a first-dimensional quantification of the agent, and the first dimension is used to characterize the user's preference for the agent.

15. A server, comprising a communication interface, a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method according to any one of claims 1-11.

16. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method described in any one of claims 1-11.

17. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method described in any one of claims 1-11.

Citation Information

Patent Citations

  • CN117573834A

  • CN118132227A