Low-code development method and device, electronic equipment, storage medium and program product
By using a generative large language model in a low-code development platform, converting natural language or images into interface description language and database management language, the problem of high threshold for use by existing platforms for non-technical personnel is solved, and a fast and convenient development experience is achieved.
Patent Information
- Application Number
- CN202311575478.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-23
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2043-11-23
AI Technical Summary
The existing low-code development platform has a high threshold for non-technical personnel, especially in terms of user interface customization and back-end data association, which is difficult to meet the actual needs of users.
By introducing a generative large language model, users' natural language or image-form development instructions are converted into interface description language and database management language, and the front-end interface is generated and the back-end database data is associated, reducing development complexity.
It can quickly generate the desired development results without professional development instructions, significantly lower the threshold for use of low-code development platforms and improve development efficiency and user experience.
Smart Images

Figure CN120045174A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of data processing technologies, specifically to artificial intelligence technology fields such as generative models, large language models, and low-code technologies. In particular, it relates to a low-code development method, apparatus, electronic device, computer-readable storage medium, and computer program product. Background Art
[0002] For platform users, in the current era of rapid informatization development, the market demand for internal system informatization from individuals and enterprises is increasing. However, the field of system platform construction usually has relatively high technical barriers for non-technical personnel, and can only meet the internal informatization needs by spending a high price to form an in-house R & D team or by purchasing a standardized platform system.
[0003] Currently, the existing low-code development platforms still have relatively high thresholds for users or low degrees of customization (especially at the detailed level of the user interface), and cannot effectively meet the actual needs of users. Summary of the Invention
[0004] Embodiments of the present disclosure provide a low-code development method, apparatus, electronic device, computer-readable storage medium, and computer program product.
[0005] In a first aspect, embodiments of the present disclosure provide a low-code development method, including: obtaining interface description information input as a front-end interface constituting a desired development result; inputting the interface description information as input information into a preset first generative large language model to obtain interface description language output by the first generative large language model; obtaining association indication information input as the association between back-end data and the front-end interface constituting the desired development result; inputting the association indication information as input information into a preset second generative large language model to obtain database management language output by the second generative large language model; generating a corresponding front-end interface according to the interface description language, and associating the front-end interface with corresponding database data according to the database management language to obtain the desired development result.
[0006] In a second aspect, embodiments of the present disclosure provide a low-code development device, including: an interface description information acquisition unit configured to acquire input interface description information for a front-end interface that constitutes a desired development result; an interface description language generation unit configured to input the interface description information as input information into a preset first generative large language model to obtain an interface description language output by the first generative large language model; an association indication information acquisition unit configured to acquire input association indication information for associating backend data and the front-end interface that constitutes the desired development result; a database management language generation unit configured to input the association indication information as input information into a preset second generative large language model to obtain a database management language output by the second generative large language model; and a desired development result generation unit configured to generate a corresponding front-end interface according to the interface description language and associate corresponding database data with the front-end interface according to the database management language to obtain the desired development result.
[0007] In a third aspect, embodiments of the present disclosure provide an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to implement the low-code development method described in the first aspect.
[0008] In a fourth aspect, embodiments of the present disclosure provide a non-transitory computer-readable storage medium storing computer instructions for enabling a computer to implement the low-code development method described in the first aspect when executed.
[0009] In a fifth aspect, embodiments of the present disclosure provide a computer program product including a computer program, and when the computer program is executed by a processor, it is enabled to implement the steps of the low-code development method described in the first aspect.
[0010] In order to minimize the difficulty and threshold of using a low-code development platform to implement platform or system development as much as possible, the low-code development solution provided by the present disclosure introduces the technology of generative large language models into the low-code development platform scenario, and by constructing a relatively small number of fine-tuning training samples and ranking samples, enables the low-code development platform to be able to convert development instructions input by users in the form of natural language or images into interface description languages and database management languages that are more convenient for computers to recognize and process through calling the trained generative large language models. Furthermore, it is possible to generate corresponding front-end interfaces based on the interface description languages, and implement the association and binding operations between front-end interface elements and backend database data based on the database management languages, thereby conveniently and quickly obtaining the desired development result. And since there is no need to input specialized development instructions, the use threshold of the low-code development platform is effectively reduced.
[0011] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Other features, objects, and advantages of the present disclosure will become more apparent by reading the detailed description of non-limiting embodiments with reference to the following drawings:
[0013] Figure 1 is an exemplary system architecture to which the present disclosure can be applied;
[0014] Figure 2 is a flowchart of a low-code development method provided by an embodiment of the present disclosure;
[0015] Figure 3 is a flowchart of a training method for a first generative large language model provided by an embodiment of the present disclosure;
[0016] Figure 4 is a flowchart of another training method for a first generative large language model provided by an embodiment of the present disclosure;
[0017] Figure 5 is a flowchart of a training method for a second generative large language model provided by an embodiment of the present disclosure;
[0018] Figure 6 is a flowchart of another training method for a second generative large language model provided by an embodiment of the present disclosure;
[0019] Figure 7 is a flowchart of a method for generating a front-end interface according to an interface description language provided by an embodiment of the present disclosure;
[0020] Figures 8-1 to 8-12 is a specific schematic diagram provided by an embodiment of the present disclosure specifically for the scenario of roadway diseases;
[0021] Figure 9 is a structural block diagram of a low-code development device provided by an embodiment of the present disclosure;
[0022] Figure 10 is a schematic structural diagram of an electronic device suitable for executing the low-code development method provided by an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0023] The following describes exemplary embodiments of the present disclosure with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, descriptions of well-known functions and structures are omitted in the following description for clarity and conciseness. It should be noted that, without conflict, the embodiments in the present disclosure and the features in the embodiments can be combined with each other.
[0024] In the technical solution of the present disclosure, the processing of the collection, storage, use, processing, transmission, provision, and disclosure of the user's personal information complies with the provisions of relevant laws and regulations and does not violate public order and good customs.
[0025] Figure 1 An exemplary system architecture 100 is shown in which embodiments of the low-code development method, apparatus, electronic device, and computer-readable storage medium of the present disclosure can be applied.
[0026] As Figure 1 shown, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.
[0027] Users can use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various applications for realizing information communication between the two may be installed on the terminal devices 101, 102, 103 and the server 105, such as low-code development applications, model training applications, instant messaging applications, etc.
[0028] The terminal devices 101, 102, 103 and the server 105 can be hardware or software. When the terminal devices 101, 102, 103 are hardware, they can be various electronic devices with a display screen, including but not limited to smart phones, tablet computers, laptop portable computers, and desktop computers, etc.; when the terminal devices 101, 102, 103 are software, they can be installed in the above-listed electronic devices, and they can be implemented as multiple software or software modules, or can be implemented as a single software or software module, which is not specifically limited herein. When the server 105 is hardware, it can be implemented as a distributed server cluster composed of multiple servers, or can be implemented as a single server; when the server is software, it can be implemented as multiple software or software modules, or can be implemented as a single software or software module, which is not specifically limited herein.
[0029] Server 105 can provide various services through various built-in applications. Taking the low-code development application that can provide low-code development services as an example, when Server 105 runs this low-code development application, the following effects can be achieved: First, receive, through Network 104, the interface description information that is input by Terminal Devices 101, 102, and 103 and serves as the front-end interface constituting the expected development result; then, input this interface description information as input information into a preset first generative large language model to obtain the interface description language output by the first generative large language model; next, receive, through Network 104, the association indication information that is input by Terminal Devices 101, 102, and 103 and serves to associate the back-end data with the front-end interface constituting the expected development result; then, input this association indication information as input information into a preset second generative large language model to obtain the database management language output by the second generative large language model; finally, generate the corresponding front-end interface according to the interface description language, and associate the corresponding database data with this front-end interface according to this database management language to obtain the expected development result.
[0030] It should be noted that, in addition to being temporarily obtained from Terminal Devices 101, 102, and 103 through Network 104, the interface description information and the association indication information can also be pre-stored locally in Server 105 in various ways. Therefore, when Server 105 detects that these data have been stored locally (for example, when processing the pending tasks left before starting), it can choose to directly obtain these data from the local. In this case, the exemplary system architecture 100 may not include Terminal Devices 101, 102, and 103 and Network 104 either.
[0031] Since providing low-code development services requires a large amount of computing resources and strong computing power, generally, the low-code development methods provided in the subsequent embodiments of the present disclosure are executed by Server 105 with strong computing power and a large amount of computing resources. Correspondingly, the low-code development device is generally also set in Server 105. However, it should also be noted that when Terminal Devices 101, 102, and 103 also have computing power and computing resources that meet the requirements, Terminal Devices 101, 102, and 103 can also complete the above various operations originally performed by Server 105 through the low-code development applications installed on them, and then output the same results as Server 105. Especially in the case where there are multiple terminal devices with different computing capabilities at the same time, when the low-code development application determines that the terminal device where it is located has strong computing power and a large amount of remaining computing resources, the terminal device can be allowed to perform the above operations, thereby appropriately reducing the computing pressure on Server 105. Correspondingly, the low-code development device can also be set in Terminal Devices 101, 102, and 103. In this case, the exemplary system architecture 100 may not include Server 105 and Network 104 either.
[0032] It should be understood that Figure 1 the numbers of the terminal devices, networks, and servers in
[0033] are merely illustrative. According to the implementation requirements, there can be any number of terminal devices, networks, and servers. Figure 2 , Figure 2 Please refer to
[0034] FIG. 200, which is a flowchart of a low-code development method provided by an embodiment of the present disclosure, where process 200 includes the following steps:
[0035] This step is intended to obtain, by the execution entity of the low-code development method (such as Figure 1 the server 105 shown in Figure 1 ), the interface description information of the front-end interface that constitutes the expected development result and is input by the development object through an input device (such as
[0036] the terminal devices 101, 102, and 103 shown in
[0037] ). The expected development result is the expectation of the development object for the development result, which can be understood as the expected development result, and can be an interactive interface, an application program, a web site, or even a set of actual application function systems or platforms.
[0038] Generally, regardless of the form of the expected development result, it usually should have a front-end interface for information interaction with the user (which can also be understood as the user interface - User Interface). In addition to the front-end interface, a back-end database is usually required to display the back-end database in a suitable form on the front-end interface.
[0039] Step 202: Input the interface description information as input information into a preset first generative large language model to obtain the interface description language output by the first generative large language model.
[0040] Based on step 201, this step aims to have the above-mentioned execution entity input the interface description information as input information into a preset first generative large language model to obtain the interface description language output by the first generative large language model. That is, the first generative large language model should be trained to have the ability to convert the input interface description information into an interface description language that is more convenient for computers to recognize. Specifically, the first generative large language model can be fine-tuned and trained based on an existing basic generative large language model used as a training base, or it can be completely retrained.
[0041] An interface description language is a language or markup language used to describe the layout, appearance, and interactions of a user interface. It provides developers and designers with a structured way to define and create the user interfaces of applications, websites, or software. It has the following characteristics and functions:
[0042] Layout description: The interface description language can describe the arrangement, size, and position of interface elements. This may include grid systems, relative positioning, adaptive layouts, etc.; Style definition: Allows defining the appearance of interface elements, including colors, fonts, borders, etc. It usually supports functions similar to Cascading Style Sheets (CSS); Interaction behavior: Can describe the behavior when users interact with interface elements, such as the impact on the interface of operations like clicking, hovering, and dragging and dropping; Component and modularity: Supports component-based or modular development, enabling the definition and reuse of a set of specific interface elements to improve development efficiency.
[0043] Some common interface description languages include:
[0044] HTML / CSS: HTML (HyperText Markup Language) is used to describe the structure of web pages, while CSS (Cascading Style Sheets) is used to define styles and layouts; XML: Although not specifically created for interface design, XML is used to define structured data and is sometimes used to describe interface elements and their attributes; XAML (Extensible Application Markup Language): Mainly used in platforms such as Microsoft's WPF (Windows Presentation Foundation) and Silverlight to define application interfaces; Json: Although Json is more commonly used for data exchange, it is sometimes used to describe some simple interface elements and interactions.
[0045] By applying the interface description language, in addition to being convenient for computers to recognize, it also has the following uses and advantages:
[0046] Cross - platform compatibility: The interface description language helps to achieve cross - platform UIs, enabling applications to maintain consistency across different devices and screen sizes; Maintainability and extensibility: Using the interface description language makes it easier to modify, extend, and maintain the interface; Separation of concerns: Separating the interface description from the application logic allows developers and designers to focus on different tasks, improving work efficiency; Standardization and shared components: Standardized interface components can be created, enabling these components to be reused in different projects and improving development efficiency.
[0047] Furthermore, in order to improve the degree of compliance of the interface description language output by the first generative large - language model with user expectations, the above - mentioned execution entity can also perform semantic understanding on the interface description information, and complete and adjust the interface description information according to the semantic understanding result (for example, eliminating ambiguities and loopholes in the original interface description information), so as to use the completed and adjusted interface description information as the input information for the first generative large - language model, in order to improve the accuracy of the output interface description language.
[0048] Step 203: Obtain the association indication information for associating the input backend data that constitutes the expected development result with the front - end interface;
[0049] Based on step 202, this step aims to have the above - mentioned execution entity obtain the association indication information for associating the input backend data that constitutes the expected development result with the front - end interface. That is, the association indication information is used to indicate which data in the subsequent database is associated with which elements in the front - end interface, so that when there is a correct association relationship, the data in the subsequent database can be presented in the correct position in the front - end interface in the correct form.
[0050] Similar to the interface description information, the association indication information can also include: natural - language association indication information that describes the association form between the backend data and the front - end interface in natural - language form, and graphical association indication information that reflects the association form in the form of an association form schematic diagram (such as a correspondence diagram, a binding relationship diagram, a corresponding output relationship diagram, etc.). Of course, in some special cases, in addition to text and image forms, the association indication information may also exist in some other variant forms, such as voice information, but it can be converted into natural - language association indication information in text form.
[0051] Step 204: Input the association indication information as input information into a preset second generative large - language model to obtain the database management language output by the second generative large - language model;
[0052] On the basis of step 203, this step aims to have the above-mentioned execution subject input the association indication information as input information into the preset second generative large language model to obtain the database management language output by the second generative large language model. That is, the second generative large language model should have the ability to convert the input association indication information into a database management language that is more convenient for computers to recognize and process through training. Specifically, the second generative large language model can be obtained by fine-tuning and training based on an existing basic generative large language model as a training base, or it can be obtained by completely retraining.
[0053] Among them, the database management language refers to the language used to manage and operate data in the database, such as the SQL command language used to manage and operate relational databases. Similarly, it also includes corresponding command languages used to manage and operate non-relational databases, which are not listed one by one here.
[0054] Step 205: Generate a corresponding front-end interface according to the interface description language, and associate the front-end interface with corresponding database data according to the database management language to obtain the expected development result.
[0055] Based on step 202 and step 204, this step aims to generate a corresponding front-end interface according to the interface description language by the above-mentioned execution entity, and then associate the corresponding database data with the front-end interface according to the database management language based on the completion of the front-end interface generation, so as to finally obtain the desired development result.
[0056] In order to reduce the difficulty and threshold of using low-code development platforms to achieve platform or system development as much as possible, the low-code development method provided by the present invention introduces the generative large language model technology into the low-code development platform scenario, and constructs a relatively small number of fine-tuning training samples and sorting samples, so that the low-code development platform can call the trained generative large language model to have the ability to convert the development instructions input by the user in the form of natural language or image into an interface description language and database management language that are more convenient for computers to recognize and process, thereby generating a corresponding front-end interface based on the interface description language and implementing the association and binding operations between the front-end interface elements and the back-end database data based on the database management language, thereby quickly and conveniently obtaining the expected development results. Moreover, since there is no need to input professional development instructions, the usage threshold of the low-code development platform is effectively lowered.
[0057] In order to better understand how to train the first generative large language model capable of representing the corresponding relationship between the interface description information and the interface description language, this embodiment also respectively Figure 3 and Figure 4The training processes of how to train the first generative large language model are respectively shown for two different forms of interface description information. Among them, Figure 3 A specific implementation manner shown includes the following steps:
[0058] Step 301: Obtain a first basic generative large language model trained based on general homogeneous modality training samples, and obtain fine-tuning training samples composed of natural language description information and corresponding interface description languages;
[0059] Among them, the general homogeneous modality training samples used to train the first basic generative large language model only have the input and expected output of the training samples being data of the same modality. For example, the text input and text expected output are of the same modality as the natural language description information and the interface description language.
[0060] This step also reflects that this embodiment does not completely retrain to obtain the first generative large language model, but on the basis of the first basic generative large language model as the base, fine-tune it by constructing fine-tuning training samples, so as to obtain as good a training effect as possible on the basis of reducing the required training samples and improving the training efficiency.
[0061] Step 302: Use the fine-tuning training samples to perform supervised fine-tuning on the first basic generative large language model to obtain a first large model during training;
[0062] Based on step 301, the purpose of this step is for the above-mentioned execution entity to perform supervised fine-tuning (Supervised Fine-Tuning, SFT) on the first basic generative large language model using the fine-tuning training samples to obtain a first large model during training.
[0063] Supervised fine-tuning means pre-training a neural network model, that is, the source model, on the source dataset. Then create a new neural network model, that is, the target model. The target model replicates all the model designs and their parameters of the source model except for the output layer. These model parameters contain the knowledge learned on the source dataset, and this knowledge is also applicable to the target dataset. The output layer of the source model is closely related to the labels of the source dataset, so it is not used in the target model. During fine-tuning, an output layer with an output size equal to the number of categories of the target dataset is added to the target model, and the model parameters of this layer are randomly initialized. When training the target model on the target dataset, it will be trained from scratch to the output layer, and the parameters of the remaining layers are fine-tuned based on the parameters of the source model.
[0064] In addition, the LoRA (Low-Rank Adaptation of Large Language Models) fine-tuning method for generative large language models can also be adopted additionally. The basic principle of the LoRA fine-tuning method is to freeze the weight parameters of the pre-trained model. Under the condition of freezing the parameters of the original model, additional network layers are added to the model, and only the parameters of these newly added network layers are trained. Since the number of these newly added parameters is small, not only does the cost of finetuning decrease significantly, but also an effect similar to that of fine-tuning with all model parameters can be obtained.
[0065] The reason why this method is more suitable for large language models is that with the development of large language models, the number of model parameters is getting larger and larger. Therefore, it becomes infeasible to fine-tune all model parameters. The LoRA fine-tuning method was proposed by Microsoft. By only fine-tuning the newly added parameters, the number of trainable parameters for downstream tasks is greatly reduced. The basic principle of the LoRA fine-tuning method is that each layer of the neural network contains matrix multiplication. The weight matrices in these layers usually have full rank. When adapting to a specific task, the pre-trained language model has a low "intrinsic dimension" and can still learn effectively when randomly projected into a smaller subspace.
[0066] It should be noted that the LoRA fine-tuning method and the SFT fine-tuning method can be combined and used simultaneously.
[0067] Step 303: Use the sorted samples composed of multiple pieces of interface description languages corresponding to the natural language description information of the same front-end interface and sorted by accuracy to perform reinforcement training on the large model in the first training in a reinforcement learning manner based on human feedback, and obtain the large model in the second training;
[0068] Based on Step 302, the purpose of this step is for the above-mentioned execution entity to use the sorted samples composed of multiple pieces of interface description languages corresponding to the natural language description information of the same front-end interface and sorted by accuracy to perform reinforcement training on the large model in the first training in a reinforcement learning manner based on human feedback, and obtain the large model in the second training, so as to further improve the result output by the obtained large model in the second training to better meet the needs and expectations of users or human users in this way.
[0069] Step 304: Use the reparameterization method to merge the model parameters of the large model in the second training with the model parameters of the first basic generative large language model to obtain the first generative large language model.
[0070] Based on step 303, this step aims to use the method of reparameterization by the above-mentioned execution entity to merge the model parameters of the large model in the second training with the model parameters of the first basic generative large language model to obtain the first generative large language model.
[0071] Among them, the reparameterization technique refers to a class of techniques that make the model easier to optimize or converge during the training process by reparameterizing the model. These techniques are usually applied to optimization algorithms such as gradient descent to improve the efficiency and stability of optimization. The following are some examples of common reparameterization techniques in the field of model optimization:
[0072] 1) Batch Normalization:
[0073] Batch Normalization is a technique that normalizes the input of each batch and then scales and translates the result. This not only helps to alleviate the problem of vanishing gradients but also makes the model easier to converge during training. Batch Normalization introduces learnable parameters, namely scale and translation parameters, which can be adjusted during the backpropagation process.
[0074] 2) Weight Normalization:
[0075] Weight Normalization is a technique for normalizing the weights of a neural network. It decomposes the weights into a scale factor for the magnitude and a proportion for the direction, making the training of the model more stable. This method of reparameterization can accelerate convergence and improve the generalization performance of the model.
[0076] 3) Layer Normalization:
[0077] Similar to Batch Normalization, Layer Normalization is a method of normalizing the input of each layer. It does not depend on batch statistics but normalizes the features of each sample. This helps to handle the statistical characteristics of different samples and makes the model easier to optimize.
[0078] 4) Gradient Clipping:
[0079] Gradient Clipping is a technique that scales the magnitude of the gradient to prevent gradient explosion. During training, if the magnitude of the gradient exceeds a predetermined threshold, the gradient will be scaled. This helps to prevent gradient explosion and makes the model more stable.
[0080] 5) Parameterized Activation Functions:
[0081] Some activation functions, such as Parametric Rectified Linear Unit (PReLU) and Exponential Linear Unit (ELU), change the shape of the activation function by introducing learnable parameters. This can help the model better adapt to the data and improve the optimization effect.
[0082] 6) Neural Architecture Search:
[0083] In neural network architecture search, by searching and reparameterizing the network architecture, the network becomes easier to train while maintaining a certain performance.
[0084] The common goal of these reparameterization techniques is to improve the convergence, stability, and generalization performance of the model, making it easier to find appropriate parameter values during the optimization process. By cleverly reparameterizing the model, the efficiency of the optimization algorithm can be improved, the training time can be reduced, and the overall performance of the model can be improved.
[0085] Figure 3 The above steps shown provide an implementation solution for quickly obtaining a first generative large language model that can represent the correspondence between natural language interface description information and interface description language through fine-tuning the training method, so that the low-code development platform embedded with or capable of calling the first generative large language model has the ability to convert the natural language instructions input by the user into a more understandable interface description language, thus eliminating the need for the user to input more professional code languages and reducing the usage threshold.
[0086] Furthermore, the interface description language corresponding to the front-end interface of the expected development result that meets the first preset requirement can be saved as the first valid sample, and then the model parameters of the first generative large language model can be adjusted using the first valid sample. It is equivalent to using the first valid sample as a golden (Godden) sample to enhance the probability of the model outputting the golden sample in a repeated reinforcement training manner.
[0087] Different from Figure 3 the implementation shown, Figure 4 then shows another implementation solution for training the first generative large language model, including the following steps:
[0088] Step 401: Obtain a second basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of image description information and corresponding interface description languages;
[0089] Step 402: Use the fine-tuning training samples to perform supervised fine-tuning on the second basic generative large language model to obtain the third large model under training;
[0090] Step 403: For the sorting samples composed of multiple interface description languages corresponding to the image description information of the same front-end interface and sorted by accuracy, use the reinforcement learning method based on human feedback to perform reinforcement training on the third large model under training to obtain the fourth large model under training;
[0091] Step 404: Use the reparameterization method to merge the model parameters of the fourth large model under training with the model parameters of the second basic generative large language model to obtain the first generative large language model.
[0092] Comparison Figure 3 Comparing the steps 301 - 304 shown, it can be seen that in the solution provided by steps 401 - 404 in this embodiment, since the fine-tuning training samples are composed of image description information in image form and corresponding interface description languages in text form, the generative large language model used as the base should be the second generative large language model trained based on general cross-modal training samples. Correspondingly, the sorting samples should also be constructed from multiple interface description languages corresponding to the image description information of the same front-end interface and sorted by accuracy, so that the low-code development platform embedded with or capable of calling this first generative large language model has the ability to convert the reference interface image input by the user into a more understandable interface description language, thereby eliminating the need for the user to input more professional code languages, reducing the usage threshold, and enabling more convenient imitation of the interface elements of the reference interface image and rapid migration of interfaces with the same style.
[0093] Furthermore, the interface image corresponding to the desired development result that meets the second preset requirement can be saved as the second valid sample, and then the model parameters of the first generative large language model can be adjusted using this second valid sample. This is equivalent to using this second valid sample as the gold (Godden) sample to enhance the probability of the model outputting this gold sample in a repeated reinforcement training manner.
[0094] To better understand the process of training the second generative large language model with the ability to represent the correspondence between associated instruction information and database management language, this embodiment also separately shows Figure 5 and Figure 6 separately show the training processes of how to train the second generative large language model for two different forms of associated instruction information respectively. Among them, Figure 5 One specific implementation shown includes the following steps:
[0095] Step 501: Obtain a third basic generative large language model trained based on general homogeneous modality training samples, and obtain fine-tuning training samples composed of natural language association indication information and corresponding database management languages;
[0096] Step 502: Use the fine-tuning training samples to perform supervised fine-tuning on the third basic generative large language model to obtain a fifth large model during training;
[0097] Step 503: Use the sorting samples composed of multiple database management languages corresponding to natural language association indication information of the same association form and sorted by accuracy to perform reinforcement training on the fifth large model during training using the reinforcement learning method based on human feedback to obtain a sixth large model during training;
[0098] Step 504: Use the reparameterization method to merge the model parameters of the sixth large model during training with the model parameters of the third basic generative large language model to obtain a second generative large language model.
[0099] Comparison Figure 3 By showing Steps 301 - 304, it can be seen that in the solution provided by Steps 501 - 504 of this embodiment, the basic generative large language model trained based on general homogeneous modality training samples is also used, but the fine-tuning training samples are composed of natural language association indication information and corresponding database management languages. Correspondingly, the sorting samples should also be constructed from multiple database management languages corresponding to natural language association indication information of the same association form and sorted by accuracy, so that the embedded low-code development platform or the low-code development platform that can call this second generative large language model has the ability to convert the natural language instructions input by the user into database management languages that are more convenient for computers to recognize and used to perform corresponding operations on database data, thereby eliminating the need for the user to input more professional code languages and reducing the usage threshold.
[0100] Different from Figure 5 the implementation method shown, Figure 6 then shows another implementation solution for training a second generative large language model, including the following steps:
[0101] Step 601: Obtain a fourth basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of graphical association indication information and corresponding database management languages;
[0102] Step 602: Use the fine-tuning training samples to perform supervised fine-tuning on the fourth basic generative large language model to obtain a seventh large model during training;
[0103] Step 603: Use the sorted samples composed of multiple database management languages corresponding to the graphical association indication information of the same association form and sorted by accuracy, and perform reinforcement training on the large model in the seventh training in a reinforcement learning manner based on human feedback to obtain the large model in the eighth training.
[0104] Step 604: Use the reparameterization method to merge the model parameters of the large model in the eighth training with the model parameters of the fourth basic generative large language model to obtain the second generative large language model.
[0105] Comparison Figure 5 Comparing the steps 501 - 504 shown, it can be seen that in the solution provided by steps 601 - 604 in this embodiment, since the fine-tuning training samples are composed of graphical association indication information in image form and corresponding database management languages in text form, the generative large language model used as the base should be a basic generative large language model trained based on general cross-modal training samples. Correspondingly, the sorted samples should also be constructed from multiple database management languages corresponding to the graphical association indication information of the same association form and sorted by accuracy, so that the low-code development platform embedded with or capable of calling this second generative large language model has the ability to convert the association indication diagram input by the user into a database management language that is more convenient for computer recognition and used to perform corresponding operations on the database data, thus eliminating the need for the user to input more professional code languages and reducing the usage threshold.
[0106] Based on any of the above embodiments, considering the process of generating the front-end interface based on the interface description information, it is often possible to continuously adjust the desired front-end interface by using multiple forms of interface description information at the same time. An implementation method including but not limited to can be seen in Figure 7 the flowchart shown, including the following steps:
[0107] Step 701: In response to the simultaneous presence of natural language description information and image description information, determine the reception times of the received natural language description information and image description information respectively.
[0108] Step 702: Determine the primary description information and secondary description information of the front-end interface in the order of the reception times.
[0109] Step 703: Generate an initial front-end interface according to the interface description language corresponding to the primary description information, and adjust the initial front-end interface according to the interface description language corresponding to the secondary description information to obtain the final front-end interface.
[0110] It should be understood that, generally, different forms of interface description information should be received separately at different times. According to the time sequence shown by the reception time, it is determined who is the primary description information, who is the secondary description information, the tertiary description information, etc. Then, adjustments are continuously made on the interface corresponding to the interface description language of the previous description information in the order of the description information, so as to improve the efficiency of obtaining the final expected front-end interface and shorten the adjustment time by switching between two different forms of interface description information.
[0111] Based on any of the above embodiments, after obtaining the expected development result, the target version number corresponding to the expected development result can be determined, and then the target version number can be used as the release version number of the expected development result, and the expected development result is released according to the release version number to make it truly play its role.
[0112] For better understanding, the present disclosure also specifically takes the creation of a road pest monitoring and analysis system as an example, combined with Figures 8-1 to 8-12 A specific implementation solution is given:
[0113] To make the interaction between developers and the low-code development platform as natural as the interaction between people, it is necessary to transform the existing low-code development platform and endow it with the following three core capabilities through transformation:
[0114] I. Conversion from natural language to interface description language:
[0115] Due to the flexibility and variability of natural language, and coupled with the fact that there are tens of millions of possibilities for different component permutations and combinations, it is impossible to achieve the conversion from natural language to Json format interface description language through exhaustive mapping. Therefore, by leveraging the emerging capabilities of large-scale generative language models, a mapping relationship from natural language to Json format interface description language is established. Specifically, the steps are as follows:
[0116] 1) Select an appropriate large language model as the base. Considering the actual effect of the model and the latency requirements of the actual application scenario, a 7B large language model (with 7 billion floating-point parameters) is adopted;
[0117] 2) Make a dataset of 1000 natural language to Json;
[0118] 3) Perform supervised fine-tuning (SFT) on the model. The technology adopted is the LoRA method, and the number of training rounds is 100 rounds;
[0119] 4) In order to make the model output text in strict Json format, make a dataset of 1000 with sorting information, and use the reinforcement learning method based on human feedback to strengthen the model output by SFT;
[0120] 5) Merge the parameters of the obtained model with the original model to obtain the current model.
[0121] II. Conversion from natural language to SQL commands:
[0122] Due to the flexibility and variability of natural language, therefore, mapping from natural language to SQL commands is performed through a generative large language model. Specifically, the steps are as follows:
[0123] 1) Select an appropriate SQL base model;
[0124] 2) Create a dataset of 10,000 natural language to SQL;
[0125] 3) Perform full-scale fine-tuning on the SQL base model;
[0126] 4) Obtain the current model.
[0127] III. Conversion from pictures to interface description language:
[0128] To achieve the conversion from pictures to interface description language in Json format, a cross-modal model is used to output interface description language in Json format through language features and image features. Specifically, the steps are as follows:
[0129] 1) Select an appropriate cross-modal model as the base;
[0130] 2) Create a dataset of 1,000 pictures and Json;
[0131] 3) Use the cross-modal base model and the dataset for fine-tuning training;
[0132] 4) Obtain the current model.
[0133] That is, through the above three core capabilities, the low-code development platform has the following functions:
[0134] 1) Function 1: Natural language interaction to generate UI
[0135] Using large language model technology, the content that the user hopes to display in a certain module on the platform is input into the large language model through natural language interaction. Through the model's understanding of the requirements, the front-end interface of the content to be displayed in the module is automatically established, and the connection and interaction capabilities with the system backend database are established to achieve automatic function development;
[0136] 2) Function 2: UI rapid migration
[0137] This function utilizes cross-modal large model technology. The reference pictures of the UI style required by the user are input into the cross-modal large model in the way of picture uploading. Through the model's understanding of the UI style, color matching, and layout, the current interface is automatically replaced to generate a UI similar to the reference picture style.
[0138] 3) Function 3: Continuous content interaction
[0139] Based on large model technology, this function can conduct multiple in-depth interactions with the data content of the current page.
[0140] The following will demonstrate the realization of the above capabilities in combination with multiple attached drawings:
[0141] 1. Example of natural language dialogue ability
[0142] For example, to generate a navigation component, normally in a low-code platform, one also needs to drag in a navigation component and then add sub-menus. Now, with the low-code development platform provided in this embodiment, one only needs to input Figure 8-1 as shown in
Generate a vertical navigation menu, including roadway diseases, sidewalk diseases, sign facilities, and other events
[0143] One can also interact with the interface again to add a secondary menu named pothole, as shown in Figure 8-3 .
[0144] 2. Example of directly generating an interface from a UI design drawing
[0145] For example, if one wants to replicate the effect of an external interface, one only needs to capture a reference picture as shown in Figure 8-4 , Figure 8-4 which contains a title, pictures, and some display data.
[0146] As shown in Figure 8-5 and Figure 8-6 , one only needs to select this picture in the selection bar and import it to use the cross-modal large model to generate the closest UI.
[0147] 3. Directly displaying data in natural language
[0148] As shown in Figure 8-7 , one can directly input the conditions to be queried, and then the interface as shown in Figure 8-8 can be directly rendered. One can also, as shown in Figure 8-9 , fine-tune the displayed fields through a secondary dialogue. Figure 8-10 shows the new interface after fine-tuning according to the instructions.
[0149] 4. All controls can interact with the user for a second time
[0150] For example, in the previous table, if the user wants to know the detailed information of the first item or the trend changes in recent days, they can interact with the buttons and controls multiple times as shown in Figure 8-11 and Figure 8-12 by clicking the buttons and controls.
[0151] By applying the solution provided in this embodiment, not only can the development efficiency be improved. Using this platform to implement the same UI design can increase the development speed by more than 10 times. It can also combine the cross-modal model to self-learn the visual style, adapt to complex UI pages, and support secondary intelligent interaction, summarization / screening, etc. Moreover, it is truly code-free development, where inputting instructions described in natural language can immediately generate corresponding results, with a low operation threshold.
[0152] That is, by using large model technology, the development function capabilities that originally required inputting code can be completed only by inputting natural language or natural language + reference style pictures for UI designs that require professional design knowledge.
[0153] Further referring to Figure 9 , as an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a low-code development device. This device embodiment corresponds to the method embodiment shown in Figure 2 , and this device can be specifically applied to various electronic devices.
[0154] As shown in Figure 9 , the low-code development device 900 of this embodiment may include: an interface description information acquisition unit 901, an interface description language generation unit 902, a correlation indication information acquisition unit 903, a database management language generation unit 904, and an expected development result generation unit 905. Among them, the interface description information acquisition unit 901 is configured to acquire the input interface description information that constitutes the front-end interface of the expected development result; the interface description language generation unit 902 is configured to input the interface description information as input information into a preset first generative large language model to obtain the interface description language output by the first generative large language model; the correlation indication information acquisition unit 903 is configured to acquire the input correlation indication information that correlates the back-end data and the front-end interface that constitute the expected development result; the database management language generation unit 904 is configured to input the correlation indication information as input information into a preset second generative large language model to obtain the database management language output by the second generative large language model; the expected development result generation unit 905 is configured to generate the corresponding front-end interface according to the interface description language and associate the corresponding database data with the front-end interface according to the database management language to obtain the expected development result.
[0155] In this embodiment, in the low-code development device 900: For the specific processing of the interface description information acquisition unit 901, the interface description language generation unit 902, the association indication information acquisition unit 903, the database management language generation unit 904, and the expected development result generation unit 905 and the technical effects brought by them, reference can be made respectively to Figure 2 the relevant descriptions of steps 201-205 in the corresponding embodiment, which will not be elaborated here.
[0156] In some alternative implementation manners of this embodiment, the interface description information includes: natural language description information that describes the elements constituting the front-end interface in the form of natural language, and image description information that uses an interface reference image in the form of an image to imitate and describe the elements constituting the front-end interface. The elements include: the area division method within the interface, the controls included in the interface, the arrangement order between different controls, and the style and style including colors and line distributions.
[0157] In some alternative implementation manners of this embodiment, the low-code development device 900 may further include:
[0158] A semantic understanding and correction unit, configured to perform semantic understanding on the interface description information before inputting the interface description information into the first generative large language model, and complete and adjust the interface description information according to the semantic understanding result, so as to use the completed and adjusted interface description information as the input information for inputting into the first generative large language model.
[0159] In some alternative implementation manners of this embodiment, the interface description language is an interface description code in JSON format.
[0160] In some alternative implementation manners of this embodiment, the association indication information includes: natural language association indication information that describes the association form between the backend data and the front-end interface in the form of natural language, and graphical association indication information that reflects the association form with an association form schematic diagram in the form of a schematic diagram.
[0161] In some alternative implementation manners of this embodiment, in response to the backend data being stored in a relational database, the database management language is an SQL instruction language for managing and operating the relational database.
[0162] In some alternative implementation manners of this embodiment, the low-code development device 900 may further include: a first generative large language model training unit, and the first generative large language model training unit is further configured to:
[0163] Obtain a first basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of natural language description information and corresponding interface description languages;
[0164] Use the fine-tuning training samples to perform supervised fine-tuning on the first basic generative large language model to obtain the first large model under training;
[0165] Use the sorted samples composed of multiple interface description languages corresponding to the natural language description information of the same front-end interface and sorted by accuracy, and perform reinforcement training on the first large model under training by means of reinforcement learning based on human feedback to obtain the second large model under training;
[0166] Use the reparameterization method to merge the model parameters of the second large model under training with the model parameters of the first basic generative large language model to obtain the first generative large language model.
[0167] In some optional implementation manners of this embodiment, the low-code development device 900 may further include:
[0168] The first valid sample determination unit is configured to save the interface description language corresponding to the front-end interface of the expected development result that meets the first preset requirement as the first valid sample;
[0169] The first model parameter adjustment unit is configured to adjust the model parameters of the first generative large language model by using the first valid sample.
[0170] In some optional implementation manners of this embodiment, the low-code development device 900 may further include: the first generative large language model training unit, and the first generative large language model training unit is further configured to:
[0171] Obtain the second basic generative large language model trained based on the general cross-modal training samples, and obtain the fine-tuning training samples composed of the image description information and the corresponding interface description language;
[0172] Use the fine-tuning training samples to perform supervised fine-tuning on the second basic generative large language model to obtain the third large model under training;
[0173] Use the sorted samples composed of multiple interface description languages corresponding to the image description information of the same front-end interface and sorted by accuracy, and perform reinforcement training on the third large model under training by means of reinforcement learning based on human feedback to obtain the fourth large model under training;
[0174] Use the reparameterization method to merge the model parameters of the fourth large model under training with the model parameters of the second basic generative large language model to obtain the first generative large language model.
[0175] In some optional implementation manners of this embodiment, the low-code development device 900 may further include:
[0176] The second valid sample determination unit is configured to save the interface image corresponding to the front-end interface of the expected development result that meets the second preset requirement as the second valid sample;
[0177] The second model parameter adjustment unit is configured to adjust the model parameters of the first generative large language model by using the second valid sample.
[0178] In some alternative implementation manners of this embodiment, the low-code development device 900 may further include: a second generative large language model training unit, and the second generative large language model training unit is further configured to:
[0179] Obtain a third basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of graphical association indication information and corresponding database management languages;
[0180] Perform supervised fine-tuning on the third basic generative large language model by using the fine-tuning training samples to obtain a fifth in-training large model;
[0181] Use the sorted samples composed of multiple database management languages corresponding to the natural language association indication information of the same association form and sorted by accuracy to perform reinforcement training on the fifth in-training large model in a human feedback-based reinforcement learning manner to obtain a sixth in-training large model;
[0182] Use the reparameterization method to merge the model parameters of the sixth in-training large model with the model parameters of the third basic generative large language model to obtain the second generative large language model.
[0183] In some alternative implementation manners of this embodiment, the low-code development device 900 may further include: a second generative large language model training unit, and the second generative large language model training unit is further configured to:
[0184] Obtain a fourth basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of graphical association indication information and corresponding database management languages;
[0185] Perform supervised fine-tuning on the fourth basic generative large language model by using the fine-tuning training samples to obtain a seventh in-training large model;
[0186] Use the sorted samples composed of multiple database management languages corresponding to the graphical association indication information of the same association form and sorted by accuracy to perform reinforcement training on the seventh in-training large model in a human feedback-based reinforcement learning manner to obtain an eighth in-training large model;
[0187] The model parameters of the eighth training large model and the model parameters of the fourth basic generative large language model are merged by using a re-parameter method to obtain a second generative large language model.
[0188] In some optional implementations of this embodiment, the expected development result generating unit 905 may include a front-end interface generating unit configured to generate a corresponding front-end interface according to an interface description language, and the front-end interface generating unit may be further configured to:
[0189] In response to the simultaneous presence of the natural language description information and the image description information, determining reception times at which the natural language description information and the image description information are respectively received;
[0190] Determine the primary description information and secondary description information of the front-end interface in the order of receiving time;
[0191] An initial front-end interface is generated according to an interface description language corresponding to the primary description information, and the initial front-end interface is adjusted according to an interface description language corresponding to the secondary description information to obtain a final front-end interface.
[0192] In some optional implementations of this embodiment, the low-code development device 900 may further include:
[0193] A version number determination unit, configured to determine a target version number corresponding to an expected development result;
[0194] The release unit is configured to synthesize the target version number as the release version number of the expected development result, and release the expected development result according to the release version number.
[0195] This embodiment exists as an apparatus embodiment corresponding to the above method embodiment.
[0196] In order to reduce the difficulty and threshold of using a low-code development platform to achieve platform or system development as much as possible, the low-code development device provided in this embodiment introduces the generative large language model technology into the low-code development platform scenario, and constructs a relatively small number of fine-tuning training samples and sorting samples, so that the low-code development platform can call the trained generative large language model to convert the development instructions input by the user in the form of natural language or image into an interface description language and database management language that are more convenient for computers to recognize and process, thereby generating a corresponding front-end interface based on the interface description language and implementing the association and binding operations between the front-end interface elements and the back-end database data based on the database management language, thereby quickly and conveniently obtaining the expected development results. Moreover, since there is no need to input professional development instructions, the usage threshold of the low-code development platform is effectively lowered.
[0197] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to implement the low-code development method described in any of the above embodiments.
[0198] According to an embodiment of the present disclosure, the present disclosure also provides a readable storage medium, which stores computer instructions for enabling a computer to implement the low-code development method described in any of the above embodiments when executed.
[0199] According to an embodiment of the present disclosure, the present disclosure also provides a computer program product, and when the computer program is executed by a processor, it can implement the steps of the low-code development method described in any of the above embodiments.
[0200] Figure 10 FIG. shows a schematic block diagram of an exemplary electronic device 1000 that can be used to implement embodiments of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as, for example, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, for example, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely exemplary and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0201] As Figure 10 shown, the device 1000 includes a computing unit 1001, which can execute various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 1002 or a computer program loaded from a storage unit 1008 into a random access memory (RAM) 1003. In the RAM 1003, various programs and data required for the operation of the device 1000 can also be stored. The computing unit 1001, the ROM 1002, and the RAM 1003 are connected to each other through a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004.
[0202] Multiple components in device 1000 are connected to I / O interface 1005, including: input unit 1006, such as a keyboard, mouse, etc.; output unit 1007, such as various types of displays, speakers, etc.; storage unit 1008, such as a disk, optical disc, etc.; and communication unit 1009, such as a network card, modem, wireless communication transceiver, etc. Communication unit 1009 allows device 1000 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0203] Computing unit 1001 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of computing unit 1001 include but are not limited to a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Computing unit 1001 executes the various methods and processes described above, such as the low-code development method. For example, in some embodiments, the low-code development method can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as storage unit 1008. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 1000 via ROM 1002 and / or communication unit 1009. When the computer program is loaded into RAM 1003 and executed by computing unit 1001, one or more steps of the low-code development method described above can be executed. Alternatively, in other embodiments, computing unit 1001 can be configured to execute the low-code development method by any other suitable means (e.g., by means of firmware).
[0204] The various embodiments of the systems and technologies described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a dedicated or general-purpose programmable processor, and can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.
[0205] The program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, a special purpose computer, or other programmable data processing device, such that the program codes, when executed by the processor or controller, cause the functions / operations specified in the flowchart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, as a stand-alone software package partially on the machine and partially on a remote machine, or entirely on the remote machine or server.
[0206] In the context of the present disclosure, a machine-readable medium may be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0207] In order to provide interaction with a user, the systems and techniques described herein may be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, speech input, or tactile input).
[0208] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with embodiments of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected to each other by digital data communication in any form or medium (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
[0209] A computer system can include a client and a server. The client and the server are generally far from each other and usually interact through a communication network. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability existing in traditional physical hosts and virtual private server (VPS, Virtual Private Server) services.
[0210] According to the technical solution of the embodiment of the present disclosure, by introducing the technology of the generative large language model into the low-code development platform scenario, and by constructing a relatively small number of fine-tuning training samples and ranking samples, the low-code development platform can be enabled to convert the development instructions input by the user in the form of natural language or image into an interface description language and a database management language that are more convenient for the computer to recognize and process by calling the trained generative large language model. Furthermore, a corresponding front-end interface can be generated based on the interface description language, and the association and binding operations between the front-end interface elements and the data in the back-end database can be realized based on the database management language, so as to conveniently and quickly obtain the desired development result. And since there is no need to input specialized development instructions, the usage threshold of the low-code development platform is effectively reduced.
[0211] It should be understood that various forms of the processes shown above can be used, with steps reordered, added, or deleted. For example, the steps recited in the present disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution disclosed in the present disclosure can be achieved, and no limitation is made herein.
[0212] The above specific embodiments do not constitute a limitation on the protection scope of the present disclosure. Those skilled in the art should understand that various modifications, combinations, sub - combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principle of the present disclosure shall be included within the protection scope of the present disclosure.
Claims
1. A low-code development method, comprising: obtaining input interface description information that serves as the front-end interface constituting the desired development result; inputting the interface description information as input information into a preset first generative large language model to obtain interface description language output by the first generative large language model; obtaining input association indication information that associates the back-end data constituting the desired development result with the front-end interface; inputting the association indication information as input information into a preset second generative large language model to obtain database management language output by the second generative large language model; generating a corresponding front-end interface according to the interface description language, and associating corresponding database data with the front-end interface according to the database management language to obtain the desired development result.
2. The method according to claim 1, wherein, the interface description information includes: natural language description information that describes the elements constituting the front-end interface in natural language form, and image description information that uses an interface reference image in image form to imitate and describe the elements constituting the front-end interface. The elements include: the area division method within the interface, the controls included in the interface, the arrangement order between different controls, and the style and style including color and line distribution.
3. The method according to claim 2, wherein, before inputting the interface description information into the first generative large language model, it further includes: performing semantic understanding on the interface description information, and complementing and adjusting the interface description information according to the semantic understanding result, so as to use the complemented and adjusted interface description information as the input information for inputting into the first generative large language model.
4. The method according to claim 1, wherein, the interface description language is an interface description code in JSON format.
5. The method according to claim 1, wherein, the association indication information includes: natural language association indication information that describes the association form between the back-end data and the front-end interface in natural language form, and graphical association indication information that uses an association form schematic diagram in schematic diagram form to embody the association form.
6. The method according to claim 1, wherein, in response to the back-end data being stored in a relational database, the database management language is an SQL instruction language for managing and operating a relational database.
7. The method according to claim 2, wherein, the training process of the first generative large language model includes: obtaining a first basic generative large language model trained based on general cross-modal training samples, and obtaining fine-tuning training samples composed of the natural language description information and the corresponding interface description language; using the fine-tuning training samples to perform supervised fine-tuning on the first basic generative large language model to obtain a first large model during training; A sorted sample composed of multiple interface description languages corresponding to the natural language description information of the same front-end interface and sorted by accuracy is used to perform reinforcement training on the large model in the first training by means of reinforcement learning based on human feedback to obtain a large model in the second training; The model parameters of the large model in the second training are merged with the model parameters of the first basic generative large language model by means of reparameterization to obtain the first generative large language model.
8. The method according to claim 7, further comprising: Saving the interface description language corresponding to the front-end interface of the expected development result that meets the first preset requirement as the first valid sample; Adjusting the model parameters of the first generative large language model by using the first valid sample.
9. The method according to claim 2, wherein, the training process of the first generative large language model includes: Obtaining a second basic generative large language model trained based on general cross-modal training samples, and obtaining fine-tuning training samples composed of the image description information and the corresponding interface description language; Performing supervised fine-tuning on the second basic generative large language model by using the fine-tuning training samples to obtain a large model in the third training; A sorted sample composed of multiple interface description languages corresponding to the image description information of the same front-end interface and sorted by accuracy is used to perform reinforcement training on the large model in the third training by means of reinforcement learning based on human feedback to obtain a large model in the fourth training; The model parameters of the large model in the fourth training are merged with the model parameters of the second basic generative large language model by means of reparameterization to obtain the first generative large language model.
10. The method according to claim 9, further comprising: Saving the interface image corresponding to the front-end interface of the expected development result that meets the second preset requirement as the second valid sample; Adjusting the model parameters of the first generative large language model by using the second valid sample.
11. The method according to claim 5, wherein, the training process of the second generative large language model includes: Obtaining a third basic generative large language model trained based on general same-modal training samples, and obtaining fine-tuning training samples composed of the natural language association indication information and the corresponding database management language; Performing supervised fine-tuning on the third basic generative large language model by using the fine-tuning training samples to obtain a large model in the fifth training; A sorted sample composed of multiple database management languages corresponding to the natural language association indication information of the same association form and sorted by accuracy is used to perform reinforcement training on the large model in the fifth training by means of reinforcement learning based on human feedback to obtain a large model in the sixth training; The model parameters of the large model in the sixth training are merged with the model parameters of the third basic generative large language model by means of reparameterization to obtain the second generative large language model.
12. The method according to claim 5, wherein, the training process of the second generative large language model includes: Obtain a fourth basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of the graphical association indication information and the corresponding database management language; Use the fine-tuning training samples to perform supervised fine-tuning on the fourth basic generative large language model to obtain a seventh large model during training; Use the sorting samples composed of multiple database management languages corresponding to the graphical association indication information of the same association form and sorted by accuracy to perform reinforcement training on the seventh large model during training by means of reinforcement learning based on human feedback to obtain an eighth large model during training; Use the reparameterization method to merge the model parameters of the eighth large model during training with the model parameters of the fourth basic generative large language model to obtain the second generative large language model.
13. The method according to claim 2, wherein, generating the corresponding front-end interface according to the interface description language includes: In response to the simultaneous presence of the natural language description information and the image description information, determine the reception times of receiving the natural language description information and the image description information respectively; Determine the primary description information and the secondary description information of the front-end interface in the order of the reception times; Generate an initial front-end interface according to the interface description language corresponding to the primary description information, and adjust the initial front-end interface according to the interface description language corresponding to the secondary description information to obtain the final front-end interface.
14. The method according to any one of claims 1-13, further includes: Determine the target version number corresponding to the expected development result; Use the target version number as the release version number of the expected development result, and release the expected development result according to the release version number.
15. A low-code development device, including: An interface description information acquisition unit configured to acquire the input interface description information of the front-end interface constituting the expected development result; An interface description language generation unit configured to input the interface description information as input information into a preset first generative large language model to obtain the interface description language output by the first generative large language model; An association indication information acquisition unit configured to acquire the input association indication information for associating the back-end data and the front-end interface constituting the expected development result; A database management language generation unit configured to input the association indication information as input information into a preset second generative large language model to obtain the database management language output by the second generative large language model; An expected development result generation unit configured to generate a corresponding front-end interface according to the interface description language, and associate the corresponding database data with the front-end interface according to the database management language to obtain the expected development result.
16. The device according to claim 15, wherein, The interface description information includes: natural language description information that describes the elements constituting the front-end interface in natural language form, and image description information that uses an interface reference image in image form to imitate and describe the elements constituting the front-end interface. The elements include: the regional division method within the interface, the controls included in the interface, the arrangement order between different controls, and the style and style including colors and line distributions.
17. The device according to claim 16, further comprises: A semantic understanding and correction unit, configured to perform semantic understanding on the interface description information before inputting the interface description information into the first generative large language model, and complete and adjust the interface description information according to the semantic understanding result, so as to use the completed and adjusted interface description information as the input information for inputting into the first generative large language model.
18. The device according to claim 15, wherein, The interface description language is an interface description code in JSON format.
19. The device according to claim 15, wherein, The association indication information includes: natural language association indication information that describes the association form between the backend data and the front-end interface in natural language form, and graphical association indication information that reflects the association form with an association form schematic diagram in schematic diagram form.
20. The device according to claim 15, wherein, In response to the backend data being stored in a relational database, the database management language is the SQL instruction language for managing and operating relational databases.
21. The device according to claim 16, further comprises: A first generative large language model training unit, which is further configured to: Obtain a first basic generative large language model trained based on general homogeneous training samples, and obtain fine-tuning training samples composed of the natural language description information and the corresponding interface description language; Use the fine-tuning training samples to perform supervised fine-tuning on the first basic generative large language model to obtain a first large model during training; Use the sorting samples composed of multiple interface description languages corresponding to the natural language description information of the same front-end interface and sorted by accuracy, and perform reinforcement training on the first large model during training by means of reinforcement learning based on human feedback to obtain a second large model during training; Use the reparameterization method to merge the model parameters of the second large model during training with the model parameters of the first basic generative large language model to obtain the first generative large language model.
22. The device according to claim 21, further comprises: A first valid sample determination unit, configured to save the interface description language corresponding to the front-end interface with the desired development result that meets the first preset requirement as the first valid sample; A first model parameter adjustment unit, configured to adjust the model parameters of the first generative large language model by using the first valid sample.
23. The device according to claim 16, further comprises: The first generative large language model training unit, which is further configured to: Obtain a second basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of the image description information and the corresponding interface description language; Use the fine-tuning training samples to perform supervised fine-tuning on the second basic generative large language model to obtain a third large model during training; Use the ranking samples composed of multiple pieces of interface description language corresponding to the image description information of the same front-end interface and sorted by accuracy, and perform reinforcement training on the third large model during training by means of reinforcement learning based on human feedback to obtain a fourth large model during training; Use the reparameterization method to merge the model parameters of the fourth large model during training with the model parameters of the second basic generative large language model to obtain the first generative large language model.
24. The apparatus according to claim 23, further comprising: A second valid sample determination unit, configured to save the interface image corresponding to the front-end interface of the expected development result that meets the second preset requirement as a second valid sample; A second model parameter adjustment unit, configured to adjust the model parameters of the first generative large language model by using the second valid sample.
25. The apparatus according to claim 19, further comprising: A second generative large language model training unit, which is further configured to: Obtain a third basic generative large language model trained based on general unimodal training samples, and obtain fine-tuning training samples composed of the natural language association indication information and the corresponding database management language; Use the fine-tuning training samples to perform supervised fine-tuning on the third basic generative large language model to obtain a fifth large model during training; Use the ranking samples composed of multiple pieces of database management language corresponding to the natural language association indication information of the same association form and sorted by accuracy, and perform reinforcement training on the fifth large model during training by means of reinforcement learning based on human feedback to obtain a sixth large model during training; Use the reparameterization method to merge the model parameters of the sixth large model during training with the model parameters of the third basic generative large language model to obtain the second generative large language model.
26. The apparatus according to claim 19, further comprising: A second generative large language model training unit, which is further configured to: Obtain a fourth basic generative large language model trained based on general cross-modal training samples, and obtain fine-tuning training samples composed of the graphical association indication information and the corresponding database management language; Use the fine-tuning training samples to perform supervised fine-tuning on the fourth basic generative large language model to obtain a seventh large model during training; A sorted sample composed of multiple database management languages corresponding to the graphical association indication information corresponding to the same association form, sorted by accuracy, is used to perform reinforcement training on the large model in the seventh training using a reinforcement learning method based on human feedback to obtain a large model in the eighth training; The model parameters of the large model in the eighth training are merged with the model parameters of the fourth basic generative large language model by using a reparameterization method to obtain the second generative large language model.
27. The apparatus according to claim 16, wherein, The desired development result generation unit includes a front-end interface generation unit configured to generate a corresponding front-end interface according to the interface description language, and the front-end interface generation unit is further configured to: In response to the simultaneous presence of the natural language description information and the image description information, determine the reception times of receiving the natural language description information and the image description information respectively; Determine the primary description information and the secondary description information of the front-end interface in the order of the reception times; Generate an initial front-end interface according to the interface description language corresponding to the primary description information, and adjust the initial front-end interface according to the interface description language corresponding to the secondary description information to obtain the final front-end interface.
28. The apparatus according to any one of claims 15-27, further comprises: A version number determination unit configured to determine a target version number corresponding to the desired development result; A release unit configured to synthesize the target version number as the release version number of the desired development result and release the desired development result according to the release version number.
29. An electronic device, comprises: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the low-code development method according to any one of claims 1-14.
30. A non-transitory computer-readable storage medium storing computer instructions for causing a computer to execute the low-code development method according to any one of claims 1-14.
31. A computer program product comprising a computer program, wherein when the computer program is executed by a processor, the steps of the low-code development method according to any one of claims 1-14 are implemented.
Citation Information
Patent Citations
Chart generation method and device, equipment and storage medium
CN116152384A
Task execution method and task execution optimization method
CN116579339A
Automatic integration method for AI generation type system
CN116595993A
Code processing model training method and device, electronic equipment and storage medium
CN116820429A