Application creation method and apparatus, device, and storage medium
By creating multi-agent applications, using the switching between agents to process requests, the limitations of single-agent applications in processing complex requests are solved, and the application's scenario coverage and processing capabilities are improved.
Patent Information
- Application Number
- PCT/CN2024/138746
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-19
- Filing Date
- 2024-12-12
- Publication Date
- 2025-07-24
AI Technical Summary
In the prior art, applications are usually based on a single agent, and it is difficult to effectively process complex requests, resulting in limited scenario coverage.
By acquiring configuration information, indicating the multiple agents and their jump information, the first agent is allowed to switch to the second agent to process the request, thereby creating a multi-agent-based application.
It improves the application's scenario coverage and problem-solving capabilities, and enhances the accuracy of switching between the application's agents and information processing.
Smart Images

Figure CN2024138746_24072025_PF_FP_ABST
Abstract
Description
Method, device, equipment and storage medium for creating application
[0001] This application claims priority to the Chinese invention patent application entitled “Method, apparatus, device and storage medium for creating applications” filed on January 19, 2024, with application number: 202410083404.5. The entire contents of this application are incorporated by reference into this application. Technical Field
[0002] Example embodiments of the present disclosure generally relate to the field of computers, and more particularly, to methods, apparatuses, devices, and computer-readable storage media for creating applications. Background Art
[0003] With the development of computer technology, people can create and publish various types of applications through some platforms. For example, with the development of machine learning technology, people can quickly create applications by configuring application parameters, such as the model used by the application and the available plug-ins. Summary of the Invention
[0004] In a first aspect of the present disclosure, a method for creating an application is provided. The method includes: obtaining configuration information indicating multiple agents used to create the application and jump information associated with the multiple agents, the jump information at least indicating that a first agent among the multiple agents can switch to a second agent to process a request; and creating a target application based on the configuration information.
[0005] In a second aspect of the present disclosure, a device for creating an application is provided. The device includes: an acquisition module configured to acquire configuration information indicating multiple agents used to create the application and jump information associated with the multiple agents, the jump information at least indicating that a first agent among the multiple agents can switch to a second agent to process a request; and a creation module configured to create a target application based on the configuration information.
[0006] In a third aspect of the present disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the device to perform the method of the first aspect.
[0007] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to implement the method of the first aspect.
[0008] It should be understood that the content described in this summary section is not intended to limit the key features or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0010] FIG1 shows a schematic diagram of an example environment in which embodiments according to the present disclosure may be implemented;
[0011] FIG2 illustrates a flowchart of an example process for creating an application according to some embodiments of the present disclosure;
[0012] 3A to 3F illustrate example interfaces according to some embodiments of the present disclosure;
[0013] FIG4 shows a schematic structural block diagram of an example apparatus for creating an application according to some embodiments of the present disclosure; and
[0014] FIG5 shows a block diagram of an electronic device capable of implementing various embodiments of the present disclosure. DETAILED DESCRIPTION
[0015] The following describes embodiments of the present disclosure in more detail with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.
[0016] It should be noted that the titles of any section / subsection provided herein are not limiting. Various embodiments are described throughout this document, and any type of embodiment may be included under any section / subsection. Furthermore, the embodiments described in any section / subsection may be combined in any manner with any other embodiments described in the same section / subsection and / or in different sections / subsections.
[0017] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may be included below. The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may be included below.
[0018] The embodiments of the present disclosure may involve user data, data acquisition and / or use, etc. These aspects shall comply with the corresponding laws, regulations and relevant provisions. In the embodiments of the present disclosure, all data collection, acquisition, processing, processing, forwarding, use, etc. are carried out on the premise that the user is aware of and confirms them. Accordingly, when implementing the various embodiments of the present disclosure, the types, scope of use, and usage scenarios of the data or information that may be involved should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with the relevant laws and regulations. The specific notification and / or authorization method may vary according to the actual situation and application scenario, and the scope of the present disclosure is not limited in this respect.
[0019] If this specification and the solutions in the examples involve the processing of personal information, such processing will be done only with a legitimate basis (such as with the consent of the subject of personal information or as necessary for the performance of a contract) and only within the prescribed or agreed scope. A user's refusal to process personal information other than that required for basic functions will not affect the user's use of basic functions.
[0020] Traditionally, users have been able to quickly create applications, such as bots, by configuring models and plugins used by the application. However, such applications typically correspond to a single agent. Because agents typically have strong processing capabilities in specific areas, this limits the requests that the application can handle, making it difficult to effectively handle complex requests.
[0021] Embodiments of the present disclosure provide a solution for creating an application. According to this solution, configuration information can be obtained, indicating multiple agents used to create an application and jump information associated with the multiple agents, wherein the jump information at least indicates that a first agent among the multiple agents can switch to a second agent to process a request. Furthermore, based on the configuration information, a target application can be created.
[0022] In this way, embodiments of the present disclosure can support users in creating multi-agent applications (e.g., multi-agent bots) and can handle tasks by switching agents. Thus, embodiments of the present disclosure can improve the scenario coverage of applications, thereby improving the problem-solving capabilities of applications.
[0023] Various example implementations of this solution are described in detail below in conjunction with the accompanying drawings.
[0024] Sample Environment
[0025] FIG1 shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. As shown in FIG1 , the example environment 100 may include an electronic device 110 .
[0026] In this example environment 100, electronic device 110 may run an application 120 that supports interface interaction. Application 120 may be any suitable type of application for interface interaction, examples of which may include, but are not limited to, development applications or other suitable applications that support application development. User 140 may interact with application 120 via electronic device 110 and / or its attached devices.
[0027] In the environment 100 of FIG. 1 , if the application 120 is in an active state, the electronic device 110 may present an interface 150 for supporting the creation of an application through the application 120 .
[0028] In some embodiments, the electronic device 110 communicates with the server 130 to enable the provision of services for the application 120. The electronic device 110 can be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a handheld computer, a portable game terminal, a VR / AR device, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio broadcast receiver, an e-book device, a gaming device or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some embodiments, the electronic device 110 can also support any type of interface for the user (such as a "wearable" circuit, etc.).
[0029] The server 130 may be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content distribution networks, and big data and artificial intelligence platforms. For example, the server 130 may include a computing system / server such as a mainframe, an edge computing node, a computing device in a cloud environment, and the like. The server 130 may provide background services for the application 120 that supports virtual scenes in the electronic device 110.
[0030] A communication connection may be established between the server 130 and the electronic device 110. The communication connection may be established in a wired or wireless manner. The communication connection may include, but is not limited to, a Bluetooth connection, a mobile network connection, a Universal Serial Bus (USB) connection, a Wireless Fidelity (WiFi) connection, etc., and the embodiments of the present disclosure are not limited in this respect. In the embodiments of the present disclosure, the server 130 and the electronic device 110 may implement signaling interaction through the communication connection between the two.
[0031] It should be understood that the structure and function of the various elements in the environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of the present disclosure.
[0032] Some example embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.
[0033] Example Process
[0034] FIG2 shows a flowchart of a process 200 for creating an application according to some embodiments of the present disclosure. The process 200 may be implemented at the electronic device 110. The process 200 is described below with reference to FIG1.
[0035] As shown in Figure 2, at block 210, the electronic device 110 obtains configuration information, wherein the configuration information indicates a plurality of agents used to create an application and jump information associated with the plurality of agents. In some embodiments, the jump information at least indicates that a first agent in the plurality of agents can switch to a second agent to process a request.
[0036] In some embodiments, the electronic device 110 can support the user to configure multiple agents (e.g., two or more agents) included in the application and the jump relationship between the agents to create the application. The following will describe an example process of obtaining configuration information according to some embodiments of the present disclosure in conjunction with Figures 3A to 3F.
[0037] In some embodiments, the electronic device 110 may provide an editing interface 300A as shown in FIG3A . In the interface 300A, the electronic device 110 may support a user in creating a node connection graph 312. Such a node connection graph may include a start node 302 and multiple nodes corresponding to multiple agents, for example, a node 304 corresponding to "agent 1."
[0038] Additionally, the electronic device 110 may also support indicating jump relationships between corresponding agents by adding connections between nodes.
[0039] In some embodiments, electronic device 110 may support a user in creating a new application. For example, electronic device 110 may create a first initial connection graph based on a request to create a new application. Taking FIG. 3A as an example, the first initial connection graph may include a first initial node (e.g., node 304). For a new application scenario, the attribute information of the first initial node (e.g., node 304) may be empty.
[0040] Furthermore, the electronic device 110 may create a final node connection graph 312 based on the editing operation on the first initial connection graph.
[0041] In some embodiments, the electronic device 110 may support a user in converting an existing single-agent based application into a multi-agent based application.
[0042] Specifically, the electronic device 110 may create a second initial connection graph based on a conversion request for an existing application associated with a single agent. In some embodiments, the second initial connection graph may include a second initial node (e.g., node 304 as shown in FIG. 3A ) created based on the existing application.
[0043] In some embodiments, unlike in the scenario of creating a new application, the attribute information of the agent corresponding to the second initial node (e.g., agent 1) can be determined based on the attributes of an existing application. That is, at least part of the attribute information associated with the existing application can be synchronized to the newly created application.
[0044] In some examples, an agent automatically created by converting a single-agent-based application can inherit the model information of an existing application. For example, if the existing application is implemented based on a specific model, the agent can also be implemented based on that model.
[0045] In some other examples, the automatically created agent can inherit the plug-in information of an existing application. For example, if an existing application is configured with a set of plug-ins, the agent can also be configured with the set of plug-ins accordingly.
[0046] In some other examples, the automatically created agent can inherit the workflow information of an existing application. For example, if an existing application has a specific workflow configured, the agent can also configure the workflow accordingly.
[0047] In some other examples, the automatically created agent can inherit the knowledge information of an existing application. For example, if an existing application is configured with a specific knowledge base, the agent can also be configured with the specific knowledge base accordingly.
[0048] In some embodiments, the application to be converted may also inherit the guidance information of an existing application, for example, the guidance words used to set the existing application.
[0049] Based on this approach, the embodiments of the present disclosure can support the conversion of existing single-agent applications into multi-agent applications, and can improve the configuration efficiency of agents through information inheritance.
[0050] 2 , the electronic device 110 may support the user to add one or more new nodes to the node connection graph 312 through the control 310. For example, the user may add a new node corresponding to an agent through the control 306.
[0051] As an example, as shown in FIG. 3B , the user may use the control 306 to add a node 314 corresponding to “agent 2 ” to the node connection graph 312 .
[0052] 3C , the user may edit the properties of a specific node included in the node connection graph. Taking node 314 as an example, the electronic device 110 may support the user in editing the properties of the "agent 2" corresponding to node 314.
[0053] For example, the electronic device 110 may obtain guidance information (also referred to as guidance words or guidance items) for the "agent 2" through the control 316. The guidance information may be used to set the identity or capability of the "agent 2", for example.
[0054] In some embodiments, the guidance item obtained by control 316 is also referred to as the private guidance item of "Agent 2" and is dedicated to "Agent 2." In some embodiments, during the actual operation of "Agent 2," guidance information for "Agent 2" can be determined by combining the global guidance item for the application to be created with the private guidance item. This guidance information can be provided to the model corresponding to "Agent 2" to set its identity, capabilities, and other information.
[0055] In some embodiments, the electronic device 110 may support the user to input or edit a global guide item for the application to be created. The global guide item may act on all agents, for example, being spliced into the private guide item of the corresponding agent to generate the final guide information.
[0056] 3C , the electronic device 110 may also add corresponding capabilities to the "agent 2" through the control 318. Such capabilities may include but are not limited to: plug-in capabilities, tool capabilities, and knowledge capabilities.
[0057] Specifically, the electronic device 110 can configure the plug-in information, tool information or knowledge base information of "agent 2" through the control 318. The electronic device 110 can support adding one or more plug-ins, one or more tools, and / or one or more knowledge bases for "agent 2".
[0058] Additionally, the electronic device 110 may also allow the user to modify other properties of "Agent 2" through controls in window 322. For example, the electronic device 110 may modify the name of "Agent 2" through control 324; add a new agent with the same properties to the node connection graph through control 326; and delete the node 314 through control 330.
[0059] Additionally, the electronic device 110 can also modify the model information of "Agent 2" through control 328. As shown in Figure 3D, the electronic device 110 can determine the model corresponding to "Agent 2" through control 332 and modify relevant parameters of the model, such as temperature and maximum response length, through control 334 or control 336.
[0060] In some embodiments, the attributes of the corresponding agent configured based on the node 314 may be referred to as the private attribute information of the agent. A user may configure different private attribute information for different agents.
[0061] In addition to the private attribute information for the agent, the electronic device 110 can also support the user to configure the global attribute information about the application to be created, which can act on all agents associated with the application. As an example, such global attribute information can include the global guide item introduced above.
[0062] In some embodiments, the global attribute information may also include variable information associated with the application to be created. For example, a user may define global environment variables, user variables, etc., which may be used by various agents.
[0063] In some embodiments, the global attribute information may also include opening information associated with the application to be created. For example, such opening information may include the opening remarks of the application's first conversation with the user. In some embodiments, the electronic device 110 may also allow the user to configure opening information for one or more specific agents, so that when such agents are activated, they can output corresponding opening remarks.
[0064] In some embodiments, the global attribute information may also include suggested item information associated with the application to be created. For example, such suggested item information may include suggested interactive items provided when the application interacts with the user. In some embodiments, the electronic device 110 may also support the user configuring suggested item information for one or more specific agents, so that when such agents are activated, they can display corresponding suggested interactive items.
[0065] 3C , the electronic device 110 may further configure the connection relationship of the nodes in the node connection graph 312 through the control 320. Specifically, as shown in FIG3B , the electronic device 110 may establish a connection between the node 304 and the node 314 based on the jump condition (e.g., condition 1) associated with the node 304 configured by the user.
[0066] As an example, the connection may indicate a jump relationship between "Agent 1" and "Agent 2" to indicate that "Agent 1" may switch to "Agent 2" to process a request or perform a task if "Condition 1" is met.
[0067] In some embodiments, electronic device 110 may allow the user to enter text content through control 320 to define any appropriate jump condition. For example, the content of "Condition 1" may be, for example, "When the user inquires about the weather." Thus, if "Agent 1" determines that the user's inquiry content is related to the weather, it can switch to "Agent 2" to respond to the inquiry.
[0068] In some embodiments, to support the jump from "Agent 1" to "Agent 2", a jump plug-in corresponding to the jump condition (e.g., condition 1) from "Agent 1" to "Agent 2" can be created. This enables "Agent 1" to independently determine whether the jump plug-in needs to be used in the current scenario to perform the switch from "Agent 1" to "Agent 2". In some examples, when "Agent 1" creates a jump condition, recommended interaction items for "Agent 1" can also be generated based on the jump condition.
[0069] In some embodiments, the electronic device 110 may also support the user to only add connections between nodes without configuring corresponding jump conditions. For example, after the user configures the jump relationship from "Agent 1" to "Agent 2", "Agent 1" can determine whether to switch to "Agent 2" based on the description information of "Agent 2".
[0070] For example, such description information may indicate the capabilities of Agent 2. For example, the description information of Agent 2 may indicate that Agent 2 is suitable for tasks such as weather queries. Accordingly, when Agent 1 receives a query about the weather, it may determine that Agent 2 is suitable for handling the query and switch to Agent 2.
[0071] Taking into account the increase in the number of nodes, in some scenarios, the user may expect to configure global jump conditions. As shown in Figure 3A, the electronic device 110 can also support the user to configure global jump information through the control 308. The global jump information can indicate that at least one other agent in the node connection diagram except the target agent can switch to the target agent to process the request under a unified specific condition. In some embodiments, the global jump information can indicate that all agents in the node connection diagram except the target agent can switch to the target agent to process the request under a unified specific condition.
[0072] 3E , after receiving a selection for control 308, electronic device 110 may add global jump node 338 to node connection graph 312. Furthermore, electronic device 110 may establish a connection between global jump node 338 and node 314 based on a user's configuration operation, and obtain a corresponding jump condition via control 340.
[0073] Based on this configuration, for the application to be created, all other agents except "Agent 2" can determine whether to switch to "Agent 2" based on "Global Jump Condition 2" during runtime. This can also be understood as establishing a jump relationship between all other nodes and node 314.
[0074] By supporting users to create global jump nodes, embodiments of the present disclosure can further improve users' editing efficiency.
[0075] In some embodiments, after the target application is published based on the node connection graph 312, the target application can switch between agents while processing the target request. For example, the target application switches from "Agent 1" to "Agent 2" to process the target request. In this case, contextual information associated with "Agent 1" can be provided to "Agent 2" for processing the target request. Such contextual information can include, for example, historical conversations between the user and "Agent 1."
[0076] Therefore, the embodiments of the present disclosure can not only realize the switching between agents, but also improve the accuracy of information processing by exchanging the context information of the agents.
[0077] Thus, as discussed above, the electronic device 110 can support various types of editing operations of the user on the node connection diagram 312, such as adding new nodes, deleting existing nodes, editing node properties, modifying node connection relationships, etc.
[0078] In some embodiments, the electronic device 110 may further support the user in debugging the node connection graph 312. As shown in FIG3F, the electronic device 110 may present a debugging interface 300F, which may include a dialogue area 342.
[0079] As shown in FIG. 3F , the electronic device 110 may obtain input information via an input control 344 in a dialog area 342 , and may display output information of the application to be debugged in the dialog area 342 , for example, output information 346 or output information 348 .
[0080] In some embodiments, the electronic device 110 may display the agent used to generate the output information 346 (e.g., "from agent 1") and the agent used to generate the output information 348 (e.g., "from agent 2"), thereby facilitating user debugging and switching between agents.
[0081] In some embodiments, when a specific agent (e.g., agent 2) is used to process corresponding input information, the electronic device 110 can also display indication information (e.g., "chat") in the corresponding node 314 to indicate that the "agent 2" corresponding to the node 314 is in a responsive state.
[0082] Additionally, electronic device 110 can also allow the user to switch to a specific agent in node connection diagram 312. For example, electronic device 110 can select node 304 to indicate that "Agent 1" is to be used for debugging. Furthermore, when the user enters new test content in dialogue area 342, "Agent 1" will be used to respond to the test content, generate corresponding output content, or switch to another agent based on a jump relationship.
[0083] It should be understood that although the acquisition of configuration information is discussed above with reference to a node connection diagram, the electronic device 110 may also support the user to input configuration information in other appropriate ways, for example.
[0084] As an example, the electronic device 110 may support the user to configure multiple agents and jump information between agents by means of code editing. Alternatively, the electronic device 110 may also configure each agent and jump information by means of a data table or the like.
[0085] 2 , in block 220 , the electronic device 110 creates a target application based on the configuration information.
[0086] As an example, the electronic device 110 may create a corresponding target application, such as a bot, based on the configuration information. Furthermore, the bot may be published or shared with other users.
[0087] In some embodiments, with the permission of the publisher, for example, other users may be supported to create templates of published applications, and new applications may be created by editing corresponding node connection diagrams, thereby improving application efficiency.
[0088] Example devices and equipment
[0089] Embodiments of the present disclosure also provide corresponding apparatuses for implementing the above-described methods or processes. FIG4 shows a schematic block diagram of an example apparatus 400 for creating an application according to certain embodiments of the present disclosure. Apparatus 400 may be implemented as or included in electronic device 110. Each module / component in apparatus 400 may be implemented by hardware, software, firmware, or any combination thereof.
[0090] As shown in Figure 4, the device 400 includes an acquisition module 410, which is configured to acquire configuration information, the configuration information indicates multiple agents used to create an application and jump information associated with the multiple agents, the jump information at least indicating that the first agent among the multiple agents can switch to the second agent to process the request; and a creation module 420, which is configured to create a target application based on the configuration information.
[0091] In some embodiments, the acquisition module 410 is specifically configured to: create a node connection diagram via an editing interface, the node connection diagram includes multiple nodes corresponding to multiple intelligent agents, and the node connections in the node connection diagram indicate the jump relationship between the nodes; and determine the configuration information based on the node connection diagram.
[0092] In some embodiments, the acquisition module 410 is specifically configured to: receive a set of editing operations via an editing interface to create a node connection graph, wherein the set of editing operations includes at least one of the following: adding new nodes to the node connection graph; deleting existing nodes in the node connection graph; editing the properties of nodes in the node connection graph; and modifying the connection relationship of nodes in the node connection graph.
[0093] In some embodiments, the acquisition module 410 is specifically configured to: create a first initial connection graph based on a request for a new application, the first initial connection graph including a first initial node, and the attribute information of the first initial node is empty; and create a node connection graph based on the first initial connection graph.
[0094] In some embodiments, the acquisition module 410 is specifically configured to: create a second initial connection graph based on a conversion request for an existing application associated with a single agent, the second initial connection graph including a second initial node created based on the existing application; and create a node connection graph based on the second initial connection graph.
[0095] In some embodiments, the second initial node corresponds to a third agent, and at least one attribute of the third agent is determined based on attribute information of an existing application.
[0096] In some embodiments, the at least one attribute includes at least one of the following: model information associated with the third agent; plug-in information associated with the third agent; workflow information associated with the third agent; and knowledge information associated with the third agent.
[0097] In some embodiments, the first boot item associated with the target application to be created is determined based on the second boot item associated with the existing application.
[0098] In some embodiments, the configuration information includes global attribute information, which is used for multiple agents in the application.
[0099] In some embodiments, the global attribute information includes at least one of the following: a global guide item associated with the target application; variable information associated with the target application; opening information associated with the target application; and suggestion item information associated with the target application.
[0100] In some embodiments, the configuration information includes private attribute information about the plurality of agents.
[0101] In some embodiments, the private attribute information includes at least one of the following: a private guide item associated with the corresponding agent; model information associated with the corresponding agent; plug-in information associated with the corresponding agent; workflow information associated with the corresponding agent; and knowledge information associated with the corresponding agent.
[0102] In some embodiments, the boot information of the corresponding agent is determined based on the private boot item and the global boot item associated with the target application.
[0103] In some embodiments, the apparatus 400 further includes a first receiving module configured to: receive a first configuration operation associated with the first agent, the first configuration operation indicating a first condition for switching from the first agent to the second agent.
[0104] In some embodiments, the first configuration operation includes inputting text content for indicating the first condition.
[0105] In some embodiments, the apparatus 400 further includes a plug-in creation module configured to create a jump plug-in corresponding to the first condition, so that the first agent can switch to the second agent by calling the jump plug-in.
[0106] In some embodiments, whether the first agent switches to the second agent is determined based on the description information of the second agent.
[0107] In some embodiments, the configuration information includes global jump information indicating that at least one other agent among the plurality of agents except the fourth agent can be switched to the fourth agent to process the request under the second condition.
[0108] In some embodiments, the apparatus 400 further includes a node creation module configured to create a global jump node corresponding to the global jump information in the editing interface.
[0109] In some embodiments, during the process of the target application processing the target request, in response to the target application switching from the first agent to the second agent to process the target request, context information associated with the first agent is provided to the second agent for processing the target request.
[0110] In some embodiments, the device 400 also includes a first presentation module, configured to: present a debugging interface, the debugging interface including a dialogue area; a second receiving module, configured to receive first input information via the dialogue area; and a second presentation module, configured to present first output information of the target application and an agent that generates the first output information.
[0111] In some embodiments, the device 400 also includes a third receiving module configured to receive a selection of a target agent among multiple agents; a fourth receiving module configured to receive second input information via the dialogue area; and a processing module configured to process the second input information using the target agent.
[0112] In some embodiments, the debugging interface also indicates the agent currently used to process the first input information.
[0113] FIG5 shows a block diagram of an electronic device 500 in which one or more embodiments of the present disclosure may be implemented. It should be understood that the electronic device 500 shown in FIG5 is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. The electronic device 500 shown in FIG5 can be used to implement the electronic device 110 of FIG1 .
[0114] As shown in FIG5 , electronic device 500 is a general-purpose electronic device. Components of electronic device 500 may include, but are not limited to, one or more processors or processing units 510, memory 520, storage device 530, one or more communication units 540, one or more input devices 550, and one or more output devices 560. Processing unit 510 may be a real or virtual processor and is capable of performing various processes according to programs stored in memory 520. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to enhance the parallel processing capabilities of electronic device 500.
[0115] The electronic device 500 typically includes a plurality of computer storage media. Such media can be any accessible media that can be obtained by the electronic device 500, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 520 can be a volatile memory (e.g., registers, cache, random access memory (RAM)), a non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 530 can be a removable or non-removable medium and can include a machine-readable medium, such as a flash drive, a disk, or any other medium that can be used to store information and / or data and can be accessed within the electronic device 500.
[0116] The electronic device 500 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG. 5 , a disk drive for reading from or writing to a removable, non-volatile disk (e.g., a “floppy disk”) and an optical drive for reading from or writing to a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to a bus (not shown) by one or more data media interfaces. The memory 520 may include a computer program product 525 having one or more program modules configured to perform various methods or actions of various embodiments of the present disclosure.
[0117] The communication unit 540 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of the electronic device 500 can be implemented in a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, the electronic device 500 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0118] Input device 550 may be one or more input devices, such as a mouse, keyboard, or trackball. Output device 560 may be one or more output devices, such as a display, a speaker, or a printer. Electronic device 500 may also communicate with one or more external devices (not shown) via communication unit 540 as needed, such as a storage device, a display device, or the like, with one or more devices that allow a user to interact with electronic device 500, or with any device that allows electronic device 500 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0119] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0120] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0121] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0122] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0123] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple implementations of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and a part for a module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0124] While various implementations of the present disclosure have been described above, the foregoing description is intended to be illustrative, not exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is selected to best explain the principles of the implementations, their practical applications, or improvements to existing technologies, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A method for creating an application, comprising: Obtaining configuration information, the configuration information indicating multiple agents used for creating the application and jump information associated with the multiple agents, the jump information at least indicating that a first agent among the multiple agents can switch to a second agent to process a request; And Based on the configuration information, creating a target application.
2. The method according to claim 1, wherein obtaining the configuration information includes: Creating a node connection diagram via an editing interface, the node connection diagram including multiple nodes corresponding to the multiple agents, and the node connections in the node connection diagram indicating the jump relationships between the nodes; And Based on the node connection diagram, determining the configuration information.
3. The method according to claim 2, wherein creating the node connection graph via the editing interface comprises: Receiving a set of editing operations via the editing interface to create the node connection diagram, Wherein the set of editing operations includes at least one of the following: Adding a new node to the node connection diagram; Deleting an existing node in the node connection diagram; Editing the attributes of the nodes in the node connection diagram; Modifying the connection relationships of the nodes in the node connection diagram.
4. The method according to claim 2, wherein creating a node connection diagram via an editing interface includes: Based on a request for creating a new application, creating a first initial connection diagram, the first initial connection diagram including a first initial node, and the attribute information of the first initial node being empty; And Based on the first initial connection diagram, creating the node connection diagram.
5. The method according to claim 2, wherein creating a node connection diagram via an editing interface includes: Based on a conversion request for an existing application associated with a single agent, creating a second initial connection diagram, the second initial connection diagram including a second initial node created based on the existing application; And Based on the second initial connection diagram, creating the node connection diagram.
6. The method according to claim 5, wherein the second initial node corresponds to a third agent, and at least one attribute of the third agent is determined based on the attribute information of the existing application.
7. The method according to claim 6, wherein the at least one attribute includes at least one of the following: Model information associated with the third agent; Plugin information associated with the third agent; Workflow information associated with the third agent; Knowledge information associated with the third agent.
8. The method according to claim 6, wherein a first guiding item associated with the target application to be created is determined based on a second guiding item associated with the existing application.
9. The method according to claim 1, wherein the configuration information includes global attribute information, and the global attribute information is for the multiple agents in the application.
10. The method according to claim 9, wherein the global attribute information includes at least one of the following: Global guiding items associated with the target application; Variable information associated with the target application; Opening information associated with the target application; Suggestion item information associated with the target application.
11. The method according to claim 1, wherein the configuration information includes private attribute information about the plurality of agents.
12. The method according to claim 11, wherein the private attribute information includes at least one of the following: Private boot items associated with the corresponding agent; Model information associated with the corresponding agent; Plugin information associated with the corresponding agent; Workflow information associated with the corresponding agent; Knowledge information associated with the corresponding agent.
13. The method according to claim 12, wherein the boot information of the corresponding agent is determined based on the private boot items and the global boot items associated with the target application.
14. The method according to claim 1, further comprising: Receiving a first configuration operation associated with the first agent, the first configuration operation indicating a first condition for switching from the first agent to the second agent.
15. The method according to claim 14, wherein the first configuration operation includes inputting text content for indicating the first condition.
16. The method according to claim 14, further comprising: Creating a jump plugin corresponding to the first condition, such that the first agent can switch to the second agent by invoking the jump plugin.
17. The method according to claim 1, wherein whether the first agent switches to the second agent is determined based on the description information of the second agent.
18. The method according to claim 1, wherein the configuration information includes global jump information, the global jump information indicating that at least one other agent among the plurality of agents except the fourth agent can switch to the fourth agent under a second condition to process a request.
19. The method according to claim 18, further comprising: Creating a global jump node corresponding to the global jump information in an editing interface.
20. The method according to claim 1, wherein: During the process of the target application processing a target request, in response to the target application switching from the first agent to the second agent to process the target request, the context information associated with the first agent is provided to the second agent for processing the target request.
21. The method according to claim 1, further comprising: Presenting a debugging interface, the debugging interface including a dialogue area; Receiving first input information via the dialogue area; And Presenting the first output information of the target application and the agent that generates the first output information.
22. The method according to claim 21, further comprising: Receiving a selection of a target agent among the plurality of agents; Receiving second input information via the dialogue area; And Using the target agent to process the second input information.
23. The method according to claim 21, wherein the debugging interface further indicates the agent currently used to process the first input information.
24. A device for creating an application, comprising: An acquisition module, configured to acquire configuration information, where the configuration information indicates information for creating a plurality of agents in an application and jump information associated with the plurality of agents, and the jump information at least indicates that a first agent among the plurality of agents can switch to a second agent to process a request; and A creation module, configured to create a target application based on the configuration information.
25. An electronic device, comprising: At least one processing unit; and At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to any one of claims 1 to 23.
26. A computer-readable storage medium, having stored thereon a computer program, the computer program being executable by a processor to implement the method according to any one of claims 1 to 23.
Citation Information
Patent Citations
Application creating method and device, equipment and storage medium
CN120353492A
Control method and device for intelligent equipment
CN105159181A
Intelligent multi-round interaction method and system
CN110377720A
Information search method and device, medium and equipment
CN110688569A
Method and device for calling application in client, electronic equipment and storage medium
CN115562709A