Method, apparatus, device, and storage medium for managing applications

The digital assistant-based application management system simplifies application creation and modification by interacting with users in a session window, addressing the complexity of function block management and enhancing user experience.

JP2026507950APending Publication Date: 2026-03-06BEIJING ZITIAO NETWORK TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-20
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Existing application management systems require high development capabilities, making it difficult for both professional developers and ordinary users to create and modify applications effectively, due to the complexity of combining and understanding function blocks.

Method used

A method and apparatus that utilizes a digital assistant to interact with users in a session window, determining and performing operations on functional blocks based on user interactions, allowing users to manage applications through natural language sessions, reducing the need for advanced development skills.

Benefits of technology

Enables users to create and modify applications more easily, improving user experience and reducing the requirements for development capabilities, enabling both professionals and non-professionals to manage applications effectively.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026507950000001_ABST
    Figure 2026507950000001_ABST
Patent Text Reader

Abstract

According to an embodiment of the present invention, a method, an apparatus, a device, and a storage medium for managing applications are provided. The method includes receiving a first session message from a user, the first session message indicating the creation or modification of a target application; determining a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in a session window; and performing the predetermined operation on the at least one functional block in response to receiving user confirmation for the predetermined operation in the session window. This not only reduces the difficulty of application management, but also provides applications that better meet user needs, improving the user's application management experience. Furthermore, such an application management solution reduces requirements for development capabilities.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application claims priority to a Chinese patent application filed on May 24, 2023, entitled "Method, Apparatus, Device, and Storage Medium for Managing Applications," with application number 202310596011X, the entire contents of which are incorporated herein by reference.

[0002] FIELD OF THE INVENTION Exemplary embodiments of the present invention relate generally to the field of computers, and more particularly to methods, apparatus, devices, and computer-readable storage media for managing applications. [Background technology]

[0003] With the development of computer technology, the number of applications that provide services to people in all aspects of work and life is increasing. Different types of applications are used to realize different functions, or different users may have different needs for the functions of the same type of application. In this case, users may expect to build and maintain their own applications. Therefore, how to help users manage applications is important. Summary of the Invention

[0004] In a first aspect of the present invention, a method for managing an application is provided. The method includes receiving a first session message from a user, wherein the first session message indicates creation or modification of a target application; determining a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in the session window; and receiving user confirmation for the predetermined operation in the session window. In response to receiving the predetermined operation, performing the predetermined operation on the at least one functional block.

[0005] In a second aspect of the present invention, a method for managing applications is provided. The method includes: presenting a first interface associated with one of a first mode and a second mode for application management; and presenting a second interface associated with the other of the first mode and the second mode in response to a mode switching instruction. In the first mode, when there is no application editing interface, the application management operation is performed through interaction between the user and the digital assistant in the session window, and in the second mode, the application management operation is performed through user interaction in the application editing interface.

[0006] In a third aspect of the present invention, there is provided a method for managing applications, the method including presenting a first editing interface of a target application, receiving an adjustment request for the target application at the first editing interface, and adjusting at least a portion of the target application based on a user interaction context associated with the adjustment request.

[0007] A fourth aspect of the present invention provides an apparatus for managing applications. The apparatus includes: a first receiving module configured to receive a first session message from a user, the first session message indicating the creation or modification of a target application; and a determination module configured to determine a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in the session window; and an execution module configured to perform the predetermined operation on the at least one functional block in response to receiving user confirmation for the predetermined operation in the session window.

[0008] In a fifth aspect of the present invention, an apparatus for managing applications is provided. The apparatus includes: a first presentation module configured to present a first interface associated with one of a first mode and a second mode for application management; and a second presentation module configured to present a second interface associated with the other of the first mode and the second mode in response to a mode switching instruction, wherein in the first mode, when there is no application editing interface, application management operations are performed through interaction between a user and a digital assistant in a session window, and in the second mode, application management operations are performed through user interaction in the application editing interface.

[0009] In a sixth aspect of the present invention, there is provided an apparatus for managing applications, the apparatus comprising: a third presenting module configured to present a first editing interface of a target application, a second receiving module configured to receive an adjustment request for the target application in the first editing interface, and an adjustment module configured to adjust at least a portion of the target application based on a user interaction context associated with the adjustment request.

[0010] In a seventh aspect of the present invention, there is provided an electronic device comprising 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, the instructions, when executed by the at least one processing unit, causing the device to perform a method of the first, second or third aspect.

[0011] In an eighth aspect of the present invention, there is provided a computer-readable storage medium having stored thereon a computer program that, when executed by a processor, implements the method of the first, second or third aspect.

[0012] It should be understood that the contents described in the summary of the present invention are not intended to limit the main or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will be readily apparent from the following description. [Brief explanation of the drawings]

[0013] The above-mentioned and other features, advantages, and aspects of the embodiments of the present invention will become more apparent from the following detailed description taken in conjunction with the drawings, in which like or similar symbols indicate like or similar elements. [Figure 1] 1 shows a schematic diagram of an exemplary environment in which embodiments of the present invention may be implemented; [Figure 2] 1 shows an exemplary schematic diagram of an input information receiving interface according to some embodiments of the present invention; [Figure 3A] 1A-1C each show a schematic diagram of an exemplary session window according to some embodiments of the present invention; [Figure 3B] 1A-1C each show a schematic diagram of an exemplary session window according to some embodiments of the present invention; [Figure 3C] 1A-1C each show a schematic diagram of an exemplary session window according to some embodiments of the present invention; [Figure 3D] 1A-1C each show a schematic diagram of an exemplary session window according to some embodiments of the present invention; [Figure 4A] 1A-1C each show a schematic diagram of an exemplary editing interface according to some embodiments of the present invention; [Figure 4B] 1A-1C each show a schematic diagram of an exemplary editing interface according to some embodiments of the present invention; [Figure 4C] 1A-1C each show a schematic diagram of an exemplary editing interface according to some embodiments of the present invention; [Figure 5] 1 illustrates a flowchart of a process for managing applications in some embodiments according to the present invention. [Figure 6] 10 illustrates a flowchart of a process for managing applications according to some alternative embodiments of the present invention. [Figure 7] 10 illustrates a flowchart of a process for managing applications according to some further embodiments of the present invention. [Figure 8] 1 illustrates a block diagram of an apparatus for managing applications according to some embodiments of the present invention; [Figure 9] FIG. 10 illustrates a block diagram of an apparatus for managing applications according to some alternative embodiments of the present invention. [Figure 10] FIG. 10 shows a block diagram of an apparatus for managing applications according to some further embodiments of the present invention. [Figure 11] 1 shows a block diagram of a device capable of implementing several embodiments of the present invention; DETAILED DESCRIPTION OF THE INVENTION

[0014] Hereinafter, the embodiments of the present invention will be described in more detail with reference to the drawings. Although the drawings show specific embodiments of the present invention, it should be understood that the present invention can be realized in various forms and should not be construed as being limited to the embodiments described herein, but rather, these embodiments are provided for a more thorough and complete understanding of the present invention. It should be understood that the drawings and embodiments of the present invention are for illustrative purposes and are not used to limit the protection scope of the present invention.

[0015] In describing embodiments of the present invention, the term "comprising" and similar terms are intended to be open-ended inclusions, including, but not limited to, the term "based on" should be understood to mean "based at least in part on." The term "an embodiment" or "the embodiment" should be understood to mean "at least one embodiment." The term "some embodiments" should be understood to mean "at least some embodiments." The following specification may include explicit and implicit definitions.

[0016] In this specification, unless explicitly stated otherwise, performing a step "in response to A" does not mean performing the step immediately after "A," but may include one or more intermediate steps.

[0017] It is understood that data related to this technical solution (including but not limited to the data itself, data acquisition, use, storage, or deletion) should comply with applicable laws and regulations and related specified requirements.

[0018] Before using the technical solutions disclosed in each embodiment of the present invention, the type, scope of use, and usage scenario of information related to the present invention should be notified to relevant users in an appropriate manner in accordance with relevant laws and regulations, and consent from the relevant users should be obtained. Here, the relevant users may include any type of rights holder, such as an individual, a company, or an organization.

[0019] For example, in response to receiving an unsolicited request from a user, presentation information may be sent to the relevant user to explicitly indicate to the user that the requested operation requires the acquisition and use of the user's personal information, so that the user can independently choose whether or not to provide the personal information to software or hardware, such as an electronic device, application, server, or storage medium, that performs the operation of the technical solution of the present invention, based on the presentation information.

[0020] In an optional, non-limiting implementation, the method for transmitting the offered information to the user in response to receiving the user's unsolicited request may be, for example, a method utilizing a pop-up window in which the offered information can be displayed in text form, and the pop-up window may further include a selection control for the user to select "agree" or "disagree" to providing personal information to the electronic device.

[0021] It is understood that the notification and user authorization process described above is merely a general outline and is not intended to limit the implementation of the present invention, and that other methods that comply with relevant laws and regulations may also be applied to the implementation of the present invention.

[0022] Furthermore, as used herein, the term "machine learning model" refers to a model that can learn association relationships between corresponding inputs and outputs from training data and generate corresponding outputs for a given input after training is complete. The generation of the machine learning model can be based on machine learning techniques. Deep learning is a type of machine learning algorithm that uses multiple layers of processing units to process inputs and provide corresponding outputs.

[0023] As briefly mentioned above, applications can provide various services to people. Application management (e.g., developing or creating new applications or modifying or editing existing applications) is typically developed by application developers based on the functions that the application is expected to provide. For example, if an application is expected to provide a function for purchasing products, the developer can create code that performs the product purchasing function. This code can then be encapsulated for use in the application. However, due to factors such as differences in programming languages ​​and differences in understanding of code logic, problems such as increased difficulty in creating the code and a heavy workload often arise. For this reason, there are higher demands on the development capabilities of developers who manage applications.

[0024] A traditional solution to this problem is to encapsulate code for implementing various functions into function blocks. During the application development process, developers select function blocks based on the required functionality and then combine them to create an application. This can reduce the difficulty and workload of application development and maintenance to some extent. However, this traditional solution still places high demands on developers' development capabilities. For example, developers still need to determine the function blocks required for an application and understand the differences between different function blocks and the combination logic between them. Otherwise, it is difficult to combine function blocks or change function blocks in a completed combination.

[0025] To this end, embodiments of the present invention propose a method for managing applications. According to various embodiments of the present invention, a user can provide a session message indicating the creation or modification of a target application. The user can then perform at least one interaction with the digital assistant in the session window. The interaction information can determine a predetermined operation for at least one functional block of the target application. If user confirmation for the predetermined operation is received in the session window, the predetermined operation is performed on the at least one functional block.

[0026] This allows users to complete application management, such as creating and / or modifying applications, through a session (e.g., a natural language session). This not only reduces the difficulty of application management, but also provides applications that better meet user needs and improves the user's application management experience. Furthermore, such an application management solution can significantly reduce the requirements for development capabilities. Not only professional developers but also ordinary users can create and modify applications.

[0027] 1 shows a schematic diagram of an exemplary environment 100 in which an embodiment of the present invention may be implemented. In environment 100, application management platform 110 may be used by user 140 expecting to manage applications to manage applications 150. For example, application 150 may be created by combining functional blocks provided by application management platform 110. Also, for example, portions of already created application 150 may be modified, for example, by changing specific functional blocks. In some embodiments, application management platform 110 may also be considered an application that provides application management services.

[0028] Application management platform 110 is configured with digital assistant 120, which can interact with user 140 to obtain information from user 140 and / or provide information to user 140. For example, application management platform 110 can provide user 140 with a session window for interacting with digital assistant 120. In response, user 140 can interact with the digital assistant in the session window, for example, by entering a session message and receiving feedback content from the digital assistant for the session message.

[0029] In an embodiment of the present invention, digital assistant 120 can be used to interact with user 140. In a client interface, an interaction window between user 140 and digital assistant 120, such as a session window, is presented. Digital assistant 120 functions as an intelligent assistant with intelligent interaction and information processing capabilities. In the session window, the user inputs a session message in the session window, and the digital assistant responds to the session message and provides a reply message. The client interface for presenting the session window may correspond to application management platform 110 or a multi-functional collaboration platform capable of performing application management.

[0030] Digital assistant 120 can be invoked or evoked by an appropriate method (e.g., a shortcut, a button, or voice) to present a session window with user 140. For example, digital assistant 120 can be invoked or evoked in response to an application management request of user 140. The session window can include interface elements for information interaction, such as an input block, a message list, a message bubble, etc.

[0031] In some embodiments, application management platform 110 may utilize model 125 to provide application management functionality to user 140. In some embodiments, model 125 may be a machine learning model, a deep learning model, a learning model, a neural network, etc. In some embodiments, model 125 may be based on a language model (LM). Model 125 may also be based on other suitable models.

[0032] Model 125 may be deployed on or accessible by application management platform 110. Alternatively, application management platform 110 can communicate with model 125 and utilize model 125 to provide application management services to user 140. For example, application management platform 110 can send prompt input to model 125 based on interaction information between user 140 and digital assistant 120 and obtain processing results from model 125. Alternatively or additionally, digital assistant 120 itself can be derived based on model 125. For example, such digital assistant 120 may be derived based on a natural language processing model. Digital assistant 120 processes session messages entered by user 140 to obtain user 140 requirements, such as the application user 140 expects to create, the functions the application expects the application to perform, etc. Model 125 may be configured locally on application management platform 110 or independently of application management platform 110, as needed; the present invention is not intended to be limited in this respect.

[0033] In some embodiments, the application management platform 110 may be an application program platform as a service (aPaaS)-based platform. The aPaaS is a type of cloud service that provides an environment for developing and operating software applications. Developers can use the aPaaS to create large-scale application programs. This allows the digital assistant 120 to further reduce the development capability requirements of the user 140 based on the aPaaS platform, provide more extensive assistance to the user 140 in managing target applications, and improve the user experience.

[0034] In the environment 100, the application management platform 110 may be deployed on an electronic device, which may be any type of computing device, including a terminal device or a serving device. The terminal device may be any type of mobile, fixed, or portable terminal, including a mobile cell phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a locator device, a television receiver, a radio receiver, an e-book device, a gaming device, or any combination thereof, including accessories, peripherals, or any combination thereof. The serving device may include, for example, a computing system / server, such as a mainframe, an edge computing node, or a computing device in a cloud environment.

[0035] It should be understood that the structure and functionality of environment 100 is described for illustrative purposes only and is not intended to limit the scope of the present invention.

[0036] A description of some exemplary embodiments of the present invention will now be given with reference to the drawings.

[0037] As a trigger for application management, application management platform 110 receives a session message from user 140, also referred to as a first session message. The first session message indicates the creation or modification of a target application. The first session message may also be referred to as an application management request. In some embodiments, the first session message indicates the creation of a new application. In some embodiments, the first session message indicates the modification of an already created application 150 (referred to as the target application for ease of understanding). Although referred to as a "first session message," it is understood that the first session message indicating the creation or modification of a target application may include multiple inputs from the user. In some embodiments, the user input includes multimodal forms of input, such as text input (e.g., input in the form of natural language), voice input, image input, and video input. For example, the user can provide a session message via natural language (e.g., text and voice), body language (e.g., gestures), and various media content, such as images, audio, video, and links. Application management platform 110 can parse these multimodal session messages. In the following, natural language will be described as an example, but this is for illustrative purposes only and is not meant to be limiting in any way. The embodiments described with respect to natural language are equally applicable to other modal interactions.

[0038] Exemplarily, if user 140 expects to create a target application (e.g., an XX application), user 140 may provide a message displayed in natural language in the form of text, voice, etc. to application management platform 110 to instruct application management platform 110 to create the target application. For example, the first session message may be "Please help me build the XX system." Similarly, if user 140 expects to modify the XX application, user 140 may provide a first session message of "Please help me modify the existing XX system" to instruct application management platform 110 to modify an application that has already been created.

[0039] In some embodiments, the application management platform 110 can present the user 140 with an input block and information for prompting the user 140 to create or modify an application. The input block receives user input, such as the user's natural language text input or natural language voice input. This can facilitate the user 140 to submit requirements based on the information and quickly express the requirements using the input block. Furthermore, the application management platform 110 can utilize the input block to obtain session messages for the user 140 to facilitate interaction with the user 140.

[0040] For example, refer to FIG. 2. In the example of FIG. 2, the application management platform 110 may provide an interface 200. In the interface 200, an input block 211 is provided for the user 140 to provide natural language text input or other types of input. After the user 140 enters text into the input block 211, the user 140 can trigger a control 212 (e.g., a click control 212) to transmit the text. The interface 200 may further provide prompt information 213-216, which prompt the user 140 in different forms of expression on how to describe the application they hope to create. For example, prompt information 214 prompts the user 140 to enter text in the form of the name of the application they hope to create (e.g., "Please help me build the XX application"). Alternatively or additionally, the input block 211 may further provide prompt information 217 to prompt the user 140 directly and intuitively. For example, the prompt information 217 is presented to the input block 211 in the form of a hover, and when it is detected that the user 140 has input content into the input block 211, the prompt information 217 is hidden.

[0041] In some examples, the application management platform 110 may be unable to determine the target application that the user 140 expects to create or modify based on the initial input of the user 140. For example, the expressions for the output and input may be vague or broad, making it impossible for the application management platform 110 to accurately determine the specific requirements for the target application. For example, if the initial input provided by the user 140 is "create a social application," the application management platform 110 may be unable to accurately understand the user's specific requirements for a "social application." In response, the application management platform 110 may provide further inquiry information to the user 140 to determine the target application that the user 140 expects to create or modify through further interaction. For example, in the case of "create a social application," the application management platform 110 may provide feedback to the user 140, such as, "What type of social application do you expect to create? Is it a content sharing type? Or an instant interaction type?" In response, the user's requirements may be refined based on such multiple interactions, and the target application may be accurately determined.

[0042] In some embodiments, interface 200 further presents prompt information 221 to prompt user 140 that they are currently on the application creation platform, and prompt information 222 to prompt user 140 to subsequently check and double-check the created application.

[0043] Further, in an embodiment of the present invention, the application management platform 110 can provide the digital assistant 120 to the user 140 to provide interaction services to the user 140. For example, the user 140 can provide a natural language-based interaction that enables the application management platform 110 to complete a predetermined operation based on the requirements of the user 140. Through the interaction information between the user 140 and the digital assistant 120 in the session window, a predetermined operation of at least one functional block of the target application can be determined.

[0044] The predetermined operation may vary depending on the specific content of the first session message. In some embodiments, when the first session message indicates the creation of a target application, such a predetermined operation may be to create the target application by combining functional blocks that user 140 expects to use. This allows user 140 to complete the creation of the application in the form of an interaction using digital assistant 120. Exemplarily, when user 140 instructs the creation of a library management application, digital assistant 120 can interact with user 140 to determine the functions that user 140 requests to be included in the library management application. Furthermore, application management platform 110 can create a library management application having the functions expected by the user.

[0045] Digital assistant 120 can interact with user 140 in the session window to obtain user input from user 140; for example, user 140 uses input blocks in the session window to input desired functions, descriptive information associated with the functions, responses to messages from digital assistant 120, etc. In response, application management platform 110 can call corresponding function blocks to build an application based on the functions that user 140 expects to be included in the target application (or provide user 140 with functions currently included in the library management application for user 140 to modify and adjust).

[0046] In some embodiments, during the interaction, application management platform 110 can utilize digital assistant 120 to provide user 140 with candidate function blocks associated with the target application and descriptions of the candidate function blocks. In this manner, user 140 can select a function block from the candidate function blocks to achieve the desired function. For example, after user 140 inputs a first session message, a response message to the first session message can be presented in the session window with digital assistant 120, the response message including a description of at least one candidate function block of the target for selection or confirmation by user 140. The description or description information indicates the function that the corresponding candidate function block can achieve.

[0047] In some embodiments, the response message includes at least one of a text message including a description or a preview of at least one candidate function block. That is, the response message provided by digital assistant 120 to user 140 may be a text message describing the function block, such as the name of the function block, the function of realization, etc. Alternatively or additionally, the response message may be a preview of at least one candidate function block, such as the display effect corresponding to the control of the candidate function block, the realization flow, etc. This allows user 140 to easily and intuitively understand the currently recommended at least one candidate function block and / or combination result, and can better assist user 140 in deciding whether to create a target application with the currently recommended at least one candidate function block.

[0048] See the example of FIG. 3A. After user 140 inputs the first session message 311 (e.g., "Please help me build a library management system") shown in FIG. 3A into input block 211 of interface 200 shown in FIG. 2, the interface 200 changes to a session window 300A between the user and digital assistant 120, allowing digital assistant 120 to continuously interact with user 140 and provide application creation services to user 140. A response message 315 from digital assistant 120 is presented in session window 300A. The response message 315 includes candidate function blocks (corresponding to functions A, B, and C) and description information for user 140 to understand the recommended candidate function blocks and the functions that each candidate function block can realize. In some embodiments, suggestions can be further provided in response message 315 to provide user 140 with prompts and suggestions related to the response message. For example, such a suggestion might be, "I suggest adding feature D," "You can remove each of the candidate features above," or "If you have further needs, please let us know your more specific expectations and requests and we will help you create an application that better meets your needs."

[0049] The application management platform 110 may determine the candidate function blocks using any appropriate means. In some embodiments, the application management platform 110 may pre-associate the candidate function blocks with a scenario in which the application is used. For example, in the case of a library management application, a function block that realizes collecting and adding book information may be pre-associated. For example, in the library management application, the functions realized by the candidate function blocks may be an “Add Book” function that allows the user 140 to add a new book and its related information (e.g., book title, author, publication date, International Standard Book Number (ISBN)), a “Book Search” function that allows the user 140 to search data by keyword and display book information, a “Change Book Information” function that allows the user 140 to change information related to a book, a “Delete Book” function that allows the user 140 to delete an existing book, a “Lending Management” function that allows the user 140 to manage the loan status of a book (e.g., loan date, return date), a “Report Statistics” function that allows the user 140 to generate statistical reports (e.g., inventory, loan rate, etc.), etc. Furthermore, after the digital assistant 120 determines the target application that the user expects to create, it can quickly provide candidate function blocks associated with such types of applications to the user 140 as a response message to the first session message.

[0050] In some embodiments, application management platform 110 can determine candidate function blocks using model 125. For example, based on the first session message and optional other information, prompt inputs for model 125 can be generated and provided to model 125. Model 125 can determine candidate function blocks.

[0051] Further, in response to the response message from the digital assistant 120, the user 140 can provide a second session message in the session window. In some embodiments, the second session message can be used to indicate adjustments to at least one candidate function block. The adjustments to at least one candidate function block can include at least one of adding a function block different from the at least one candidate function block, deleting a function block from the at least one candidate function block, or modifying a function block from the at least one candidate function block. This allows the user 140 to quickly complete additions, modifications, and deletions to the candidate function blocks based on the second session message. For example, in a library management application, the user 140 can send "Delete the 'Add Book' function" to delete the corresponding candidate function block. The second session message can be entered by the user 140 in an input block or can be provided by triggering a predetermined control. For example, the user 140 can click the control 323 shown in FIG. 3A to provide the second session message "Increase y function."

[0052] 3A, user 140 can provide a second session message "Delete function A" in input block 330. In response, session window 300B is presented, displaying a second session message 331 from the user (i.e., "Delete function A") and indicating an adjustment to the candidate function block (in this example, the candidate function block indicated by session response message 312 is deleted).

[0053] It should be understood that the process in which user 140 uses the second session message to make adjustments to the functional blocks may also be multiple rounds. For example, after user 140 completes one adjustment, digital assistant 120 can inquire of user 140 whether the adjustment is complete (for example, by sending inquiry information such as "Are you done with the adjustments?"). In this case, if user 140 completes the adjustment, he or she can send "Confirmation" or "No more adjustments" to provide feedback on the completion of the adjustment. If user 140 needs to continue the adjustment, he or she can adjust the functional blocks again using a new second session message.

[0054] For example, see session window 300C. In session window 300C, a further response message 332 from digital assistant 120 to second session message 331 is displayed.

[0055] The above describes exemplary session messages and response messages between user 140 and digital assistant 120. User 140 and digital assistant 120 can perform multiple rounds of interaction in the session window. Based on the interaction information in the session window, application management platform 110 can determine a predetermined operation for at least one functional block of the target application.

[0056] In some examples, application management platform 110 can determine the predetermined operation using model 125. For example, application management platform 110 can generate a prompt input for model 125 (to facilitate distinction from later-involved prompt inputs, such a prompt input may illustratively be referred to as a first prompt input) based at least on the interaction information and provide the first prompt input to model 125. Application management platform 110 can obtain instructions regarding the predetermined operation from model 125. The instructions regarding the predetermined operation may include any appropriate form of information that application management platform 110 can use to perform the predetermined operation. For example, the instructions may be text describing steps to perform the predetermined operation. Also, for example, the instructions may be intermediate language code that application management platform 110 can use to perform the predetermined operation. Furthermore, for example, if operations that the application management platform can perform have corresponding indexes, the instructions may be an index of the predetermined operation.

[0057] Specifically, after obtaining the interaction information input by the user 140, the first prompt input (abbreviated as the first prompt) can be determined by processing the interaction information. The first prompt input can include the user's needs regarding the target application and information for satisfying the needs. For example, the application management platform 110 can use word cutting to process the interaction information "Please help me build a library management application" and delete "Please help me build a library management application" to obtain the prompt "Build a library management application." Furthermore, the application management platform 110 can obtain instructions for a predetermined operation by processing the "Build a library management application" using a model 125 (e.g., model 125).

[0058] In some embodiments, to better utilize the model 125, the digital assistant 120 can generate a first prompt input based on description information for each of a plurality of functional blocks. The description information for each functional block includes at least a semantic description of the function of the functional block. In particular, the semantic description may be in a format understandable by the model 125. The understandable format refers to a text language, format, etc. that meets the predetermined requirements of the model 125. Alternatively or additionally, the model 125 can provide the application management platform 110 with the format, content, scope, etc. of the semantic description that it can understand in advance, and the application management platform 110 can learn the format of the semantic description understandable by the model 125 based on the previously provided semantic description. This allows the description information for each functional block to be processed based on the format to obtain a higher-quality semantic description.

[0059] Similarly, in some embodiments, when the first session message indicates a change to the target application, application management platform 110 similarly presents currently existing function blocks of the target application to user 140, allowing user 140 to adjust the function blocks therein. For example, based on the interaction message of user 140 in the session window, application management platform 110 can perform at least one of the following operations: deleting a function block of the at least one function block from the target application, adding a function block of the at least one function block to the target application, and updating a function block of the at least one function block already existing in the target application, thereby completing the adjustment and update to the target application.

[0060] In some embodiments, a preview of at least a part of a target application having at least one function block may be presented in the session window. Specifically, a preview of the target application created based on at least one current function block (e.g., a preview of the target application's interface) may be provided in the session window, allowing the user 140 to easily understand the combined effect of the currently used function blocks based on the preview. This allows the user 140 to more directly understand the effect of the target application to be created and assists in adjusting the function blocks.

[0061] A preview of an interface may be provided based on a user 140 instruction and / or historical behavior of the user 140. For example, a preview (e.g., a preview of an interface) may be presented in response to receiving a "preview" message sent by the user 140 in a session window. As shown in session window 300D, the user 140 may utilize an input block to send a "preview" and obtain a preview (e.g., presented preview 343 and preview 344).

[0062] Alternatively or additionally, an entry control for realizing a preview can be provided in the session window, and user 140 can obtain the preview using the entry control. Exemplarily, in session window 300A, digital assistant 120 can provide control 321 as an entry for realizing a preview, and user 140 can obtain a preview of the interface of the target application using control 321.

[0063] In some implementations, to allow user 140 to adjust candidate function blocks based on multiple rounds of interaction, a round threshold may be maintained in digital assistant 120. When user 140's interaction rounds reach the round threshold, a preview is presented to user 140 to help them make better and faster decisions.

[0064] In some embodiments, the preview of the target application may be a preview of some content of the target application, such as a navigation bar or a main operation interface in the target application. This facilitates the user 140 while increasing the speed of preview generation. Alternatively or additionally, a preview may be provided for each function block included in the target application. For example, in the example of FIG. 3D , preview 343 may be provided when function B is activated, and preview 344 may be provided when function C is activated. This allows user 140 to more clearly understand the state of each function in the application when activated.

[0065] Furthermore, the user 140 can confirm the above-mentioned predetermined operations, and the user can confirm specific modules corresponding to the creation of the target application and the modification of the target application. For example, the user 140 can complete confirmation for the predetermined operations by sending a "confirm" session message in the session window. Alternatively or additionally, the session window can provide a control for confirming the predetermined operations, such as the confirmation control 322 shown in FIG. 3A. This allows the user 140 to quickly complete the confirmation. For example, such a control 322 can instruct the user to combine at least one function block to create the target application.

[0066] In addition to the controls described above, more controls can be provided in the session window to assist in quick input by the user 140. For example, Figure 3A shows a control 324 for viewing the data model of the target application.

[0067] In an embodiment of the present invention, the application management platform 110 can perform a predetermined operation on at least one function block (e.g., modify the created target application or the target application) in response to confirmation from the user 140. If the first session message indicates creation of the target application, the application management platform 110 can create the target application by combining at least one function block confirmed by the user 140. If the first session message indicates modification of the target application, the application management platform 110 can delete one or more existing function blocks from the target application, add one or more new function blocks to the target application, or update one or more existing function blocks of the target application.

[0068] Taking the example of creating an application, a predetermined operation can be expressed as a domain-specific language (DSL) usable by the application management platform 110. For example, code corresponding to a loadable function transformation module of the application creation platform can be invoked to create a target application having at least one function block.

[0069] To meet the needs of different users, for example, to meet the differentiated needs of users with different development levels, digital assistant 120 may be configured with different usage modes, such as a digital assistant-driven mode (also referred to as a first mode) and a digital assistant-assisted mode (also referred to as a second mode). In an embodiment of the present invention, in the digital assistant-driven mode, application management platform 110 can perform application management operations through interaction between user 140 and digital assistant 120 in a session window (e.g., the interaction methods shown in session window 300A and session window 300B) when there is no application editing interface. For example, when user 140 expresses his or her needs in purely natural language, application management operations can be performed based on understanding the natural language provided by user 140, for example, the configuration and construction of functions in the application can be completed as a whole. For example, in the digital assistant-driven mode, the creation or modification of a target application can be performed based on natural language interaction between digital assistant 120 and user 140. The above may be considered a digital assistant-driven mode.

[0070] In the digital assistant assistance mode, the application management platform 110 provides the user 140 with an application editing interface and can perform application management operations through user interaction in the application editing interface. User interaction can include dialogue content between the user and the digital assistant 120 (e.g., natural language, media content, links, etc.) and user interaction with interface elements. That is, in the digital assistant assistance mode, the user 140 may be allowed to express their needs through multiple interaction methods. For example, the user 140 may select to edit the target application by dragging interface elements, or may edit the target application by providing natural language input. The user 140 can select the interaction method to complete the edit based on their habits, preferences, or specific editing operations. For example, some editing operations are more convenient to interact with interface elements (e.g., dragging), while other editing operations are more convenient to express in natural language. Furthermore, in the digital assistant assistance mode, a visual application editing interface is provided to the user 140, allowing the user 140 to make more detailed adjustments to the content included in the function blocks (for example, adjusting display parameters, colors, element shapes, etc. within the function blocks). This allows for more refined application adjustments to be conveniently and efficiently completed in the digital assistant assistance mode when the overall framework of the application has already been created.

[0071] It should be understood that user 140 can individually use the digital assistant-driven mode to indicate the target application based on the first session message, and then complete the creation or modification of the target application. After user 140 creates or modifies the target application using the digital assistant-driven mode, user 140 can further edit the function blocks using the digital assistant-assisted mode and use the edited function blocks to complete the final target application. Also, for example, user 140 can individually use the digital assistant-assisted mode (e.g., directly click control 325 to enter digital assistant-assisted mode) to select and edit function blocks. Alternatively or additionally, a control for entering or triggering the digital assistant-assisted mode can be further provided for user 140 to select (e.g., control 325 shown in session window 300A). Alternatively or additionally, a mode that is more appropriate for the current user can be first provided based on the user's profile (e.g., application development ability or preference).

[0072] In the digital assistant assistance mode, an interface for editing an already created target application can be presented. When an adjustment request (e.g., expressed in natural language) for at least a portion of the target application is received in the editing interface, at least the portion can be adjusted. When the target application has already been created, information associated with the target application can be used to help the model 125 more accurately determine the adjustment operation to be performed. Therefore, in some embodiments, a second prompt input for the model 125 can be generated based on the adjustment request and information associated with the target application. As an example, the information associated with the target application can include descriptive information of functional blocks already created by the target application, such as the functional parameters, display parameters, colors, and element shapes of the functional blocks. Furthermore, the second prompt input can be provided to the model 125, and the model 125 can determine the adjustment operation to be performed based on the second prompt input. The application management platform 110 obtains instructions regarding the adjustment operation from the model 125 and performs the adjustment operation on at least a portion of the target application.

[0073] Furthermore, switching between the digital assistant-driven mode and the digital assistant-assisted mode can be achieved in various ways. In some embodiments, the switching may be actively performed by application management platform 110. Application management platform 110 can switch to the digital assistant-assisted mode when a predetermined operation is completed. That is, an editing interface can be provided that allows user 140 to edit the target application with finer granularity. For example, in the case of application creation, after a predetermined operation for application creation is completed or after the target application has already been created, application management platform 110 can present user 140 with an interface for editing the interface and assist user 140 in further editing the target application.

[0074] In some embodiments, the switching may occur in response to a trigger from user 140. For example, after completing the creation of the target application, if user 140 expects to further adjust the target application, user 140 can enter an adjustment command (e.g., "adjust") into the input block and / or use the illustrated control 325 to enter the digital assistant assistance mode to adjust the target application.

[0075] Alternatively or additionally, in some embodiments, the switching may be realized in response to a predetermined condition being met. For example, if the interaction between user 140 and digital assistant 120 in the session window meets a predetermined condition (e.g., the interaction round reaches a predetermined round threshold), the digital assistant-driven mode can be switched to digital assistant-assisted mode. This allows the digital assistant-assisted mode to be entered based on the usage situation of user 140, allowing better service to be provided to user 140. Similarly, when the target application of "change" is "change", when the predetermined operation of "change" is completed, the above-mentioned editing interface can be provided, and the description here will not be repeated.

[0076] In some embodiments, a session window between user 140 and digital assistant 120 can be provided in the editing interface, and the session window can include an input block for acquiring input from user 140 so that user 140 can similarly complete adjustments based on the interaction. Further, at least a portion of the target application can be adjusted based on an adjustment request (e.g., displayed in natural language) for at least a portion of the target application in the editing interface. For example, some content of a specific functional block can be adjusted. This can provide application creation and customization services to user 140 with finer granularity. In some embodiments, at least a portion of the target application can be adjusted based on a user interaction context associated with the adjustment request. The user interaction context can indicate whether the adjustment request was made for one or more specific portions of the target application. For example, the user interaction context can include whether a specific portion was selected when the adjustment request was received.

[0077] Exemplarily, interface 400A and subsequent interfaces 400B and 400C may all be provided to user 140 as editing interfaces. Digital assistant 120 can change from presenting session window 300D to presenting interface 400A when user 140 expects to adjust the target application. Interface 400A may be divided into at least three areas: area 410 for presenting adjustment content associated with a functional block, area 420 for presenting the target application, and session window 430 for presenting interaction with user 140. Alternatively or additionally, session window 430 may be presented in the form of a floating window, making it easy for user 430 to adjust the presentation position of session window 430 according to their needs. In area 410, multiple sub-areas 412-414 may be configured in association with functional blocks to respectively present content that can adjust the functional blocks. In area 410, a navigation area 411 may be further presented to provide a function for searching for a function block, thereby facilitating user 140 to search for a desired function block and more easily complete the configuration. Furthermore, an input block 431 is presented in session window 430, and user 140 can use the input block 431 to input an adjustment request (e.g., change "X" in function B to "XX"). Furthermore, digital assistant 120 adjusts "X" in function B to "XX" based on the adjustment request.

[0078] In some embodiments, to facilitate editing by user 140, user 140 may be able to select a portion he or she expects to adjust and, when the portion is selected, provide an adjustment request (e.g., displayed in natural language). For example, user 140 may indicate the portion he or she expects to adjust in the editing interface, for example, by pointing or checking. In response, application management platform 110 may determine and adjust the target portion of the target application to be adjusted based on such a user interaction context. For example, if a portion of the target application is selected by user 140 by pointing or checking, the content integrity requirements for the input content of user 140 in input block 431 may be reduced. For example, in the case of “X” in function B, after user 140 selects “X” in function B, user 140 can input “change to XX” instead of having to fully input “change 'X' in function B to XX.” This may facilitate editing operations by user 140. It should be understood that pointing and checking allow user 140 to simultaneously select multiple portions or elements to be changed. For example, user 140 can globally indicate adjustments to features B and C by checking feature B, feature C.

[0079] Accordingly, if a selected portion exists, an adjustment operation can be determined based on information associated with the selected portion and the adjustment request, and the adjustment operation can be performed on the selected portion. For example, a prompt input for model 125 can be determined based on information associated with the selected portion and the adjustment request, thereby obtaining an adjustment operation determined by model 125. This allows the portion to be adjusted and the adjustment content to be determined and associated more quickly, thereby improving the efficiency of adjustment for the target application.

[0080] In some embodiments, to facilitate editing by user 140, for example, to allow user 140 to more clearly understand the changed content and more quickly indicate the changed content, the layout of the editing interface may be adjusted to present more content in the editing interface. Digital assistant 120 may further present an interface for providing an adjustment request in the editing interface at a position associated with at least a portion. For example, when user 140 selects a first portion, a natural language input interface may be provided in association with the selected first portion. Specifically, digital assistant 120 may present an interface (e.g., an input block) for obtaining an adjustment request in a position associated with the presented content in the target application. For example, when user 140 selects a specific portion, a natural language interface may be presented in association with the portion, allowing user 140 to provide their adjustment request. Also, for example, the natural language interface may be collapsed, and when user 140 selects the portion, the natural language interface may be expanded for input by user 140.

[0081] Continuing with the above example, for the "X" under function B, if digital assistant 120 determines that user 140 expects to adjust the "X" under function B (e.g., place the operation pointer at the "X" position under function B), it can facilitate use by user 140 by providing an interface for natural language input in association with the position of the "X" under function B (e.g., presenting the interface at a predetermined distance from the position of the "X" under function B). Alternatively or additionally, it can further determine whether the time the pointer has hovered at a particular position (e.g., the "X" position under function B) exceeds a time threshold to determine whether to provide user 140 with an interface for obtaining natural language input (e.g., provide the interface after the hover time exceeds a time threshold).

[0082] 4B, when pointer 441 indicates the position of the "X" under function B, digital assistant 120 may present session window 440 including input block 445 at the position associated with the "X" under the instruction function B, or may present only input block 445. After user 140 uses input block 445 as an interface to provide an adjustment request (e.g., displayed in natural language), application management platform 110 adjusts the "X" under function B based on the content entered in input block 445.

[0083] In such an embodiment, the user interaction context is associated with the interface and the portion of the target application from which the adjustment request was received, and accordingly, an adjustment operation can be determined and performed on the portion based on the information associated with the portion and the adjustment request.

[0084] In some embodiments, user 140 does not select a specific portion of the target application, but instead invokes the session window of digital assistant 120 based on, for example, an assistant invocation control, and directly interacts based on the session window. In this case, user 140 does not indicate the portion of the target application through a prior interaction, and determines the portion of the target application that user 140 expects to adjust (which may be illustratively referred to as the second portion for ease of understanding) and the adjustment operation based on information associated with the target application and the adjustment request. Accordingly, the adjustment operation is performed on the second portion.

[0085] In some embodiments, the second portion that user 140 expects to adjust may be a portion that is not displayed in the current editing interface. In this case, a separate editing interface may be presented, and the second portion may be displayed in the separate editing interface. This allows user 140 to intuitively understand the content of the portion to be adjusted and the adjustment result based on the editing interface, helping user 140 better complete the adjustment of the target application. Furthermore, user 140 does not need to issue an instruction to switch editing interfaces.

[0086] In some embodiments, application management platform 110 can further receive a user instruction to discard at least a portion of the adjustments (also referred to as a discard instruction), and in response to the user instruction, can restore the target application to a version before the adjustments. For example, after viewing the effect after the adjustments, user 140 may think that the effect before the adjustments is better. In such a case, user 140 can instruct application management platform 110, through an interaction with the digital assistant, to discard the previously made adjustments.

[0087] Such a discard instruction can be provided in various suitable ways. For example, user 140 can provide a discard instruction in natural language in a session window with the digital assistant. For example, see FIG. 4C. In the interface 400C shown in FIG. 4C, after providing an adjustment request 451 using input block 431, user 140 can again use input block 431 to input "Discard the above adjustment."

[0088] In some embodiments, a control can be provided to the user 140 to easily issue a discard instruction. For example, after completing the adjustment for the user 140's adjustment request, the digital assistant 120 can indicate that the adjustment of the portion that the user 140 expected to adjust has been completed by providing a session message to the user 140. Furthermore, a control for discarding the adjustment can be presented at a location associated with the session message. When the user triggers (e.g., clicks) the control, the target application can be restored to the version before the adjustment. In this way, the user 140 can quickly discard the related adjustment based on the trigger of the control. This makes it easier for the user 140 to realize the adjustment in the target application. Illustratively, with continued reference to FIG. 4C , the digital assistant 120 returns a session message 452 in response to the adjustment request 451. A control 453 may be submitted together in the session message 452, and the user 140 can instruct the adjustment to be discarded by triggering the control 453.

[0089] In some embodiments, user 140 can close the session window of digital assistant 120 as needed. When a close operation on the session window is received, the session window can be stopped from being displayed in the editing interface. This allows the user to focus on reviewing the application. At the same time, a control for reopening the session window is presented in the editing interface so that the user can continue to provide adjustment requests as needed. For example, an assistant call control may be displayed in any suitable position in interface 400A. When the assistant call control is triggered by user 140, session window 430 can be presented. In response, when user 140 triggers the close control, session window 430 can be closed and the assistant call control can be presented again, and user 140 can continue to present and close session window 430 as needed.

[0090] Also, in some embodiments, the user 140 can enter an editing interface to edit and obtain the target application, for example, by clicking control 325. The editing method is similar to the adjustment method for an existing target application, and the description will not be repeated here.

[0091] Alternatively or additionally, the editing interface may further provide a control 442 for instructing the user to recreate the application. The control 442 may be triggered (e.g., clicked) by the user 140 to instruct the user to recreate a target application that has already been created, or to start creating another target application (e.g., such a control 442 may be used to instruct the digital assistant to delete and recreate the current target application).

[0092] In some embodiments, upon receiving user 140's input to discard an already created target application (e.g., user 140 clicking control 442), the editing interface (e.g., interface 400A) may be switched to the above example interface 200 or the session window between user 140 and digital assistant 120 to re-create that application or another application. For example, a session message related to application creation from user 140 (e.g., re-creating the current application or creating another application) may be received in the session window of the interface after the jump, and the operation determined based on the session message may be completed. This allows user 140 to completely discard an already created application as needed, improving the operational efficiency of user 140. Alternatively or additionally, when changing the target application, user 140 may also discard the changes to the target application without adjusting the existing functional blocks of the target application.

[0093] The digital assistant assistance mode provides users with more flexible choices: they can decide whether to use natural language interaction methods or traditional methods (e.g., dragging, selecting, etc. the elements to be adjusted) to complete the adjustments according to their personal operating habits or specific adjustment operations.

[0094] 5 shows a flowchart of a process 500 for managing applications in some embodiments according to the present invention. Process 500 may be implemented in application management platform 110. Process 500 is described below with reference to FIG.

[0095] At block 510, a first session message is received from a user. In an embodiment of the present invention, the first session message indicates creation or modification of a target application.

[0096] In block 520, a predetermined operation for at least one functional block of the target application is determined based at least on the interaction information between the user and the digital assistant in the session window.

[0097] At block 530, a predetermined operation is performed on at least one function block in response to receiving user confirmation for the predetermined operation in the session window.

[0098] In some embodiments, the interaction information includes a response message from the digital assistant to the first session message presented in the session window, a description of at least one candidate function block of the target application included in the response message, and a second session message from the user received in the session window.

[0099] In some embodiments, the second session message indicates an adjustment to at least one candidate function block, a confirmation to said response message, or a denial to said response message.

[0100] In some embodiments, the adjustment to the at least one candidate function block includes at least one of adding a function block different from the at least one candidate function block, deleting a function block from the at least one candidate function block, or modifying a function block from the at least one candidate function block.

[0101] In some embodiments, the response message includes at least one of a text message including a description or a preview of at least one candidate function block.

[0102] In some embodiments, determining the predetermined operation includes generating a first prompt input for the model based at least on the interaction information, providing the first prompt input to the model, and obtaining instructions regarding the predetermined operation from the model.

[0103] In some embodiments, the first prompt input is further generated based on description information for each of the plurality of functional blocks, the description information for each functional block including at least a semantic description of the functionality of the functional block.

[0104] In some embodiments, the process 500 further includes presenting a preview of at least a portion of the target application having the at least one functional block in the session window.

[0105] In some embodiments, process 500 further includes presenting an interface for editing the already created target application and adjusting at least a portion of the target application in response to receiving a request in the interface to adjust at least a portion of the target application.

[0106] In some embodiments, the interface is presented in response to at least one of a trigger operation from the user to switch to the interface, completing a predetermined operation, or the user's interaction with the digital assistant in the session window meeting a predetermined condition.

[0107] In some embodiments, the process 500 further includes presenting a session window in place of the interface in response to receiving user input that discards the already created target application.

[0108] In some embodiments, the process 500 further includes presenting an interface for providing an adjustment request at a location associated with at least a portion of the interface, and receiving the adjustment request via the interface.

[0109] In some embodiments, adjusting at least the portion includes generating a second prompt input for the model based on the adjustment request and information associated with the target application, providing the second prompt input to the model, obtaining instructions regarding the adjustment operation from the model, and performing the adjustment operation on the at least the portion.

[0110] In some embodiments, receiving user input includes presenting an input block for the user to provide text and information prompting the user to create the application, and receiving the user input via the input block.

[0111] In some embodiments, the first session message indicates creation of a target application, and performing a predetermined operation on the at least one function block includes combining the at least one function block to create the target application.

[0112] In some embodiments, the first session message indicates a change to the target application, and performing the predetermined operation on the at least one function block includes at least one of deleting a function block of the at least one function block from the target application, adding a function block of the at least one function block to the target application, or updating a function block of the at least one function block already present in the target application.

[0113] In some embodiments, the digital assistant is provided by an aPaaS-based platform.

[0114] 6 shows a flowchart of a process 600 for managing applications according to some alternative embodiments of the present invention. Process 600 may be implemented in application management platform 110. Process 600 is described below with reference to FIG.

[0115] At block 610, a first interface associated with one of a first mode and a second mode for managing applications is presented.

[0116] In block 620, in response to the mode switching instruction, a second interface associated with the other of the first mode and the second mode is presented. In an embodiment of the present invention, in the first mode, when there is no application editing interface, an application management operation is performed through interaction between the user and the digital assistant in the session window, and in the second mode, an application management operation is performed through user interaction in the application editing interface.

[0117] In some embodiments, the first interface is associated with the first mode, and the mode switching instruction is a trigger operation from the user to switch to the second mode, completion of a predetermined operation for at least one functional block of the target application, or interaction between the user and the digital assistant in the session window. Includes satisfying a predetermined condition.

[0118] In some embodiments, the first interface is associated with a second mode, and the mode switch instruction includes a user triggering an operation to switch to the first mode, a user input indicating discarding an already created application, or a user input indicating creation of a new application.

[0119] 7 shows a flowchart of a process 700 for managing applications according to some further embodiments of the present invention. Process 700 may be implemented in application management platform 110. Process 700 is described below with reference to FIG.

[0120] At block 710, a first editing interface of the target application is presented.

[0121] At block 720, a request for adjustments to the target application is received at a first editing interface.

[0122] At block 730, at least a portion of the target application is adjusted based on the user interaction context associated with the adjustment request.

[0123] In some embodiments, adjusting at least a portion includes, in response to the user interaction context indicating that a first portion of the target application has been selected, determining a first adjustment operation based on information associated with the first portion and the adjustment request, and performing the first adjustment operation on the first portion.

[0124] In some embodiments, the user interaction context includes at least one of an adjustment request received at the same time the first portion is selected or an adjustment request received via an interface presented at a location associated with the first portion.

[0125] In some examples, adjusting at least a portion includes, in response to the user interaction context indicating that a particular portion of the target application is not selected, determining a second portion of the target application and a second adjustment operation based on information associated with the target application and the adjustment request, and performing the second adjustment operation on the second portion.

[0126] In some embodiments, the second portion is a portion of the target application that is not displayed in the editing interface, and the method further includes presenting a second editing interface of the target application, in which the second portion is displayed in the second editing interface.

[0127] In some embodiments, the process 700 further includes receiving a user instruction to discard the adjustment to at least a portion of the target application, and in response to the user instruction, restoring the target application to a version prior to the adjustment.

[0128] In some embodiments, receiving a user instruction includes presenting a session message from the digital assistant, the session message indicating that the adjustment for at least a portion has already been completed; and presenting a control for discarding the adjustment at a location associated with the session message; and receiving a trigger operation on the control.

[0129] In some embodiments, a session window with the digital assistant is displayed in the first editing interface, and the method is responsive to a close operation on the session window. Stopping display of the session window in the first editing interface and reopening the session window. Further includes displaying a control in the first editing interface.

[0130] In some embodiments, adjusting at least the portion includes generating prompt input for the model based on the adjustment request and information associated with the target application, providing the prompt input to the model and obtaining instructions regarding the adjustment operation from the model, and performing the adjustment operation on the at least the portion.

[0131] 8 shows a schematic block diagram of an apparatus 800 for managing applications in a specific embodiment of the present invention. The apparatus 800 may be implemented as the application management platform 110 or may be included in the application management platform 110. Each module / component in the apparatus 800 may be implemented by hardware, software, firmware, or any combination thereof.

[0132] As shown in the drawing, the device 800 includes a first receiving module 810 configured to receive a first session message from a user, the first session message indicating the creation or modification of a target application. The device 800 further includes a determination module 820 configured to determine a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in the session window. The device 800 further includes an execution module 830 configured to perform the predetermined operation on the at least one functional block in response to receiving a user confirmation for the predetermined operation in the session window.

[0133] In some embodiments, the interaction information includes a response message from the digital assistant to the first session message presented in the session window, a description of at least one candidate function block of the target application included in the response message, and a second session message from the user received in the session window.

[0134] In some embodiments, the second session message indicates an adjustment to at least one candidate function block, a confirmation to said response message, or a denial to said response message.

[0135] In some embodiments, the adjustment to the at least one candidate function block includes at least one of adding a function block different from the at least one candidate function block, deleting a function block from the at least one candidate function block, or modifying a function block from the at least one candidate function block.

[0136] In some embodiments, the response message includes at least one of a text message including a description or a preview of at least one candidate function block.

[0137] In some embodiments, the decision module 820 is further configured to generate a first prompt input for the model based at least on the interaction information, provide the first prompt input to the model, and obtain instructions regarding a predetermined operation from the model.

[0138] In some embodiments, the first prompt input is further generated based on description information for each of the plurality of functional blocks, the description information for each functional block including at least a semantic description of the functionality of the functional block.

[0139] In some embodiments, the apparatus 800 further comprises a preview module configured to present a preview of at least a portion of the target application having the at least one functional block in the session window.

[0140] In some embodiments, the device 800 further comprises a second adjustment module configured to present an interface for editing an already created target application and to adjust at least a portion of the target application in response to receiving a request for adjustment to at least a portion of the target application in the interface.

[0141] In some embodiments, the interface is presented in response to at least one of a trigger operation from the user to switch to the interface, completing a predetermined operation, or the user's interaction with the digital assistant in the session window meeting a predetermined condition.

[0142] In some embodiments, the system further comprises an alternative module configured to present a session window in place of the interface in response to receiving user input that discards the already created target application.

[0143] In some embodiments, the system further comprises an interface module for presenting an interface for providing an adjustment request at a location associated with at least a portion of the interface and for receiving the adjustment request via the interface.

[0144] In some embodiments, the second adjustment module is further configured to generate a second prompt input for the model based on the adjustment request and information associated with the target application, provide the second prompt input to the model, obtain instructions regarding the adjustment operation from the model, and perform the adjustment operation on at least a portion.

[0145] In some embodiments, the interface module is further configured to present an input block for a user to provide text and information prompting the user to create the application, and to receive user input via the input block.

[0146] In some embodiments, the first session message indicates creation of a target application, and in the execution module 830, performing a predetermined operation on at least one function block includes combining the at least one function block to create the target application.

[0147] In some embodiments, the first session message indicates a change to the target application, and performing the predetermined operation on the at least one function block includes at least one of deleting a function block of the at least one function block from the target application, adding a function block of the at least one function block to the target application, or updating a function block of the at least one function block already present in the target application.

[0148] In some embodiments, the digital assistant is provided by an aPaaS-based platform.

[0149] 9 shows a schematic block diagram of an apparatus 900 for managing applications in a specific embodiment of the present invention. The apparatus 900 may be implemented as the application management platform 110 or may be included in the application management platform 110. Each module / component in the apparatus 900 may be implemented by hardware, software, firmware, or any combination thereof.

[0150] As shown in the drawing, the device 900 includes a first presentation module 910 configured to present a first interface associated with one of a first mode and a second mode for application management. The device 900 further includes a second presentation module 920 configured to present a second interface associated with the other of the first mode and the second mode in response to a mode switching instruction, wherein in the first mode, in the absence of an application editing interface, an application management operation is performed through interaction between the user and the digital assistant in the session window, and in the second mode, an application management operation is performed through user interaction in the application editing interface.

[0151] In some embodiments, the first interface is associated with the first mode, and the mode switching instruction is a trigger operation from the user to switch to the second mode, completion of a predetermined operation for at least one functional block of the target application, or interaction between the user and the digital assistant in the session window. Includes satisfying a predetermined condition.

[0152] In some embodiments, the first interface is associated with a second mode, and the mode switch instruction includes a user triggering an operation to switch to the first mode, a user input indicating discarding an already created application, or a user input indicating creation of a new application.

[0153] 10 shows a schematic block diagram of an apparatus 1000 for managing applications according to a specific embodiment of the present invention. The apparatus 1000 may be implemented as an application management platform 110 or may be included in the application management platform 110. Each module / component in the apparatus 1000 may be implemented by hardware, software, firmware, or any combination thereof.

[0154] As shown in the figure, the apparatus 1000 comprises a third presenting module 1010 configured to present a first editing interface of the target application. The apparatus 1000 further comprises a second receiving module 1020 configured to receive an adjustment request for the target application in the first editing interface. The apparatus 1000 further comprises a first adjustment module 1030 configured to adjust at least a portion of the target application based on a user interaction context associated with the adjustment request.

[0155] In some embodiments, the first adjustment module 1030 is further configured to, in response to the user interaction context indicating that a first portion of the target application has been selected, determine a first adjustment operation based on information associated with the first portion and the adjustment request, and perform the first adjustment operation on the first portion.

[0156] In some embodiments, the user interaction context includes at least one of an adjustment request received at the same time the first portion is selected or an adjustment request received via an interface presented at a location associated with the first portion.

[0157] In some embodiments, the first adjustment module 1030 is further configured to, in response to the user interaction context indicating that a particular portion of the target application is not selected, determine a second portion of the target application and a second adjustment operation based on information associated with the target application and the adjustment request, and perform the second adjustment operation on the second portion.

[0158] In some embodiments, the second portion is a portion of the target application that is not displayed in the editing interface, and the device 1000 further comprises a fourth presentation module that presents a second editing interface of the target application, where the second portion is displayed in the second editing interface.

[0159] In some embodiments, the apparatus 1000 further comprises a restoration module configured to receive a user instruction to discard the adjustment to at least a portion of the target application and, in response to the user instruction, restore the target application to a version prior to the adjustment.

[0160] In some embodiments, the recovery module further presents a session message from the digital assistant, the session message indicating that the adjustment for at least a portion has already been completed, and presents a control for discarding the adjustment at a location associated with the session message. And configured to receive a trigger operation on the control.

[0161] In some embodiments, a session window with the digital assistant is displayed in the first editing interface, and device 1000 responds to a close operation on the session window by stopping the display of the session window in the first editing interface and reopening the session window. Further provided with a re-display module configured to display a control in the first editing interface.

[0162] In some embodiments, the first adjustment module 1030 is further configured to generate prompt input for the model based on the adjustment request and information associated with the target application, provide the prompt input to the model, obtain instructions regarding the adjustment operation from the model, and perform the adjustment operation on at least a portion.

[0163] 11 illustrates a block diagram of an electronic device 1100 capable of implementing one or more embodiments of the present invention. It should be understood that the electronic device 1100 illustrated in FIG. 11 is exemplary only and should not be construed as limiting the functionality and scope of the embodiments described herein. The electronic device 1100 illustrated in FIG. 11 may implement the application management platform 110 of FIG. 1.

[0164] 11, the electronic device 1100 is a form of general-purpose electronic device. Components of the electronic device 1100 may include, but are not limited to, one or more processors or processing units 1110, memory 1120, a storage device 1130, one or more communication units 1140, one or more input devices 1150, and one or more output devices 1160. The processing unit 1110 may be a real or virtual processor and may perform various processes based on programs stored in the memory 1120. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel, thereby increasing the parallel processing capabilities of the electronic device 1100.

[0165] The electronic device 1100 typically includes a plurality of computer storage media. Such media may be any obtainable media accessible by the electronic device 1100, including, but not limited to, volatile and nonvolatile media, removable and non-removable media. The memory 1120 may be volatile memory (e.g., registers, high-speed cache, random access memory (RAM)), 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 1130 may be removable or non-removable media and may include machine-readable media, such as a flash memory drive, a magnetic disk, or any other medium that may be used to store information and / or data and that may be accessible within the electronic device 1100.

[0166] The electronic device 1100 may further include other removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG. 11 , a magnetic disk drive for reading from or writing to a removable, non-volatile magnetic disk (e.g., a “floppy disk”) and an optical disk 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 path (not shown) by one or more data media interfaces. The memory 1120 may include a computer program product 1125 having one or more program modules configured to perform various methods or operations of various embodiments of the present invention.

[0167] The communication unit 1140 facilitates communication with other computing devices over a communication medium. Additionally, the functionality of the components of the electronic device 1100 may be implemented as a single computing cluster or multiple computing machines, which can communicate over a communication connection. Thus, the electronic device 1100 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or other network nodes.

[0168] The input device(s) 1150 may be one or more input devices such as a mouse, keyboard, trackball, etc. The output device(s) 1160 may be one or more output devices such as a display, speakers, printer, etc. The electronic device 1100 may further communicate with one or more external devices (not shown) via the communication unit 1140, such as a storage device, a display device, one or more devices that allow a user to interact with the electronic device 1100, or any device (e.g., a netbook card, a modem, etc.) that allows the electronic device 1100 to communicate with one or more other computing devices, as needed. Such communication may be performed via an input / output (I / O) interface (not shown).

[0169] An exemplary implementation according to the present invention provides a computer-readable storage medium having computer-executable instructions stored thereon, which are executed by a processor to implement the above-described method.An exemplary implementation according to the present invention further provides a computer program product, the computer program product including computer-executable instructions tangibly stored on a non-transitory computer-readable medium, which are executed by a processor to implement the above-described method.

[0170] Aspects of the present invention are described herein with reference to flowchart and / or block diagrams of methods, apparatus, devices, and computer program products implemented by the present invention. It will be understood that each block of the flowchart and / or block diagrams, and combinations of blocks in the flowchart and / or block diagrams, may be implemented by computer-readable program instructions.

[0171] These computer-readable program instructions may be provided to a processing unit of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus to generate a machine that, when executed by a processing unit of the computer or other programmable data processing apparatus, generates an apparatus for implementing the functions / acts specified in one or more blocks in the flowcharts and / or block diagrams. These computer-readable program instructions may be stored on a computer-readable storage medium such that the instructions cause the computer, programmable data processing apparatus, and / or other device to operate in a particular manner, such that the computer-readable medium on which the instructions are stored constitutes an article of manufacture containing instructions that implement each aspect of the functions / acts specified in one or more blocks in the flowcharts and / or block diagrams.

[0172] Loading the computer-readable program instructions into a computer, other programmable data processing apparatus, or other device causes the computer, other programmable data processing apparatus, or other device to perform a series of operational steps to produce a computer-implemented process, such that the instructions executing on the computer, other programmable data processing apparatus, or other device implement the functions / acts specified in one or more blocks in the flowcharts and / or block diagrams.

[0173] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to the present invention. In this regard, each block in the flowcharts or block diagrams may represent a module, program segment, or portion of instructions, which includes one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions noted in the blocks may occur in a different order than that noted in the figures. For example, two consecutive blocks may actually be executed substantially in parallel, or may be executed in the reverse order, depending on the functionality involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented by a special-purpose hardware-based system that performs the specified functions or operations, or by a combination of special-purpose hardware and computer instructions.

[0174] Although various implementations of the present invention have been described above, the above descriptions are illustrative, not exhaustive, and are 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 intended to best interpret the principles, practical applications, or improvements to commercially available technologies of the implementations, or to enable those skilled in the art to understand the implementations disclosed herein.

Claims

1. receiving a first session message from a user, the first session message indicating creation or modification of a target application; Determine a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in a session window; performing the predetermined operation on the at least one function block in response to receiving confirmation of the predetermined operation from the user in the session window. A method for managing applications.

2. The interaction information includes: A response message of the digital assistant to the first session message presented in the session window, the response message including a description of at least one candidate function block of the target application; and a second session message from the user received in the session window; At least including The method of claim 1 .

3. The second session message adjustments to the at least one candidate function block; A confirmation of said response message, or Denial of the response message Showing, The method of claim 2.

4. The adjustment to the at least one candidate function block comprises: adding a function block that is different from the at least one candidate function block; removing a function block from the at least one candidate function block; and modifying a function block of the at least one candidate function block; at least one of: The method of claim 3.

5. The response message a text message containing said description; and A preview of the at least one candidate function block. at least one of: The method of claim 2.

6. Determining the predetermined operation includes: generating a first prompt input for a model based at least on the interaction information; providing the first prompt input to the model; obtaining instructions for the predetermined operation from the model; The method of claim 1 .

7. The first prompt input is further generated based on description information for each of a plurality of function blocks, the description information for each function block including at least a semantic description of the function of the function block. The method of claim 6.

8. presenting in the session window a preview of at least a portion of the target application having the at least one functional block. The method of claim 1 .

9. presenting an interface for editing the target application that has already been created; adjusting at least a portion of the target application in response to receiving a request at the interface to adjust the at least a portion. The method of claim 1 .

10. The interface a trigger operation from the user to switch to the interface; The predetermined operation has been completed; The interaction between the user and the digital assistant in the session window satisfies a predetermined condition; is presented in response to at least one of The method of claim 9.

11. and presenting the session window in place of the interface in response to receiving a user input that discards the target application that has already been created. The method of claim 9.

12. presenting an interface for providing the adjustment request at a location associated with the at least one portion of the interface; and receiving the adjustment request via the interface. The method of claim 9.

13. The at least partially adjusting step includes: generating a second prompt input for a model based on the adjustment request and information associated with the target application; providing the second prompt input to the model; obtaining instructions for adjustment operations from the model; and performing the adjustment operation on the at least a portion. The method of claim 9.

14. Receiving the first session message includes: presenting an input block and information prompting the user to create or modify an application; receiving the first session message via the input block; The method of claim 1 .

15. the first session message indicates creation of the target application; Executing the predetermined operation on the at least one function block includes: combining the at least one functional block to create the target application. The method of claim 1 .

16. the first session message indicates a change to the target application; Executing the predetermined operation on the at least one function block includes: removing a function block of the at least one function block from the target application; adding a function block of the at least one function block to the target application; or updating a function block of the at least one function block already present in the target application; at least one of: The method of claim 1 .

17. The digital assistant is provided by an application program platform as a service (aPaaS)-based platform; The method of claim 1 .

18. presenting a first interface associated with one of a first mode and a second mode for application management; presenting a second interface associated with the other of the first mode and the second mode in response to a mode switching instruction; In the first mode, when there is no application editing interface, the application management operation is performed through interaction between the user and the digital assistant in the session window, and in the second mode, the application management operation is performed through user interaction in the application editing interface; A method for managing applications.

19. the first interface is associated with the first mode; The mode switching instruction is a trigger operation by the user to switch to the second mode; Completion of a predetermined operation on at least one functional block of the target application; or The interaction between the user and the digital assistant in the session window satisfies a predetermined condition, 20. The method of claim 18.

20. the first interface is associated with the second mode; The mode switching instruction is a trigger operation by the user to switch to the first mode; User input indicating the destruction of an already created application, or Contains user input indicating the creation of a new application, 20. The method of claim 18.

21. presenting a first editing interface of the target application; receiving an adjustment request for the target application at the first editing interface; adjusting at least a portion of the target application based on a user interaction context associated with the adjustment request. A method for managing applications.

22. The at least partially adjusting step includes: In response to the user interaction context indicating that a first portion of the target application has been selected, determining a first adjustment operation based on information associated with the first portion and the adjustment request; performing the first adjustment operation on the first portion.

22. The method of claim 21.

23. The user interaction context comprises: the adjustment request received when the first portion is selected; and the adjustment request received via an interface presented at a location associated with the first portion; at least one of:

23. The method of claim 22.

24. The at least partially adjusting step includes: In response to the user interaction context indicating that a particular portion of the target application has not been selected, determining a second portion of the target application and a second adjustment operation based on information associated with the target application and the adjustment request; performing the second adjustment operation on the second portion.

22. The method of claim 21.

25. the second portion is a portion of the target application that is not displayed in an editing interface; The method comprises: presenting a second editing interface of the target application, the second portion being displayed in the second editing interface.

25. The method of claim 24.

26. receiving a user instruction to discard the adjustment for the at least part; and in response to the user instruction, restoring the target application to a version prior to the adjustment.

22. The method of claim 21.

27. receiving the user instruction Presenting a session message from the digital assistant, the session message indicating that the adjustment for at least the portion has already been completed; submitting a control for revoking the adjustment at a location associated with the session message; receiving a trigger operation on the control; 27. The method of claim 26.

28. A session window with the digital assistant is displayed in the first editing interface, The method comprises: stopping display of the session window in the first editing interface in response to a close operation on the session window; and displaying a control in the first editing interface for reopening the session window.

22. The method of claim 21.

29. The at least partially adjusting step includes: generating prompt inputs for a model based on the adjustment request and information associated with the target application; providing the prompt input to the model; obtaining instructions for adjustment operations from the model; and performing the adjustment operation on the at least a portion.

22. The method of claim 21.

30. a first receiving module configured to receive a first session message from a user, the first session message indicating creation or modification of a target application; A determination module configured to determine a predetermined operation for at least one functional block of the target application based at least on interaction information between the user and the digital assistant in a session window; an execution module configured to execute the predetermined operation on the at least one function block in response to receiving the user's confirmation of the predetermined operation in the session window. A device for managing applications.

31. a first rendering module configured to render a first interface associated with one of a first mode and a second mode for application management; a second presentation module configured to present a second interface associated with the other of the first mode and the second mode in response to a mode switching instruction; In the first mode, when there is no application editing interface, the application management operation is performed through interaction between the user and the digital assistant in the session window, and in the second mode, the application management operation is performed through user interaction in the application editing interface; A device for managing applications.

32. a third rendering module configured to render a first editing interface of the target application; a second receiving module configured to receive an adjustment request for the target application at the first editing interface; a first adjustment module configured to adjust at least a portion of the target application based on a user interaction context associated with the adjustment request. A device for managing applications.

33. An electronic device, at least one processing unit; at least one memory coupled to said at least one processing unit and storing instructions for execution by said at least one processing unit, said instructions, when executed by said at least one processing unit, causing said electronic device to perform a method according to any one of claims 1 to 17, or any one of claims 18 to 20, or any one of claims 21 to 29; electronic equipment.

34. A computer program is stored, said computer program being executable by a processor to implement the method according to any one of claims 1 to 17, or any one of claims 18 to 20, or any one of claims 21 to 29. A computer-readable storage medium.