Application management method and related device

By leveraging the pluggable configuration mechanism of the application management platform, the strategy configuration can be dynamically adjusted, solving the problem of insufficient flexibility of large language models in diverse user needs and complex business environments, and achieving efficient customized requirement management and improved development efficiency.

WO2026066047A1PCT designated stage Publication Date: 2026-04-02HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-04-18
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

Existing large language models exhibit insufficient flexibility and poor adaptability when faced with diverse user needs and complex business environments, making it difficult to efficiently configure and manage strategies, leading to a combinatorial explosion of customized requirements.

Method used

By leveraging the pluggable configuration mechanism of the application management platform, prompts, prompt templates, truncation strategies, generation models, knowledge bases, retrieval strategies, tools, risk control strategies, etc., can be dynamically selected and adjusted, enabling flexible strategy configuration. This supports diverse business needs and programming languages, avoiding the lack of flexibility caused by fixed configurations.

Benefits of technology

It effectively manages and optimizes different business requirements, programming languages, and IDE types, quickly adjusts routing strategies, and achieves efficient customization, thereby improving the flexibility and adaptability of intelligent agent applications, saving time and costs, and increasing development efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025089914_02042026_PF_FP_ABST
    Figure CN2025089914_02042026_PF_FP_ABST
Patent Text Reader

Abstract

An application management method, which is executed by means of an application management platform, wherein the application management platform comprises an interaction apparatus, an agent extension apparatus, and a service agent for at least one service. The method comprises: an interaction apparatus acquiring a query input by a user, acquiring an agent identifier and conditions, and collecting the context of the query; an agent expansion apparatus determining, on the basis of the agent identifier and the conditions, policy configuration information of a target agent corresponding to the agent identifier; and the target agent expanding the context of the query on the basis of the policy configuration information, assembling the context and the expanded context on the basis of the policy configuration information to obtain a prompt, and inputting the prompt into a generative model for inference, so as to obtain an answer. In the method, policy configurations are dynamically selected and adjusted by means of a pluggable configuration mechanism, such that the problem of insufficient flexibility caused by fixed configurations is avoided, and a large number of policy combinations generated under different conditions are effectively managed and optimized. Moreover, a routing policy can be rapidly adjusted on the basis of customized requirements, thereby effectively coping with the problem of combinatorial explosion.
Need to check novelty before this filing date? Find Prior Art

Description

An application management method and related device

[0001] The present application claims priority to the Chinese Patent Application No. 202411389760.6, filed on September 30, 2024, and entitled "An application management method and related device", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the field of artificial intelligence (AI), and in particular to an application management method, an application management platform, a computing device cluster, a computer readable storage medium, and a computer program product. BACKGROUND

[0003] With the continuous development of artificial intelligence (AI) technology, especially the continuous development in the direction of natural language processing (NLP), language models (LM) are widely used in many scenarios. For example, LM can be applied to machine translation, text generation, and other scenarios.

[0004] In recent years, with the emergence of pre-trained transformer architectures, such as Bidirectional Encoder Representations from Transformers (BERT) and Generative Pre-trained Transformer (GPT), large language models (LLM) have made significant progress. As the parameter size of LLM expands to the level of hundreds of billions or more, and begins to show early signs of artificial general intelligence, LLM can also be applied to fields other than text processing. For example, in the development of applications, LLM can generate code to assist developers in application development.

[0005] An LLM can generate an answer for a query input by a user. At present, the acceptance rate of the answer of many LLMs is low. Taking the example of the application of an LLM to code generation, although the LLM has shown great potential in the field of code generation, the code acceptance rate in actual projects still faces many challenges. For this reason, the industry introduces agents, which enhance the capabilities of the LLM through techniques such as supervised fine-tuning (SFT), retrieval-augmented generation (RAG), everything of thoughts (XoT), iteration optimization, context engineering, or tool invocation, to meet customized needs and improve the acceptance rate of answers.

[0006] However, when facing diversified user needs and complex business environments, the above solutions often show insufficient flexibility and poor adaptability. SUMMARY

[0007] The present application provides an application management method. Through a pluggable configuration mechanism, the method dynamically selects and adjusts prompt, prompt template, truncation strategy, language model, knowledge base, retrieval strategy, recall strategy, tool, risk control strategy, role type and other strategy configurations, avoiding the problem of insufficient flexibility caused by fixed configuration, and effectively managing and optimizing different business needs, programming languages, IDE types and organization / department, etc. to generate a large number of strategy combinations. The present application also provides an application management platform, a computing device cluster, a computer readable storage medium and a computer program product corresponding to the above method.

[0008] In a first aspect, the present application provides an application management method. The method is executed by an application management platform. The application management platform can be a software system, which can be a standalone software system or a software system integrated with other software. The software system can be provided to customers in the form of a software package for customers to deploy themselves, or provided to users in the form of a cloud service for users to subscribe to the cloud service to use corresponding capabilities or functions. The above-mentioned software system can be deployed in a computing device cluster, and the computing device cluster executes the program code of the software system, thereby executing the application management method of the present application. In some examples, the application management platform can also be a hardware system, such as a computing device cluster with application management capabilities. The computing device cluster runs and executes the application management method of the present application.

[0009] The application management platform includes an interaction device, an agent extension device (also referred to as a policy center), and a business agent of at least one business. In a specific implementation, the interaction device acquires a query input by a user, and acquires an agent identifier and a condition. The condition includes at least one of a task type, developer affiliation information, a programming language, a programming framework, or a type of the interaction device. The developer affiliation information can be an organization or a department to which a developer belongs. The developer can be a developer who develops an application using the application management platform. The interaction device can also collect a context of the query. Then, the agent extension device determines policy configuration information of a target agent according to the agent identifier and the condition. The target agent is an agent corresponding to the agent identifier in the business agent of at least one business. The policy configuration information includes at least one of prompt auxiliary information, a truncation policy, a model identifier of a generated model, a knowledge base identifier, a retrieval policy, a recall policy, a tool identifier, a risk control policy, or a role type. The generated model can be a single-modal language model or a multi-modal model. The input of the multi-modal model can include multiple types, such as any one or any combination of text, image, audio, or video. Similarly, the output of the multi-modal model can also include multiple types, such as any one or any combination of text, image, audio, or video. The prompt auxiliary information is used to assist in generating a prompt of the generated model. The target agent extends the context of the query according to the policy configuration information, and the extended context includes at least one of a knowledge base retrieval result or a tool invocation result. The target agent can assemble the context and the extended context to obtain a prompt according to the policy configuration information. The target agent inputs the prompt into the generated model for reasoning to obtain an answer.

[0010] In the face of diversified customization requirements, the method dynamically selects and adjusts the prompt, the prompt template, the truncation policy, the generated model (such as a language model or a multi-modal model), the knowledge base, the retrieval policy, the recall policy, the tool, the risk control policy, the role type, and the like through a pluggable configuration mechanism, avoids the problem of insufficient flexibility caused by fixed configuration, and effectively manages and optimizes a large number of strategy combinations generated by different business requirements, programming languages, types of interaction devices, and organizations / departments. The method allows quick adjustment of routing strategies according to customization requirements, thereby effectively addressing the combinatorial explosion problem. Based on the above scheme, an agent-based application runtime can be implemented, and business customization requirements can be implemented only by modifying policy configuration information (extension policy) without modifying business code.

[0011] In some possible implementation manners, the agent extension device can determine the policy configuration information of the target agent through a routing strategy according to the agent identifier and the condition. The method relies on the routing manner of the agent extension device, and can achieve flexible configuration of the prompt, the knowledge, the tool, the model, and the like of the agent.

[0012] In some possible implementation manners, the application management platform can configure metadata of the business agent of the at least one business, the metadata including a routing strategy of the business agent, the routing strategy including a strategy identifier, routing input information, and routing output information, the routing input information being generated according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device, and the routing output information including at least one of a model identifier, a prompt identifier, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, or an instance identifier.

[0013] In this way, when developing an agent or an agent-based application, the prompt, the knowledge, the tool, the model, and the like can be customized and configured, so that the agent or the agent-based application can fully play the optimization capability of the customized knowledge base and the customized tool invocation during running.

[0014] In some possible implementation manners, the application management platform can receive, by the agent configuration interface, at least one of an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device of the business agent of the at least one business and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, or an instance identifier configured by a user. Then the application management platform can generate a routing strategy according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device of the business agent of the at least one business and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier, or an instance identifier.

[0015] The method supports generating a routing strategy based on user-configured metadata, so that the agent or the agent-based application can be flexibly configured by the routing strategy during running, to meet diversified user demands or complex business environments.

[0016] In some possible implementation manners, the application management platform can further receive at least one of a business vocabulary, a retrieval strategy, a truncation strategy, a recall strategy, or a risk control strategy configured by a user, and accordingly, the metadata further includes at least one of the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy, or the risk control strategy.

[0017] The method supports configuring rich metadata during agent development or agent-based application development, so that the agent or the agent-based application can be flexibly and efficiently configured by the routing strategy during running, to meet diversified user demands and complex business scenarios.

[0018] In some possible implementation manners, the prompt auxiliary information comprises any one or more of a prompt identifier, a prompt template, or a parameter name in the prompt. In the method, the application management platform provides multiple ways to generate the prompt, and has high availability.

[0019] In some possible implementation manners, the prompt auxiliary information comprises a parameter name in the prompt. The application management platform further comprises a front-end extension device, and the policy configuration information further comprises at least one of an extension identifier or an instance identifier of the front-end extension device. Accordingly, the interaction device receives at least one of the extension identifier or the instance identifier and the parameter name sent by the agent extension device, and sends the at least one of the extension identifier or the instance identifier and the parameter name to the front-end extension device. Then the interaction device receives a parameter value corresponding to the parameter name returned by the front-end extension device. The context of the query comprises the parameter value. In this way, the context collected by the front-end extension device can be used to assemble the prompt, and the acceptance rate of the answer generated by the generation model can be improved by combining the prompt assembled based on the context collected by the front-end extension device.

[0020] In some possible implementation manners, the front-end extension device processes the answer to obtain a processed answer. When the answer is processed, post-processing such as coding specification problem repair, compilation problem repair, runtime problem repair, and format repair can be performed, and then the interaction device displays the processed answer to the user. In this way, the acceptance rate of the answer can be further improved.

[0021] In some possible implementation manners, the prompt auxiliary information comprises a prompt identifier. The target agent can obtain a prompt template from the prompt word center according to the prompt identifier in the policy configuration information, and then the target agent can fill the prompt template according to the context and the extended context to obtain the prompt. This method supports obtaining a prompt template matching the query from the prompt word center, and assembling the prompt based on the prompt template, which can improve the quality of the prompt and further improve the acceptance rate of the answer.

[0022] In a second aspect, the present application provides an application management platform. The application management platform comprises an interaction device, an agent extension device, and a business agent of at least one business;

[0023] The interaction device is configured to obtain a query input by a user, and obtain an agent identifier and a condition, the condition comprising at least one of a task type, developer attribution information, a programming language, a programming framework, or a type of the interaction device.

[0024] The interaction device is further configured to collect a context of the query.

[0025] The intelligent agent extension device is configured to determine policy configuration information of a target intelligent agent according to the intelligent agent identifier and the condition, the target intelligent agent being an intelligent agent corresponding to the intelligent agent identifier in the business intelligent agent of the at least one service, and the policy configuration information including at least one of prompt auxiliary information, a truncation policy, a model identifier of a generated model, a knowledge base identifier, a retrieval policy, a recall policy, a tool identifier, a risk control policy, or a role type, the prompt auxiliary information being used to assist in generating a prompt of the generated model.

[0026] The target intelligent agent is configured to extend a context of the query according to the policy configuration information, the extended context including at least one of a knowledge base retrieval result or a tool invocation result; assemble the context and the extended context to obtain the prompt according to the policy configuration information; and input the prompt into a generated model for reasoning to obtain an answer.

[0027] In some possible implementation manners, the intelligent agent extension device is specifically configured to:

[0028] The policy configuration information of the target intelligent agent is determined through a routing policy according to the intelligent agent identifier and the condition.

[0029] In some possible implementation manners, the platform further includes:

[0030] An intelligent agent development device is configured to configure metadata of the business intelligent agent of the at least one service, the metadata including a routing policy of the business intelligent agent, the routing policy including a policy identifier, routing input information, and routing output information, the routing input information being generated according to at least one of an application identifier, an intelligent agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interaction device, and the routing output information including at least one of a model identifier, a prompt identifier, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, and an instance identifier.

[0031] In some possible implementation manners, the intelligent agent development device is specifically configured to:

[0032] The intelligent agent development device is configured to receive at least one of the intelligent agent identifier, the task type, the developer attribution information, the programming language, the programming framework, or the type of the interaction device of the business intelligent agent of the at least one service configured by the user through an intelligent agent configuration interface, and at least one of the model identifier, the prompt auxiliary information, the knowledge base identifier, the tool identifier, the extension identifier of the front-end extension device, and the instance identifier.

[0033] The routing strategy is generated according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework or a type of an interaction device of a business agent of the at least one business and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier or an instance identifier.

[0034] In some possible implementation manners, the agent development device is further configured to:

[0035] The metadata further includes at least one of the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy or the risk control strategy configured by the user.

[0036] In some possible implementation manners, the prompt auxiliary information includes any one or more of a prompt identifier, a prompt template or a parameter name in the prompt.

[0037] In some possible implementation manners, the prompt auxiliary information includes the parameter name in the prompt, and the application management platform further includes a front-end extension device, and the policy configuration information further includes at least one of an extension identifier or an instance identifier of the front-end extension device.

[0038] The interaction device is further configured to receive at least one of the extension identifier or the instance identifier and the parameter name sent by the agent extension device, send at least one of the extension identifier or the instance identifier and the parameter name to the front-end extension device, and receive a parameter value corresponding to the parameter name returned by the front-end extension device.

[0039] The context of the query includes the parameter value.

[0040] In some possible implementation manners, the front-end extension device is further configured to:

[0041] The answer is processed to obtain a processed answer.

[0042] The interaction device is further configured to:

[0043] The processed answer is displayed to the user.

[0044] In some possible implementation manners, the prompt auxiliary information includes a prompt identifier.

[0045] The target agent is specifically configured to:

[0046] A prompt template is obtained from a prompt word center according to the prompt identifier in the policy configuration information.

[0047] filling the prompt template according to the context and the extended context, to obtain the prompt.

[0048] In a third aspect, the present application provides a computing device cluster. The computing device cluster comprises at least one computing device, and the at least one computing device comprises at least one processor and at least one memory. The at least one processor and the at least one memory are in communication with each other. The at least one processor is configured to execute instructions stored in the at least one memory, so that the computing device or the computing device cluster performs the application management method according to the first aspect or any implementation manner of the first aspect.

[0049] In a fourth aspect, the present application provides a computer readable storage medium, and the computer readable storage medium stores instructions. The instructions instruct the computing device or the computing device cluster to perform the application management method according to the first aspect or any implementation manner of the first aspect.

[0050] In a fifth aspect, the present application provides a computer program product comprising instructions, which, when executed on a computing device or a computing device cluster, cause the computing device or the computing device cluster to perform the application management method according to the first aspect or any implementation manner of the first aspect.

[0051] On the basis of the implementation manners of the above aspects, the present application can be further combined to provide more implementation manners. BRIEF DESCRIPTION OF DRAWINGS

[0052] In order to more clearly illustrate the technical method of the present application, the required drawings will be briefly introduced as follows.

[0053] Fig. 1 is a schematic diagram of a combination of customized needs provided by the present application;

[0054] Fig. 2 is a schematic diagram of an architecture of an application management platform provided by the present application;

[0055] Fig. 3 is a flowchart of an application management method provided by the present application;

[0056] Fig. 4 is a flowchart of a metadata configuration method of a business intelligent agent provided by the present application;

[0057] Fig. 5 is a schematic diagram of an intelligent agent configuration interface provided by the present application;

[0058] Fig. 6 is a schematic diagram of the structure of a computing device provided by the present application;

[0059] Fig. 7 is a schematic diagram of the structure of a computing device cluster provided by the present application;

[0060] Fig. 8 is a schematic diagram of another computing device cluster provided by the present application;

[0061] FIG. 9 is a structural diagram of another computing device cluster provided by the present application. DETAILED DESCRIPTION

[0062] The terms “first”, “second” in the embodiments of the present application are only for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the technical features indicated. Therefore, the features defined with “first”, “second” can explicitly or implicitly include one or more of the features.

[0063] First, some technical terms involved in the embodiments of the present application are introduced.

[0064] Artificial intelligence (AI) is the ability to correctly interpret external data, learn knowledge from the external data, and achieve specific goals and tasks using the learned knowledge. The research of artificial intelligence evolves from focusing on “reasoning”, to focusing on “knowledge”, and then to focusing on “learning”. Currently, an important branch of artificial intelligence is machine learning (ML). Machine learning is a class of algorithms that automatically analyze rules from data and use the rules to predict unknown data.

[0065] Natural language processing (NLP) is a branch of artificial intelligence and linguistics, mainly including natural language cognition, understanding, and generation. Among them, natural language processing can be implemented through a language model (LM). The language model can also be divided into a small language model and a large language model (LLM) according to the parameter scale. Among them, the small language model can also be referred to as a small model, and the large language model can also be referred to as a large model. For ease of description, the present application is illustrated by taking the LLM as an example. The LLM is a language model constructed by a deep neural network containing more than one hundred billion weights, which can be trained by a large amount of unmarked text using a self-supervised learning method.

[0066] In recent years, LLMs have made significant progress with the advent of pre-trained Transformer architectures. As the parameter size of LLMs expands to hundreds of billions and begins to exhibit early signs of artificial general intelligence, the applications of LLMs have rapidly expanded beyond text processing to fields such as software development and testing, image generation, and video generation. Taking the example of software development and testing, the software engineering community has applied code generation large models to a variety of downstream tasks to assist in software development and testing. Some software tools have also integrated a variety of downstream tasks, covering application scenarios such as clone detection, defect detection, code understanding, code repair, code translation, program synthesis, and code summarization. These advancements not only demonstrate the powerful capabilities of LLMs in code processing but also reveal the tremendous potential of LLMs in promoting software engineering automation and improving development efficiency.

[0067] Despite the tremendous potential of large language models in code generation, their acceptance rate in real-world projects still faces many challenges. The acceptance rate (or code acceptance rate) of many LLM-based intelligent programming assistants is less than half, and some intelligent programming assistants have a code acceptance rate of about 30%. In other words, about 70% of code generation suggestions are not adopted.

[0068] The inventors have found that LLM-based intelligent programming assistants are mainly applied to specific scenarios, and their adaptability and flexibility need to be improved for complex projects and variable requirements. To enable LLM-based applications such as intelligent programming assistants to meet customized needs, the industry has proposed solutions such as supervised fine-tuning (SFT), retrieval-augmented generation (RAG), problem decomposition (XoT), iteration optimization, context engineering, and tool invocation.

[0069] Among them, SFT fine-tunes the pre-trained model using vertical domain data to improve the model's performance in a specific domain. RAG enhances the generation effect by customizing the knowledge base and introducing reference code in the generation process. XoT improves the accuracy and interpretability of generated code by breaking down complex problems into multiple easily solvable sub-problems through Chain of Thought (CoT), Tree of Thought (ToT), or Graph of Thought (GoT). It provides a structured thinking process that helps improve the logicality and coherence of code generation. Iterative optimization techniques improve code quality through multiple rounds of dialog-based generation and continuous improvement of generated results. Context engineering techniques enhance the relevance and accuracy of code generation by enhancing the context information required in the generation process. Tool invocation techniques enhance the processing capacity of complex tasks by interfacing with real-time business systems.

[0070] In the face of complex projects and changing user needs, related technologies also introduce agents. An agent is a general problem solver. From the perspective of software engineering, an agent can be a computer program based on a large language model that has the ability to plan, remember, and use tools to complete a given task. The planning ability can be to break down large tasks into sub-tasks, such as breaking down large tasks into sub-tasks through XoT and planning the execution process of the task. The thinking ability can be to think and reflect on the process of task execution, thereby deciding to continue executing the task or judging the completion of the task and terminating the operation. The memory ability can include short-term memory or long-term memory. Short-term memory can refer to the context generated and temporarily stored during the execution of the task, which is cleared after the task is completed. Long-term memory can be long-term information, such as an external knowledge base, which can usually be stored and retrieved using a vector database. The ability to use tools refers to the agent being configured with tool application programming interfaces (APIs), such as calculators, search tools, code executors, and database query tools. In general, an agent can serve as the backend of a business system, working with the front-end interaction device to achieve the functions of the business system.

[0071] For different businesses, it is usually necessary to develop corresponding business Agents respectively. For example, in the whole life cycle of application development, business Agents can include Code Agent and Test Agent. Among them, Code Agent can be used for code continuation / code incompleteness, unit test (UT) generation, code checking / repair, code interpretation / comment, code submission, Test Agent is used to assist test design, test case checking, test script generation, test execution and evaluation.

[0072] In the process of applying large language models to business Agents, the strategy configuration that meets the customization needs is a key technical challenge. Related technologies often show insufficient flexibility and poor adaptability when facing diverse user needs and complex business environments. Specifically, the diversity of different business Agents, programming languages, integrated development environments (IDE) types, and organizations / departments leads to the combinatorial explosion problem of customization needs.

[0073] Referring to a combination of customized requirements shown in FIG. 1, a business agent can include a requirement agent (ReqAgent), a design agent (DesignAgent), a CodeAgent, a chat agent (ChatAgent), a check agent (CheckAgent), a merge request agent (MRAgent), a TestAgent, a BuildAgent, a PipelineAgent, a CloudAgent, or other agents (denoted as XxxAgent), a programming language can include Java, JavaScript / TypeScript (abbreviated as JS / TS), Python, C / CPP, Go, Structured Query Language (SQL), an IDE type can include an IDE for different programming languages or different types of IDEs developed by different manufacturers, an organization / department can include a plurality of first-level departments or second-level departments, etc. Thus, a large number of combinations of customized requirements are generated. Developers need to configure prompt words, truncation strategies, large models, knowledge bases, retrieval / recall strategies, tool sets, and glossaries (such as risk control glossaries / personal glossaries / business glossaries) for a large number of combinations of customized requirements, which is difficult to achieve efficient and flexible strategy configuration and management. Among them, the risk control glossary includes preset words for risk control, the personal glossary includes preset words for the role of the language model, for example, when developing an application, the language model can act as a product manager, an architect, a developer, a tester, an operator, etc., or a Java development expert, a cloud service operation and maintenance expert, and the personal glossary can include the above role names. The business glossary includes preset words for business. Related technologies are difficult to efficiently and flexibly configure and manage strategies for the above combinations of customized requirements.

[0074] Therefore, the present application provides an application management method. The method can be performed by an application management platform. The application management platform can be a software system, which can be a standalone software system or a software system integrated into other software. The software system can be provided to customers in the form of a software package for self-deployment or in the form of a cloud service for users to subscribe to the cloud service to use corresponding capabilities or functions. The software system can be deployed in a computing device cluster, and the computing device cluster executes the program code of the software system to perform the application management method of the present application.

[0075] The application management platform can include an interactive device, an agent extension device, and a business agent of at least one business. The interactive device can be a device that implements human-computer interaction. For example, the interactive device can be an IDE or a browser. The browser can have an interaction module related to the business built-in, or the browser can implement human-computer interaction of the business by installing a plug-in. The agent extension device is used to determine an extension strategy of the business agent to meet diversified customization needs. The agent extension device can be a separate device, or an extension or plug-in of the business agent. The business agent can include a business agent of at least one business involved in a software development life cycle. For example, the business agent can include any one of or any combination of a ReqAgent, a DesignAgent, a CodeAgent, a ChatAgent, a CheckAgent, an MRAgent, a TestAgent, a BuildAgent, a PipelineAgent, and a CloudAgent.

[0076] The interactive device can obtain a query input by a user, and obtain an agent identifier (ID) and a condition (or referred to as a feature profile). The condition can include at least one of a task type, developer attribution information, a programming language, a programming framework, or a type of the interactive device. The interactive device collects a context of the query. The context of the query can be a context within a project, including a context within a file or a cross-file context within the project. The agent extension device determines strategy configuration information of a target agent according to the agent identifier and the condition. The target agent is an agent corresponding to the agent identifier in the business agent of at least one business. The strategy configuration information includes at least one of prompt assistance information, a truncation strategy, a model identifier of a generated model, a knowledge base identifier, a retrieval strategy, a recall strategy, a tool identifier, a risk control strategy, or a role type. The prompt assistance information is used to assist in generating a prompt of the generated model. For example, the prompt assistance information can include any one or more of a prompt identifier, a prompt template, or a parameter name in a prompt. The role type is used to indicate a person or a role of a language model, such as a product manager or an architect. The target agent can extend the context of the query according to the strategy configuration information. The extended context includes at least one of a knowledge base retrieval result (or referred to as a retrieval result) or a tool invocation result. The target agent assembles the context and the extended context to obtain a prompt according to the strategy configuration information. The target agent inputs the prompt into a generated model for reasoning to obtain an answer.

[0077] In the face of diversified customization requirements, the method dynamically selects and adjusts the prompts, prompt templates, truncation strategies, generation models, knowledge bases, retrieval strategies, recall strategies, tools, risk control strategies, role types, etc. through a pluggable configuration mechanism, avoiding the problem of insufficient flexibility caused by fixed configuration, and effectively managing and optimizing a large number of strategy combinations generated by different business requirements, programming languages, IDE types, and organizations / departments. The method allows quick adjustment of routing strategies according to customization requirements, thereby effectively addressing the combinatorial explosion problem. The application management method provided in the present application saves time cost and improves overall development efficiency and online progress for teams to collaborate in response to massive customization requirements.

[0078] In order to make the technical solutions of the present application clearer and easier to understand, the system architecture of the application management platform provided in the present application is introduced below with reference to the accompanying drawings.

[0079] Referring to the architecture schematic diagram of an application management platform shown in FIG. 2, the application management platform 20 includes an interaction device 202, an agent extension device 204, and a business agent 206 of at least one business. Further, the application management platform 20 can also include a front-end extension device 208. The components of the application management platform 20 are described in detail below.

[0080] The interaction device 202 is configured to obtain a query (denoted as query) input by a user, and obtain an agent identifier (agent_id) and a condition. The condition can also be referred to as a feature profile. The condition can include at least one of a task type, developer affiliation information, a programming language, a programming framework, or a type of the interaction device. The task type can be used to distinguish different tasks, for example, the task type can include code completion, code testing. The developer affiliation information can include an organization / department to which the developer belongs. The programming language can be a language currently used for development, for example, C, Java, JavaScript. The programming framework is an abstract tool set that provides general functions, aiming to help developers more easily build and maintain applications. The framework usually includes a series of pre-defined classes, modules, and functions, which can be extended and customized by developers. The goal of the framework is to provide a structured development approach, reduce repetitive work, and accelerate the development process of the application. The interaction device 202 is also configured to collect the context of the query. For example, the interaction device 202 can capture the current position of the cursor, obtain the code snippet before and after the current position, and further, the interaction device 202 can obtain the cross-file context including the context in other files in the project according to the imports of the code file where the current position is located.

[0081] The agent extension device 204 is configured to determine the policy configuration information of the target agent according to the agent identifier and the condition. The target agent is the agent corresponding to the agent identifier in the business agent of at least one business. The policy configuration information includes at least one of the prompt identifier, the truncation policy, the model identifier, the knowledge base identifier, the retrieval policy, the recall policy, the tool identifier, the instance identifier of the front-end extension device, the risk control policy, or the role type. When the application management platform includes the front-end extension device 208, the policy configuration information further includes the extension identifier and the instance identifier of the front-end extension device 208. It should be noted that when the front-end extension device 208 starts an instance, the policy configuration information can not include the above-mentioned instance identifier.

[0082] The business agent 206 is configured to extend the context of the query according to the policy configuration information, and the extended context includes at least one of the knowledge base retrieval result or the tool invocation result. Further, the policy configuration information obtained by the business agent 206 from the agent extension device 204 can further include a processing policy, which can include a pre-processing policy and / or a post-processing policy of the front-end interactive device 202. When the application management platform 20 includes the front-end extension device 208, the processing policy can further include a pre-processing policy and / or a post-processing policy of the front-end extension device 208. The pre-processing policy of the front-end extension device 208 can be used for pre-processing the context, and the post-processing policy is used for post-processing the answer generated by the generation model. The pre-processing can include but is not limited to data cleaning, and the post-processing can include but is not limited to encoding specification problem repair, compilation problem repair, runtime problem repair, and format repair. The business agent 206 is further configured to assemble the context and the extended context to obtain a prompt according to the policy configuration information, and input the prompt into the generation model for inference to obtain an answer. The generation model can be a language model, and the language model is usually a single model. For example, the language model can be a large language model LLM, including but not limited to a Bidirectional Encoder Representations from Transformers (BERT) and a Generative Pre-trained Transformer (GPT). FIG. 2 illustrates a single-modal language model as an example of the generation model, and in actual application, the generation model can also be a multi-modal model. The input of the multi-modal model can include multiple types, such as any one or any combination of text, image, audio, or video, and similarly, the output of the multi-modal model can also include multiple types, such as any one or any combination of text, image, audio, or video. It should be noted that as technology evolves, the multi-modal model can also support more types or more modalities of input and output, which are not limited in the present application.

[0083] As shown in step 1 of FIG. 2, the interaction device 202 can receive a query input by a user, obtain an agent identifier agent_id and a condition. The condition can include at least one of a task type of a downstream task, an organization / department / employee number, a programming language, a programming framework, or an IDE type. Among them, the interaction device 202 can present a question and answer interaction interface to the user, and receive the user query input by the user through the interaction interface. The agent_id and the condition can be input by the user, or can be actively obtained by the interaction device 202, for example, the interaction device 202 can actively identify the agent_id and the condition including the programming language and the programming framework. Further, the interaction device 202 can also collect the context of the user query through a context collection module. Among them, the context collected by the interaction device 202 can be a public context. The public context can be a context common to different scenarios.

[0084] Further, the application management platform 20 further comprises a front-end extension device 208. The front-end extension device 208 is configured to extend the front-end, including processing the context, or post-processing the answer. The front-end extension device 208 can be in the form of an extension or a plugin. The front-end extension device 208 can be identified by an extension identifier (extension_id) or a plugin identifier (plugin_id). For the purpose of description, the extension_id is used as an example in the following description. The front-end extension device 208 can comprise one or more instances. An instance can be a code segment of an implementation class or an implementation method of the front-end extension device 208. As shown in steps ② and ③ of FIG. 2, the interaction device 202 can send a condition to the agent extension device 204. The agent extension device 204 can return an extension identifier (extension_id) of the front-end extension device 208, an instance identifier (instance_id) of the front-end extension device 208, or a parameter name in a prompt to the interaction device 202 according to the condition. The parameter name in the prompt is also referred to as a key name in the prompt, denoted as prompt_key. It should be noted that FIG. 2 only takes the prompt_key as an example of the prompt auxiliary information. In actual applications, the agent extension device 204 can also return other prompt auxiliary information, such as a prompt identifier (prompt_id) or a prompt template. That is, the prompt auxiliary information can be any one or more of the parameter name in the prompt, the prompt identifier, or the prompt template. The prompt template returned by the agent extension device 204 can be a prompt template pre-stored in the agent extension device 204. The prompt template is a pre-defined template for generating a prompt. The prompt template is essentially a parameterizable model input. The prompt identifier returned by the agent extension device 204 can be an identifier of a prompt pre-stored in the agent extension device 204. Through the identifier, the pre-stored prompt in the agent extension device 204 can be directly used.

[0085] Similarly, the agent extension device 204 can obtain the instance_id by instance routing according to the pre-configured routing strategy. The agent extension device 204 can obtain the prompt_key by prompt routing according to the pre-configured routing strategy.

[0086] The interaction device 202 can request the front-end extension device 208 to return a parameter value corresponding to the parameter name, for example, prompt_value. As shown in steps ④ and ⑤ in FIG. 2, the interaction device 202 can send the parameter name in the extension identifier, the instance identifier, or the prompt to the front-end extension device 208. The front-end extension device 208 obtains the corresponding parameter value according to the parameter name. The parameter value can also be used as the context of the query. The front-end extension device 208 can preprocess the context according to the preprocessing strategy to obtain a processed context. The processed context includes the processed parameter value.

[0087] As shown in steps ⑥, ⑦, and ⑧ in FIG. 2, the interaction device 202 can send the user query, the agent_id, the condition, and the context to the business agent (for example, the business agent 206) corresponding to the agent_id. The context can be the context collected by the interaction device 202. In some examples, the context can also include the context collected by the front-end extension device 208. Further, the context collected by the interaction device 202 or the front-end extension device 208 can be preprocessed to obtain a processed context. Then the business agent can send the agent_id and the condition to the agent extension device 204, and the agent extension device 204 determines the policy configuration information of the business agent 206 according to the agent_id and the condition. In this example, the policy configuration information includes at least one of the prompt identifier prompt_id, the model identifier model_id, the tool identifier tool_id, the risk control policy, and the role type.

[0088] Continuing to refer to steps ⑨ and ⑩ in FIG. 2, The business agent 206 can send a prompt id to the prompt center, and the prompt center can return a corresponding prompt template (prompt template) to the target agent. The business agent 206 also sends a search word, a knowledge base id, and a search strategy to the knowledge base, where the search word can be obtained according to the user input query (such as user query). In actual implementation, the business agent 206 can expand or abbreviate the user query, then perform keyword extraction to obtain the search word. The knowledge base id is used to identify the knowledge base to be searched, which is usually a knowledge base highly related to the user query. The knowledge base id can be the name of the knowledge base, referred to as the library name. Further, the business agent 206 can also send a knowledge asset id to narrow the search range. The knowledge asset id is used to identify the library table in the knowledge base, such as the name of the knowledge base table, referred to as the table name. The knowledge base can search the search word according to the search strategy to return the search result. Similarly, the business agent 206 can send a tool id to the tool set to call the corresponding tool to obtain the tool call result. The tool set can include local tools, OpenAPI, or code interpreters. It should be noted that the above are only some examples of tools in the tool set, and in actual application, the tool set can also include other tools, including but not limited to search engines, SQL queries, web crawlers. As shown in step The business agent 206 can also assemble the context, search result, tool call result, and prompt template into a complete prompt, and send the prompt and model id to the reasoning service. The reasoning service can call the corresponding language model according to the model id to perform reasoning, and then return the answer. In FIG. 2, the language model is taken as an example of LLM, and when using LLM for reasoning, the prompt vector can be obtained by encoding or vectorizing the prompt. The reasoning service can first return the answer to the target agent, and the target agent returns the answer to the interaction device 202.

[0089] It should be noted that, as shown in step As shown, when the application management platform 20 includes the front-end extension device 208, the interactive device 202 can further send the answer to the front-end extension device 208, the front-end extension device 208 processes the answer according to the post-processing strategy, obtains the processed answer, returns the processed answer to the interactive device 202, and the interactive device 202 can present the answer to the user. It should be noted that when the interactive device sends the answer to the front-end extension device 208, the extension identifier (extension_id) of the front-end extension device 208 and the instance identifier (instance_id) of the front-end extension device 208 are also sent, so that the corresponding instance of the instance identifier can post-process the answer.

[0090] In the example of FIG. 2, if the interactive device 202 obtains the prompt or the prompt template through the front-end extension device 208, the step of obtaining the prompt template from the prompt word center can not be performed.

[0091] Based on the application management platform 20 shown in FIG. 2, the application provides an application management method. The application management method of the application will be introduced below with reference to the accompanying drawings.

[0092] Referring to a flowchart of an application management method shown in FIG. 3, the method is applied to the application management platform 20, the application management platform 20 includes the interactive device 202, the agent extension device 204, and the business agent 206 of at least one business, and the method includes the following steps.

[0093] S302, the interactive device 202 obtains the query input by the user.

[0094] Specifically, the interaction device 202 can present a question and answer interaction interface to the user, and receive a query (or referred to as a question) input by the user through the question and answer interaction interface. The query can be a natural language-based query statement, or a programming language-based query statement. The interaction interface can include a question and answer area or an editing area. The user can input a natural language-based query statement in the question and answer area, or input a query statement based on SQL, eXtensible Markup Language (XML), YAML, JavaScript Object Notation (JSON), MD, JAVA or Python in the editing area. The query can be applied to the whole life cycle of application development. For example, in the requirement collection stage, the query statement can be used for query of requirement management, defect management and project management; in the design stage, the query statement can be used for query of view design, design for X (DFX), API design and data table design; in the code development stage, the query statement can be used for query of code continuation / completion, UT generation, code checking / repairing, code interpretation / commenting and code submission. Among them, in the development process, the query statement can also be used for query of R&D knowledge. In the code review stage, the query statement can also be used for query of code review. Similarly, in the test stage, the query statement can be used for query of test design, test case checking, test script generation, test execution and evaluation. For API design, development and operation and maintenance, the query statement can also be used for query of cloud service resource management, application cloud design, code / script development and cloud service operation and maintenance.

[0095] It should be noted that the present application can also be applied to businesses other than application development (such as DevOps), and the present application does not limit this. For example, the present application can also be used for automated office business, and the agent extension device can perform policy extension on the business agent of the automated office business to meet diversified user needs or complex business scenarios.

[0096] S304, the interaction device 202 acquires the agent identifier and the condition.

[0097] The interaction device 202 can receive an agent identifier (agent_id) and a condition input by a user through a question and answer interaction interface, or automatically identify the agent identifier and the condition. The condition can include at least one of a task type, developer attribution information, a programming language, a programming framework, or a type of the interaction device. The developer attribution information can be an organization, a department, or a work number to which the developer belongs. The programming language refers to a language used for project development, such as C, Java, or Python. The programming framework refers to a collection of reusable software components in a programming process. The programming framework can include an AI framework or a development framework, where the AI framework can include, but is not limited to, various open-source deep learning (DL) frameworks, and the development framework can include development frameworks of various programming languages. The type of the interaction device can be an IDE type or a browser plug-in type.

[0098] The S302 and the S304 can be executed in parallel or in a set order, and the present application does not limit this. By providing the above detailed input, customized configuration according to specific needs can be achieved.

[0099] In S306, the interaction device 202 collects the context of the query.

[0100] For the query, the interaction device 202 can collect the position of the cursor when the query is input, and collect the context of the query based on the position of the cursor. In the demand collection, design, and other stages, the interaction device 202 can collect the position of the cursor through the dialogue window, and collect the context of the query in the dialogue window based on the position of the cursor. In this case, the context of the query can be the content of the previous m rounds of dialogue, including the query and the question and answer of the previous m rounds. In the code development and testing stage, the interaction device 202 can collect the position of the cursor in the code file, and collect the context of the query in the code file based on the position of the cursor. In this case, the context of the query can include code segments of the previous and next k lines in the code file. Wherein, m and k can be positive integers.

[0101] In some possible implementations, the context of the query can also include a business-related context. For example, the query is a query input in the question and answer area of a business, and the interaction device 202 can also obtain the business-related context from the business window. The business-related context can include files opened in the business window and content loaded in the business window. For example, in a chart application, the business-related context can include an opened data table and a graph loaded in the data table.

[0102] In S308, the agent extension device 204 determines the strategy configuration information of the target agent according to the agent identifier and the condition.

[0103] The target agent is an agent corresponding to the agent identifier in the business agent of at least one business. In the field of code development and testing, the business agent can include any one of or any combination of a ReqAgent, a DesignAgent, a CodeAgent, a ChatAgent, a CheckAgent, an MR Agent, a TestAgent, a BuildAgent, a PipelineAgent, or a CloudAgent. The agent extension device 204 can match the target agent from the business agent of at least one business according to the agent identifier, and determine the policy configuration information of the target agent according to the condition. The policy configuration information includes at least one of prompt auxiliary information, truncation policy, model identifier, knowledge base identifier, retrieval policy, recall policy, tool identifier, risk control policy, or role type.

[0104] The prompt auxiliary information is used to assist in generating the prompt of the language model. In some examples, the prompt auxiliary information can include a prompt identifier, a prompt template, or a parameter name in the prompt. The truncation policy refers to a policy of truncating the prompt so that the length of the prompt meets the requirements. The model identifier is used to uniquely identify the generation model, which can usually be a universally unique identifier (UUID) of the generation model. In some examples, the model identifier can also be a model name. Further, the model identifier can also include a model version number. The knowledge base identifier is used to uniquely identify the knowledge base. The retrieval policy refers to a policy of retrieving the knowledge base, including but not limited to vector search and keyword search. The recall policy refers to an algorithmic strategy for generating a recommended candidate set through big data calculation or deep training. The tool identifier is used to uniquely identify a tool, which can be a service or an API, etc. The risk control policy refers to a policy of triggering and executing risk control. The role type is used to indicate the role or persona of the language model, which can be determined from a persona word table.

[0105] In specific implementation, the agent extension device 204 supports configuration of a routing policy. The routing policy can be in the form of a rule, also referred to as a routing rule. The routing rule can define different routing inputs and corresponding routing outputs. Based on this, the agent extension device 204 can determine the policy configuration information of the target agent according to the agent identifier and the condition through the routing policy. Specifically, the agent extension device 204 can first determine the target agent according to the agent identifier, and then determine the policy configuration information of the target agent according to the condition and the routing policy. For example, the agent extension device 204 can match the condition as the routing input and the routing policy, thereby determining the policy configuration information.

[0106] The application management platform 20 can provide different prompts and language models for different businesses. The agent extension device 204 can determine the prompt identifier corresponding to the condition and the model identifier of the language model corresponding to the condition according to the task type or the agent identifier in the condition through the routing strategy.

[0107] The policy configuration information can further include a pre-processing strategy for processing the context and a post-processing strategy for processing the answer statement. Specifically, the application management platform 20 can further include a front-end extension device 208. For example, the agent extension device 204 can determine the parameter name in the prompt corresponding to the condition, such as prompt_key, according to the task type, programming language, and programming framework in the condition, and return prompt_key to the interaction device 202. The agent extension device 204 can further return the extension identifier and instance identifier of the front-end extension device 208 when returning prompt_key, so that the interaction device 202 can request the parameter value corresponding to prompt_key from the corresponding front-end extension device 208 or instance of the front-end extension device 208. Accordingly, the front-end extension device 208 can obtain the corresponding parameter value, such as prompt_value, according to the parameter name. The parameter value can be used as the context. Further, the front-end extension device 208 can process the context to obtain the processed context. This method returns policy configuration information including pre-processing strategies and post-processing strategies through a high-level policy extension mechanism. Through the policy configuration information, the business agent can more accurately perform the task and adapt to different application scenarios.

[0108] S309, the target agent receives the policy configuration information returned by the agent extension device 204.

[0109] Specifically, the target agent can call the agent extension device 204 to obtain the return value of the agent extension device 204. The return value of the agent extension device 204 can include the above-mentioned policy configuration information.

[0110] S310, the target agent extends the context of the query according to the policy configuration information.

[0111] The extended context includes at least one of the knowledge base retrieval result or the tool invocation result. The process of extending the context of the query is described in detail below.

[0112] In some possible implementation manners, the target agent can retrieve a corresponding knowledge base according to a retrieval strategy and a knowledge base identifier (for example, knowledgebase_id) in the policy configuration information, and obtain a retrieval result. The target agent can extract a search term from a query (for example, a query statement), and retrieve the search term in the knowledge base corresponding to the knowledge base identifier according to the retrieval strategy, to obtain the retrieval result. In this way, the customized knowledge selection strategy can be used to ensure that the retrieved knowledge is highly relevant and helpful for generating high-quality content.

[0113] In some possible implementation manners, the target agent can retrieve a corresponding knowledge base according to a retrieval strategy and a knowledge base identifier (for example, knowledgebase_id) in the policy configuration information, and obtain a retrieval result. The target agent can extract a search term from a query (for example, a query statement), and retrieve the search term in the knowledge base corresponding to the knowledge base identifier according to the retrieval strategy, to obtain the retrieval result. In this way, the customized knowledge selection strategy can be used to ensure that the retrieved knowledge is highly relevant and helpful for generating high-quality content.

[0114] It should be noted that when the policy configuration information includes a prompt identifier, the target agent further obtains a prompt template matching the prompt identifier from a prompt center according to the prompt identifier. The prompt center provides guidance for the generation process according to the returned prompt template. This method can ensure that the generated content is consistent with the expectation in terms of format and semantics by using a predefined prompt template.

[0115] In some possible implementation manners, when retrieving the knowledge base, the target agent can first determine the similarity between the query of the user and the historical query. The target agent can combine the context of the query to improve the accuracy of the similarity calculation when determining the similarity. When the similarity between the query of the user and the historical query reaches a threshold, the target agent can return the answer corresponding to the historical query, without performing subsequent S312 and S314.

[0116] In some possible implementation manners, when the user configures the policy of the agent to be only retrieval, or only retrieval without generation, for example, the user can configure the policy to be only retrieval without generation when inputting the query, the target agent can return the retrieval result, without performing subsequent S312 and S314.

[0117] S312, the target agent assembles the context and the extended context to obtain a prompt according to the policy configuration information.

[0118] Specifically, the target agent can fill the context and the extended context into the prompt template respectively to obtain the prompt. When the policy configuration information includes a truncation policy, the target agent can further truncate the context and the extended context according to the truncation policy to compress the length of the prompt and reduce the reasoning calculation amount. The truncation policy can include sequential truncation or weight-based truncation.

[0119] For example, when the truncation policy is sequential truncation, the target agent can sequentially fill the parameter values corresponding to the parameter names in the prompt template, which can be the parameter values in the context and the extended context. When the token number of the prompt after filling the parameter values reaches a threshold, the filling of the parameter values corresponding to the remaining parameter names can be stopped.

[0120] For another example, when the truncation policy is weight-based truncation, the target agent can sequentially fill the parameter values corresponding to the parameter names in the prompt template according to the weights. When the token number of the prompt after filling the parameter values reaches a threshold, the filling of the parameter values corresponding to the remaining parameter names can be stopped.

[0121] In S314, the target agent inputs the prompt into the language model for reasoning to obtain an answer.

[0122] The language model can be a generative model for generating an answer to a query. The generative model can be GPT, BERT, or a small-scale language model. The target agent can send the prompt and the model identifier to a reasoning service, and the reasoning service invokes the corresponding language model based on the model identifier and combines the input prompt to generate an answer. The target agent can also return the answer as response content. For example, the target agent can return the answer to the target agent, and the target agent returns the answer to the interactive device 202. This method can generate high-quality answers to meet the specific needs of users through the reasoning service and the dynamic context weight adjustment mechanism.

[0123] Further, when the application management platform 20 includes a front-end extension device 208, the front-end extension device 208 can also send the answer to the front-end extension device 208, and the front-end extension device 208 can process the answer to obtain a processed answer. The interactive device 202 can also present the processed answer to the user. In this method, the front-end extension device 208 further optimizes and adjusts the answer to ensure that the returned answer meets the user's needs in terms of format, content, and applicability.

[0124] It should be noted that when the present application is used in other scenarios, the generative model can also be an image generative model or an audio generative model, a video generative model, or a multi-modal model.

[0125] Based on the above content description, the application provides an application management method. The method relies on the agent extension device 204 to configure the policy of the business agent, such as the configuration of the prompt template, the knowledge base, the tool, and the language model. During the running of the business agent, based on the user input query and the obtained agent identifier and condition, the policy configuration information of the corresponding target agent is determined, so that the target agent can perform knowledge base retrieval and tool calling based on the policy configuration information to expand the context, assemble a prompt according to the expanded context, input the prompt into the corresponding language model for reasoning, and can achieve the satisfaction of complex and variable customized requirements without modifying the business code and only modifying the policy configuration information (extension strategy).

[0126] The application management method of the business agent running is introduced in detail above, and the policy configuration during the development of the business agent is introduced below. The application management platform 20 supports the policy configuration of the business agent through metadata. Specifically, the application management platform 20 can provide an agent configuration interface to a user (such as an administrator or an application developer), the agent configuration interface can be a graphical user interface (GUI) or a command line user interface (CUI), and then receives the metadata configured by the user through the agent configuration interface. The metadata can include the routing policy of the business agent, and the routing policy includes a policy identifier, routing input information, and routing output information. The routing input information is generated according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or the type of an interactive device, and the routing output information includes at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier of the front-end extension device 208, and an instance identifier. The prompt auxiliary information can include a parameter name in the prompt, a prompt identifier, or a prompt template, and the following is an example of the prompt auxiliary information as the prompt identifier.

[0127] The metadata configuration method of the business agent is introduced below in combination with the accompanying drawings.

[0128] Referring to a flowchart of a metadata configuration method of a business agent shown in FIG. 4, the method includes the following steps.

[0129] S402, the application management platform 20 receives a business requirement.

[0130] The business requirement is used to indicate information of a task to be completed by the business agent. The information of the task to be completed by the business agent can include a task type, an agent identifier (agent_id) of the business agent on which the task is relied, and an application identifier of an application built based on the business agent. The task type can include code continuation, UT generation, code debugging, or test code generation, test case checking, and optimization, etc. The agent identifier can include an agent name, for example, the agent identifier can include CodeAgent, DesignAgent, and TestAgent. The application identifier can be an application name.

[0131] Further, the business requirement can further include information of a developer triggering the task, including developer affiliation information, a programming language used by the developer, a programming framework, or a type of an interactive device. The developer affiliation information includes an organization or department to which the developer belongs, or a work number of the developer.

[0132] Specifically, the application management platform 20 can present an agent configuration interface to a user, and receive a business requirement input by the user through the agent configuration interface. The application management platform 20 can include an agent development device, which is used to configure the agent in a development state. The agent development device can be an agent development production line, which can present the agent configuration interface to the user, and receive the business requirement input by the user.

[0133] For ease of understanding, an example is provided for illustration.

[0134] Referring to a schematic diagram of an agent configuration interface shown in FIG. 5, the agent configuration interface 500 includes a business requirement configuration component 502, which includes a department configuration control 5022, an application configuration control 5024, a business agent configuration control 5026, and a task configuration control 5028. The department configuration control 5022 is configured to configure the developer affiliation information, for example, the department to which the developer belongs. The application configuration control 5024 is configured to configure the application name, for example, xxx code development assistant or yyy test development assistant. The business agent configuration control 5026 is configured to configure the agent identifier, for example, CodeAgent or TestAgent. The task configuration control 5028 is configured to configure the task type of the downstream task supported by the business agent. The task type of the downstream task supported by CodeAgent can include, but is not limited to, code continuation, UT generation, code debugging, code interpretation, code annotation, and the task type of the downstream task supported by TestAgent can include, but is not limited to, test keyword extraction, test code generation, test case checking and optimization, anomaly detection and root cause analysis (RCA), malicious code detection, API Test, GUI autonomous testing, test point recommendation, test design auxiliary production, and requirement content formatting.

[0135] In some possible implementation manners, the business requirement configuration component 502 can further include a programming language configuration control 5027 and a client configuration control 5029. The programming language configuration control 5027 is configured to configure the programming language supported by the developer, for example, Java, Python, Go, TS, C, CPP, etc. The client configuration control 5029 is configured to configure at least one of the client type (client_type), the client name (client_name), or the client version (client_version). The client refers to the interaction device 202, and based on this, the client type can be an IDE or a browser. The client name can be the name of the IDE or the name of the browser. The client version can be the version of the IDE or the version of the browser. For example, the client version can be 2024.2.3. FIG. 5 illustrates an example in which the client configuration control 5029 is configured to configure the IDE type. In other possible implementation manners of the present application, the agent configuration interface can further support user configuration of the client name and the client version.

[0136] S404, the application management platform 20 receives the prompt identifier configured by the user.

[0137] S406, the application management platform 20 receives the knowledge base identifier configured by the user.

[0138] S408, the application management platform 20 receives the tool identifier configured by the user.

[0139] S410, the application management platform 20 receives the model identifier configured by the user.

[0140] Similar to the business requirement configuration, the application management platform 20 can receive the prompt identifier, the knowledge base identifier, the tool identifier or the model identifier configured by the user through the agent configuration interface 500. Further, the application management platform 20 can also receive the extension identifier of the front-end extension device 208 and the instance identifier configured by the user through the agent configuration interface 500.

[0141] As shown in FIG. 5, the agent configuration interface 500 includes a policy configuration component 504, which includes a template configuration control 5042, a knowledge configuration control 5044, a tool configuration control 5046 and a model configuration control 5048. Among them, the template configuration control 5042 is used to configure the prompt template, for example, supporting the user to select the template identifier of the prompt template through the drop-down selection. Similarly, the knowledge configuration control 5044 supports the user to configure the knowledge base identifier through the drop-down selection, the tool configuration control 5046 supports the user to configure the tool identifier through the drop-down selection, and the model configuration control 5048 supports the user to configure the model identifier through the drop-down selection.

[0142] In some possible implementation manners, the application management platform 20 can also receive at least one of the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy or the risk control strategy configured by the user. As shown in FIG. 5, the policy configuration component 504 can also include at least one of a vocabulary configuration control 5041, a retrieval strategy configuration control 5043, a truncation strategy configuration control 5045, a recall strategy configuration control 5047 and a risk control strategy configuration control 5049. The application management platform 20 can receive the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy or the risk control strategy configured by the user through the above configuration controls. Among them, the retrieval strategy can include vector search or keyword search. The application management platform 20 can also receive the metadata of the business agent, which can also include at least one of the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy or the risk control strategy. In some examples, the application management platform 20 can also receive the reordering algorithm, the pre-processing strategy and the post-processing strategy configured by the user, for example, the reordering algorithm can be configured as the edit distance, the word segmentation edit distance.

[0143] It should be noted that S404 to S410 can be executed in parallel or in sequence, and the present application does not limit this.

[0144] S412, the application management platform 20 generates a routing strategy according to at least one of the application identifier of the business intelligent agent, the intelligent agent identifier, the task type, the developer attribution information, the programming language, the programming framework, or the type of the interactive device, and at least one of the model identifier, the hint identifier, the knowledge base identifier, or the tool identifier.

[0145] Specifically, the application management platform 20 can take at least one of the application identifier of the business intelligent agent, the intelligent agent identifier, the task type, the developer attribution information, the programming language, the programming framework, or the type of the interactive device as routing input information, take the model identifier, the hint identifier, the knowledge base identifier, or the tool identifier as routing output information, establish a mapping relationship between the routing input information and the routing output information, and generate the routing strategy. The routing strategy can include the mapping relationship between the routing input information and the routing output, and further, when generating the routing strategy, the application management platform 20 can also generate a strategy identifier, which can be a number or a name of the routing strategy. Accordingly, the routing strategy also includes the strategy identifier.

[0146] It should be noted that when the application management platform 20 includes the front-end extension device 208, the application management platform 20 also receives the extension identifier and the instance identifier of the front-end extension device 208 configured by the user. Specifically, the application management platform 20 can generate a routing strategy according to at least one of the application identifier of the business intelligent agent, the intelligent agent identifier, the task type, the developer attribution information, the programming language, the programming framework, or the type of the interactive device, and at least one of the model identifier, the knowledge base identifier, the tool identifier, the extension identifier of the front-end extension device 208, or the instance identifier.

[0147] In this application, the metadata including the routing strategy can be stored in a configuration file. The configuration file can be in JavaScript Object Notation (JSON) format, XML, or YAML format, which is not limited in this application. The metadata configuration file will be described below in conjunction with an example.

[0148] In this example, the metadata configuration file can be:

[0149] app_name is the application name; app_type is the application type, including no-code application, low-code application (workflow), full-code application (agent), etc. tasks is an array of downstream tasks, an agent can have multiple downstream tasks, and there can be multiple expansion strategies when a given agent is given a downstream task, wherein each expansion strategy generally corresponds to 1 set of prompt templates, one or more models (e.g. 1-2 models), multiple knowledge bases, multiple tools. task_name is the task name of the downstream task; task_description is the task description of the downstream task. routing_rules is the routing rule (or routing strategy), which is specifically the expansion strategy configuration of the model, prompt template, knowledge, tool, front-end expansion, etc. according to the condition when a given agent and downstream task is given. routing_rule_id is the routing rule ID, which can usually be a 32-bit universally unique identifier (UUID).

[0150] routing_key is the routing input information. When multiple routing input information is included, the multiple routing input information can be connected. Among them, the routing input information can be a condition, and multiple conditions can be connected to form a condition connection string. In one example, the application name, agent name, task, organization / department / product, programming language, IDE type, etc. can be connected by underscores to form a condition connection string as follows: application name_agent name_task name_company / first-level department / second-level department / third-level department_programming language_IDE type. In some examples, the application management platform 20 can also not perform the connection of the routing input information, but directly construct the routing strategy according to the multiple routing input information. When routing according to the above routing strategy, multiple condition retrieval can be directly used.

[0151] routing_agent_model_id is the model routing; routing_agent_prompt_id is the Prompt routing; routing_agent_knowledge_ids is the knowledge routing; routing_tool_ids is the available tool set, and routing_extension_id is the Extension routing.

[0152] In the above example, app_info can include the following information:

[0153] Wherein, app_description is the application description; app_provider is the application provider / department name; app_creator is the application creator / developer name; app_version is the application version, such as v1.1. created_time is the application creation time; updated_time is the application update time. icon is the application icon; icon_background is the application icon background color. instruction is the user-defined instruction. opening_statement is the opening speech, such as Hello, I am your little helper. suggested_questions is the recommended (high-frequency) question, such as What is the hot topic today. moderation_type is the moderation type, including user-defined keywords, openai_moderation, third-party API, etc. sensitive_words is the sensitive word list, such as violence, hijacking. In input_moderation, enabled indicates whether to enable input moderation, preset_response is the preset answer when triggering moderation, such as “The content you input contains sensitive words, please re-input”. In output_moderation, enabled indicates whether to enable output moderation, preset_response is the preset answer when triggering moderation, such as “The content output by the model contains sensitive words, please retry”.

[0154] In some possible implementations, the application management platform 20 can also render a debugging interface, through which the user is shown the above-mentioned metadata. When the effect of a certain configuration of the metadata is not good, the user can also debug the configuration of the metadata through the debugging interface. The application management platform 20 can receive the metadata debugged by the user and perform metadata update.

[0155] Based on the above content description, it can be known that the metadata configuration method of the business intelligent agent supports customizing the configuration of prompt templates, knowledge, tools, models, and word lists when developing the business intelligent agent, so as to fully exert the optimization capabilities of customizing the knowledge base, customizing the context engineering, and tool calling. Moreover, the method can achieve a balance between generalization and customization, conforms to the open-closed principle from the architecture level, realizes open to extension and closed to modification, and can independently release and evolve the main version capability and the extension capability, is easy to locate and solve problems, and reduces development and maintenance costs. In addition, the method also supports co-creation with customers, quickly explores and supports diversified scenarios, can open or close extension as needed according to different customization needs, and even supports merging the general part into the main plug-in (such as an interactive device or an intelligent agent) as a built-in function. Moreover, the method supports agile development and deployment to support customer feedback and customization needs.

[0156] Based on the foregoing application management method, the application further provides an application management platform 20. As shown in FIG. 2, the application management platform 20 comprises an interaction device 202, an agent extension device 204, and a business agent 206 of at least one business;

[0157] The interaction device 202 is configured to acquire a query input by a user, and acquire an agent identifier and a condition, the condition comprising at least one of a task type, developer attribution information, a programming language, a programming framework, or a type of the interaction device;

[0158] The interaction device 202 is further configured to collect a context of the query;

[0159] The agent extension device 204 is configured to determine, according to the agent identifier and the condition, policy configuration information of a target agent, the target agent being an agent corresponding to the agent identifier in the business agent 206 of the at least one business, the policy configuration information comprising at least one of prompt auxiliary information, a truncation policy, a model identifier of a generated model, a knowledge base identifier, a retrieval policy, a recall policy, a tool identifier, a risk control policy, or a role type, the prompt auxiliary information being used for assisting in generating a prompt of the generated model;

[0160] The target agent is configured to extend a context of the query according to the policy configuration information, the extended context comprising at least one of a knowledge base retrieval result or a tool invocation result; assemble the context and the extended context according to the policy configuration information to obtain the prompt; and input the prompt into a generated model for reasoning to obtain an answer.

[0161] Exemplarily, the interaction device 202, the agent extension device 204, and the business agent 206 can be implemented by software.

[0162] When implemented by software, the interaction apparatus 202, the agent extension apparatus 204, and the business agent 206 can be application programs running on a computing device. For example, the business agent 206 can be a computing engine running on a computing device. The application programs can also be virtualized to provide virtualized services to users. The virtualized services can include virtual machine (VM) services, bare metal server (BMS) services, or container services. The VM services can be services that provide VMs for users to use on demand by virtualizing VM resource pools on multiple physical hosts through virtualization technologies. The BMS services can be services that provide BMSs for users to use on demand by virtualizing BMS resource pools on multiple physical hosts. The container services can be services that provide containers for users to use on demand by virtualizing container resource pools on multiple physical hosts. A VM is a virtual computer, i.e., a logical computer. A BMS is a high-performance computing service that can be scaled elastically, has no difference in computing performance from a traditional physical machine, and has the feature of secure physical isolation. A container is a kernel virtualization technology that can provide lightweight virtualization to achieve the purpose of isolating user spaces, processes, and resources. It should be understood that the VM services, the BMS services, and the container services in the virtualized services are only specific examples. In actual applications, the virtualized services can also be other lightweight or heavyweight virtualized services, which are not limited here.

[0163] In some examples, the interaction apparatus 202, the agent extension apparatus 204, and the business agent 206 can also be implemented by hardware. For example, they can be hardware apparatuses with corresponding capabilities. When implemented by hardware, the interaction apparatus 202, the agent extension apparatus 204, and the business agent 206 can include at least one computing device, such as a server or the like. Alternatively, the interaction apparatus 202, the agent extension apparatus 204, and the business agent 206 can also be devices implemented by application-specific integrated circuits (ASICs) or programmable logic devices (PLDs), and the like. The PLD can be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0164] In some possible implementation manners, the intelligent entity extension apparatus 204 is specifically configured to:

[0165] According to the intelligent entity identifier and the condition, the policy configuration information of the target intelligent entity is determined through a routing strategy.

[0166] In some possible implementation manners, the application management platform 20 further includes:

[0167] An intelligent entity development apparatus (not shown in FIG. 2) is configured to configure metadata of a service intelligent entity 206 of the at least one service, the metadata including a routing strategy of the service intelligent entity 206, the routing strategy including a policy identifier, routing input information, and routing output information, the routing input information being generated according to at least one of an application identifier, an intelligent entity identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interaction apparatus, and the routing output information including at least one of a model identifier, a prompt identifier, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension apparatus, or an instance identifier.

[0168] The intelligent entity development apparatus can be implemented by software or by hardware. When implemented by software, the intelligent entity development apparatus can be an application program running on a computing device. For example, the intelligent entity development apparatus can be an intelligent entity development line running on a computing device. The application program can also be virtualized to be provided to a user in the form of a virtualization service such as a VM service, a BMS service, or a container service. When implemented by hardware, the intelligent entity development apparatus can include at least one computing device such as a server. Alternatively, the intelligent entity development apparatus can also be a device implemented by an ASIC or a PLD.

[0169] In some possible implementation manners, the intelligent entity development apparatus is specifically configured to:

[0170] receive at least one of an intelligent entity identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interaction apparatus of a service intelligent entity 206 of the at least one service and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension apparatus, or an instance identifier configured by a user through an intelligent entity configuration interface;

[0171] generate a routing strategy according to at least one of an application identifier, an intelligent entity identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interaction apparatus of a service intelligent entity 206 of the at least one service and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier, or an instance identifier.

[0172] In some possible implementation manners, the intelligent entity development apparatus is further configured to:

[0173] The metadata further includes at least one of the business word list, the retrieval strategy, the truncation strategy, the recall strategy, or the risk control strategy.

[0174] In some possible implementation ways, the prompt auxiliary information includes any one or more of a prompt identifier, a prompt template, or a parameter name in the prompt.

[0175] In some possible implementation ways, the prompt auxiliary information includes a parameter name in the prompt, and the application management platform 20 further includes a front-end extension device 208, and the policy configuration information further includes at least one of an extension identifier or an instance identifier of the front-end extension device 208.

[0176] The interaction device 202 is further configured to receive at least one of the extension identifier or the instance identifier and the parameter name sent by the agent extension device 204, send the at least one of the extension identifier or the instance identifier and the parameter name to the front-end extension device 208, and receive a parameter value corresponding to the parameter name returned by the front-end extension device 208.

[0177] The context of the query includes the parameter value.

[0178] The front-end extension device 208 can be implemented by software or by hardware. When implemented by software, the front-end extension device 208 can be an application program running on a computing device. For example, the front-end extension device 208 can be an extension or a plug-in of the interaction device 202. The application program can also be virtualized to provide a virtualization service such as a VM service, a BMS service, or a container service for users to use. When implemented by hardware, the front-end extension device 208 can include at least one computing device such as a server. Alternatively, the front-end extension device 208 can also be a device implemented by an ASIC or a PLD.

[0179] In some possible implementation ways, the front-end extension device 208 is further configured to:

[0180] process the answer to obtain a processed answer.

[0181] The interaction device 202 is further configured to:

[0182] present the processed answer to the user.

[0183] In some possible implementation ways, the prompt auxiliary information includes a prompt identifier.

[0184] The target agent is specifically configured to:

[0185] According to the prompt identification in the policy configuration information, a prompt template is obtained from a prompt word center;

[0186] The prompt template is filled according to the context and the extended context, and a prompt is obtained.

[0187] The application further provides a computing device 600. As shown in FIG. 6, the computing device 600 includes a bus 602, a processor 604, a memory 606, and a communication interface 608. The processor 604, the memory 606, and the communication interface 608 communicate through the bus 602. The computing device 600 can be a server or a terminal device. It should be understood that the number of processors and memories in the computing device 600 is not limited in the application.

[0188] The bus 602 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one line is used in FIG. 6, but it does not mean that there is only one bus or one type of bus. The bus 602 can include a path for transmitting information between various components (for example, the memory 606, the processor 604, the communication interface 608) of the computing device 600.

[0189] The processor 604 can include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP), etc.

[0190] The memory 606 can include volatile memory, such as random access memory (RAM) including a cache area for the temporary storage of data. The memory 606 also can include non-volatile memory, such as read only memory (ROM), floppy, flexible, RAM, or solid state drive (SSD) such as flash memory. An executable of a component of the application management platform 20, or portions thereof, can be stored in memory 606, such as RAM, cache, and / or flash memory, for execution by the processor 604. In other embodiments, portions of the application management platform 20 can also be stored as executable instructions in another type of computer-readable medium or computer-readable storage device, such as a storage device. In some embodiments, the storage device can store the executable instructions for the application management platform 20, and the processor 604 executes the instructions to implement the application management method. Specifically, the storage device can store instructions for the application management platform 20 to implement the application management method. In a specific implementation, the storage device can store instructions for implementing the functions of the interactive device 202, the agent extension device 204, and the business agent 206. Further, the storage device can also store instructions for implementing the functions of the front-end extension device 208 and the agent development device.

[0191] The communication interface 608 enables communication among the computing device 600 and other devices or communication networks using, for example, but not limited to, a transceiver, such as a network interface card, a Bluetooth® module, a wireless transceiver, and the like.

[0192] The embodiments of the present disclosure also provide a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device, such as a desktop computer, a notebook computer, or a smart phone.

[0193] As shown in FIG. 7, the computing device cluster includes at least one computing device 600. The memory 606 in one or more computing devices 600 in the computing device cluster can store the same instructions of the application management platform 20 for implementing the application management method.

[0194] In some possible implementations, one or more computing devices 600 in the computing device cluster can also be used to execute part of the instructions of the application management platform 20 for implementing the application management method. In other words, the combination of one or more computing devices 600 can collectively execute the instructions of the application management platform 20 for implementing the application management method.

[0195] It should be noted that the memory 606 in different computing devices 600 in the computing device cluster can store different instructions for implementing part of the functions of the application management platform 20.

[0196] Fig. 8 shows one possible implementation. As shown in Fig. 8, two computing devices 600A and 600B are connected through the communication interface 608. The memory in the computing device 600A stores instructions for performing the functions of the interaction device 202. The memory in the computing device 600B stores instructions for performing the functions of the agent extension device 204, the business agent 206. In other words, the memories 606 of the computing devices 600A and 600B collectively store instructions for the application management platform 20 to perform the application management method.

[0197] The manner of connection between the computing device cluster shown in Fig. 8 can be that the application management method provided in the present application requires more computing resources to extend the policy of the business agent 206, and to respond to the user's query through the business agent 206. Therefore, it is considered that the functions implemented by the interaction device 202 are performed by the computing device 600A, and the functions implemented by the agent extension device 204 and the business agent 206 are performed by the computing device 600B. Further, the application management platform 20 further includes the front-end extension device 208, which is considered to be a function extension of the front-end interaction device 202. In order to reduce the communication overhead, the functions implemented by the front-end extension device 208 can be performed by the computing device 600A.

[0198] It should be understood that the functions of the computing device 600A shown in Fig. 8 can also be completed by multiple computing devices 600. Similarly, the functions of the computing device 600B can also be completed by multiple computing devices 600.

[0199] In some possible implementations, one or more computing devices in the computing device cluster can be connected through a network. The network can be a wide area network or a local area network, etc. Fig. 9 shows one possible implementation. As shown in Fig. 9, two computing devices 600C and 600D are connected through a network. Specifically, the communication interface in each computing device is connected to the network. In this type of possible implementation, the memory 606 in the computing device 600C stores instructions for performing the functions of the interaction device 202. At the same time, the memory 606 in the computing device 600D stores instructions for performing the functions of the agent extension device 204 and the business agent 206.

[0200] The manner of connection between the computing device cluster shown in Fig. 9 can be that the application management method provided in the present application requires a large amount of computing resources to extend the policy configuration of the business agent 206, and to respond to the user's query through the business agent 206. Therefore, it is considered that the functions implemented by the interaction device 202 are performed by an independent computing device, for example, the computing device 600C, and the remaining functions implemented by the agent extension device 204 and the business agent 206 are performed by the computing device 600D.

[0201] It should be understood that the functions of the computing device 600C shown in FIG. 9 can also be accomplished by multiple computing devices 600. Likewise, the functions of the computing device 600D can also be accomplished by multiple computing devices 600.

[0202] The embodiments of the present application also provide a computer readable storage medium. The computer readable storage medium can be any available media or data storage device that can store the instructions of the computing device. The available media can be magnetic media (e.g., floppy diskette, hard disk, magnetic tape), optical media (e.g., CD-ROM), or semiconductor media (e.g., solid disk), etc. The computer readable storage medium includes instructions that instruct the computing device to execute the application management method described above.

[0203] The embodiments of the present application also provide a computer program product containing instructions. The computer program product can be software or program product containing instructions, which can be run on the computing device or stored in any available media. When the computer program product is run on at least one computing device, the at least one computing device is caused to execute the application management method described above.

[0204] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the protection scope of the technical solutions of the embodiments of the present application.

Claims

1. An application management method characterized by comprising: The method is executed by an application management platform, the application management platform comprises an interactive device, an agent extension device and a business agent of at least one business, and the method comprises the following steps: The interactive device acquires a query input by a user, and acquires an agent identifier and a condition, the condition comprising at least one of a task type, developer attribution information, a programming language, a programming framework or a type of the interactive device; The interactive device collects a context of the query; The agent extension device determines policy configuration information of a target agent according to the agent identifier and the condition, the target agent being an agent corresponding to the agent identifier among the business agents of the at least one business, the policy configuration information comprising at least one of prompt auxiliary information, a truncation policy, a model identifier of a generation model, a knowledge base identifier, a retrieval policy, a recall policy, a tool identifier, a risk control policy or a role type, the prompt auxiliary information being used for assisting in generating a prompt of the generation model; The target agent extends the context of the query according to the policy configuration information, the extended context comprising at least one of a knowledge base retrieval result or a tool invocation result; The target agent assembles the context and the extended context to obtain the prompt according to the policy configuration information; The target agent inputs the prompt into the generation model for reasoning to obtain an answer.

2. The method of claim 1, wherein, The agent extension device determines policy configuration information of a target agent according to the agent identifier and the condition, comprising: The agent extension device determines the policy configuration information of the target agent according to the agent identifier and the condition by a routing policy.

3. The method according to claim 1 or 2, characterized in that, The method further comprises: Configuring metadata of the business agents of the at least one business, the metadata comprising a routing policy of the business agents, the routing policy comprising a policy identifier, routing input information and routing output information, the routing input information being generated according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework or a type of an interactive device, the routing output information comprising at least one of a model identifier, a prompt identifier, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, an instance identifier.

4. The method of claim 3, wherein, The configuration of the metadata of the business agents of the at least one business comprises: Receiving at least one of the agent identifier, the task type, the developer attribution information, the programming language, the programming framework or the type of the interactive device and at least one of the model identifier, the prompt auxiliary information, the knowledge base identifier, the tool identifier, the extension identifier of the front-end extension device, the instance identifier of the business agents of the at least one business configured by the user through an agent configuration interface; Generating the routing policy according to at least one of the application identifier, the agent identifier, the task type, the developer attribution information, the programming language, the programming framework or the type of the interactive device and at least one of the model identifier, the prompt auxiliary information, the knowledge base identifier, the tool identifier, the extension identifier, the instance identifier of the business agents of the at least one business.

5. The method according to claim 3 or 4, characterized in that, The method further comprises: The metadata further includes at least one of the business glossary, the retrieval strategy, the truncation strategy, the recall strategy, or the risk control strategy.

6. The method according to any one of claims 1 to 5, characterized in that, The prompt auxiliary information includes any one or more of a prompt identifier, a prompt template, or a parameter name in the prompt.

7. The method according to any one of claims 1 to 6, characterized in that, The prompt auxiliary information includes a parameter name in the prompt, and the application management platform further includes a front-end extension device, and the policy configuration information further includes at least one of an extension identifier or an instance identifier of the front-end extension device, and the method further includes: The interaction device receives at least one of the extension identifier or the instance identifier and the parameter name sent by the agent extension device; The interaction device sends at least one of the extension identifier or the instance identifier and the parameter name to the front-end extension device; and the interaction device receives a parameter value corresponding to the parameter name returned by the front-end extension device; The context of the query includes the parameter value.

8. The method of claim 7, wherein, The method further includes: The front-end extension device processes the answer to obtain a processed answer; The interaction device displays the processed answer to the user.

9. The method according to any one of claims 1 to 7, characterized in that, The prompt auxiliary information includes a prompt identifier. The target agent assembles the context and the extended context to obtain the prompt according to the policy configuration information, including: The target agent acquires a prompt template from a prompt word center according to the prompt identifier in the policy configuration information; The target agent fills the prompt template according to the context and the extended context to obtain the prompt.

10. An application management platform, characterized by The application management platform includes an interaction device, an agent extension device, and a business agent of at least one business; The interaction device is configured to acquire a query input by a user, and acquire an agent identifier and a condition, the condition including at least one of a task type, developer attribution information, a programming language, a programming framework, or a type of the interaction device; The interaction device is further configured to collect a context of the query; The agent extension device is configured to determine policy configuration information of a target agent according to the agent identifier and the condition, the target agent being an agent corresponding to the agent identifier in the business agent of the at least one business, the policy configuration information including at least one of prompt auxiliary information, a truncation strategy, a model identifier of a generation model, a knowledge base identifier, a retrieval strategy, a recall strategy, a tool identifier, a risk control strategy, or a role type, the prompt auxiliary information being used to assist in generating a prompt of the generation model; The target agent is configured to extend a context of the query according to the policy configuration information, the extended context including at least one of a knowledge base retrieval result or a tool invocation result; and assemble the context and the extended context to obtain the prompt according to the policy configuration information; The prompt is input into the generation model for inference to obtain an answer.

11. The platform of claim 10, wherein, The agent extension device is specifically configured to: According to the agent identifier and the condition, policy configuration information of the target agent is determined through a routing strategy.

12. The platform according to claim 10 or 11, characterized in that The platform further comprises: An agent development apparatus configured to configure metadata of a business agent of the at least one business, the metadata comprising a routing strategy of the business agent, the routing strategy comprising a strategy identifier, routing input information, and routing output information, the routing input information being generated according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device, and the routing output information comprising at least one of a model identifier, a prompt identifier, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, or an instance identifier.

13. The platform of claim 12, wherein, The agent development apparatus is specifically configured to: receive at least one of an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device of the business agent of the at least one business configured by the user through an agent configuration interface, and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier of a front-end extension device, or an instance identifier; generate the routing strategy according to at least one of an application identifier, an agent identifier, a task type, developer attribution information, a programming language, a programming framework, or a type of an interactive device of the business agent of the at least one business, and at least one of a model identifier, prompt auxiliary information, a knowledge base identifier, a tool identifier, an extension identifier, or an instance identifier.

14. The platform of claim 12 or 13, wherein, The agent development apparatus is further configured to: receive at least one of a business vocabulary, a retrieval strategy, a truncation strategy, a recall strategy, or a risk control strategy configured by the user, and the metadata further comprising at least one of the business vocabulary, the retrieval strategy, the truncation strategy, the recall strategy, or the risk control strategy.

15. The platform according to any one of claims 10 to 14, characterized in that, The prompt auxiliary information comprises any one or more of a prompt identifier, a prompt template, or a parameter name in a prompt.

16. The platform according to any one of claims 10 to 15, characterized in that, The prompt auxiliary information comprises the parameter name in the prompt, and the application management platform further comprises a front-end extension device, and the policy configuration information further comprises at least one of an extension identifier or an instance identifier of the front-end extension device; The interactive device is further configured to receive at least one of the extension identifier or the instance identifier and the parameter name sent by the agent extension device, send at least one of the extension identifier or the instance identifier and the parameter name to the front-end extension device, and receive a parameter value corresponding to the parameter name returned by the front-end extension device; The context of the query comprises the parameter value.

17. The platform of claim 16, wherein, The front-end extension device is further configured to: process the answer to obtain a processed answer; The interactive device is further configured to: present the processed answer to the user.

18. The platform according to any one of claims 10 to 16, characterized in that, The prompt auxiliary information comprises a prompt identifier. The target agent is specifically configured to: obtain a prompt template from a prompt word center according to the prompt identifier in the policy configuration information; fill the prompt template according to the context and the extended context to obtain the prompt.

19. A cluster of computing devices, characterized in that, The computing device cluster comprises at least one computing device, the at least one computing device comprising at least one processor and at least one memory having stored therein computer readable instructions; the at least one processor executes the computer readable instructions to cause the computing device cluster to perform the application management method according to any one of claims 1 to 9.

20. A computer-readable storage medium, characterized in that, A computer program product comprising computer readable instructions; the computer readable instructions being configured to implement the application management method according to any one of claims 1 to 9.

21. A computer program product, characterised in that, A computer program product comprising computer readable instructions; the computer readable instructions being configured to implement the application management method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Virtual mine risk-taking behavior implementation system and method based on multiple agents

    CN103716324A

  • Information interaction method and device based on large language model and electronic equipment

    CN118093801A

  • Multi-agent question answering system and method based on large language model

    CN118093833A

  • Multi-agent intelligent retrieval engine and man-machine interaction system and method

    CN118132762A

  • Human-computer interaction method and device

    CN118551000A