Setting support system, setting support method, and program

The configuration work support system addresses user uncertainty in configuring no-code or low-code databases by using a machine learning model to identify and predict settings, thereby improving database setup efficiency.

JP7736760B2Active Publication Date: 2025-09-09CYBOZU +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023189430
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-11-06
Publication Date
2025-09-09
Estimated Expiration
2043-11-06

AI Technical Summary

Technical Problem

Users configuring databases created with no-code or low-code techniques lack guidance on appropriate settings, particularly field types, leading to uncertainty and a need for assistance.

Method used

A configuration work support system that includes a configuration operation identification unit, a machine learning model storage unit, and a configuration work support unit to assist users in configuring databases by identifying and predicting necessary settings based on learned models.

Benefits of technology

Facilitates effective configuration of no-code or low-code databases by providing guided setting operations and predictions, reducing user burden and enhancing database setup efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007736760000001
    Figure 0007736760000001
  • Figure 0007736760000002
    Figure 0007736760000002
  • Figure 0007736760000003
    Figure 0007736760000003
Patent Text Reader

Abstract

To support the configuration tasks of databases created using no-code or low-code.SOLUTION: A configuration operation identification unit (202) of a configuration task support system (1) identifies a configuration operation performed by a user in order to set up a database created using no-code or low-code. A machine learning model storage unit (200) stores a machine learning model which has been trained using training data generated on the basis of the configuration for training. A configuration task support unit (203) supports a database configuration task by a user on the basis of configuration operations and the machine learning model.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a setting work support system, a setting work support method, and a program. [Background technology]

[0002] Conventionally, databases created using no-code or low-code techniques have been known. For example, Non-Patent Document 1 describes a help page for an app that is an example of a database created using no-code or low-code techniques. In the app described in Non-Patent Document 1, users can freely specify settings such as fields. Users can also change the settings of a sample app provided in advance to suit their own preferences. [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] "What is an app?", Internet, searched October 26, 2023, online, https: / / jp.cybozu.help / k / ja / user / basic / app_tutorial.html Summary of the Invention [Problem to be solved by the invention]

[0004] However, with the app of Non-Patent Document 1, users may not know what settings to specify. For example, users may be unsure of how to specify a field type, which is the type of field in the app. This is not limited to the app of Non-Patent Document 1, but is similar to other databases created with no-code or low-code. While databases created with no-code or low-code are easy for users to use, users may not know what settings to specify. For this reason, there is a need for assistance for users who configure databases created with no-code or low-code.

[0005] One of the purposes of this disclosure is to assist in the configuration of databases created using no-code or low-code. [Means for solving the problem]

[0006] A configuration work support system according to one aspect of the present disclosure includes a configuration operation identification unit that identifies configuration operations performed by a user for configuring a database created using no-code or low-code, a machine learning model storage unit that stores a machine learning model learned from training data created based on the configuration for training, and a configuration work support unit that supports the user in configuring the database based on the configuration operations and the machine learning model. [Effects of the Invention]

[0007] According to the present disclosure, it is possible to assist in the configuration work of databases created using no-code or low-code. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 illustrates an example of a hardware configuration of a setting operation support system. [Figure 2] FIG. 10 is a diagram illustrating an example of an application screen. [Figure 3] FIG. 10 is a diagram illustrating an example of a setting screen. [Figure 4] FIG. 10 is a diagram illustrating an example of a setting screen. [Figure 5] FIG. 2 is a diagram illustrating an example of functions realized by the setting operation support system. [Figure 6] FIG. 10 is a diagram illustrating an example of a training database. [Figure 7] FIG. 2 is a diagram illustrating an example of a topic database. [Figure 8] FIG. 10 is a diagram illustrating an example of an application database. [Figure 9] FIG. 10 is a diagram illustrating an example of processing executed by the setting operation support system. [Figure 10] FIG. 10 is a diagram illustrating an example of functions realized by a modified setting operation support system. [Figure 11] FIG. 10 is a diagram showing an example of a setting screen of Modification 2. [Figure 12] FIG. 13 is a diagram illustrating an example of processing executed in the setting work support system of the fourth modified example. DETAILED DESCRIPTION OF THE INVENTION

[0009] [1. Hardware configuration] An example of an embodiment of a setting work support system, a setting work support method, and a program according to the present disclosure will be described. Fig. 1 is a diagram showing an example of the hardware configuration of the setting work support system. For example, the setting work support system 1 includes a learning terminal 10, a server 20, and a user terminal 30. Each of the learning terminal 10, the server 20, and the user terminal 30 is connected to a network N such as the Internet or a LAN.

[0010] The learning terminal 10 is a computer that performs learning of the machine learning model described below. For example, the learning terminal 10 is a personal computer, a tablet terminal, or a smartphone. For example, the learning terminal 10 includes a control unit 11, a memory unit 12, a communication unit 13, an operation unit 14, and a display unit 15. The control unit 11 includes at least one processor. The memory unit 12 includes at least one of volatile memory such as RAM and non-volatile memory such as flash memory. The communication unit 13 includes at least one of a communication interface for wired communication and a communication interface for wireless communication. The operation unit 14 is an input device such as a mouse or a touch panel. The display unit 15 is an LCD or organic EL display.

[0011] The server 20 is a server computer. For example, the server 20 includes a control unit 21, a storage unit 22, and a communication unit 23. The hardware configurations of the control unit 21, the storage unit 22, and the communication unit 23 may be similar to those of the control unit 11, the storage unit 12, and the communication unit 13, respectively.

[0012] The user terminal 30 is a user's computer. For example, the user terminal 30 is a personal computer, a tablet terminal, or a smartphone. For example, the user terminal 30 includes a control unit 31, a memory unit 32, a communication unit 33, an operation unit 34, and a display unit 35. The hardware configurations of the control unit 31, the memory unit 32, the communication unit 33, the operation unit 34, and the display unit 35 may be similar to those of the control unit 11, the memory unit 12, the communication unit 13, the operation unit 14, and the display unit 15, respectively.

[0013] The programs stored in the storage units 12, 22, and 32 may be supplied via the network N. The hardware configurations of the learning terminal 10, the server 20, and the user terminal 30 are not limited to the example shown in FIG. 1. For example, at least one of the learning terminal 10, the server 20, and the user terminal 30 may include at least one of a reading unit (e.g., a memory card slot) that reads a computer-readable information storage medium and an input / output unit (e.g., a USB terminal) for direct connection to an external device. A program stored in an information storage medium may be supplied to at least one of the learning terminal 10, the server 20, and the user terminal 30 via at least one of the reading unit and the input / output unit.

[0014] Furthermore, the setting work support system 1 only needs to include at least one computer. The computers included in the setting work support system 1 are not limited to the example of FIG. 1. For example, the setting work support system 1 may include only the learning terminal 10 and the server 20. In this case, the user terminal 30 exists outside the setting work support system 1. The setting work support system 1 may also include only the server 20. In this case, the learning terminal 10 and the user terminal 30 exist outside the setting work support system 1. The setting work support system 1 may also include the server 20 and other server computers.

[0015] [2. Overview of the configuration support system] In this embodiment, a user performs configuration work for a database created using no-code or low-code. A database created using no-code is a database in which the user does not need to input code such as a database language or programming language into a database development platform. For example, when a user specifies database settings, the configuration work support system 1 creates a database based on the settings. All code required to create the database is prepared on the configuration work support system 1 side.

[0016] A database created using low-code is a database that requires the user to input only the minimum necessary code in the database development platform. For example, if the user inputs the minimum necessary code and specifies database settings, the configuration support system 1 creates the database based on the minimum necessary code and the settings. The remaining code required to create the database is prepared by the configuration support system 1.

[0017] Note that a person skilled in the art involved in database development can understand the meaning of each of the terms no-code and low-code based on the common general technical knowledge at the time of filing. Each of the terms no-code and low-code may have a well-known meaning that a person skilled in the art can understand based on the common general technical knowledge at the time of filing. In the following explanation, the term "database" refers to a database created using no-code or low-code. Creating a database can also be referred to as developing or building a database.

[0018] In this embodiment, an example is given in which a groupware application corresponds to a database. Groupware is a program that supports a user's work. Groupware may be either cloud-based or on-premise. The application has not only a database function but also other functions related to work support. For example, the application has at least one of a communication function, a file management function, an email management function, and other functions. The functions of the application may be well-known functions.

[0019] In the following description, the term "app" can be read as "database." In this embodiment, an example is given in which an app is created using no-code, but the app may also be created using low-code. For example, when a user logs in to groupware, the user can use apps of the organization to which the user belongs, such as the company to which the user belongs. When the user selects an app, the user terminal 30 displays an app screen showing the app on the display unit 35.

[0020] FIG. 2 is a diagram showing an example of an application screen. In this embodiment, an application that manages access to a website will be described as an example of an application. For example, as shown in the upper part of FIG. 2, the application screen SC1 includes a record list L10 that shows a list of records, which are individual units of data in the application. The record list L10 shows the values ​​of fields, which are the individual items that make up a record. A field may also be called a cell or other name. The first line of the record list L10 shows the field name, which is the name of the field.

[0021] For example, when a user selects an arbitrary record from the record list L10, the user terminal 30 displays an application screen SC1 showing details of the record on the display unit 35, as shown in the lower part of FIG. 2. From the application screen SC1 in the lower part of FIG. 2, the user can input a value according to the field type, which is the type of field of the record. The field type can also be referred to as the data type of the field. The field type may be a type used in known applications. For example, the field type may be numeric, calculation, string (single line), string (multiple lines), date and time, link, or lookup.

[0022] For example, the field type of each of the fields named "Number of Sessions" and "Number of Page Views" is numeric. The user can enter any numeric value into these fields. The field type of the field named "Number of Page Views per Session" is calculated. This field has a formula set that indicates that the numeric value entered in the field named "Number of Page Views" is divided by the numeric value entered in the field named "Number of Sessions." Other fields also have a defined field type.

[0023] In this embodiment, the setting work support system 1 supports the setting work of a user who creates the application shown in Fig. 2. In the following explanation, it is assumed that the application shown in Fig. 2 has not yet been created. That is, it is assumed that the user is about to create a new application shown in Fig. 2. For example, when the user logs in to the groupware and performs an operation to create an application, the user terminal 30 displays on the display unit 35 a setting screen that enables the user to specify application settings.

[0024] 3 and 4 are diagrams showing examples of setting screens. For example, setting screen SC2 includes a display area A20 showing a list of forms that the user can place on application screen SC1. The user can specify a field of the field type shown in an image displayed in display area A20 by moving the image to display area A21 with cursor C. From setting screen SC2, the user can specify settings other than the field type (for example, field name, form layout, form width, graph, or access permission settings).

[0025] Hereinafter, field settings will be referred to as field settings. When there is no need to distinguish between field settings and settings other than field settings, they will simply be referred to as settings. For example, as shown in the upper part of FIG. 3, when a user moves an image indicating a field type of "numeric" from display area A20 to display area A21, a form for the field of field type "numeric" is placed in display area A21, as shown in the lower part of FIG. 3. The layout of the form in display area A21 becomes the layout of the form on application screen SC1 in the lower part of FIG. 2. The user moves images one after another from display area A20 to display area A21 until the desired settings are achieved.

[0026] In this embodiment, the configuration support system 1 supports a user in configuring an app based on a machine learning model that has learned the settings of a training app. Details of the learning method for the machine learning model will be described later. Here, it is assumed that the machine learning model has learned the field settings of the training app. For example, the machine learning model predicts the field type that the user will place on the next form based on the field type of the form that the user has placed on the display area A21.

[0027] For example, as shown in the upper part of FIG. 4, suppose that a user moves an image showing a field type "numeric" from display area A20 to display area A21. When there are two fields of the field type "numeric," the machine learning model predicts the field type (recommended field type) in which the user will place a form next. If the machine learning model predicts that the user will place a form of the field type "calculation" next, the user terminal 30 uses the placeholder function to display a form of the field type "calculation" in display area A21, as shown in the lower part of FIG. 4. The user terminal 30 may display a message suggesting the form in display area A21.

[0028] For example, if the user selects a form of the field type "calculation" displayed in the display area A21, the user terminal 30 places the form in the display area A21. If the user does not select a form of the field type "calculation" displayed in the display area A21, the user terminal 30 deletes the form from the display area A21. If a message suggesting the form is displayed in the display area A21, the user terminal 30 deletes the message.

[0029] For example, each time a user specifies or deletes some setting for an app, the machine learning model predicts the next setting the user will specify based on the training app settings that the machine learning model has learned. The user terminal 30 displays the prediction results of the machine learning model on the setting screen SC2 until the user completes the settings for the app they are creating. The setting work support system 1 of this embodiment is capable of supporting the user in setting up the app based on such a machine learning model. Details of the setting work support system 1 will be described below.

[0030] [3. Functions realized by the configuration support system] FIG. 5 is a diagram showing an example of functions realized by the setting work support system 1. As shown in FIG.

[0031] [3-1. Functions realized on the learning device] For example, the learning terminal 10 includes a machine learning model storage unit 100, a database storage unit 101, and a learning unit 102. The machine learning model storage unit 100 and the database storage unit 101 are realized by the storage unit 12. The learning unit 102 is realized by the control unit 11.

[0032] [Machine learning model memory section] The machine learning model storage unit 100 stores a machine learning model M. The machine learning model M is a model created based on a machine learning technique. The machine learning model M may be any type of model. For example, the machine learning model M may be any of a supervised learning model, a semi-supervised learning model, and an unsupervised learning model.

[0033] In this embodiment, an example is taken of the case where the machine learning model M is a model created by the LDA (Latent Dirichlet allocation) method. LDA is a type of topic model that is mainly used for clustering purposes. A topic model is a model for identifying the topic of a sentence. A topic model performs clustering so that sentences of the same topic belong to the same cluster. A cluster itself is sometimes called a topic. The topic model may be a model that uses a known method. The machine learning model M may also be a topic model other than LDA. For example, it may be LSA (Latent Semantic Analysis), NMF (Non-Negative Matrix Factorization), or HDP (Hierarchical Dirichlet Process).

[0034] It should be noted that the machine learning model M is not limited to a topic model. For example, the machine learning model M may be of various types of known techniques. In this embodiment, the machine learning model M is used for clustering, and therefore the machine learning model M may be created by other techniques used in clustering. For example, the machine learning model M may be a model created by k-Means clustering, hierarchical clustering, DBSCAN (Density-Based Spatial Clustering of Applications with Noise), or other techniques. For example, the machine learning model M may be a neural network. The machine learning model M may also perform processing other than clustering. An example of other processing will be described in a modified example described later.

[0035] For example, the machine learning model M includes parameters adjusted by learning and a program for calculating embedded representations, etc. The parameters of the machine learning model M are referenced by the program of the machine learning model M. For example, the parameters are weighting coefficients and biases. The program of the machine learning model M includes code that indicates the internal processing of the machine learning model M. For example, the program of the machine learning model M includes an intermediate layer that calculates embedded representations and generates data for the output layer, and an output layer that performs final output based on the data. The program and parameters of the machine learning model M may be various publicly known programs and parameters. The machine learning model storage unit 100 may also store other data, such as a learning program that indicates a series of processes during learning. It is assumed that the calculation formula for the loss function calculated during learning is also specified in the learning program.

[0036] [Database storage section] The database storage unit 101 stores data necessary for learning the machine learning model M. For example, the database storage unit 101 also stores a training database DB1 necessary for learning and a topic database DB2 acquired as a result of learning.

[0037] FIG. 6 is a diagram showing an example of a training database DB1. The training database DB1 is a database that stores training data necessary for training the machine learning model M. In this embodiment, the machine learning model M corresponds to LDA, which is a type of unsupervised learning, and therefore the training data is not annotated. When a machine learning model M based on supervised learning or semi-supervised learning is used, the training data is annotated. The training data may be prepared by manual input or by using a known tool.

[0038] For example, the training data is created based on the settings of a training app. The training app is an app used to generate the training data. For example, the training app may be a virtual app prepared by a creator who creates the machine learning model M (e.g., a person in charge of a company that provides groupware to users), or may be an app that is actually used in groupware. The training data may indicate any settings of the training app. In this embodiment, the training data indicates field settings of the training app.

[0039] For example, the training data indicates each of a plurality of field types and the number of fields of that field type in the training app. That is, for each field type, the training data indicates the number of fields of that field type in the training app. For example, if the number of field types is n (n is a natural number), the training data is represented by an n-dimensional vector. The element of each dimension of the vector is the number of fields of the field type corresponding to that dimension.

[0040] In the example of FIG. 6, the first training app has 3, 1, 0, 2, and 0 fields of the field type "numeric", field type "calculation", field type "single line of text", field type "multiple lines of text", and field type "date". The training data also indicates the number of other field types. Similarly, the training data for the second and subsequent training apps also indicates the number of fields of each field type.

[0041] The training data may be in any format. The format of the training data is not limited to a vector. For example, the training data may be expressed as an array, a matrix, a combination of multiple numbers, a single number, a character, or other symbols. In the example of FIG. 6, the number of each field type in the training app may be represented in the training data in another format, such as an array.

[0042] Furthermore, when the training data is annotated, the training data includes an input portion that is input to the machine learning model M during learning, and an output portion that becomes the correct answer during learning. The combination of the input portion and the output portion may be a combination that corresponds to the setting work supported by the machine learning model M. For example, the input portion of the training data indicates the field settings of the training app. The output portion of the training data indicates the cluster to which the training app belongs. The cluster can also be called a label.

[0043] 7 is a diagram showing an example of topic database DB2. Topic database DB2 is a database that stores topic data indicating individual topics acquired when learning of machine learning model M is completed. For example, topic database DB2 stores topic IDs, which are IDs for identifying individual topics, and topic data. The number of topics may be specified by the creator of machine learning model M, or may be determined by a program for learning machine learning model M.

[0044] In the example of Figure 7, the topic data for each topic indicates the usage rate of each field type in the training apps that belong to that topic. The usage rate of a field type is the number of training apps that use fields of that field type divided by the total number of training apps that belong to the topic. For example, if the usage rate of a field type is 90%, it indicates that fields of that field type are used in 90% of the training apps in the topic.

[0045] The data stored in the database storage unit 101 is not limited to the example of this embodiment. The database storage unit 101 may store any data necessary for learning the machine learning model M. For example, the database storage unit 101 may store a database in which various data of a training app is stored. The database stores data indicating various settings of the training app. Training data may be created based on the database.

[0046] [Study Department] The learning unit 102 performs learning of the machine learning model M based on each of the multiple training data stored in the training database DB1. In this embodiment, an example is given in which the learning unit 102 performs learning of the machine learning model M based on an unsupervised learning algorithm. The learning algorithm may be the well-known algorithm described above. The learning unit 102 may perform learning of the machine learning model M based on a supervised learning, semi-supervised learning, or unsupervised learning algorithm.

[0047] For example, the learning unit 102 trains the machine learning model M by adjusting parameters based on an unsupervised learning algorithm so that training data with similar characteristics belong to the same cluster. In this embodiment, the learning unit 102 trains the machine learning model M based on a known LDA algorithm. When a topic model other than LDA is used, the learning unit 102 trains the machine learning model M based on an algorithm of the other known topic model. When a machine learning method other than the topic model is used, the learning unit 102 trains the machine learning model M based on an algorithm of the other machine learning method.

[0048] In this embodiment, the learning unit 102 performs a series of learning processes by executing a learning program stored in the database storage unit 101. The learning unit 102 records the trained machine learning model M in the database storage unit 101. The database storage unit 101 may store both the machine learning model M before learning and the trained machine learning model M. The learning unit 102 transmits the trained machine learning model M to the server 20. The trained machine learning model M transmitted to the server 20 is made available for use by the user.

[0049] For example, the learning unit 102 generates a topic database DB2 based on the processing results of the trained machine learning model M and records it in the database storage unit 101. The learning unit 102 generates the topic database DB2 by calculating the usage rate of each field type for each topic based on the field settings of the training app that belongs to the topic. The learning unit 102 transmits the topic database DB2 to the server 20. The topic database DB2 transmitted to the server 20 is made available for use by users.

[0050] When a supervised learning or semi-supervised learning model is used, the learning unit 102 may perform learning of the machine learning model M by adjusting the parameters of the machine learning model M based on the algorithm of these models so that when an input portion of training data is input to the machine learning model M, an output portion of training data is output from the machine learning model M. For example, the learning unit 102 performs learning of the machine learning model M based on a known algorithm such as backpropagation or gradient descent.

[0051] [3-2. Functions realized by the server] For example, the server 20 includes a machine learning model storage unit 200, a database storage unit 201, a setting operation identification unit 202, and a setting work support unit 203. The machine learning model storage unit 200 and the database storage unit 201 are each realized by the storage unit 22. The setting operation identification unit 202 and the setting work support unit 203 are each realized by the control unit 21.

[0052] [Machine learning model memory section] The machine learning model storage unit 200 stores the machine learning model M that has been trained using training data created based on the training settings. For example, the machine learning model storage unit 200 stores the machine learning model M that has been trained by the learning terminal 10. The learning of the machine learning model M may be performed by the server 20. In this case, the server 20 has the same functions as the learning unit.

[0053] [Database storage section] The database storage unit 201 stores data necessary for supporting the setting work. For example, the database storage unit 201 stores a topic database DB2. The machine learning model storage unit 200 stores the topic database DB2 generated by the learning terminal 10. In addition to the topic database DB2, the database storage unit 201 also stores an application database DB3 in which various data of applications is stored.

[0054] Fig. 8 is a diagram showing an example of the application database DB3. For example, the application database DB3 stores application IDs, which are IDs for identifying individual applications, and application setting data indicating specific settings for the applications. The application database DB3 may store any data, and the data stored in the application database DB3 is not limited to the example shown in Fig. 8. For example, the application database DB3 may store record data indicating details of individual records.

[0055] In this embodiment, the application setting data indicates a field setting. For example, the field setting is a field type of a field in the application. The field setting may be any setting of a field. The field setting is not limited to the field type. For example, the field setting may be a field name (column name), a field order (column order), a layout of a form for a user to input a field value, a calculation formula set for the field, or other settings.

[0056] The application setting data is not limited to field settings. The application setting data may indicate any settings of the application. For example, the application setting data may be the application name, a memo for the application administrator, the display format of the record list L10, settings of graphs displayed in the application, the application icon, the overall design of the application, access permissions, or other settings. When a user creates an application, the server 20 associates the application ID of the application with application setting data indicating the settings of the application and stores them in the application database DB3.

[0057] The data stored in the database storage unit 201 is not limited to the above example. The database storage unit 201 can store any data. For example, the database storage unit 201 may store a user database in which various data of users is stored. The user database stores data such as a user ID and password for logging in to the groupware. The database storage unit 201 may store data of each screen such as the application screen SC1 or the setting screen SC2. For example, the database storage unit 201 may store a program that enables the creation of an app using no-code or low-code. The program contains code that does not need to be entered by the user. The app is created based on settings specified by the user and the code of the program. The app may be created by the server 20 or by a computer other than the server 20.

[0058] [Setting operation specific part] The setting operation identification unit 202 identifies a setting operation performed by the user to set up an app. The setting operation is an operation different from an operation in which the user inputs a character string indicating a code. For example, the setting operation may be an operation in which the user selects an image (an image for setting up the app) displayed on the setting screen SC2, an operation in which the user specifies a specific value for the setting of the app, or an operation in which the user inputs a character string other than a code. The setting operation may be any operation related to some setting of the app.

[0059] In this embodiment, a case will be taken as an example in which the setting operation is an operation by the user to specify settings. That is, an operation in which the user specifies specific settings of an app corresponds to the setting operation. Other examples of the setting operation will be described in the modified examples described later. For example, when the user performs a setting operation, the user terminal 30 transmits setting operation data indicating the content of the setting operation to the server 20. The server 20 receives the setting operation data from the user terminal 30. The setting operation identification unit 202 identifies the setting operation by referring to the setting operation data. In this embodiment, the identification of the setting operation by the setting operation identification unit 202 corresponds to identifying the content of the setting specified by the user.

[0060] In this embodiment, the setting operation data indicates field settings specified by the user through a setting operation. In the examples of Figures 3 and 4, the setting operation corresponds to an operation in which the user moves an image showing a form of a specific field type from display area A20 to display area A21. The setting operation data indicates the field type specified through the setting operation (the field type indicated by the image moved by the user from display area A20 to display area A21). The setting operation data also indicates the contents of other settings, such as the layout of the form.

[0061] The setting operation may be any operation performed by the user on the setting screen SC2. The setting operation is not limited to the user moving an image indicating a field type from the display area A20 to the display area A21. For example, the setting operation may be the user inputting text indicating a field name, changing the layout of a field form, or rearranging the order of fields. The setting operation may also be the user specifying field settings by other methods.

[0062] For example, the setting operation may be an operation in which the user specifies settings other than field settings. For example, the setting operation may be an operation in which the user inputs text indicating an application name, an operation in which the user inputs a memo for the application administrator, an operation in which the user specifies the display format of the record list L10, an operation in which the user specifies settings for a graph displayed in the application, an operation in which the user specifies an application icon, an operation in which the user specifies the overall design of the application, an operation in which the user specifies access permissions, or an operation in which the user specifies other settings. Even when these setting operations are performed, the setting operation data may be data that enables the server 20 to identify what settings the user specified through the setting operation.

[0063] [Settings Support Department] The setting work support unit 203 supports the user in setting up an app based on the setting operation identified by the setting operation identification unit 202 and the machine learning model M. The setting work is work performed by the user to set up an app. The setting operation is an example of the setting work. The user may perform an operation other than the setting operation as the setting work. For example, the other operation may be an operation to delete settings specified by the user, an operation to copy an app that has already been created, or an operation to delete an app that has already been created.

[0064] The setting work support unit 203 supporting the setting work means that the setting work support unit 203 executes processing for reducing the burden of the setting work on the user. For example, the setting work support unit 203 proposing specific details of the setting work to the user, the setting work support unit 203 automatically executing all or part of the setting work, and the setting work support unit 203 automatically generating data indicating application settings correspond to the setting work support unit 203 supporting the setting work. In the example of the setting screen SC2 at the bottom of FIG. 4, the setting work support unit 203 executing a display using a placeholder function and a display of a message indicating the next setting work corresponds to the setting work support unit 203 supporting the setting work.

[0065] In this embodiment, the user specifies the app settings themselves through a setting operation, and the setting work support unit 203 supports the setting work based on the settings specified through the setting operation and the machine learning model M. For example, if the settings specified through the setting operation are field settings, the machine learning model M has learned training data created based on the training field settings. The learning process is as described above. In this embodiment, the machine learning model M has learned training data created based on the training app.

[0066] In this embodiment, the setting work support unit 203 supports the setting work by suggesting to the user field settings to be specified by the next setting operation based on the field settings specified by the setting operation and the machine learning model M. The setting work support unit 203 suggests the field settings by displaying information related to the field settings predicted by the machine learning model M on the setting screen SC2 in a manner that can be visually recognized by the user. The information is not limited to an image of a placeholder function such as the setting screen SC2 at the bottom of FIG. 4. For example, the information may be a message such as the setting screen SC2 at the bottom of FIG. 4, or an image such as an icon. The setting work support unit 203 may suggest the field settings to the user by using an effect such as blinking of the image in the display area A20.

[0067] For example, the setting work support unit 203 suggests to the user field settings to be specified by the next setting operation based on the topic output from the machine learning model M and the topic database DB2. For example, the setting work support unit 203 suggests to the user field settings that have not yet been specified by the user, from among the field settings used in the topic to which the app that the user is setting belongs.

[0068] For example, when the field setting is a field type, the setting work support unit 203 supports the setting work by suggesting to the user a field type to be specified by the next setting operation based on the field type specified by the setting operation and the machine learning model M. The setting work support unit 203 suggests to the user a field type that has not yet been specified by the user from among the field types used in the topic to which the app that the user is setting belongs.

[0069] For example, the setting work support unit 203 performs clustering of apps being set by the user based on the settings specified by the setting operation and the machine learning model M. The setting work support unit 203 represents the current settings specified by the user in the same format as the training data. In the example of FIG. 6, the setting work support unit 203 represents the current settings specified by the user as vector-format data. The setting work support unit 203 inputs the data into the machine learning model M to perform clustering of apps being set by the user. The machine learning model M outputs the topic ID of the topic to which the app being set belongs.

[0070] The setting work support unit 203 identifies the topic to which the app being set by the user belongs based on the results of clustering. The topic is identified by the topic ID output by the machine learning model M. The setting work support unit 203 supports the setting work by predicting the next setting operation (the setting that the user should specify next, i.e., the recommended setting) based on the settings of the training app that belongs to the topic. For example, the next setting operation is predicted based on the trends of apps similar to the app being set (apps that belong to the same topic as the app being set).

[0071] For example, the setting work support unit 203 refers to the topic database DB2 and acquires topic data for the topic to which the application being set by the user belongs. The setting work support unit 203 predicts the next field settings to be specified based on the topic data and the current field settings of the application being set by the user. Based on the topic data, the setting work support unit 203 predicts field settings that are missing in the current field settings of the application being set by the user as field settings to be specified by the next setting operation.

[0072] For example, if the user has not yet specified a field type whose usage rate is relatively high as indicated by the topic data, the setting work support unit 203 suggests that field type to the user. Even if the user has specified a field type whose usage rate is relatively high as indicated by the topic data, the setting work support unit 203 suggests that field type to the user if the field type is relatively rare in the app being set up. The setting work support unit 203 may calculate an evaluation value using a predetermined formula based on the field type specified in the app being set up and the usage rate of each field type indicated by the topic data, and suggest to the user a field type whose evaluation value is relatively high.

[0073] In the example of Figure 4, assume that the topic data for the topic to which the app being set by the user belongs indicates that the usage rates of the field type "numeric" and the field type "calculation" are relatively higher than the usage rates of other field types. In this case, when the user specifies two fields of the field type "numeric" for the app being set, the setting work support unit 203 determines, through processing by machine learning model M, that the app being set belongs to the above topic. Based on the above topic data, the setting work support unit 203 determines that the usage rate of the field type "calculation," which has not yet been specified by the user, is high, and suggests a field of the field type "calculation" to the user, as shown in the lower part of Figure 4.

[0074] The setting work support unit 203 may suggest field settings other than the field type to the user. For example, if the machine learning model M has learned trends in other field settings such as field names, the setting work support unit 203 may suggest the other field settings to the user. If the machine learning model M has learned trends in other settings (for example, graph settings) other than field settings, the setting work support unit 203 may suggest the other settings to the user.

[0075] Furthermore, in the present embodiment, an example is given in which processing is performed by the setting work support unit 203 every time the user performs some setting operation, but the setting work support unit 203 does not have to perform processing every time a setting operation is performed. For example, the setting work support unit 203 may perform processing every time the user performs a predetermined number of setting operations (e.g., three times). The setting work support unit 203 may perform processing when the user performs an operation to request support from the machine learning model M. If the machine learning model M cannot predict the settings to be proposed, the setting work support unit 203 may not make a suggestion to the user.

[0076] [3-3. Functions implemented on user devices] For example, the user terminal 30 includes a data storage unit 300, a display control unit 301, and an operation reception unit 302. The data storage unit 300 is realized by the storage unit 32. The display control unit 301 and the operation reception unit 302 are each realized by the control unit 31.

[0077] [Data storage section] The data storage unit 300 stores data necessary for setting up an application. For example, the data storage unit 300 stores a browser for displaying various screens of the setting work support system 1. For example, the data storage unit 300 stores a program dedicated to groupware.

[0078] [Display control section] The display control unit 301 causes the display unit 35 to display various screens in the setting work support system 1. For example, the display control unit 301 causes the display unit 35 to display a screen such as an application screen SC1 or a setting screen SC2 based on data received from the server 20.

[0079] [Operation reception section] The operation reception unit 302 receives various operations in the setting work support system 1. For example, it receives operations on the application screen SC1 or the setting screen SC2. Data indicating the operation content received by the operation reception unit 302 is transmitted to the server 20 as appropriate.

[0080] [4. Processing performed by the configuration support system] Fig. 9 is a diagram showing an example of processing executed by the setting work support system 1. The processing of Fig. 9 is executed by the control units 21 and 31 executing programs stored in the storage units 22 and 32, respectively. Before the processing of Fig. 9 is executed, it is assumed that learning of the machine learning model M has been completed. The processing of Fig. 9 is an example of processing of the setting work support method of this embodiment.

[0081] As shown in FIG. 9, when a user performs an operation to create a new app, the user terminal 30 executes processing with the server 20 to display a setting screen SC2 (S1). When the user performs some setting operation on the setting screen SC2, the user terminal 30 transmits setting operation data indicating the user's setting operation to the server 20 (S2). The server 20 receives the setting operation data from the user terminal 30 (S3). The server 20 identifies the user's setting operation based on the setting operation data (S4). The server 20 records data indicating the history of the user's setting operations in the storage unit 22. That is, the server 20 records data indicating what field settings have been specified for the app being set in the storage unit 22.

[0082] The server 20 performs clustering of the app being set by the user based on the field settings specified by the user in the setting operations up to that point and the machine learning model M (S5). In S5, the server 20 performs clustering by generating data in which the field settings specified by the user are expressed in the same vector format as the training data and inputting the data into the machine learning model M. The server 20 determines whether or not the field settings to be specified by the next setting operation (recommended field settings) have been predicted based on the results of the clustering performed in S5 and the topic database DB2 (S6). When the user has just started to specify field settings, the topic to which the app being set belongs may not be identified, and in this case, the field settings are not predicted.

[0083] If it is determined in S6 that the field setting to be specified by the next setting operation has been predicted (S6: Y), the server 20 executes a process for proposing the identified field setting with the user terminal 30 (S7). In S7, the server 20 transmits data indicating the field setting to be proposed to the user terminal 30. The user terminal 30 proposes the field setting to the user based on the data by using a placeholder function or the like. If it is not determined in S6 that the field setting to be specified by the next setting operation has been predicted (S6: N), the process of S7 is not executed. The user terminal 30 determines whether the user has performed an end operation to end the app settings (S8). The end operation may be any operation performed from the setting screen SC2 (for example, an operation in which the user selects the "Update" button).

[0084] If it is determined in S8 that the user has not performed the termination operation (S8: N), the process returns to S2. In this case, the setting of the app continues. If it is determined in S8 that the user has performed the termination operation (S8: Y), the user terminal 30 executes a process to save the app settings in the app database DB3 with the server 20 (S9), and this process ends. In S9, the user terminal 30 transmits final setting data indicating the final settings of the app to the server 20. The server 20 generates a new app ID and app setting data corresponding to the final setting data, and stores these in the app database DB3. When the process of S9 is complete, the app created by the user is used in the user's organization. The above process is completed without the user having to enter a code.

[0085] [5. Summary of embodiments] The configuration support system 1 of this embodiment can support a user's app configuration work based on the configuration operations performed by the user and the machine learning model M that has learned training data. The support provided by the configuration support system 1 reduces the workload of the user in the configuration work. For example, a user can obtain general information, such as how to use an app in general, from the app's help page, but may not be able to obtain information specific to the app they are currently configuring. In this regard, the configuration support system 1 can provide support tailored to individual users by utilizing the machine learning model M. The configuration support system 1 can also motivate users who are considering using an app to start using the app. For example, a user who has not yet used an app may hesitate to use the app because they do not know what settings to specify. In this regard, the support provided by the configuration support system 1 makes it easier for users to start using the app. As a result, the configuration support system 1 can promote app usage.

[0086] Furthermore, the setting work support system 1 supports the setting work based on the settings specified by the setting operation and the machine learning model M. As a result, the setting work support system 1 can provide more effective support by having the machine learning model M analyze the specific settings specified by the user.

[0087] Furthermore, the configuration work support system 1 supports the configuration work by suggesting to the user field settings to be specified by the next configuration operation based on the field settings specified by the configuration operation and the machine learning model M. Field settings are particularly important settings for an app and are complex settings that beginner users in particular tend to have trouble with. For this reason, users often have trouble with field settings, but the configuration work support system 1 can provide more effective support by having the machine learning model M analyze the field settings specified by the user.

[0088] Furthermore, the setting work support system 1 supports the setting work by suggesting to the user the field type to be specified by the next setting operation based on the field type specified by the setting operation and the machine learning model M. For example, novice users tend to have difficulty specifying a field type, but the setting work support system 1 can provide more effective support by having the machine learning model M analyze the field type currently specified by the user and suggesting the next field type to the user.

[0089] Furthermore, the configuration work support system 1 performs clustering of the app being configured based on the settings specified by the configuration operation and the machine learning model M, and supports the configuration work based on the results of the clustering. This allows the configuration work support system 1 to support the configuration work based on the trends of training apps similar to the app being configured. For example, the user can continue the app configuration work while referring to the settings of a training app similar to the app they are about to create.

[0090] [6. Modifications] The present disclosure is not limited to the above-described embodiments, and can be modified as appropriate without departing from the spirit of the present disclosure.

[0091] Fig. 10 is a diagram showing an example of functions realized by the modified setting work support system 1. As shown in Fig. 10, in the modified example described below, the server 20 includes a user attribute data acquisition unit 204 and a past setting data acquisition unit 205. Each of the user attribute data acquisition unit 204 and the past setting data acquisition unit 205 is realized by the control unit 21.

[0092] [6-1. Variation 1] For example, in the embodiment, the field type has been mainly described as an example of a field setting, but the field setting may be other settings of a field. In Modification 1, an example is given in which the field setting is a field layout, which is the layout of the fields. The layout is the position of the fields in the app. For example, the order of the fields in the app (column order) or the position of the field form on the app screen SC1 at the bottom of FIG. 2 corresponds to the field layout.

[0093] For example, the user can perform a setting operation to specify a field layout from the setting screen SC2. In the examples of FIGS. 3 and 4, the order of fields in the app may be such that the field in the form in the upper left of the display area A21 is number 1, and the order may become later as you move to the right and downwards. The position of the field form on the app screen SC1 may be the same as the position of the field form in the display area A21. The setting operation to specify a field layout may be any other operation. For example, the setting operation of the first modification may be an operation in which the user inputs a number indicating the order of the fields, an operation in which the user rearranges the order of the fields from a list similar to the record list L10, or any other operation.

[0094] The setting work support unit 203 of the first modification supports the setting work by proposing to the user a field layout to be specified by the next setting operation based on the field layout specified by the setting operation and the machine learning model M. The training data of the first modification is created based on the field layout of the training app. For example, the training data indicates the order of fields in the training app (e.g., whether the order is numeric, numeric, calculation, etc.) or the position of the field form (e.g., the position of the field form for each field type of numeric, numeric, calculation).

[0095] For example, the learning unit 102 of Modification 1 trains the machine learning model M based on training data created based on the field layout of a training app. The learning unit 102 trains the machine learning model M so that training apps with similar field layouts belong to the same topic. The learning unit 102 generates a topic database DB2 in which topic data indicating the tendency of the field layout of training apps belonging to each topic is stored. For example, the topic data stored in the topic database DB2 of Modification 1 indicates the tendency of the field layout of training apps belonging to the topic. For example, the topic data for a certain topic indicates the order of fields in training apps belonging to the topic or the form arrangement of fields in training apps belonging to the topic.

[0096] For example, the setting work support unit 203 identifies a topic to which the app being set belongs based on the field layout of the app being set and the machine learning model M. The setting work support unit 203 inputs data indicating the field layout of the app being set to the machine learning model M. The machine learning model M performs clustering based on the data and identifies a topic to which the app being set belongs. Although the data used in the clustering is different from that of the embodiment, the clustering process is the same as that of the embodiment.

[0097] For example, the setting work support unit 203 predicts the field layout to be specified by the next setting operation based on the topic data of the topic to which the application being set belongs. For example, in the example of the setting screen SC2 at the bottom of FIG. 4, suppose the topic data indicates that a field of the field type "calculation" tends to be placed after two fields of the field type "numeric" lined up horizontally. In this case, the setting work support unit 203 predicts that if the user lines up two fields of the field type "numeric" horizontally, some other field will be placed after them. The setting work support unit 203 suggests to the user that a field be placed after that.

[0098] The setting work support unit 203 may determine whether the field layout specified by the user for the app being set differs from the field layout indicated by the topic data of the topic to which the app being set belongs. If it is determined that they differ, the setting work support unit 203 may suggest to the user the field layout indicated by the topic data.

[0099] For example, in an app such as those shown in Figures 2 to 4, suppose that a user specifies the first three fields of the app being set in the following order: a field of field type "calculation", a field of field type "numeric", and a field of field type "numeric". In this case, suppose that the topic data of the topic to which the app being set belongs indicates the order of the first three fields as a field of field type "numeric", a field of field type "numeric", and a field of field type "calculation". In this case, the setting work support unit 203 determines that these fields are different, and therefore suggests to the user the order indicated by the topic data.

[0100] For example, the setting work support unit 203 determines whether the position of the form of each field in the display area A21 of the app being set differs from the position of the form of each field indicated by the topic data of the topic to which the app being set belongs. If it is determined that they differ, and the difference (for example, the difference in the two-dimensional position of the form) is equal to or greater than a threshold, the setting work support unit 203 suggests to the user the position of the form of each field indicated by the topic data. If other elements are used as the field layout, the setting work support unit 203 may suggest the other elements to the user.

[0101] The configuration work support system 1 of the first modification supports the configuration work by proposing to the user a field layout to be specified by the next configuration operation based on the field layout specified by the configuration operation and the machine learning model M. For example, a user who is not familiar with creating apps may not fully understand what kind of field layout is appropriate and may be unsure about specifying the field layout. The configuration work support system 1 can provide more effective support by having the machine learning model M analyze the field layout specified by the user and proposing a field layout to the user.

[0102] [6-2. Variation 2] For example, the setting work support unit 203 may suggest to the user a training app similar to the app being set. As in the embodiment, training data created based on the training app is learned in the machine learning model M of the second modification. The setting work support unit 203 of the second modification supports the setting work by suggesting a training app to the user based on the settings specified by the setting operation and the machine learning model M. The suggested training app is a training app that belongs to the same topic as the app being set.

[0103] FIG. 11 is a diagram showing an example of a setting screen SC2 of Modification Example 2. For example, the setting work support unit 203 identifies a topic to which the app being set belongs, similarly to the embodiment. The setting work support unit 203 selects one of a plurality of training apps belonging to the topic. The setting work support unit 203 may randomly select one of the plurality of training apps, or may select a representative training app from the topic (for example, a training app specified by the creator of the machine learning model M). As shown in FIG. 11, the setting work support unit 203 causes the user terminal 30 to display a button B22 for displaying the settings of the training app on the setting screen SC2.

[0104] For example, when the user selects button B22, the setting work support unit 203 displays a setting screen SC2 showing settings for a training app on the user terminal 30. In the example of FIG. 11 , the setting work support unit 203 references the app database DB3 and acquires app setting data for a training app called a "site administrator app" that is similar to the app being set. The setting work support unit 203 displays all or part of the acquired app setting data on the setting screen SC2. The user continues setting the app being set, referring to the settings for the training app. If necessary, the user replaces the settings for the app being set with the settings for the training app displayed on the setting screen SC2. The user may create a new app by copying the training app instead of the app being set.

[0105] The setting work support system 1 of the second modification supports the setting work by suggesting training apps to the user based on the settings specified by the setting operation and the machine learning model M. This allows the user to perform the setting work by referring to the training apps, and therefore the setting work support system 1 can improve user convenience.

[0106] [6-3. Variation 3] For example, the machine learning model M may have learned training data indicating the settings specified by the training setting operations and the order in which the training setting operations were performed. The training data of Modification 3 indicates not only the number of field types as described in the embodiment, but also the order of setting operations when the training app settings are performed. For example, the training data also indicates the order of setting operations, such as a first setting operation indicating a field of the field type "numeric," a second setting operation indicating a field of the field type "numeric," and a third setting operation indicating a field of the field type "calculation." The training data may also indicate the order in which setting operations, such as deleting a field, were performed.

[0107] For example, even if two fields of the "numeric" field type and one field of the "calculation" field type are specified, the next setting operation may differ depending on the order in which they are specified. For example, if the order is number, number, calculation, then the number is often specified next, but if the order is number, calculation, number, then calculation, then calculation may often be specified next. In this way, the machine learning model M may learn not only the simple number of field types, but also the tendency of the order in which field types are specified. The machine learning model M performs clustering by taking into account not only the number of field types, but also the order of setting operations as one of the features. For this reason, even if the number of field types is the same, training apps with different orders of setting operations may belong to different topics.

[0108] The setting work support unit 203 of the third modification supports the setting work based on the settings specified by the setting operation, the order in which the setting operation was performed, and the machine learning model M. For example, the setting work support unit 203 inputs not only the settings indicated by the setting operation performed by the user for the app being set up, but also data indicating the order in which the setting operation was performed into the machine learning model M. The machine learning model M performs clustering taking into account the order as one of the features. The setting work support unit 203 suggests to the user the field type to be specified next based on the results of clustering performed by the machine learning model. Although the fact that the order is taken into account in the clustering differs from the embodiment, the processing after clustering is performed (processing for suggesting a field type) is the same as the embodiment.

[0109] The setting work support system 1 of the third modification supports the setting work based on the settings specified by the setting operations, the order in which the setting operations were performed, and the machine learning model M. This allows the setting work support system 1 to provide more effective support when what should be suggested to the user differs depending on the order of the setting operations. For example, even if two fields of the field type "numeric" are specified and one field of the field type "calculation" is specified, the setting work support system 1 can make appropriate suggestions to the user by differentiating the field types suggested to the user when the fields are specified in the order numeric, numeric, calculation and when the fields are specified in the order numeric, calculation, numeric.

[0110] [6-4. Variation 4] For example, the machine learning model M is not limited to a model that performs clustering as described in the embodiment. In Modification 4, another example of the machine learning model M will be described. The machine learning model M of Modification 4 is an interactive model. An interactive model is a model that, when a user inputs text in a natural language, generates a response according to the text. The text input by the user includes content related to app settings. For example, the user inputs text such as the purpose of the app or general preferences for app settings. The interactive model can also be called a chat-type model.

[0111] 12 is a diagram showing an example of processing executed by the setting work support system 1 of Modification 4. As shown in FIG. 12, for example, when a user inputs text such as "Please create a time attendance management app," the machine learning model M divides the text into tokens and calculates embedded expressions. The machine learning model M generates a response corresponding to the embedded expression, such as "Should I create a time card app?"

[0112] For example, when a user inputs text such as "That's it, please," the machine learning model M generates data in a domain-specific language (DSL), a type of programming language or markup language for specific applications, based on the trends of the training time card app. In Variation 4, the DSL generated by the machine learning model M is data in a format that can be input to an application creation program P that creates an application. The application creation program P creates an application based on the DSL. For example, the application creation program P includes code for generating application setting data from the DSL data generated by the machine learning model M. The application creation program P is stored in the data storage unit 200. The server 20 executes the code indicated in the application creation program P, causing the application creation program P to realize no-code or low-code application creation. If the computer on which the machine learning model M is stored and the computer on which the application creation program P is stored are separate computers, the application creation program P may be part of an API. Programs other than the application creation program P may be used to create an application.

[0113] For example, when the application creation program P creates a temporary application, the machine learning model M obtains, from the application creation program P, processing result data indicating the processing results of the application creation program P. The processing result data may be in any format, for example, data in a markup language such as JSON. For example, the processing result data obtained may include data indicating the settings of the temporary application created by the application creation program P. The processing result data may indicate the type of data required for the application (for example, employee master data). Based on the processing result data, the machine learning model M generates a response to the user: "I have created an application. I need employee master data." When the user inputs text such as "There should be an employee application," the machine learning model M generates DSL data that causes the application creation program P to search for the application for the employee specified by the user.

[0114] For example, when the application creation program P searches for an application based on the DSL data, it generates processing result data indicating the application search results. If the processing result data indicates that three applications were found in the search, the machine learning model M displays a message such as "Three candidates were found" and prompts the user to select one of the three applications. If the user inputs text such as "Please use the second application," the machine learning model M generates DSL data indicating that employee master data is to be associated from the second application. Based on the DSL data, the application creation program P acquires employee master data from the second application and updates the application setting data for the application being configured. The machine learning model M acquires processing result data from the application creation program P indicating the update results of the application setting data. Based on the processing result data, the machine learning model M displays a response to the user saying, "The application has been updated." In the fourth variation, the user can complete the application configuration through such dialogue.

[0115] In Variation 4, an example is taken in which the machine learning model M is a so-called large-scale language model. For example, the machine learning model M may be a large-scale language model such as a Generative Pre-trained Transformer (GPT), a Bidirectional Encoder Representations from Transformers (BERT), a Pathways Language Model (PaLM), or a Large Language Model Meta AI (LLaMA). The machine learning model M may also be another model not classified as a large-scale language model (e.g., a neural network or a sequence-to-sequence model). For example, the parameters of the machine learning model M may be a matrix referenced when calculating an embedding representation, a positional encoding referenced in encoding token positions, or other parameters.

[0116] For example, the program of the machine learning model M indicates the processing of an encoder that calculates an embedded representation, a decoder that creates data for output according to a task such as scheduling, an output layer that provides final output based on the data, and other intermediate layers. When the machine learning model M is a large-scale language model, the machine learning model M also includes a program that indicates the processing of splitting input data into multiple tokens. The program of the machine learning model M may be a known program. When the machine learning model M is a large-scale language model, the machine learning model M also includes a program that indicates the processing of splitting input data into multiple tokens.

[0117] In Variation 4, an example is taken of a case where a pre-trained large-scale language model corresponds to machine learning model M. For example, the learning unit 102 may re-train the machine learning model M based on training data. Re-training is adjustment of parameters of the pre-trained machine learning model M. For example, the re-training is fine tuning, transfer learning, or distillation. Instead of re-training the machine learning model M, the learning unit 102 may start from scratch and train a machine learning model M that has not been pre-trained (a machine learning model M whose parameters are at initial values).

[0118] The training data of Variation 4 includes an input portion that is input to the machine learning model M during learning, and an output portion that is the correct answer during learning. For example, the input portion of the training data is text input by a user for training. The output portion of the training data is DSL data that is the correct answer when the text is input. The learning unit 102 adjusts the parameters of the machine learning model M so that when text indicated by the input portion of the training data is input, DSL data indicated by the output portion of the training data is output.

[0119] For example, the input portion of the training data may be processing result data for training generated by the application creation program P. The output portion of the training data may be text that is a correct answer to the user. The learning unit 102 adjusts the parameters of the machine learning model M so that when the processing result data indicated by the input portion of the training data is input, the text indicated by the output portion of the training data is output.

[0120] The setting operation of Variation 4 is an operation in which the user inputs a prompt to the machine learning model M to set up an app. The prompt is an instruction from the user to the machine learning model M. As shown in FIG. 12 , in the case of an interactive machine learning model M, the prompt is basically input as text, but the prompt may also include symbols or the like indicating some kind of instruction in addition to text. The setting work support unit 203 supports the setting work by acquiring input data in a format that can be input to the application creation program P that creates the app, based on the prompt input by the setting operation and the machine learning model M. In the example of FIG. 12 , data generated in DSL corresponds to the input data.

[0121] For example, the machine learning model M divides a prompt input by a user in a setting operation into multiple tokens. The machine learning model M calculates an embedding vector for each of the multiple tokens based on learned parameters. The machine learning model M predicts the next word as needed based on the calculated embedding vector, and then generates input data. The input data indicates information for setting up according to the prompt input by the user. Depending on the prompt input by the user, the machine learning model M may not generate input data.

[0122] The configuration work support unit 203 of Modification 4 inputs the output data output from the machine learning model M as input data to the database creation program P. The configuration work support unit 203 supports the configuration work by having the database creation program P output processing result data indicating the processing result of the database creation program P. For example, the database creation program P executes processing for setting up an application based on the input data input to it. The database creation program P generates and outputs processing result data based on its own code. The configuration work support unit 203 supports the configuration work by presenting a response to a prompt to the user based on the processing result data acquired from the application creation program P and the machine learning model M. In the example of FIG. 12, the processing result of the application creation program P is indicated by processing result data in JSON format.

[0123] For example, the configuration work support unit 203 inputs processing result data to the machine learning model M. Based on the processing result data, the machine learning model M divides the data into tokens as necessary and calculates an embedding vector. The machine learning model M generates response data corresponding to the embedding vector. The configuration work support unit 203 transmits the data to the user terminal 30, thereby causing a response from the machine learning model M to be displayed on the user terminal 30. Note that the configuration work support unit 203 may support the configuration work by displaying the contents of the processing result data as is on the user terminal 30, rather than causing the machine learning model M to generate a response based on the processing result data. In this case, the user can check the contents of the processing result data in JSON format.

[0124] In Modification 4, the setting work support unit 203 may determine whether the output data output from the machine learning model M is in a format that can be input to the application creation program P. In the case of FIG. 12, the setting work support unit 203 determines whether the output data output from the machine learning model M is in a DSL format. In this case, if the setting work support unit 203 determines that the output data is in that format, it acquires the output data as input data to support the setting work. If the setting work support unit 203 does not determine that the output data is in that format, it supports the setting work by presenting a response to the prompt to the user based on the output data.

[0125] In the example of Figure 12, the prompt initially input by the user did not output output data in DSL format, so no input data is entered into the application creation program P, and a reply to the user is displayed. As shown in Figure 12, the application setup is completed by repeated dialogue between the user and the machine learning model M. Note that the dialogue required to complete the application setup may be one time. In this case, the application setup is completed without repeated dialogue. The application setup may also be completed when the user performs an operation to end the application setup.

[0126] The configuration work support system 1 of the fourth modification supports the configuration work by acquiring input data in a format that can be input to the application creation program P, based on the prompt entered by the configuration operation and the machine learning model M. This allows the configuration work support system 1 to complete the configuration of the application without requiring the user to specify the application settings themselves. For example, the user only needs to enter a rough outline of the desired application as a prompt, allowing the configuration work support system 1 to provide more effective support.

[0127] Furthermore, the configuration work support system 1 supports the configuration work by inputting the output data output from the machine learning model M into the database creation program P as input data and having the database creation program P output processing result data indicating the processing result of the database creation program P. By using the machine learning model M to have the database creation program P output processing result data, the configuration work support system 1 eliminates the need for the user to directly specify settings for causing the database creation program P to output the processing result data, thereby effectively improving user convenience. As a result, the configuration work support system 1 can improve the accuracy of the app.

[0128] Furthermore, when the configuration work support system 1 determines that the output data output from the machine learning model M is in a predetermined format, it acquires the output data as input data to support the configuration work. When the configuration work support system 1 does not determine that the output data is in a predetermined format, it supports the configuration work by presenting a response to a prompt to the user based on the output data. This allows the configuration work support system 1 to correct the settings by repeating the dialogue even if the desired settings are not achieved in the first dialogue. As a result, the configuration work support system 1 can improve the accuracy of the app. For example, the configuration work support system 1 can continue the dialogue with the user even if the machine learning model M cannot output output data in a format required for app configuration. The configuration work support system 1 can output output data in a predetermined format while the dialogue with the user continues.

[0129] [6-5. Variation 5] For example, the content to be suggested to a user may differ depending on the organization or department to which the user belongs. In the example of FIG. 4, even if the user places two fields of the field type "numeric," the field type that the configuration work support system 1 should next suggest may differ if the user belongs to the manufacturing industry and if the user belongs to the service industry. For example, the field type that the configuration work support system 1 should next suggest may differ if the user belongs to the sales department and if the user belongs to the development department. For this reason, the configuration work may be supported taking into account some attribute of the user.

[0130] The setting work support system 1 of the fifth modified example includes a user attribute data acquisition unit 204. The user attribute data acquisition unit 204 acquires user attribute data indicating the attributes of a user. The user attribute data is assumed to be stored in the database storage unit 201. The user attributes may be information that allows users to be classified from some perspective. For example, in addition to the industry or department of the organization described above, the attributes may also be the user's age group, gender, years of service, job title, hobbies, or other attributes. The user attributes may be specified by the user himself or herself, or may be specified by an administrator in the user's organization.

[0131] The setting work support unit 203 of the fifth modification supports the setting work based on the setting operation, the machine learning model M, and the user attribute data. In the fifth modification, the training data includes user attribute data of a training user. For example, the training data includes not only the settings of a training app but also the user attribute data of the training user who created the training app. The machine learning model M performs clustering by considering not only the settings of the training app but also the user attribute data of the training user who created the training app as one of the features. The setting work support unit 203 supports the setting work based on the results of clustering that considers the user attribute data as one of the features. Although the fifth modification differs from the embodiment in that user attributes are taken into account in the clustering, the processing after the clustering (processing for proposing a field type) is the same as the embodiment.

[0132] The setting work support system 1 of the fifth modification supports the setting work based on the setting operation, the machine learning model M, and the user attribute data. This allows the setting work support system 1 to make suggestions according to the attributes of the user, thereby effectively supporting the setting work by the user.

[0133] [6-6. Variation 6] For example, if a user has configured some app in the past, the content that should be suggested to the user may differ based on the user's past trends. For example, suppose that the user places two fields of the field type "numeric." If the user subsequently tends to place another field of the field type "numeric" rather than a field of the field type "calculation," it would be better to suggest a field of the field type "numeric." Therefore, the configuration work may be assisted by taking into account the user's past configuration trends.

[0134] The setting work assistance system 1 of the sixth modification includes a past setting data acquisition unit 205. The past setting data acquisition unit 205 acquires past setting data indicating past settings that are settings made by the user in past setting operations. It is assumed that user attribute data is stored in the database storage unit 201. For example, when a user performs a setting operation for an app, the server 20 records the past setting data corresponding to the settings indicated by the setting operation in the database storage unit 201, in association with the user ID of the user.

[0135] The setting work support unit 203 of the sixth modification supports the setting work based on the setting operation, the machine learning model M, and the past setting data. In the sixth modification, it is assumed that the training data includes past setting data of a training user. For example, the training data includes not only the settings of the training app but also past setting data indicating settings previously made by the training user who created the training app. The machine learning model M performs clustering by considering not only the settings of the training app but also the past setting data of the training user who created the training app as one of the features. The setting work support unit 203 supports the setting work based on the results of clustering that considers the past setting data as one of the features. Although the sixth modification differs from the embodiment in that the past tendencies of the user are taken into account in the clustering, the processing after the clustering (processing for suggesting a field type) is the same as the embodiment.

[0136] The setting work support system 1 of the sixth modification supports the setting work based on the setting operation, the machine learning model M, and the past setting data. This allows the setting work support system 1 to make suggestions according to the user's past tendencies, thereby effectively supporting the setting work by the user.

[0137] [6-7. Other variations] For example, two or more of the modifications 1 to 6 may be combined.

[0138] For example, the above example illustrates a case in which the configuration work support system 1 supports a user performing configuration work on a groupware app. However, the configuration work support system 1 may also support a user performing configuration work on a database other than an app. The configuration work support system 1 may also support a user performing configuration work on a database that does not have a communication function, etc. The configuration work support system 1 may also support a user performing configuration work on a database of a business support system that is not classified as groupware. The configuration work support system 1 may also support a user performing configuration work on a database that is not related to the business support system. For example, the above example illustrates a case in which the configuration work support system 1 supports a user performing configuration work on a new app. However, the configuration work support system 1 may also support a user performing configuration work to change the settings of an existing app. In this case, the configuration work support system 1 may also support the user's configuration work based on the settings of the existing app, the setting operations performed by the user to change the settings, and the machine learning model M.

[0139] For example, in the embodiment, the machine learning model M that performs application clustering has been described as an example. However, the machine learning model M may perform processing other than clustering. For example, the input portion of the training data may indicate some settings of the application for training. The output portion of the training data may indicate a setting (a correct setting) that is to be specified next to the setting indicated by the input portion. The learning unit 102 learns the machine learning model M so that, when an input portion indicating some settings of the application for training is input, the setting indicated by the output portion corresponding to the input portion is output. The setting operation support unit 203 inputs settings specified by the user for the application being set to the trained machine learning model M. The machine learning model M calculates an embedded expression of the setting based on parameters adjusted by the learning, and outputs a setting corresponding to the embedded expression. The setting operation support unit 203 may suggest the setting output from the machine learning model M to the user. This series of processing may be implemented by a mechanism in which the machine learning model M used in natural language processing predicts the next word.

[0140] For example, the functions described as being realized by the server 20 may be realized by the user terminal 30. In this case, the functions may be realized by a browser script or an application installed on the user terminal 30. For example, each function may be shared among multiple computers or may be realized by a single computer. [Explanation of symbols]

[0141] 1 Configuration work support system, 10 learning terminal, 11, 21, 31 control unit, 12, 22, 32 memory unit, 13, 23, 33 communication unit, 20 server, 30 user terminal, 14, 34 operation unit, 15, 35 display unit, M machine learning model, N network, P application creation program, 100, 200 machine learning model memory unit, 101, 201 database memory unit, 102 learning unit, 202 configuration operation identification unit, 203 configuration work support unit, 204 user attribute data acquisition unit, 205 past configuration data acquisition unit, 300 data memory unit, 301 display control unit, 302 operation reception unit, A20, A21 display area, B22 button, DB1 training database, DB2 topic database, DB3 application database, L10 record list, SC1 application screen, SC2 configuration screen.

Claims

1. A setting operation specifying unit that specifies a setting operation for a user to specify settings for a database created using no-code or low-code, the setting operation excluding input of text by the user; a machine learning model storage unit that stores a machine learning model learned from training data created based on the settings for training; a setting operation support unit that supports the user in setting the database by suggesting to the user the setting to be specified by the next setting operation based on the setting specified by the setting operation and the machine learning model; A setup support system including:

2. the settings are field settings that are settings of a field in the database, The machine learning model is trained with the training data created based on the field setting for training, the setting operation support unit supports the setting operation by suggesting to the user the field setting to be specified by the next setting operation based on the field setting specified by the setting operation and the machine learning model. The setting operation support system according to claim 1 .

3. the field setting is a field type that is a type of the field; the setting operation support unit supports the setting operation by suggesting to the user the field type to be specified by the next setting operation based on the field type specified by the setting operation and the machine learning model. The setting operation support system according to claim 2 .

4. the field configuration is a field layout that is a layout of the field, the setting operation support unit supports the setting operation by suggesting to the user the field layout to be specified by the next setting operation based on the field layout specified by the setting operation and the machine learning model.

4. The setting operation support system according to claim 2 or 3.

5. the machine learning model has learned the training data created based on the training database; the setting operation support unit supports the setting operation by suggesting the training database to the user based on the setting specified by the setting operation and the machine learning model.

4. The setting operation support system according to claim 1.

6. the machine learning model has learned the training data created based on the training database; the setting operation support unit performs clustering of the database being set based on the setting specified by the setting operation and the machine learning model, and supports the setting operation based on the results of the clustering.

4. The setting operation support system according to claim 1.

7. the machine learning model has learned the training data indicating the settings specified by the setting operations for training and the order in which the setting operations for training were performed; the setting operation support unit supports the setting operation based on the settings specified by the setting operation, the order in which the setting operation was performed, and the machine learning model.

4. The setting operation support system according to claim 1.

8. the setting work support system further includes a user attribute data acquisition unit that acquires user attribute data indicating attributes of the user, the setting operation support unit supports the setting operation based on the setting operation, the machine learning model, and the user attribute data.

4. The setting operation support system according to claim 1.

9. the setting operation support system further includes a past setting data acquisition unit that acquires past setting data indicating past settings that are the settings performed by the user in past setting operations, the setting operation support unit supports the setting operation based on the setting operation, the machine learning model, and the past setting data.

4. The setting operation support system according to claim 1.

10. Identifying a configuration operation for a user to specify settings for a database created using no-code or low-code, the configuration operation excluding text input by the user; supporting the user in setting up the database by suggesting to the user the settings to be specified by the next setting operation based on the settings specified by the setting operation and a machine learning model that has learned training data created based on the settings for training; Setting work support method.

11. a setting operation specifying unit that specifies a setting operation for a user to specify settings for a database created using no-code or low-code, the setting operation being excluding input of text by the user; a setting operation support unit that supports the user in setting up the database by suggesting to the user the settings to be specified by the next setting operation based on the settings specified by the setting operation and a machine learning model that has learned training data created based on the settings for training; A program that allows a computer to function as a

Citation Information

Patent Citations

  • Intelligent WebIDE design method for online development of Internet of Things

    CN116880818A