Application construction method and computing device
By receiving user demand information and using application construction templates and intelligent frameworks to guide users to build applications, the problem of high professional knowledge requirements is solved, and the efficiency of application construction and the diversity of resource selection is improved.
Patent Information
- Application Number
- CN202510380153.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-27
- Publication Date
- 2025-08-15
AI Technical Summary
Enterprise users and C-end users face the problem of high professional knowledge requirements when building applications, resulting in a high threshold for application construction, and insufficient guidance from existing tools to users, resulting in inefficient application generation.
Provide an application construction method, by receiving user demand information, using pre-generated application construction templates, guiding users to input parameter values, and adding or supplementing parameter values to the template, combining the agent framework, large model knowledge base and component list library to build target applications.
It improves the efficiency of application construction, solves the problem of insufficient guidance in the process of inputting parameter information, and provides more choices in resource selection to ensure the integrity and stability of application construction.
Smart Images

Figure CN120491952A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of artificial intelligence (AI) technology, and in particular to an application construction method and computing device. Background Art
[0002] With the development of big model technology, applications based on big models are becoming increasingly widespread across various fields. These applications can replace humans in processing relatively clear data and tasks, and provide highly accurate predictions and analysis. In particular, they demonstrate enormous potential in the enterprise office sector and in the daily lives of individual consumers.
[0003] Enterprise and consumer users need to build applications that meet their needs. However, these users often face the challenge of requiring high levels of expertise. Building and optimizing applications often requires deep knowledge of machine learning and data science, creating a high barrier to entry for non-professionals. Therefore, simplifying application development is a pressing issue in order to increase the accessibility of applications. Summary of the Invention
[0004] The embodiments of the present application provide an application construction method and computing device, which can guide users to build target applications and improve application construction efficiency.
[0005] In a first aspect, an embodiment of the present application provides a method for generating an application, comprising: receiving user demand information, the user demand information being used to request construction of a target application; adding parameter values related to construction of the target application contained in the demand information to corresponding parameter items in an application construction template to obtain a first application construction template, the application construction template including one or more parameter items required to construct the target application; interacting with a user based on parameter items in the first application construction template to which parameter values have not been added, to guide the user to input supplementary parameter values to be added to parameter items to which parameter values have not been added; adding the supplementary parameter values to parameter items in the first application construction template to which parameter values have not been added to obtain a second application construction template; and constructing the target application based on the second application construction template.
[0006] In this way, based on the pre-generated application building template, the user can be guided to enter the parameter values required to build the target application, thereby solving the problem of insufficient guidance for the user when entering the parameter information corresponding to the target application when building the target application.
[0007] In one possible implementation, adding parameter values related to building a target application contained in the requirement information to corresponding parameter items in an application construction template to obtain a first application construction template includes: extracting parameter values corresponding to the parameter items from the requirement information based on the parameter items in the application construction template; and adding the parameter values to the parameter items. By adding the parameter values extracted from the user requirement information to the corresponding parameter items in the application construction template, during the subsequent target application construction process, it can be determined whether the complete parameter information required to build the target large model application has been obtained by determining whether the parameter values corresponding to the parameter items in the application construction template are empty.
[0008] In one possible implementation, the method further includes: if the first application construction template does not contain any parameter items without added parameter values, constructing the target application based on the first application construction template. Thus, the absence of any parameter items without added parameter values in the first application construction template indicates that the first application construction template contains the parameters necessary to construct the target application. In this case, the target application can be directly constructed based on the first application construction template.
[0009] In one possible implementation, the method further includes: when there are parameter items without added parameter values in the first application construction template, and the user has not entered a supplementary parameter value, supplementing the parameter values corresponding to the parameter items without added parameter values in the first application construction template with default values to obtain a second application template; and constructing the target application based on the second application construction template. In this way, when the parameter values required to construct the target application have not been fully collected, and the user has not entered the parameter values corresponding to the parameter items without added parameter values in the first application template, the parameter values corresponding to the parameter items without added parameter values in the first application template can be directly supplemented with default values. This ensures that the target application can be successfully constructed even if the user enters partial parameter values.
[0010] In a possible implementation, the parameter items include at least: application name, application function, application example, and application operation process. In this way, the parameter items in the application construction template include the parameters necessary for building the target application.
[0011] In one possible implementation, the second application construction template also includes resource categories required for building the target application; building the target application based on the second application construction template includes: obtaining resources corresponding to the target application based on parameter items in the second application construction template; adding the obtained resources corresponding to the target application to the second application construction template; and generating the target application based on the resources stored in the second application construction template. Thus, by providing the resource categories required for building the target application in the application construction template, resources of the corresponding resource categories can be generated during the construction of the target application.
[0012] In one possible implementation, based on the parameters saved in the application construction template, resources corresponding to the target application are obtained, including: based on the parameter items in the second application construction template, selecting the target intelligent agent framework from the intelligent agent framework knowledge base, the intelligent agent framework is used to provide the tools, specifications and optimization mechanisms required in the target application construction process; based on the parameter items in the second application construction template, selecting the target large model from the large model knowledge base, the target large model can be a single modal model or a multimodal model; based on the parameter items in the second application construction template, selecting at least one target component from the component list library, the target component is the knowledge base or tool corresponding to the target application; based on the parameter items in the second application construction template, generating a target prompt word, the target prompt word is used to guide the target application to output content that meets the user's requirements. In this way, when generating the target application, by providing a resource library for constructing the target model (for example, an intelligent framework knowledge base, a large model knowledge base, a component list library, etc.), the problem of single resource selection in the target application construction process is solved.
[0013] In one possible implementation, generating a target prompt word based on a parameter item in a second application construction template includes: selecting a first prompt word template from a prompt word template library based on the parameter item in the second application construction template; and generating the target prompt word based on the parameter item in the second application construction template and the first prompt word template. Thus, by providing a prompt word template library, a target prompt word corresponding to the target application can be quickly generated during the construction process of the target application.
[0014] In one possible implementation, a target application is generated based on the resources saved in the second application construction template, including: building an agent corresponding to the target application based on the target agent framework; integrating the agent, the target large model, at least one target component and the target prompt word into the agent framework to build the target application.
[0015] In one possible implementation, the method further includes: if the user-entered requirement information is irrelevant to the target application, outputting interactive information based on a pre-built exception handling function, where the interactive information is used to guide the user to enter requirement information relevant to the target application. Thus, by constructing an exception handling function, if the user-entered requirement information is irrelevant to the target application (i.e., when an exception occurs), the user is guided back to the question related to building the target application, thereby improving the stability and maintainability of the application construction system.
[0016] On the second aspect, an embodiment of the present application provides a method for constructing an application, including: interacting with a user at least once and collecting user demand information during each interaction; based on the collected user demand information, selecting resources for constructing a target application for the user and outputting the resources; with user confirmation, constructing the target application based on the resources; wherein, during any interaction, the collected user demand information is judged; when the parameters in the collected user demand information do not meet the requirements for constructing the target application, during the interaction with the user, the user is guided to input the parameters required for constructing the target application; when the parameters in the collected demand information meet the requirements for constructing the target application, the interaction with the user is stopped.
[0017] In a third aspect, an embodiment of the present application provides a computing device, including:
[0018] at least one memory for storing a program;
[0019] At least one processor is used to execute the program stored in the memory. When the program stored in the memory is executed, the processor is used to execute the method described in the first aspect or any possible implementation of the first aspect.
[0020] In a fourth aspect, an embodiment of the present application provides a computer storage medium, in which instructions are stored. When the instructions are executed on a computer, the computer executes the method described in the first aspect or any possible implementation of the first aspect.
[0021] In a fifth aspect, an embodiment of the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method described in the first aspect or any possible implementation of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0023] Figure 1a-Figure 1c A schematic diagram for setting up an interface for a generated application;
[0024] Figure 2 A schematic diagram of the structure of an application construction system provided in an embodiment of the present application;
[0025] Figure 3 A schematic diagram of the structure of an information collection module provided in an embodiment of the present application;
[0026] Figure 4 A schematic diagram of the structure of an application building module provided in an embodiment of the present application;
[0027] Figure 5 A schematic diagram of the structure of a prompt word provided in an embodiment of the present application;
[0028] Figures 6a-6c Schematic diagram of application scenarios provided by embodiments of the present application;
[0029] Figure 7 A schematic diagram of a generation process of an application provided in an embodiment of the present application;
[0030] Figure 8 A schematic diagram of a flow chart of a method for generating an application provided in an embodiment of the present application;
[0031] Figure 9 A schematic diagram of an application generation device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0032] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.
[0033] In the description of the embodiments of this application, any embodiment or design scheme using "exemplary," "for example," or "for example" should not be understood as being more preferred or advantageous than other embodiments or designs. Rather, the use of words such as "exemplary," "for example," or "for example" is intended to present the relevant concepts in a concrete manner.
[0034] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly identifying the technical features being referred to. Thus, features specified as "first" or "second" may explicitly or implicitly include one or more of such features. The terms "include," "comprising," "having," and their variations all mean "including but not limited to," unless otherwise specifically emphasized.
[0035] Before introducing this solution, the technical terms used in this solution are first introduced.
[0036] (1) Enterprise knowledge base
[0037] An enterprise knowledge base is a system or platform used within an enterprise to store, manage, and share knowledge resources. It contains a wide range of documents, such as policies, procedures, manuals, and training materials. It also captures the lessons learned from various projects and tasks, helping employees solve difficult problems.
[0038] (2) Large language model (LLM)
[0039] The large language model is an ultra-large-scale language model built based on deep learning technology. It uses deep learning algorithms to train on large amounts of text data to learn language patterns and structures, so that it can understand and generate natural language text.
[0040] Large language models typically contain tens or even hundreds of billions of parameters. By training on massive amounts of text data, they can grasp the grammatical, semantic, and logical structure of a language. Their core principle is to leverage the powerful computing power of neural networks to simulate the human brain's language processing. Compared to smaller language models, large language models excel at handling complex tasks and possess "emergent capabilities," such as contextual learning.
[0041] (3) Prompt
[0042] Prompt words refer to input text used to guide or stimulate the model to perform specific tasks. The purpose is to help the model understand the type of task the user wants to perform or the required output format.
[0043] Prompt words usually have the following functions:
[0044] Provide context: Help the model understand the context and semantics of the problem.
[0045] Specify the task: Tell the model what action to perform. For example, answer questions, generate content, translate, etc.
[0046] Guided output: Through the structure and content of prompt words, guide the model to generate text that better meets user expectations.
[0047] (4) Retrieval-augmented generation (RAG)
[0048] Retrieval enhancement is a technical framework that combines information retrieval technology and language generation models. It aims to enhance the output quality and accuracy of large language models by retrieving relevant information from external knowledge bases.
[0049] The RAG framework consists of three main components: retriever, augmenter, and generator. The retriever is responsible for retrieving documents or information fragments related to the user query from the external knowledge base. The retriever is usually based on semantic similarity calculation and can quickly find the context most relevant to the question. The augmenter integrates the retrieved information with the user input to form an enhanced context input, providing richer background knowledge for the generator. The generator uses the enhanced context to generate the final output text to ensure the accuracy and contextual relevance of the generated content.
[0050] In this embodiment of the present application, for enterprise users, search enhancement technology can be used to recall answers related to the questions input by enterprise users from the configured enterprise knowledge base. After the answers are combined with the prompter and input into the big model, they can help the big model better answer the user's questions.
[0051] (5) Global variables
[0052] A global variable is a variable defined in the global scope of a program, usually declared outside any function or code block. It can be accessed and modified from anywhere in the program.
[0053] (6) Agent
[0054] An intelligent agent is an entity that can perceive its environment and take autonomous actions to achieve specific goals. It can be a software program, a robot, or another form of system. It possesses fundamental characteristics such as autonomy, interactivity, responsiveness, and adaptability.
[0055] (7) Application Building Template
[0056] An application building template describes the information needed to build an application and the information the application should include. During the application building process, after selecting the application template that corresponds to the application you want to build, you can collect application information based on the selected application building modules and test the application building results.
[0057] For example, the application building template may be as follows:
[0058] #Application Information Collection
[0059] Application name = []
[0060] Application function = []
[0061] Example = [ ]
[0062] Application operation process【】
[0063] #Process Control
[0064] Application information collection ended = false / true
[0065] #Application build results
[0066] Prompt word = [ ]
[0067] Knowledge Base = []
[0068] Tools = []
[0069] Large model = []
[0070] Agent framework = []
[0071] #Process Control
[0072] Application build completed = false / true
[0073] The application building template includes an "Application Information Collection" section and an "Application Building Results" section. "Application Information Collection" is used to represent the multiple pieces of information (parameter items) required to build the application. Each parameter item includes a parameter name and a parameter value. In the application building template, the parameter name can be a fixed value, and the parameter value is a variable. For example, in "Application Name = [Doctor Assistant]", "Application Name" is the parameter name, and "Doctor Assistant" is the parameter value.
[0074] The "Application Information Collection" section also includes an application information collection end flag, wherein the application information collection end flag includes two states: true and false. Initially, the default application information collection end flag is false.
[0075] The "Application Build Results" section represents the application architecture of the built application, specifically the various resources required by the application. Each resource consists of a resource category and a resource instance. In the application build template, resource categories are fixed values, while resource instances are variables. For example, in "Knowledge Base = [XX Enterprise Knowledge Base]," "Knowledge Base" is the resource category, and "XX Enterprise Knowledge Base" is the resource instance.
[0076] The "Application Build Results" section also includes an application build completion flag. This flag has two states: true and false. Initially, the default value is false. After all components of the application (e.g., prompt words, knowledge base, tools, large model, and agent framework) are selected / generated, the flag can be set to true.
[0077] Next, this solution is introduced.
[0078] The application building process includes selecting an agent framework, constructing prompts, selecting / building a knowledge base, choosing tools to use with the model, selecting a large model, and selecting components. Typically, building a large model can be simplified to selecting components. For example, the application building process can be described as: selecting an agent framework, constructing appropriate prompts, and selecting appropriate tools, knowledge base, and large model.
[0079] When building an application, the user can use the application generation tools provided by existing manufacturers to automatically generate the application. For example, when building an application, the user can enter the application requirements on the setting interface. Then, the application generation tool automatically selects components that match the user's requirements based on the user's input requirements description and generates the application based on the selected components. For example, Figure 1a A schematic diagram of the setting interface of an automatically generated application is shown. Figure 1a As shown, users can set up the application to be generated in the settings interface. For example, the user needs to create an application to realize the function of an assistant. The user can enter the assistant's avatar in the avatar column of the settings interface, enter the assistant's name in the assistant name column, and enter a description of the task that the assistant needs to complete in the task column. For example, "You are XX, have XX experience, and are good at XX...; your task is XX, and you need to follow the steps below: 1.XX, 2.XX, 3...." After setting the function of the application to be generated, the user can also set the configuration information of the application to be generated. For example, Figure 1b FIG. 1 shows another schematic diagram of the setting interface of the automatic generation application. Figure 1b As shown, the user can describe the application to be generated in the setting interface, and then the application generation tool generates an application that matches the user description. Figure 1c FIG. 1 shows another schematic diagram of the setting interface of the automatic generation application. Figure 1c As shown, users can describe the character settings, functions and workflow of the application to be generated in the settings interface. Then, the application generation tool can generate an application that matches the user's description.
[0080] Although application generation tools provided by various vendors can automatically generate applications, they often lack user guidance during the generation process, resulting in only a simple description on the setup screen, which provides little guidance for subsequent application generation. Furthermore, application generation tools typically generate applications based on a general intelligent agent framework, failing to select an intelligent framework based on the type of application the user is looking to generate.
[0081] The embodiment of the present application provides a method for generating an application, which can guide users to build applications and improve the efficiency of application construction.
[0082] For example, Figure 2 FIG. 1 shows a schematic diagram of the structure of an application construction system provided in an embodiment of the present application. Figure 2 As shown, it includes: an information collection module 210, an application construction module 220 and an information storage module 230.
[0083] The information storage module 230 is used to store template information, knowledge bases, and other information needed during the application construction process. For example, the information storage module 230 may include application construction templates, an agent framework knowledge base, a large model knowledge base, a prompt word template library, and a component list library. The application construction template guides the information collection module 210 in collecting relevant information for application construction and guides the application construction module 220 in building the application.
[0084] Information collection module 210 is used to collect user requirement information, including information related to the target application to be built. After obtaining the user requirement information, information collection module 210 also stores the target application-related information contained in the requirement information as global variables in information storage module 230. Exemplarily, information collection module 210 may include: user interaction module 211, information extraction module 212, integrity assessment module 213, and exception handling module 214.
[0085] For example, Figure 3 As shown, the user interaction module 211 is used to interact with the user to obtain user demand information. After obtaining the user demand information, the user interaction module 211 can send the obtained demand information to the information extraction module 212 for information extraction.
[0086] The information extraction module 212 is configured to extract information related to the target application from the user-input requirement information based on the application construction template stored in the information storage module 230, and add the extracted target application-related information to the application construction template to obtain a first application construction template. For example, the information extraction module 212 may extract parameter values corresponding to the application name from the user-input requirement information, and may add the extracted parameter values corresponding to the application name to the application name in the application construction template.
[0087] In a possible example, when the information extraction module 212 initially adds the extracted parameter values corresponding to the target application to the application construction template, it needs to initialize the application construction template, that is, initialize the variables in the application construction template to empty.
[0088] The integrity judgment module 213 is used to judge the extracted parameters related to building the target application to determine whether all parameter items required to build the target application have been extracted. For example, each time the information extraction module 212 fills the extracted information into the parameter items corresponding to the application construction template, it triggers the integrity judgment module 213 to judge the parameter items in the application information collection section of the application template. When the parameter values corresponding to the parameter items in the application information collection section are not empty, the integrity judgment module 213 will modify the application information collection end flag to true and trigger the application construction module 220 to build the target application based on the parameters in the application construction template.
[0089] If any parameter item corresponding to the application information collection portion has an empty parameter value, integrity assessment module 213 triggers user interaction module 211 to continue interacting with the user to obtain the parameter values required to build the target application. Exemplarily, integrity assessment module 213 may trigger user interaction module 211 to output a prompt message containing a parameter name, where the parameter value corresponding to the parameter name in the application construction template is empty.
[0090] In one possible example, Figure 3 As shown, when integrity assessment module 213 detects that the parameter value corresponding to "application operation process" in the application construction template is empty, integrity assessment module 213 triggers user interaction module 211 to output a prompt message containing "application operation process." For example, user interaction module 211 may output the prompt message "How does XX application work?" to guide the user to enter the operation process of XX application.
[0091] Exception handling module 214 is used to handle exceptions that occur during the information collection process of information collection module 210. For example, when information extraction module 212 identifies that the user-entered requirement information is not relevant to building the target application, information extraction module 212 can trigger exception handling module 214 to perform exception handling. Exception handling module 214 can also trigger interaction module 211 to interact with the user, guiding the user to enter information relevant to the target application.
[0092] In one possible example, some exception handling functions can be pre-built according to user needs, and the exception handling functions can be associated with the exception problem handling module 214. In this way, when the exception problem handling module 214 detects an exception, the corresponding exception handling function can be called to execute specific processing logic, thereby improving the stability and maintainability of the system.
[0093] In one possible example, the information collection module 210 may be implemented by an agent.
[0094] Application construction module 220 is used to construct the target application based on the information related to the target application collected by information collection module 210 and add the construction results to information storage module 230. For example, application construction module 220 may obtain the resources required to build the target application based on multiple parameter items stored in the application construction template. Application construction module 220 then adds the obtained resources related to the target application to the application construction template according to different resource categories. After application construction module 220 has obtained all the resources required to build the application, it may modify the application construction completion flag in the application construction template to true.
[0095] For example, Figure 4 As shown, the application construction module 220 may include a prompt word generation expert 221, a large model evaluation expert 222, a component selector 223, and an agent framework selector 224. The application construction module 220 can obtain the resources required to build the target application based on the parameters in the application construction template. For example, the application construction module 220 can generate appropriate prompt words, select an appropriate large model, bind tools, and select an agent framework based on the parameters in the application construction template.
[0096] Among them, the prompt word generation expert 221 is used to generate a suitable prompt word (prompt) for the target application, wherein the prompt word is used to guide the target application to output content that meets the user's requirements. Exemplarily, the prompt word generation expert 221 can select a suitable prompt template for the user from the prompt word template library based on multiple parameter items stored in the application construction template. In a possible example, the prompt word generation expert 221 can select a suitable prompt from the prompt word template library based on one or more aspects of the role (role), background (background), profile (profile), skill (skill), goal (goals), constraints (constraints), output format (output format), workflow (workflow), and examples (examples) corresponding to the target application.
[0097] It is understandable that prompt templates corresponding to different scenarios can be stored in the prompt word template library in advance. The prompt word generation expert 221 selects a prompt template that matches the scenario corresponding to the target application from the prompt word template library based on the parameters in the application construction template. Then, the prompt word generation module 211 generates the prompt word corresponding to the target application based on the parameters in the application construction template. As a possible implementation method, the prompt template can be as follows: Figure 5As shown in (A), it includes a system message prompt (system_message_prompt) part, a few-shot example (few-shot example) part, and a user message prompt (human_message_prompt) part. Among them, the system message prompt is the beginning part of the prompt, which is used to define the background, objectives and overall requirements of the task. Its function is to set a clear framework for the model and ensure that the generated content conforms to a specific style, format or theme. Few-shot examples are some specific cases provided in the prompt, which are used to show the model the expected output format and style. These examples can help the model better understand the specific requirements of the task, especially when the task is more complex or requires a specific format. The user message prompt is the last part of the prompt, which is usually a specific task instruction or question used to guide the model to generate actual output content. It needs to be clear and specific to ensure that the model can understand the user's needs. Based on Figure 5 The prompt word template shown in (A) can be obtained as follows Figure 5 The prompt word shown in (B) in the figure.
[0098] The big model evaluation expert 222 can select a suitable big model for the target application from the big model knowledge base based on the parameters in the application construction template, wherein the big model can be a unimodal model or a multimodal model. In one possible example, the big model evaluation expert 222 can select a suitable big model from the big model knowledge base based on one or more aspects of the role, background, profile, skill, goal, constraint, output format, workflow, and examples corresponding to the target application. For example, the role corresponding to the target application is "work assistant", because the "work assistant" needs to communicate with the user to obtain the user's tasks that need to be processed. Therefore, the big model evaluation module can select a big language model from the big model knowledge base.
[0099] The component selector 223 can select appropriate components for the target application from the component list library based on the parameters in the application construction template. In one possible example, the component selector 223 can select the components required to build the target application from the component list library based on one or more aspects of the role, background, profile, skill, goal, constraint, output format, workflow, and examples corresponding to the target application. For example, the component selector 223 can select the database (relational database or non-relational database) corresponding to the target application from the component list library based on the storage requirements corresponding to the target application.
[0100] The agent framework selector 224 can select a suitable agent for the target application from the agent framework knowledge base based on the parameters in the application building template. In one possible example, the agent framework selector 224 can select a suitable agent framework from the agent framework knowledge base based on one or more aspects of the role, background, profile, skill, goal, constraint, output format, workflow, and examples corresponding to the target application.
[0101] After obtaining the agent framework, large model, components, and prompts required to build the target application, the application construction module 220 can construct an agent corresponding to the target application based on the agent framework. The application construction module can then integrate the agent, large model, components, and target prompts corresponding to the target application into the agent framework corresponding to the target application to build the target application.
[0102] It can be understood that the agent framework refers to the thinking and execution model framework of the agent. The agent framework determines how the agent operates to meet user needs. For example, agent framework A can adopt a cyclic thinking execution form. When an application built based on agent framework A receives a task, the model can determine the tasks for each loop and execute the tasks. Then, based on the data obtained from executing the task, the next thinking and execution cycle will be entered until the task is completed or the maximum number of loops is exceeded. When building the target application, you can also select a dedicated agent suitable for the task type based on the task type that the target application needs to perform.
[0103] In one possible example, the application building module 220 can be implemented by an agent. For example, the application building module 220 can be a RAG-based agent. It is understood that the RAG-based agent uses the RAG system as a "tool" for the agent by introducing an agent framework (for example, integrating the RAG engine as a tool into the agent). This architecture not only retains the basic query capabilities of RAG, but can also handle more complex tasks, such as multi-document retrieval, cross-document comparison, and information integration.
[0104] It should be understood that the application construction system described above can be configured on a computing device, which can be a terminal device or a server. When the computing device is a server, the user can access the server through the browser on the terminal and implement application construction through the server. For example, Figure 6a As shown, when a user needs to use the application building service, a configuration interface can be provided through the terminal device. The user can enter the required information of the application to be built in the configuration interface. Then, the terminal device can send the required information entered by the user to the server so that the server can build an application that meets the user's needs. When the computing device is a terminal device, the user can directly build the application through the application building system configured on the terminal device. For example, Figure 6b As shown, when a user needs to use the application building service, he can enter the application requirement information to be built through the configuration interface displayed on the terminal device. Then, the terminal device can build an application that meets the user's needs based on the user's requirement information.
[0105] The application construction system described above can also be, but is not limited to, configured on a cloud computing platform. For example, it can be deployed on at least one virtual machine or container instance, so that the cloud computing platform can provide application construction services. Of course, the application construction system can also be configured on nodes other than the cloud computing platform. For example, it can be deployed in at least one data center, or on at least one server. The specific details can be determined according to the actual situation and are not limited here. Among them, the cloud computing platform can provide pages related to public cloud services for tenants to remotely access public cloud services. In this embodiment, tenants (also referred to as "users") can purchase application construction services that can be provided by the application construction system on the cloud computing platform in advance. For ease of understanding, the interaction between tenants and the cloud computing platform is described below. As Figure 6cAs shown, the interaction between the tenant and the cloud computing platform mainly includes: the tenant logs in to the cloud computing platform 600 through the client webpage, selects and purchases cloud services related to the application construction system (i.e., application construction services) in the cloud computing platform 600. After the purchase, the tenant can build applications on the cloud computing platform 600 based on the functions provided by the application construction services. Among them, the cloud computing platform 600 is mainly used to manage the infrastructure for running the application construction services. Exemplarily, the infrastructure for running the application construction services may include multiple data centers located in different regions, each data center including multiple servers. The data centers can provide basic resources for the application construction services, such as computing resources and storage resources. Therefore, when purchasing and using the application construction services, the tenant mainly pays for the resources used. When using the application construction services, the tenant can input data related to the application generation to be generated through the configuration interface, application program interface (API) or interface for interaction with the tenant provided by the cloud computing platform 600. The cloud computing platform 600 can then generate the application according to the tenant's input.
[0106] In an embodiment of the present application, the application construction template stored in the storage module 230 can provide basic parameters for constructing the target application. Based on the application construction template, the application information collection module 210 can guide the user to provide the complete parameters required to construct the target application. This solves the problem of insufficient guidance for users when entering parameter information corresponding to the target application when constructing the target application. Secondly, during the construction of the target application, based on the application construction template, the resources required to construct the target application can be selected from the resource library in the storage module 230, which solves the problem of single resource selection during the construction of the target application.
[0107] Next, a method for generating an application provided by an embodiment of the present application is introduced with a specific example. For example, in the initialization phase, the user needs to start the application construction system. In one possible example, the user can double-click the shortcut icon corresponding to the application construction system on the display interface corresponding to the computing device to start the application construction system. In another possible example, the user can also access the web page address of the application construction system through a browser to start the application construction system. After the user starts the application construction system, a window or interface (dialogue interface) can be displayed on the display interface of the computing device, and the user can interact with the application construction system through the dialogue interface.
[0108] For example, Figure 7As shown, in step 701, after the user starts the application building system, the information collection agent can obtain user requirement information. The user requirement information may include one or more of the following: the application name, application functions, examples, application operation process, application-related knowledge base, and external tools corresponding to the target application that the user needs to build.
[0109] In one possible example, an information collection agent can collect parameters corresponding to a target application through a dialogue interface. In response to a user opening the application building system, the information collection agent can enter a query ("What kind of application do you want to build?") in the dialogue interface to guide the user to enter parameters corresponding to the target application.
[0110] In step 702, after the information collection agent obtains the user demand information, the information collection agent can extract the parameter values related to the target application from the user demand information, and save the extracted parameter values to the information storage module 230. For example, the information collection agent can add the extracted parameter values corresponding to the target application to the application construction template, wherein the application framework template can be saved in the information storage module 230. Then, the information collection agent can also determine whether the parameters required to build the target application have been collected (that is, whether there are parameter items with empty parameter values in the application construction template). In the case that the parameters required to build the target application have not been fully collected, the information collection agent can output guidance information in the dialogue interface to guide the user to enter the parameter values corresponding to the parameter items with empty parameter values in the application construction template.
[0111] In one possible example, if the parameter value corresponding to "application function" in the application building template is empty, the information collection agent can output a guiding message in the dialogue interface: "What function do you want the target application to achieve?"
[0112] After the information collection agent determines that the parameters required for building the target application have been collected, the information collection agent can trigger the application building agent to build the target application. The process of building the target application may include: steps 703 to 705.
[0113] In step 703, the application construction agent can select the resources required to build the target application based on the parameter items in the application construction template saved in the information storage module 230. For example, the prompt word generation expert 221 in the application construction agent can generate prompt words corresponding to the target application based on multiple parameter items in the application construction template. The large model evaluation expert 222 in the application construction agent can select the large model corresponding to the target application from the large model knowledge base based on multiple parameter items in the application construction template. The component selector 223 in the application construction agent can select the component corresponding to the target application from the component list library based on multiple parameter items in the application construction template. The agent framework selector 224 in the application construction agent can select the corresponding agent framework of the target application from the agent framework knowledge base based on multiple parameter items in the application construction template.
[0114] In step 704, after the application building agent generates / selects the resources corresponding to the target application, it may also output the resources corresponding to the target application to the dialogue interface. The user may modify or confirm the resources corresponding to the target application through the dialogue interface. If the user has not modified the resources corresponding to the target application, the user may enter a confirmation message in the dialogue interface.
[0115] In one possible example, if a user modifies the resources corresponding to a target application, the application-building agent can update the resources corresponding to the target application based on the user's modifications. After updating the resources corresponding to the target application, the application-building agent can also output the updated resources corresponding to the target application to the dialogue interface. The user can confirm the updated resources through the dialogue interface.
[0116] In step 705, the application construction agent responds to the confirmation information input by the user, and the application construction agent can build the target application based on the resources corresponding to the target application.
[0117] Next, based on the above content, a method for generating an application provided in an embodiment of the present application is introduced.
[0118] For example, Figure 8 The flowchart of a method for generating an application provided by an embodiment of the present application is shown. It can be understood that the method can be executed by any device, equipment, platform, or device cluster with computing and processing capabilities. Exemplarily, the method can be executed by an application generation device, wherein the device can be implemented by software and / or hardware and can be, but is not limited to, configured in a computing device or server. For ease of description, the following is introduced with a computing device as the execution subject. Figure 8 As shown, the application generation method may include:
[0119] Step 801: Receive user demand information, wherein the user demand information is used to request construction of a target application.
[0120] In this embodiment, the computing device can receive user requirement information. The user requirement information can include parameters required for building a target application. For example, the requirement information can include parameter values corresponding to parameters such as the application name, application function, examples, application operation process, and external knowledge bases and external tools involved in the application. The application name, application function, examples, and application operation process are essential parameters.
[0121] In one possible example, an interactive interface may be displayed on a display of a computing device, and a user may input requirement information for a target application in the interactive interface.
[0122] Step 802: Add the parameter values related to building the target application contained in the requirement information to the corresponding parameter items in the application building template to obtain a first application building template, wherein the application building template contains one or more parameter items required to build the target application.
[0123] In this embodiment, after receiving the user requirement information, the computing device may perform a preliminary judgment on the user requirement information to determine whether the user requirement information is relevant to the target application construction. If it is determined that the user requirement information is relevant to the target application, the computing device may extract parameter values corresponding to parameters related to the construction of the target application contained in the user requirement information, and add the extracted parameter values to the corresponding parameter items in the application construction template to obtain the first application construction template.
[0124] In one possible example, after receiving user demand information regarding a target application, a computing device may identify the user's intent based on the user demand information and determine whether the user's intent is related to application development. The computing device may identify the user's intent in a variety of ways. For example, the computing device may identify the user's intent from the demand information input by the user based on a rule-matching method. For example, a keyword table may be pre-established (the keyword table may include keywords such as application, development, function, interface, design, and framework) and the user demand information may be matched against the keyword table to identify the user's intent. For example, if the demand information includes "development," the intent corresponding to the user demand information may be identified as application construction. For example, the computing device may also pre-process the user demand information. The computing device may then input the pre-processed user demand information into a pre-trained intent recognition model to obtain the user intent corresponding to the user demand information. Pre-processing the user demand information may include cleaning and normalizing the user demand information, such as removing punctuation, converting to lowercase, segmenting words, and removing stop words.
[0125] After the computing device determines that the user requirement information is relevant to the application construction, the computing device may extract parameter values corresponding to parameters related to the target application from the user requirement information.
[0126] In one possible example, the computing device can extract parameter values related to the target application from the requirement information based on the parameter items in the application construction template stored in the computing device, and add the parameter values to the corresponding parameter items in the application construction template. That is, the parameter values extracted from the user requirement information correspond to the parameter names corresponding to the parameter items in the application construction template. The application construction template illustrates the parameter items necessary for building the application, and each parameter item corresponds to a parameter name and a parameter value. Exemplarily, the application construction template can be pre-generated, and initially, the parameter value corresponding to each parameter item in the application construction template is empty. Alternatively, initially, each parameter item in the application construction template corresponds to a default parameter value.
[0127] Step 803: Based on the parameter items of the first application construction template to which no parameter values are added, interact with the user to guide the user to input supplementary parameter values to be added to the parameter items to which no parameter values are added.
[0128] In this embodiment, after obtaining the first application construction template, the computing device may also determine whether there are parameter items in the first application template that do not have parameter values added. If there are parameter items in the first application construction template that do not have parameter values added, it indicates that the parameter values required to build the target application have not yet been collected. At this time, the computing device may interact with the user based on the parameter items in the first application construction template that do not have parameter values added, so as to guide the user to input supplementary parameter values to be added to the parameter items that do not have parameter values added. For example, the computing device may output the prompt Western Sydney, and the prompt information carries a parameter name corresponding to at least one parameter item. The parameter value corresponding to the parameter name in the first application construction template is empty.
[0129] If the first application construction template does not have any parameter items to which parameter values are not added, then the computing device may construct the target application based on the first application construction template.
[0130] Step 804 : Add the supplementary parameter value to the parameter item in the first application construction template to which no parameter value is added, to obtain a second application construction template.
[0131] In this embodiment, the computing device receives supplementary information input by the user. If the supplementary information input by the user includes parameter values corresponding to parameter items to which parameter values have not been added in the first application construction template, the computing device extracts the parameter values from the supplementary information input by the user, and adds the extracted parameter values to the corresponding parameter items to which parameter values have not been added in the first application construction template to obtain a second application construction template.
[0132] If the supplementary information input by the user does not include the parameter values corresponding to the parameter items in the first application construction template to which no parameter values have been added, the extreme device can add the parameter values corresponding to the parameter items in the first application construction template to the default values to obtain the second application construction template.
[0133] It is understandable that the supplementary information input by the user may refer to the supplementary information input by the user in one interaction process, or may refer to the supplementary information output by the user in multiple interaction processes.
[0134] Step 805: Build a target application based on the second application building template.
[0135] In this embodiment, if the parameter values corresponding to the parameter names in the application construction template are not empty, it indicates that the parameters required to build the target application have been collected. The computing device can build the target application based on the parameters stored in the application construction template. The computing device obtains a second application construction template by interacting with the user. Because the second application construction template contains the parameter values necessary to build the target application, the computing device can build the target application based on the second application construction template.
[0136] In one possible example, the second application construction template may also include resource categories required to build the target application. The resource categories in the second application construction template can guide the computing device in determining which categories of resources to generate during the process of building the target application. For example, the computing device may obtain resources corresponding to the target application based on parameter items in the second application construction template and add the obtained resources to the second application construction template according to different categories. The computing device then builds the target application based on the resources stored in the second application construction template.
[0137] In one possible example, when the computing device can obtain resources corresponding to the target application based on the parameter items in the second application construction template, it can specifically include: the computing device selects a target intelligent agent framework from the intelligent agent framework knowledge base based on the parameter items in the second application construction template, wherein the target intelligent agent framework is used to provide the tools, specifications and optimization mechanisms required for the construction of the target application. The computing device can also select a target large model from the large model knowledge base based on the parameter items in the second application construction template, wherein the target large model can be a single modal model or a multimodal model. The computing device can also select at least one target component from the component list library based on the parameter items in the second application construction template. Exemplarily, the target component is a knowledge base or tool corresponding to the target application. The computing device can generate a target prompt word based on the parameter items in the second application construction template, wherein the target prompt word is used to guide the target application to output content that meets user requirements.
[0138] In one possible example, the computing device may select a first prompt word template from a prompt word template library based on the parameter items in the second application construction template, and then generate a target prompt word based on the parameter items in the second application construction template and the first prompt word template.
[0139] In one possible example, a computing device may construct an agent corresponding to a target application based on a target agent framework. The computing device then integrates the agent, the target macro model, at least one target component, and the target prompt word into the agent framework to construct the target application.
[0140] In one possible example, when the requirement information input by the user is not relevant to the target application, the computing device may output interaction information based on a pre-built exception handling function, wherein the interaction information is used to guide the user to input requirement information relevant to the target application.
[0141] In a possible example, the parameters and resources saved in the second application construction template are all global variables.
[0142] In an embodiment of the present application, basic parameter items for constructing a target application are provided through a pre-generated application construction template. And during the target application construction process, the user is guided to provide parameter values for constructing the target application based on the basic parameter items for constructing the target application provided in the application construction template. This solves the problem of insufficient guidance for users when entering parameter values corresponding to the target application when constructing the target application. Secondly, during the target application construction process, based on the pre-generated application construction template, the resources required for constructing the target application can be selected from the resource library in the storage module, which solves the problem of single resource selection during the target application construction process.
[0143] It is understood that the order of execution of the steps in the above embodiments does not necessarily imply a specific order of execution. The order of execution of each process should be determined by its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of this application. In addition, the various embodiments and technical features described above can be combined according to actual circumstances, and the combined solutions are still within the scope of protection of this application.
[0144] For example, the present application embodiment also provides an application generation device. Figure 9 As shown, the application generation device 900 includes: an interaction module 910, a processing module 920, and a storage module 930. The interaction module 910 is used to receive user demand information, wherein the user demand information is used to request the construction of a target application. The processing module 920 is used to add the parameter values related to the construction of the target application contained in the demand information to the corresponding parameter items in the application construction template to obtain a first application construction template, wherein the application construction template contains one or more parameter items required for building the target application, and the application construction template can be saved in the storage module 930; the interaction module 910 is also used to interact with the user based on the parameter items in the first application construction template to which parameter values are not added, so as to guide the user to input supplementary parameter values for adding to the parameter items to which parameter values are not added. The processing module is also used to add supplementary parameter values to the parameter items in the first application construction template to which parameter values are not added, to obtain a second application construction template. The processing module 920 is also used to construct the target application based on the second application construction template.
[0145] In some embodiments, the processing module 920 adds parameter values related to building the target application contained in the requirement information to corresponding parameter items in the application construction template to obtain the first application construction template, including: the processing module 920 extracts parameter values corresponding to the parameter items from the requirement information based on the parameter items in the application construction template. Then, the processing module 920 adds the parameter values to the parameter items.
[0146] In some embodiments, the processing module 920 is further configured to construct the target application based on the first application construction template when there is no parameter item without a parameter value added in the first application construction template.
[0147] In some embodiments, if the first application construction template contains parameter items without parameter values and the user has not entered additional parameter values, the processing module 920 is further configured to add the parameter values corresponding to the parameter items without parameter values in the first application construction template to the default values to obtain a second application template. The processing module 920 then constructs the target application based on the second application construction template.
[0148] In some embodiments, the parameter items include at least: application name, application function, application example, and application operation process.
[0149] In some embodiments, the second application construction template also includes resource categories required to construct the target application. Processing module 920 constructs the target application based on the second application construction template, including: processing module 920 obtains resources corresponding to the target application based on parameter items in the second application construction template, and adds the obtained resources corresponding to the target application to the second application construction template. Processing module 920 then generates the target application based on the resources stored in the second application construction template.
[0150] In some embodiments, the processing module 920 obtains resources corresponding to the target application based on the parameters saved in the application construction template, including: the processing module 920 selects the target intelligent agent framework from the intelligent agent framework knowledge base based on the parameter items in the second application construction template, and the intelligent agent framework is used to provide the tools, specifications and optimization mechanisms required in the target application construction process; the processing module 920 selects the target large model from the large model knowledge base based on the parameter items in the application construction template, and the target large model can be a single modal model or a multimodal model; the processing module 920 selects at least one target component from the component list library based on the parameter items in the application construction template, and the target component is the knowledge base or tool corresponding to the target application; the processing module 920 generates a target prompt word based on the parameter items in the application construction template, and the target prompt word is used to guide the target application to output content that meets user requirements.
[0151] In some embodiments, the processing module 920 generates a target prompt word based on the parameter items in the second application construction template, including: the processing module 920 selects a first prompt word template from a prompt word template library based on the parameter items in the second application construction template. Then, the processing module 920 generates the target prompt word based on the parameter items in the second application construction template and the first prompt word template.
[0152] In some embodiments, processing module 920 generates a target application based on resources stored in the second application construction template, including: processing module 920 constructing an agent corresponding to the target application based on a target agent framework. Processing module 920 then integrates the agent, the target macro model, at least one target component, and the target prompt word into the agent framework to construct the target application.
[0153] In some embodiments, the processing module 920 is further configured to output interaction information based on a pre-built exception handling function when the user input requirement information is irrelevant to the target application. The interaction information is configured to guide the user to input requirement information relevant to the target application.
[0154] Based on the method in the above embodiment, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program runs on a processor, the processor executes the method in the above embodiment.
[0155] Based on the method in the above embodiment, an embodiment of the present application provides a computer program product, characterized in that when the computer program product runs on a processor, the processor executes the method in the above embodiment.
[0156] Based on the methods in the above embodiments, embodiments of the present application provide a computing device comprising a motherboard and a chip. The chip is integrated on the motherboard and includes at least one memory for storing programs and at least one processor for executing the programs stored in the memory. When the programs stored in the memory are executed, the processor is configured to execute the methods in the above embodiments. In embodiments of the present application, the computing device may be a network device such as a server.
[0157] The method steps in the embodiments of the present application can be implemented by hardware or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, mobile hard disks, CD-ROMs or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC.
[0158] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted via the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state drive (SSD)).
[0159] It will be understood that the various numerical numbers involved in the embodiments of the present application are merely distinctions for the convenience of description and are not intended to limit the scope of the embodiments of the present application.
Claims
1. A method for constructing an application, characterized in that: include: receiving user demand information, wherein the user demand information is used to request construction of a target application; Adding parameter values related to building the target application included in the requirement information to corresponding parameter items in the application building template to obtain a first application building template, where the application building template includes one or more parameter items required to build the target application; interacting with the user based on the parameter items in the first application construction template to which no parameter values are added, so as to guide the user to input supplementary parameter values to be added to the parameter items to which no parameter values are added; Adding the supplementary parameter value to the parameter item in the first application construction template to which no parameter value is added, to obtain a second application construction template; The target application is constructed based on the second application construction template.
2. The method according to claim 1, characterized in that The step of adding the parameter values related to building the target application contained in the requirement information to corresponding parameter items in the application building template to obtain a first application building template includes: Extracting parameter values corresponding to the parameter items from the requirement information according to the parameter items in the application construction template; Add the parameter value to the parameter item.
3. The method according to claim 1, characterized in that The method further comprises: In a case where there is no parameter item without a parameter value added in the first application construction template, the target application is constructed based on the first application construction template.
4. The method according to claim 1, wherein The method further comprises: If there are parameter items without parameter values added in the first application construction template and the user does not enter a supplementary parameter value, the parameter values corresponding to the parameter items without parameter values added in the first application construction template are supplemented with default values to obtain a second application template; The target application is constructed based on the second application construction template.
5. The method according to any one of claims 1 to 4, characterized in that The parameter items include at least: application name, application function, application example, and application operation process.
6. The method according to any one of claims 1 to 5, characterized in that The second application construction template also includes resource categories required to construct the target application; The step of constructing the target application based on the second application building template includes: Acquire resources corresponding to the target application based on parameter items in the second application construction template; Adding the acquired resources corresponding to the target application to the second application construction template; The target application is generated based on the resources stored in the second application construction template.
7. The method according to claim 6, characterized in that The acquiring resources corresponding to the target application based on the parameter items in the second application construction template includes: Based on the parameter items in the second application construction template, select a target agent framework from an agent framework knowledge base, wherein the target agent framework is used to provide the tools, specifications, and optimization mechanisms required in the target application construction process; Selecting a target large model from a large model knowledge base based on the parameter items in the second application construction template; Based on the parameter items in the second application construction template, select at least one target component from a component list library, where the target component is a knowledge base or tool corresponding to the target application; Based on the parameter items in the second application construction template, a target prompt word is generated, where the target prompt word is used to guide the target application to output content that meets the user's requirements.
8. The method according to claim 7, characterized in that Generating the target application based on the resources stored in the second application building template includes: Based on the target agent framework, construct an agent corresponding to the target application; The intelligent agent, the target macro model, the at least one target component and the target prompt word are integrated into the intelligent agent framework to construct the target application.
9. The method according to any one of claims 1 to 8, characterized in that The method further comprises: In the case that the requirement information input by the user is not relevant to the target application, interaction information is output based on a pre-built exception handling function, where the interaction information is used to guide the user to input requirement information relevant to the target application.
10. A computing device, characterized in that include: Memory, used to store programs; A processor, configured to execute the program stored in the memory; when the program stored in the memory is executed, the processor is configured to execute the method according to any one of claims 1 to 9.