Information processing device, application generation system, program, application generation method

The information processing system facilitates application development by interacting with a generative AI system, allowing users to create applications through natural language conversations, addressing the need for separate AI system management and enabling no-code or low-code development.

JP2025144491APending Publication Date: 2025-10-02RICOH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024129038
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-19
Filing Date
2024-08-05
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Existing methods require separate development, maintenance, and operation of AI systems for generating applications, which can be a barrier for users lacking specialized knowledge.

Method used

An information processing system that communicates with a generative AI system via a network, allowing users to develop applications through natural language conversations, using an application generation unit, chat control unit, and setting information generation unit to generate applications based on user inputs and AI system interactions.

Benefits of technology

Enables users to create applications with minimal coding knowledge by conversing with a generative AI system, facilitating no-code or low-code application development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025144491000001_ABST
    Figure 2025144491000001_ABST
Patent Text Reader

Abstract

To generate an application using an external generative AI system.SOLUTION: An information processing device includes: an application generation unit that functions by execution of a predetermined function and generates, based on a parameter included in a request relating to generation of an application, the application relating to the request; a chat control unit that transmits, when receiving a chat message transmitted from a terminal device, the received chat message to a generative AI system; and a setting information generation unit that generates setting information for generating the application. When receiving a request which is transmitted by the generative AI system based on the chat message, the setting information including information relating to generation of the application, and information for calling the function, the information processing device generates the application based on the parameter included in the received request.SELECTED DRAWING: Figure 10
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, an application generation system, a program, and an application generation method. [Background technology]

[0002] A programming method using artificial intelligence (AI) has been devised (see, for example, Patent Document 1). Patent Document 1 discloses a technology that acquires text data from conversational text, references a program code database in which one or more program codes are stored in association with the extracted context, a program grammar analysis database, and an automatic program generation knowledge database in which programs that have been made more efficient for the processing operations to be realized are associated, and generates one or more programs corresponding to the extracted context. Summary of the Invention [Problem to be solved by the invention]

[0003] However, in order to generate programs such as applications using an AI system, it is necessary to develop, maintain, and operate the AI ​​system separately from the application.

[0004] In view of the above, an object of the present invention is to generate an application using an external AI system (such as a generation AI system). [Means for solving the problem]

[0005] In view of the above-mentioned problems, the present invention provides a terminal device and a generating AI (Artificial Intelligence) an information processing device capable of communicating with a AI (AI Intelligence) system via a network, the information processing device comprising: an application generation unit that functions by executing a predefined function, and that generates the application related to the request based on parameters included in the request for generating an application; a chat control unit that, when receiving a chat message sent from the terminal device, sends the received chat message to the AI ​​generation system; and a setting information generation unit that generates setting information for generating the application, wherein the chat control unit displays an input instruction on a screen that receives the chat message to prompt input of premise information for generating the application, and the setting information generation unit generates the setting information including the premise information input in response to the input instruction, and the chat control unit transmits the setting information for generating the application and information for calling the function to the AI ​​generation system at least once, and when the chat control unit receives the request sent by the AI ​​generation system based on the chat message sent to the AI ​​generation system, the setting information sent to the AI ​​generation system, and the information for calling the function sent to the AI ​​generation system, the application generation unit generates the application related to the request based on the parameters included in the received request. [Effects of the Invention]

[0006] Applications can be generated using external AI systems (such as generative AI systems). [Brief explanation of the drawings]

[0007] [Figure 1] This diagram explains the process from when the generation AI system requests the execution of a function in response to a chat message entered by a user to when the information processing system generates an application. [Figure 2A]FIG. 10 is a diagram illustrating an example of a chat screen displayed on a user terminal. [Figure 2B] 2B is a diagram showing an example of an inventory management application screen for a restaurant displayed by an inventory management application for a restaurant created based on the conversation in FIG. 2A. FIG. [Figure 3] FIG. 1 illustrates a system configuration of an example of an application generation system. [Figure 4] FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing system, a user terminal, and a developer terminal. [Figure 5] FIG. 2 is a diagram illustrating an example functional configuration of an information processing system, a user terminal, and a developer terminal. [Figure 6] This figure shows an example of a request message that the information processing system sends when it calls the API of the AI ​​system generated when a user inputs "Please create a daily report app" on the screen of the user terminal. [Figure 7] FIG. 7 is a diagram showing an example of a response message of the generation AI system in response to the request message of FIG. 6. [Figure 8] A figure showing an example of a request message that an information processing system sends to a generation AI system after generating or updating an application for an application service. [Figure 9] FIG. 9 is a diagram showing an example of a response message of the generation AI system in response to the request message of FIG. 8. [Figure 10] 1 is an example of a sequence diagram illustrating a process in which an information processing system supports application development. [Figure 11] 10A and 10B are diagrams illustrating an example of a portal screen and a chat screen for an application service displayed on a user terminal. [Figure 12] FIG. 10 is a diagram illustrating an example of a chat screen displayed on a user terminal when a user develops an app. [Figure 13] 13 is a diagram showing an example of a customer management application screen displayed by the customer management application created by the conversation in FIG. 12. FIG. [Figure 14]FIG. 10 is a diagram illustrating an example of a portal screen of an application service displayed on a user terminal. [Figure 15] FIG. 2 is a diagram illustrating an example of a functional configuration of an information processing system and a user terminal. [Figure 16] This is an example of a sequence diagram (part 1) in which an information processing system generates or updates an application for an application service by utilizing the cooperation of two web browsers in a user terminal. [Figure 17] This is an example of a sequence diagram (part 2) in which an information processing system generates or updates an application for an application service by utilizing the cooperation of two web browsers in a user terminal. [Figure 18] This diagram explains the process from when the generation AI system requests the information processing system to execute a function in response to a chat message entered by a user, to when the information processing system generates an application. [Figure 19] FIG. 10 is a diagram illustrating an example of functional configurations of an information processing system, a user terminal, and a developer terminal in a case where an application service and the information processing system are integrated. DETAILED DESCRIPTION OF THE INVENTION

[0008] An information processing system as an example of an embodiment of the present invention and an application generation method performed by the information processing system will be described below with reference to the drawings.

[0009] <Supporting application development using generative AI systems> Generative AI systems such as ChatGPT (registered trademark) are known. Generative AI systems can perform various natural language processing tasks, such as text generation, question answering, text classification, sentiment analysis, information extraction, and text summarization. Generative AI systems such as Copilot (registered trademark) are also known, which suggest the next piece of code to be written during program coding. In this embodiment, a technology is described in which a user generates an application through a conversation (also called a chat) with a generative AI system. Note that a generative AI system or its functions may be simply referred to as AI (artificial intelligence).

[0010] Here, the external generation AI system may be provided as a system different from the system that provides the service related to the application, and the service related to the application and the generation AI system may be provided by the same provider.

[0011] First of all, it is said that when users with little specialized knowledge develop apps, the following two issues become barriers. 1. I don't know what kind of app to make. 2. I want to create an app, but I don't know how to make it.

[0012] Barrier 1 can be easily solved by using a generative AI system to generate ideas. Generative AI systems typically learn from a large amount of text on the internet, so they have knowledge of a wide range of industries and business processes. This allows them to provide a wealth of ideas for different types of apps.

[0013] Regarding barrier 2, generally, AI, including generative AI systems, cannot generate applications. Therefore, in this embodiment, barrier 2 is resolved by utilizing a function that calls functions (called function calling, function call, etc.) provided by the generative AI system, and by having an information processing system intervene between the user and the generative AI system. This will be explained with reference to Figures 1 and 2.

[0014] FIG. 1 is a diagram illustrating the process from when the generation AI system 50 requests the information processing system 20 to execute a function in response to a chat message entered by a user to when the information processing system 20 generates an application. The information processing system 20, which will be described later, provides a user interface for users to use the generation AI system 50 to develop applications. The information processing system 20 also converts chat messages sent from the user terminal 10 into request messages that call APIs (Application Programming Interfaces) published by the generation AI system 50 and application service 40, and sends the request messages to the generation AI system 50 and application service 40.

[0015] (1) The user inputs information about the application they want to develop, such as the type of business. The user terminal 10 transmits the information about the application, such as the type of business, input by the user, and a chat message to the information processing system 20. In this embodiment, the chat message may be, for example, "Make a daily report app." Note that the chat message may include not only a direct instruction such as "Make a daily report app," but also a message expressing a desire, such as "I want a daily report app."

[0016] (2) When the information processing system 20 receives a chat message entered by a user, it includes the received chat message in a request message and sends it to the generation AI system 50 via an API for receiving request messages provided by the generation AI system. Here, the information processing system 20 also includes background information such as the industry, the chat message, and a function specification in the request message. A function is a program interface that performs a specific process based on specified arguments and returns a return value as a result. This function enables the generation AI system 50 to request the information processing system 20 to generate or update an application used by the application service 40. By including the function specification settings in a request message and sending it to the generation AI system 50, the information processing system 20 can generate or update an application with low code or no code in response to a request from the generation AI system 50. The generation AI system 50's request to the information processing system 20 to call this function is referred to as a function call. Additionally, as supplemental information, the information processing system 20 can include in the request message system settings that notify the generation AI system 50 of what the application is. Details of the system settings and function specification settings will be described later, but while the system settings are general policies regarding the application to be generated, the function specification settings are information that the information processing system 20 specifies to the generation AI system 50 the specifications of the functions that the generation AI system 50 will call.

[0017] Note that the information processing system 20 does not have to include the system settings and function specification settings in the same request message as the received chat message. For example, the information processing system 20 may include the system settings and function specification settings in a request message separate from the request message containing the received chat message and transmit the request message to the generation AI system 50. The information processing system 20 may also include the system settings and function specification settings in separate request messages and transmit the request message to the generation AI system 50.

[0018] The information processing system 20 may transmit the system settings and function specification settings each time a received chat message is included in a request message and transmitted, or may transmit them only once at the beginning.

[0019] (3) The generation AI system 50 sends a response message including a function call request (function call) to the information processing system 20 based on the industry, chat message conversation history, function specification settings, and system settings included in the sent request message. Note that the generation AI system 50 only requests the information processing system 20 to call the function, and it is the information processing system 20 that actually executes the function. However, the generation AI system 50 includes in the request message field names and the like (examples of parameters) corresponding to the type of app requested by the user. Examples of field names and the like for a daily report app are explained in Figure 2.

[0020] Note that the generation AI system 50 does not necessarily send a response message including a function call request to the information processing system 20 based on the conversation history, function specification settings, and system settings. For example, the generation AI system 50 may send a response message including a question or a response message indicating that it could not understand the content of the chat message to the information processing system 20.

[0021] (4) The information processing system 20 generates an application in response to a function call request included in the response message sent from the generation AI system 50. The type of application to be generated is determined by (2) and (3). More specifically, the information processing system 20 generates a request message for calling the API of the application service 40 from the contents of the function call request, and sends the generated request message to the application service 40. In this embodiment, the process of generating such a request message may be expressed as "executing a function" or "running a function." In this embodiment, the information processing system 20 generates or updates an application of the application service 40 in response to the function call request.

[0022] In this way, the user simply inputs a chat message in natural language on the user terminal 10, and the information processing system 20 can use the generation AI system 50 to develop an application, thereby eliminating barrier 2.

[0023] The application generation support screen in FIG. 2A is an example of a chat screen displayed by the user terminal 10. The chat screen displays chat messages entered by the user and response messages from the generation AI system 50 alternately in chronological order. Note that FIG. 2A shows an example in which the entire chat history is displayed on the screen, but as the conversation history increases, the display may be scrolled.

[0024] Below are details of the chat message and response message.

[0025] Chat message 301 is a chat message entered by a user asking, "What kind of apps can you create?" A response message 302 to chat message 301 lists several apps, such as an inquiry app and a business owner management app.

[0026] Chat message 303 is a chat message entered by a user saying, "Please try creating an inventory management app for restaurants." Response message 304 to chat message 303 lists questions from generation AI system 50 when generating the app. Specifically, response message 304 lists the following questions: "Answer the following questions to help define the fields for your app. What is the name of the inventory item? Do you manage inventory item quantities numerically? What is the unit of measure for inventory items? Are there categories of inventory items? Do you control expiration dates on inventory items? Do I need to attach images of my inventory items?” is one of the questions listed.

[0027] Chat message 305 is a chat message entered by the user saying, "Try making it as you like." Response message 306 is a response message to chat message 305, and displays, for example, the results of creating an app. Response message 306 specifically displays the following results: "We have created an inventory management app for restaurants. You can access it from the following URL: Restaurant inventory management app (URL embedded) 306a The app has the following fields set: Item Name: This is the field where you enter the name of the inventory item. Quantity: A field that manages the quantity of an inventory item as a number. Unit: This is the field where you enter the unit of measure for the inventory item. Category: A drop-down field to select the category of the inventory item. You can choose from Ingredients, Beverages, Condiments, or Other. Best Before: A date field to enter the expiration date of the inventory item. Image: A field for attaching an image of the inventory item.

[0028] When a user presses the restaurant inventory management app 306a, the created restaurant inventory management app screen is displayed. This app screen has fields for, for example, item name, quantity, unit, category, expiration date, and image.

[0029] FIG. 2B is an example of an inventory management app screen 290 for a restaurant displayed by a restaurant inventory management app (inventory management app for a restaurant) created through the conversation in FIG. 2A. The restaurant inventory management app screen 290 has fields for item name 292, quantity 293, category 294, expiration date 295, and image 296. These fields are generated through a conversation between the user and the generative AI system 50. Therefore, by conversing with the generative AI system 50, the user can develop an inventory management app for a restaurant without having to specify any field names.

[0030] When the user presses the save button 291, the user terminal 10 transmits a message to the application service 40 indicating that the inventory management app for restaurants will be saved. Thereafter, the user can use the inventory management app for restaurants from a portal screen or the like.

[0031] In this way, the application generation system 100 of this embodiment allows a user to develop an application by conversing with the generation AI system 50 in natural language. The information processing system 20 specifies a function to the generation AI system 50, and the generation AI system 50 can request the information processing system 20 to call the function along with the field names of the application, etc. The information processing system 20 then actually generates or updates the application. From the user's perspective, this allows a no-code or low-code platform for actually developing a daily report app to be realized by simply inputting a message such as "Please create a suitable daily report app." Furthermore, although the industry of the application to be developed is not required, inputting the industry by the user makes it easier for the generation AI system 50 to generate application items appropriate for the user.

[0032] <Terminology> An application is an abbreviation for an application program, and is a program created by a computer for any task. While an OS (Operating System) is general-purpose software that provides basic functions and systems (file system, communication, display control, etc.) for computer operation, an application provides specific functions on the OS. Applications include web apps and native apps. In this embodiment, either may be developed.

[0033] An API is an interface for applications (software), and is therefore a point of contact for connecting systems and sharing functions and mechanisms. APIs define the specifications for the interface used by applications to exchange information with each other. An API between computers is a specification in which one website communicates with another website via HTTP (HTTPS) communication. This communication allows one website to use the functions of the other website. An API between computers is sometimes called a Web-API.

[0034] When an API sends a specific request (for example, retrieving, updating, deleting, or processing data), it returns the corresponding results (for example, data, update results, deletion results, or processing results). The request is sometimes called a request message, and the results are sometimes called a response message. Calling an API means sending a request according to the API specifications and obtaining the results. Calling an API can also be referred to as executing, operating, hitting, or using.

[0035] The information for calling a function is information that enables a function provided by the information processing system 20 to be called from outside the information processing system, for example, from the generation AI system 50. The information for calling a function includes information about the Web-API for calling the function.

[0036] The information regarding the Web-API for calling a function is information that enables the generation AI system 50 to call (use) the Web-API. In this embodiment, this is explained using the term function specification setting (hereinafter referred to as function specification setting). The function specification setting is information that the information processing system 20 specifies to the generation AI system 50 the specifications of the function call that the generation AI system 50 will call. The generation AI system 50 calls the function to the information processing system 20 based on the function specification setting, so the information processing system 20 can analyze the function.

[0037] A function is a program interface that performs a specific process based on specified arguments and returns a return value as a result. While the specifications and functions of a function can be designed by the developer, APIs are pre-prepared for functions that are publicly available for use by the generative AI system 50 and application service 40. A function is one of the API specifications, and can be set by calling the API if the API defines how to specify the function. Furthermore, a function call or a function call request refers to a request to execute a function.

[0038] A chat service is a service that allows multiple users to send and receive messages in real time. A generative AI system is a service that allows users to send and receive messages with AI in real time.

[0039] The setting information is the general policy for generating an application, and may be, for example, a description of the application, hints, or information that the user should not be asked. The setting information is information that, when communicated to the generation AI system 50, makes it easier to generate the desired application.

[0040] System settings are information in which all or part of this setting information has been converted into a request message that calls an API. In other words, system settings are information in which all or part of the setting information has been converted into API format.

[0041] The parameters included in the request for generating an application are variables that affect the behavior of the application. The content of the parameters varies depending on the application, but for example, in applications that handle table formats or databases, parameters include field names and field data formats. Other parameters may include the number of rows, the number of columns, the size of the rows and columns, the font and color when displaying data, and the position of the field.

[0042] A user is an end user who uses an application provided by the application service 40. A user can also develop an application. A developer is a person who makes the settings required for application development using no-code or low-code programming in the information processing system 20. The developer sets the setting information described below in the information processing system 20.

[0043] [First embodiment] In this embodiment, a case will be described in which the information processing system 20 can communicate with the application service 40, or the information processing system 20 and the application service 40 are in the same domain.

[0044] <System configuration example> The system configuration of the application generation system 100 according to this embodiment will be described with reference to FIG. 3. FIG. 3 is a diagram showing an example of the system configuration of the application generation system 100. The application generation system 100 shown in FIG. 3 includes an information processing system 20, a user terminal 10, and a developer terminal 60. The information processing system 20 and the user terminal 10, and the information processing system 20 and the developer terminal 60 are communicatively connected via networks N1 and N2. The information processing system 20 can also communicate with a generation AI system 50 and an external system, an application service 40, via the network N1. The user terminal 10 and the developer terminal 60 can also communicate with the generation AI system 50 and an external system, an application service 40, via the networks N1 and N2.

[0045] The user terminal 10 and the developer terminal 60 are located in facilities such as a company or a home, and are connected to a network N2. The network N2 may be a LAN, Wi-Fi (registered trademark), Wide Area Ethernet (registered trademark), a mobile phone network such as 4G, 5G, or 6G, etc. The network N1 is a wide-area network such as the Internet or a WAN. The user terminal 10 and the developer terminal 60 do not need to be connected to the network N2 at all times; they only need to be connected when using the information processing system 20, the generation AI system 50, or the application service 40.

[0046] The generative AI system 50 provides a service that allows users to converse with artificial intelligence (AI). A known example of such a generative AI system 50 is a system that uses large-scale language models (LLMs). A large-scale language model is a natural language processing model trained using a large amount of text data. The generative AI system 50 acquires a large amount of text in advance and learns knowledge from it using deep learning, reinforcement learning, and the like. The generative AI system 50 uses this knowledge to provide a response message to a chat message. The generative AI system 50 has an interface that receives chat messages and the like entered by a user. The chat messages and the like received through this interface are called prompts. Prompts include chat messages entered by a user, such as instructions and questions. Chat messages may be conversational sentences or words written in natural language spoken by humans. Images can also be used as chat messages. A generative AI system 50 that generates sentences in response to chat messages is sometimes referred to as a generative AI. In this embodiment, the information processing system 20 generates an application that runs on the application service 40 using the response message that the generative AI system 50 sends in response to a chat message entered by a user. The applications that run on the application service 40 include web applications that run on the application service 40 and native applications that are installed on the user terminal 10. When the native applications installed on the user terminal 10 are executed on the user terminal 10, they connect to the application service 40 and execute the functions of the application service 40.

[0047] The generative AI system 50 has the following features: 1. The generative AI system 50 advances the conversation in a natural flow. 2. The generative AI system 50 can expand on and propose ideas even in areas where the user has no knowledge. 3. The generative AI system 50 can output accurate program code. Therefore, the information processing system 20 can naturally advance the conversation with the user via the generative AI system 50. Furthermore, the user can receive the ideas necessary for the app simply by specifying the app they want to create. Furthermore, because the functions called by the generative AI system 50 are accurate (highly reproducible), the information processing system 20 can easily generate the application the user wants.

[0048] Systems using LLMs such as GPT-3, GPT-4, Transformer, and BERT (all of which are registered trademarks) are known as the generation AI system 50. As an example, ChatGPT using GPT-3 or GPT-4 can be used in the application generation system 100 of this embodiment, but systems using other LLMs may also be used.

[0049] The application service 40 is one or more information processing devices that provide applications executed by users. The applications provided by the application service 40 are, for example, database-type web applications that manage data in a tabular format. Users can arbitrarily set application fields and customize them to save, read, or process data related to their own business. Setting desired fields, etc., in a pre-prepared database in this way constitutes application development. In this embodiment, the information processing system 20 includes a chat message from the user in a request message and sends it to the generation AI system 50. The information processing system 20 uses the response message from the generation AI system 50 to generate or update an application for the application service 40. In other words, users can develop applications for the application service 40 without coding by entering chat messages.

[0050] When the domains of the application service 40 and the information processing system 20 are different (for example, when the service origins are different), the accounts of the application service 40 and the information processing system 20 are different even for the same user.

[0051] On the other hand, the application service 40 and the information processing system 20 may be integrated. That is, the application service 40 may include the functions of the information processing system 20, or the information processing system 20 may include the functions of the application service 40. The application service 40 and the generation AI system 50 may also be integrated. The generation AI system 50 and the information processing system 20 may also be integrated. The information processing system 20, the application service 40, and the generation AI system 50 may also be integrated.

[0052] Examples of application services 40 include cloud services, ASPs (Application Service Providers), SaaS, etc., and may include various services provided over a network. For example, examples of services include providing databases and storage services. Application services 40 may exist on the Internet or on-premise.

[0053] The information processing system 20 transmits chat messages from the user terminal 10 to the generation AI system 50. The information processing system 20 is composed of one or more information processing devices. From the perspective of the user terminal 10, the information processing system 20 acts as a server that accepts requests. A server is a computer or software that performs the function of providing information and processing results in response to requests from clients. The information processing system 20 provides a user interface to the user terminal 10, generates a request message from the received chat message, and sends the generated request message to the generation AI system 50. When the information processing system 20 receives an application generation request from the generation AI system 50, it requests the application service 40 to generate an application. The user does not have to go through the trouble of connecting the user terminal 10 to the generation AI system 50 or the application service 40.

[0054] As will be described later, a user may develop an application using the application service 40 as a portal. The information processing system 20 receives a connection request to the generation AI system 50 from a user terminal 10 connected to the application service 40, and communicates with the generation AI system 50. Details of such communication will be described in the second embodiment.

[0055] The information processing system 20 also accepts setting of configuration information from the developer terminal 60. Setting of configuration information means setting the knowledge (configuration information) necessary for generating an application of the application service 40 in the information processing system 20. The configuration information is information that the generation AI system 50 uses to generate application parameters. The configuration information may include, for example, what type of application is required to be generated. By having the developer set the configuration information in the information processing system 20, the user does not need to include application parameters, etc. in chat messages. The information processing system 20 can create appropriate system settings for the application to be generated based on the configuration information and notify the generation AI system 50 of the created system settings. The system settings are generated from the configuration information, and the system settings are part or all of the configuration information.

[0056] The setting information is set in the information processing system 20 before the user starts developing an application. However, the information processing system 20 can also customize the setting information for each customer. For example, if the setting information is "You will now be talking to a customer in the $$ industry" depending on the customer's industry, the information processing system 20 changes the industry name of $$ depending on the customer's industry and notifies the generation AI system 50.

[0057] The information processing system 20 uses this setting information to create a request message to be sent to the generation AI system 50. In the request message, the setting information is reflected in the system settings, which will be described in detail later. By having the developer send the setting information to the information processing system 20, users can generate applications with simple chat messages, even if they do not have specialized knowledge of the application.

[0058] Note that it is not always necessary to set the setting information, and there may be cases where the setting information is not necessary depending on the application.

[0059] The information processing system 20 may be realized by cloud computing or by a single information processing device. Cloud computing refers to a form in which resources on a network are used without being aware of specific hardware resources. The information processing system 20 may exist on the Internet or on-premise.

[0060] Furthermore, the functions of the information processing system 20 may be distributed across multiple information processing devices, or there may be multiple information processing systems 20 with the same functions, and the number of information processing systems that deliver videos may be increased or decreased depending on the processing load.

[0061] The user terminal 10 or the developer terminal 60 is, for example, a terminal device such as a PC (Personal Computer), smartphone, or tablet terminal used by a user or developer. A web browser or native application runs on the user terminal 10 or the developer terminal 60. The developer operates the developer terminal 60 to create setting information for the application. The user operates the user terminal 10 to create chat messages for developing an application for the application service 40. The administrator or user operates the developer terminal 60 and the user terminal 10 to use various services provided by the information processing system 20, the generation AI system 50, or the application service 40.

[0062] The user terminal 10 may be any information processing device, such as an electronic whiteboard, an output device such as digital signage, a head-up display (HUD), industrial machinery, an imaging device, a sound collection device, a medical device, a network appliance, a mobile phone, a smartphone, a tablet terminal, a game console, a personal digital assistant (PDA), a digital camera, or a wearable PC.

[0063] <Hardware configuration example> 4, the hardware configurations of the information processing system 20, user terminal 10, and developer terminal 60 included in the application generation system 100 will be described. The generation AI system 50 and application service 40 are assumed to have the same hardware configuration as that shown in FIG. 4 or to have the hardware configuration of an information processing device compatible with cloud computing.

[0064] <<Information processing system, user terminal, and developer terminal>> Fig. 4 is a diagram showing an example of the hardware configuration of the information processing system 20, user terminal 10, and developer terminal 60 according to this embodiment. As shown in Fig. 4, the information processing system 20, user terminal 10, and developer terminal 60 are constructed by a computer 500, and include a CPU 501, a ROM 502, a RAM 503, a HD (Hard Disk) 504, an HDD (Hard Disk Drive) controller 505, a display 506, an external device connection I / F (Interface) 508, a network I / F 509, a bus line 510, a keyboard 511, a pointing device 512, a DVD-RW (Digital Versatile Disk Rewritable) drive 514, and a media I / F 516.

[0065] Of these, the CPU 501 controls the overall operation of the computer 500. The ROM 502 stores programs used to drive the CPU 501, such as the IPL. The RAM 503 is used as a work area for the CPU 501. The HD 504 stores various data, such as programs. The HDD controller 505 controls the reading and writing of various data from and to the HD 504 under the control of the CPU 501. The display 506 displays various information, such as a cursor, menus, windows, characters, or images. The external device connection I / F 508 is an interface for connecting various external devices. In this case, external devices include, for example, USB (Universal Serial Bus) memories and printers. The network I / F 509 is an interface for data communication using the network N2. The bus line 510 is an address bus, a data bus, or the like, for electrically connecting the components, such as the CPU 501, shown in FIG. 4.

[0066] The keyboard 511 is a type of input means having multiple keys used to input characters, numbers, various instructions, etc. The pointing device 512 is a type of input means for selecting and executing various instructions, selecting a processing target, moving a cursor, etc. The optical drive 514 controls reading and writing of various data from a DVD-RW 513, which is an example of a removable recording medium. Note that the removable recording medium is not limited to the DVD-RW 513, and may be a DVD-R or the like. The media I / F 516 controls reading and writing (storing) of data from a recording medium 515, such as a flash memory.

[0067] <About the function> Next, the functional configuration of the application generation system 100 will be described with reference to Fig. 5. Fig. 5 is a diagram showing an example of the functional configuration of the information processing system 20, the user terminal 10, and the developer terminal 60.

[0068] <<User device>> The user terminal 10 has a communication unit 11, a display control unit 12, and an operation reception unit 13. Each of these functional units is a function or means realized by the CPU 501 shown in FIG. 4 executing instructions contained in one or more programs installed in the user terminal 10. For example, the communication unit 11, the display control unit 12, and the operation reception unit 13 may be realized by at least one of a web browser and JavaScript (registered trademark, omitted below). When the developer terminal 60 executes a native app, these may be realized by the native app.

[0069] The communication unit 11 transmits and receives various types of information to and from the information processing system 20. In this embodiment, the communication unit 11 receives screen information of a portal screen from the application service 40, and receives screen information such as a chat screen on which chat messages are entered from the information processing system 20. The communication unit 11 transmits chat messages, operation information for the user terminal 10, and the like to the information processing system 20. Note that the communication unit 11 can also communicate directly with the generation AI system 50.

[0070] The display control unit 12 interprets screen information of various screens and displays it on the display 506. The operation receiving unit 13 receives various operations on the various screens displayed on the display 506 by the user.

[0071] <<Developer's device>> The developer terminal 60 has a communication unit 61, a display control unit 62, and an operation reception unit 63. Each of these functional units is a function or means realized by the CPU 501 shown in FIG. 4 executing instructions contained in one or more programs installed on the developer terminal 60. For example, the communication unit 61, the display control unit 62, and the operation reception unit 63 may be realized by at least one of a web browser and JavaScript. When the developer terminal 60 executes a native app, these may be realized by the native app.

[0072] The communication unit 61 transmits and receives various information to and from the information processing system 20. In this embodiment, the communication unit 61 receives screen information related to input of setting information from the information processing system 20. The communication unit 61 transmits setting information, operation information for the developer terminal 60, etc. to the information processing system 20. The communication unit 21 can also communicate with the generation AI system 50 and the application service 40.

[0073] The display control unit 62 interprets screen information of various screens and displays it on the display 506. The operation receiving unit 63 receives various operations on the various screens displayed on the display 506 by the user.

[0074] <<Information Processing System>> The information processing system 20 has a communication unit 21, a screen generation unit 22, a chat control unit 23, a setting information storage unit 24, an application generation unit 25, and a setting information generation unit 28. Each functional unit of the information processing system 20 is a function or means realized by the CPU 501 shown in FIG. 4 executing instructions included in one or more programs installed in the information processing system 20. The setting information storage unit 24 is constructed in the HD 504, RAM 503, or the like shown in FIG. 4. The setting information storage unit 24 does not have to be included in the information processing system 20, and may be located on a network accessible by the information processing system 20.

[0075] The communication unit 21 transmits and receives various types of information to the user terminal 10. The communication unit 21 transmits screen information of the chat screen to the user terminal 10. The communication unit 21 receives chat messages input by the user for application development from the user terminal 10. The communication unit 21 also transmits and receives various types of information to the developer terminal 60. The communication unit 21 transmits screen information of the setting information input screen to the developer terminal 60. The communication unit 21 receives setting information input by the developer from the developer terminal 60 and stores it in the setting information storage unit 24.

[0076] The screen generation unit 22 generates screen information for screens (web pages) displayed by the user terminal 10 and the developer terminal 60. Web pages are provided as part of a web application. The screen information is a program written in HTML, JSON, XML, a scripting language, CSS (Cascading Style Sheet), etc. The structure of the web page is mainly specified by HTML, the behavior of the web page is defined by the scripting language, and the style of the web page is specified by CSS. The user terminal 10 may also execute a native application. A native application is an application that cannot be executed unless it is installed on the user terminal 10. In the case of a native application, the screen information is held by the user terminal 10, and the information to be displayed is transmitted in JSON, XML, etc.

[0077] The chat control unit 23 calls the first API 26 to send a request message to the generation AI system 50. The request message includes chat messages (including past conversation history), system settings, and function specification settings. The setting information generation unit 28 generates system settings that can be analyzed by the generation AI system 50 based on the setting information stored in the setting information storage unit 24. The setting information generation unit 28 also includes the industry type, etc. input by the user in the system settings.

[0078] The first API 26 is one or more APIs made public by the generation AI system 50. As a result of calling the first API 26, the chat control unit 23 receives a response message to the request message from the generation AI system 50. The response message includes a reply message to the chat message, a function call request to the information processing system 20, or the URL of an application that has been created or developed.

[0079] The application generation unit 25 sends a request message to the application service 40 by calling the second API 27. The application generation unit 25 functions by executing predefined functions. The request message includes parameters related to the application (database field name, data format, etc.). The request message to the application service 40 requests the generation or update of an application. The second API 27 is one or more APIs published by the application service 40. As a result of calling the second API 27, the application generation unit 25 receives a response message to the request message from the application service 40. The response message includes the result (success or failure) of the request to generate or update the application. If successful, the URL of the application is notified, and if unsuccessful, an error message is notified.

[0080] The application generation unit 25 may generate an application within the information processing system 20 without making a request to the application service 40. The application generation unit 25 may, for example, generate a macro that runs on a spreadsheet software, or may set a field in database software.

[0081] Here, "generating an application" does not only mean that the application generation unit 25 actually generates an application, but also means that the application generation unit 25 requests the application service 40 or the like to generate an application, and the application service 40 or the like actually generates the application.

[0082] <Additional information on the operation of the generative AI system> In this embodiment, the information processing system 20 uses the generating AI system 50 by calling the first API 26 made public by the generating AI system 50. When the information processing system 20 calls the first API 26, it becomes possible to converse with the AI, which is one of the functions of the generating AI system 50. The generating AI system 50 has distinctive operations or processes, which will be described in more detail below.

[0083] The information processing system 20 communicates with the generation AI system 50 by sending a request message for calling an API to the generation AI system 50. The request message allows the information processing system 20 to obtain a response message from the generation AI system 50.

[0084] The generation AI system 50 returns a response message to the request message to the information processing system 20. The response message included in the response message of the generation AI system 50 often differs each time, even for the same chat message. However, if the information processing system 20 sets a parameter called temperature to 0, the generation AI system 50 will return the same response message for the same chat message.

[0085] If the information processing system 20 wants to continue a conversation with the generative AI system 50, it must include all past conversation history in the request message. This is because conversations with the generative AI system 50 are stateless. This is a specification of one generative AI system 50, and another generative AI system 50 may not require the inclusion of past conversation history.

[0086] In this way, the first API 26 does not have a state related to past communications (it is stateless). For this reason, the user of the first API 26 (in this embodiment, the information processing system 20) must hold the history of past conversations and specify it each time the first API 26 is called. The history of past conversations may also be held by the user terminal 10. Furthermore, since the first API 26 returns an error if the conversation history becomes too long, it is preferable that the information processing system 20 take appropriate measures, such as including only the most recent exchanges in a request message if the conversation has continued for a long time.

[0087] <<Function call returned by the generation AI system>> The functions provided by the generative AI system 50 include a function called a function call. A function call is when the generative AI system 50 requests the information processing system 20 to call a function. Therefore, if the information processing system 20 allows the generative AI system 50 to use this function, the generative AI system 50 can call a "function."

[0088] The request message includes a function specification setting set by the information processing system 20 so that the generating AI system 50 can call a "function." The function specification setting enables the generating AI system 50 to make a function call (function call request). In this way, the function specification setting is information about the first API 26 for calling the application generation unit 25. In other words, the function specification setting notifies the generating AI system 50 that the generating AI system 50 can request the information processing system 20 to call a function.

[0089] In this way, the information processing system 20 causes the generation AI system 50 to use function call, which allows the generation AI system 50 to call a function provided by the information processing system 20 and the information processing system 20 to execute the function. Furthermore, the information processing system 20 can use the execution results of the function to converse with the user.

[0090] However, since the response message of the generation AI system 50 is different each time, the generation AI system 50 does not necessarily request a function call. Even if the information processing system 20 includes a function specification setting in the request message, the generation AI system 50 may return the same response message as when no function specification setting is set.

[0091] If a process is adopted in which the entire history of past conversations is included in the request message, the information processing system 20 must also include the execution result of the function in the request message and transmit it to the generation AI system 50. However, it is not necessary for the information processing system 20 to include the execution result of the function in the request message along with the history of past conversations and transmit it to the generation AI system 50. In other words, the information processing system 20 may transmit the execution result of the function directly to the user terminal 10. However, by transmitting the execution result of the function to the generation AI system 50, the generation AI system 50 can continue the conversation using the history of past conversations, thereby creating continuity in the conversation. For example, consistency in writing style and wording will be created, making it less likely that the user will feel uncomfortable. For example, even if the user's native language is English and the conversation is in English, the information processing system 20 does not need to translate the response message into English.

[0092] Furthermore, the information processing system 20 cannot predict whether the generating AI system 50 will request a function call. However, if the information processing system 20 explicitly specifies the "function_call option" in the request message, it can force the generating AI system 50 to make a function call.

[0093] <Application development support for application services> In this embodiment, a request message transmitted by the information processing system 20 and a response message transmitted by the generation AI system 50 will be described using an example in which a user develops a daily report application.

[0094] FIG. 6 shows an example of a request message that the information processing system 20 sends to call the first API 26 published by the AI ​​generation system 50 when a user inputs "Please create a daily report app" on the screen of the user terminal 10. The request message includes a role 230a and a content 230b. The role 230a indicates the speaker, and can be user (user), assistant (AI of the AI ​​generation system 50), or system (instructs the settings of the AI ​​assistant). The content 230b is the content of the conversation and may be written in natural language.

[0095] The request message in Figure 6 first includes system settings 229 from system. The system settings 229 include information 229a such as, "You will now be assisting in the development of an application within a SaaS service called XX Application Service. You will now interact with users to determine the application's 'fields'. Field definitions are expressed in JSON format. For example, consider a daily report application with the following three fields." The system settings 229 also include information 229b specifying the field names "Date," "Work Content," and "Impressions / Lessons." The data formats for each field are also specified, such as DATE, MULTI_LINE_TEXT, and MULTI_LINE_TEXT. These pieces of information 229a and 229b are based on the configuration information previously sent by the developer to the information processing system 20.

[0096] The request message also includes industry and job type information 231. This information is entered by the user on the chat screen 630 in FIG. 11. The industry and job type information 231 is one of the system settings set by the setting information generation unit 28 based on the industry, etc. The industry and job type information 231 is also considered to be prerequisite information for generating an application by the generation AI system 50. This information makes it easier for the generation AI system 50 to generate appropriate application items for this user.

[0097] The request message also includes a chat message 232 input by the user saying, "Please make a daily report application."

[0098] 6 also includes a function specification setting 233. "functions" is the function specification setting 233, and the function specification setting 233 has the following attributes. name234 is the name of the function (create_or_update_app). Description 235 specifies the function specifications. The detailed specifications are: "Create a daily report app. If successful, return {\"ok\": true, \"value\": \"app URL\"}. If unsuccessful, return {\"ok\": false, \"error\": ...}." In other words, description 235 instructs the generation AI system 50 to return a URL or an error message. The parameters 236 are also part of the function specification. "type": "object" indicates the data format of the returned value. "required": ["properties", "name"] indicates the item name (field name) required in the return value. "name": { "type": "string"} indicates the data format of name. "type": "array" indicates that it is in tabular format. "items" below shows the attributes and data format required for the field.

[0099] By this function specification setting 233, the information processing system 20 instructs the generating AI system 50 that the generating AI system 50 can request the information processing system 20 to call the function defined as shown in FIG.

[0100] FIG. 7 shows an example of a response message from the generation AI system 50 in response to the request message of FIG. 6. The response message includes a function call request 237. In this embodiment, when the response message includes the function call, the information processing system 20 generates an application for the application service 40. The application service 40 is a low-code or no-code platform. The application for the application service 40 is a database that manages user data and allows users to easily customize the UI screen that displays the data. The application service 40 exposes various APIs, and the information processing system 20 can generate or update the application by calling the second API 27. In this embodiment, the information processing system 20 can generate or update the application for the application service 40 by calling the second API 27 exposed by the application service 40 and the first API 26 exposed by the generation AI system 50 while the user is conversing with the generation AI system 50 in natural language.

[0101] The function call request 237 in the response message corresponds to an application generation request. The function call request 237 includes a name 238 and arguments 239. The name 238 is the name of the function defined in the function specification setting 233. The generation AI system 50 is requesting the call of the function with this name. The arguments 239 are the return value, which is defined in the function specification setting 233. In Figure 7, the return value 239 includes the application name 239a "Daily Report", field names 239b and 239c included in the daily report application, and their data formats (DATE, MULTI_LINE_TEXT), etc.

[0102] By using this function call, the generation AI system 50 can specify a field name such as business content and request the information processing system 20 to call a function that generates an application.

[0103] The information processing system 20 analyzes the function call included in the response message and determines to generate or update an application for the application service 40 (executes the function). Therefore, the information processing system 20 calls the second API 27 published by the application service 40 and generates or updates the application using the field names and data formats (examples of parameters) included in the response message. If the application is successfully generated or updated, the information processing system 20 obtains the URL of the application from the application service 40. The URL is access information used by the user terminal 10 to access the application. The information processing system 20 returns the URL of the application to the generation AI system 50. This creates continuity in the conversation between the user and the generation AI system 50.

[0104] Specifically, an example is considered in which the information processing system 20 uses three APIs of the application service 40 as follows. 1. API to generate applications published by Application Service 40 2. An API that adds two fields, "Date" and "Business Content," to the application created in 1. 3. APIs that expose your application If the application is successfully generated or updated, the information processing system 20 calls the first API 26 made public by the generation AI system 50 again, specifying the result of the function (the URL of the application).

[0105] FIG. 8 shows an example of a request message sent to the generation AI system 50 after the information processing system 20 generates or updates an application for the application service 40. This request message includes system settings 229, industry and job type information 231, chat messages 232, and a function call request 241 as a history of past conversations. The information processing system 20 also adds a function execution result 243 to the history of past conversations. The function execution result 243 in FIG. 8 includes a function execution indication 243a, the name of the executed function 243b (create_or_update_app), and a URL 243c. Note that FIG. 8 again includes a function specification setting 233, which is also a history of past conversations. Although FIG. 8 includes the function specification setting 233 as a history of past conversations, it may not be included depending on the specifications of the API provided by the generation AI system 50.

[0106] In addition to URL 243c, Figure 8 also includes past conversation history (system settings 229, industry and job type information 231, chat messages 232, function call request 241, function execution 243a, function name 243b), but if the generation AI system 50 has the function to retain past conversation history, the information processing system 20 only needs to send URL 243c to the generation AI system 50. In other words, it may be sufficient for the information processing system 20 to send the contents of past conversation history to the generation AI system 50 at least once in the past.

[0107] FIG. 9 is an example of a response message from the generation AI system 50 in response to the request message in FIG. 8. Note that in the case of application development, the response message is often different each time. For example, a response message like the one in FIG. 9 is expected to be returned. The response message in FIG. 9 includes a response message 245 saying, "The application has been created. Please check it at \"https: / / sample.com / k / 42 / \"." The information processing system 20 sends this URL to the user terminal 10, so the user can click the URL to check the field names of the developed application (database), etc.

[0108] Thereafter, until the user is satisfied, the input of chat messages and the sending and receiving of request messages and response messages between the information processing system 20 and the generation AI system 50 are repeated. In this way, the user can develop an application for the application service 40 in a conversational format, so the user does not need any programming knowledge.

[0109] <Action or Processing> 10 is an example of a sequence diagram illustrating a process for supporting application development by the information processing system 20. As a general flow, steps S6 to S17 are repeatedly executed, and among these steps, steps S12 to S17 are repeatedly executed.

[0110] S1: The communication unit 11 of the user terminal 10 connects to the URL of the information processing system 20. This URL may be specified by the user directly entering it on the user terminal 10 or by executing a shortcut that specifies the URL. The communication unit 11 of the user terminal 10 generates an HTTP request that includes the URL of the portal screen 330, and transmits the generated HTTP request to the information processing system 20.

[0111] S2: When the communication unit 21 of the information processing system 20 receives the above HTTP request from the user terminal 10, the screen generation unit 22 creates screen information for the portal screen 330. In response to the above HTTP request, the communication unit 21 transmits an HTTP response including the screen information for the portal screen 330 to the user terminal 10. An example of the portal screen 330 is shown in FIG. 11.

[0112] S3: The user also inputs an operation to the user terminal 10 to display the chat screen 630 on the portal screen 330. For example, the user presses a button provided on the portal screen 330. The communication unit 11 of the user terminal 10 generates an HTTP request including the URL of the chat screen 630, and transmits the generated HTTP request to the information processing system 20.

[0113] S4: When the communication unit 21 of the information processing system 20 receives the above HTTP request from the user terminal 10, the screen generation unit 22 creates screen information for the chat screen 630. In response to the above HTTP request, the communication unit 21 transmits an HTTP response including the screen information for the chat screen 630 to the user terminal 10. The communication unit 11 of the user terminal 10 receives the HTTP response, and the display control unit 12 displays the chat screen 630. An example of the chat screen 630 is shown in FIG. 11.

[0114] S5: The user inputs the industry and job type into the user terminal 10 in response to message 631, which is an input instruction. The input may be made using a keyboard or by voice input. The operation reception unit 13 receives the industry and job type. The user performs a transmission operation for the industry and job type. The communication unit 11 of the user terminal 10 generates a request message including the industry and job type, and transmits the generated request message to the information processing system 20. The communication unit 11 of the user terminal 10 transmits the generated request message, for example, as an HTTP request.

[0115] S6: The user then continues chatting to create an application on the chat screen 310 (see FIG. 12). The user inputs a chat message (e.g., "Please create an XX application") into the user terminal 10. The input may be made using a keyboard or by voice input. The operation reception unit 13 receives the chat message. The communication unit 11 of the user terminal 10 generates a request message including the chat message and transmits the generated request message to the information processing system 20. The communication unit 11 of the user terminal 10 transmits the generated request message, for example, as an HTTP request. Note that the communication unit 11 of the user terminal 10 may generate a request message including a history of past conversations. Furthermore, the history of past conversations may be stored in the information processing system 20. If the information processing system 20 stores a history of past conversations, the communication unit 11 of the user terminal 10 does not need to include the history of past conversations in the request message.

[0116] S7: The communication unit 21 of the information processing system 20 receives the chat messages and past conversation history. The communication unit 21 of the information processing system 20 passes the chat messages and past conversation history to the chat control unit 23. The setting information generation unit 28 generates system settings from the industry and job type information 231. Including the industry and job type information 231 in the request message makes it easier for the generation AI system 50 to generate appropriate application items for this user. The chat control unit 23 generates a request message including the system settings (setting information), chat messages, past conversation history, and function specification settings, and sends the generated request message to the generation AI system 50 by calling the first API 26 (see Figure 6).

[0117] S8: The generation AI system 50 returns a response message including a response message or a function call request to the information processing system 20 (see Figure 7). The chat control unit 23 receives the response message from the generation AI system 50. This response message may be a response message or a function call request. If it is a function call request, processing proceeds to step S10, and if it is a response message, processing proceeds to step S9.

[0118] S9: When the chat control unit 23 receives a normal response message, the communication unit 21 of the information processing system 20 transmits the response message to the user terminal 10. For example, the response message may be "Please tell me more details."

[0119] S10: When the chat control unit 23 receives a function call request, it analyzes the function and determines that a request has been made to generate or update an application for the application service 40 (application generation request). Because the function for application generation is specified in the function specification setting 233 in step S7, the chat control unit 23 can easily determine that the request is for application generation based on the function name (name 238) included in the function call request. The chat control unit 23 also obtains arguments 239 (application name 239a, field names 239b, 239c, data format, etc.) included in the function call request.

[0120] For this reason, the chat control unit 23 requests the application generation unit 25 to generate or update an application for the application service 40. The application generation unit 25 calls the second API 27 to send a request message to the application service 40 to create or update an app. That is, the application generation unit 25 realizes the functionality of the function requested to be called by the generation AI system 50 by sending the request message. In this embodiment, the application generation unit 25 generates or updates an application. The application generation unit 25 calls the above three APIs. 1. API to generate applications published by Application Service 40 2. An API to add multiple fields such as "date" and "job content" to the application created in 1. 3. APIs that expose your application In "2.", the application generation unit 25 requests the generation of an application by including in the request message arguments 239 (application name 239a, field names 239b, 239c, data format, etc.), which are parameters included in the response message from the generation AI system 50. The specific request message may vary depending on the application service 40.

[0121] Note that the information processing system 20 updates the existing application when a second function call request is made, which makes it possible to not only create but also update applications.

[0122] S11: The application generation unit 25 receives a response message from the application service 40. The response message contains a result such as "The application was created successfully. The URL is...". If the application generation fails, an error message is returned from the application service 40. If successful, the process proceeds to step S12; if unsuccessful, the process proceeds to step S16.

[0123] S12: If the application generation is successful, the chat control unit 23 calls the first API 26 to send a request message including the URL of the application to the generation AI system 50 (see FIG. 8). This creates continuity in the conversation between the user and the generation AI system 50.

[0124] S13: The generation AI system 50 returns a response message including the reply message to the information processing system 20. The chat control unit 23 receives the response message from the generation AI system 50 (see FIG. 9). This response message includes the URL of the application.

[0125] S14: If the application generation is successful, the communication unit 21 of the information processing system 20 transmits the response message included in the response message of step S13 to the user terminal 10. The processing of FIG. 10 ends once, and thereafter, the user returns to step S6 as necessary to update the application.

[0126] S15: If application generation fails, and if the failure occurs a certain number of times or more, the communication unit 21 of the information processing system 20 transmits a result such as "Application creation / update failed" to the user terminal 10. The process of FIG. 10 ends once, and thereafter the user returns to step S6 as necessary to create the application again.

[0127] S16: If the response message of step S11 notifies the user of a failure in application generation, the chat control unit 23 calls the first API 26 to send an error message from the application service 40 to the generation AI system 50. In addition to the error message, a history of past conversations is also sent. This allows the generation AI system 50 to create a function call request that does not generate an error message. For example, if the request message sent by the application generation unit 25 to the application service 40 violates the specifications of the second API 27 published by the application service 40, the error message may contain the correct specifications. The generation AI system 50 can understand the specifications and create a function call request that does not generate an error message. For example, if the error message indicates a character type that cannot be used by the application service 40, the error message will contain the unusable character type, allowing the generation AI system 50 to create a function call request that does not include that character type. This applies not only to character types but also to the format of the request message.

[0128] S17: The chat control unit 23 receives a response message from the generation AI system 50. The response message is a function call request or a response message. However, since the chat control unit 23 sent an error message, it is expected that the response message will contain a function call request that will successfully generate the application. If it is a function call request, processing proceeds to step S10; if it is a response message, processing proceeds to step S9.

[0129] <Example of user device screen> FIG. 11 shows an example of a portal screen 330 and a chat screen 630 of the application service 40 displayed on the user terminal 10. The user can use or develop applications from the portal screen 330. A chat screen 630 is superimposed on the portal screen 330. The chat screen 630 is a screen for the user to chat with the generation AI system 50. When a user develops an application, in this embodiment, the generation AI system 50 asks the user about their industry. For this reason, the chat screen 630 has a message 631 saying "We would like to ask you about your industry" and a pull-down menu 632. The user looks at the message 631, which is an input instruction regarding the industry, and selects, for example, manufacturing from the pull-down menu 632.

[0130] Next, chat screen 630 displays message 633 saying "We would like to ask you about your occupation" and pull-down menu 634. The user sees message 633 and selects personnel / labor, etc. from pull-down menu 634. By the user inputting the industry and occupation in this way, generation AI system 50 can easily generate an application with appropriate items.

[0131] In FIG. 11, the industry and job type are input. The industry and job type are the industry and job type in which the application will be used. The details of the business in which the application will be used may be specified. The job details of the user who operates the user terminal 10 may be specified. Examples of job details include nurse or programmer. In addition, the app name of the application to be created may be specified.

[0132] 12 is a diagram illustrating an example of a chat screen 310 displayed on the user terminal 10 when the user develops an application. The chat screen 310 in FIG. 12 is displayed following the chat screen 630 in FIG.

[0133] The chat screen 310 alternately displays chat messages entered by the user and response messages from the generation AI system 50. The chat message 311 is "Please try creating a customer management app." The response message 312 to the chat message 311 is "I've created a customer management app. You can access it from the following URL: Customer management app (URL embedded)" The app you created contains the following fields: Customer name, email address, phone number, address, company name, industry, status, notes Chat message 313 is, "What other input fields can you think of adding?" Response message 314 to chat message 313 is, "There are a variety of input fields that can be added to a customer management app. Here are some examples: Birthday: A field for managing the customer's birthday. Assignee: This field allows you to select the employee who will be assigned to the customer. Sales Forecast: A field for managing customer sales forecasts. Last Contact Date: This field is used to manage the last contact date with the customer. Importance: This is a field for managing the importance of the customer.

[0134] Chat message 315 is "Add assignee and priority?". Response message 316 to chat message 315 is "We've added the 'Assignee' and 'Priority' fields to the Customer Management app. You can access it from the following URL: Customer management app (URL embedded) Please visit the app to add fields and enter data. Let us know if you have any additional requests or questions. The application name 317 "Customer Management Application" in the response message 316 includes the URL returned from the application service 40 in step S11 of Fig. 10. The user can use the created or updated application by clicking the URL.

[0135] As can be seen from chat messages 311, 313, and 315, the user did not enter any field names for the customer management app. The field name for chat message 315 was also suggested by the generation AI system 50. Therefore, the user was able to develop a customer management app without any knowledge of not only programming but also customer management apps.

[0136] Figure 13 is an example of a customer management app screen 260 displayed by the customer management app created through the conversation in Figure 12. The customer management app screen 260 has fields for customer name 261, email address 262, phone number 263, address 264, company name 265, industry 266, status 267, memo 268, contact person 269, and importance 270. These are fields generated through a conversation between the user and the generation AI system 50. Therefore, the user was able to develop a customer management app by conversing with the generation AI system 50 without having to specify any field names.

[0137] In the above example, a customer management app is generated without specifying any field names, but the user may specify one or more field names in a chat message.

[0138] When the user presses the save button 271, the user terminal 10 sends a message to the application service 40 indicating that the customer management application will be saved. After that, the user can use the customer management application from a portal screen or the like.

[0139] <Major Effects> The information processing system 20 of this embodiment can solve two obstacles that users with little specialized knowledge have when developing an app: not knowing what kind of app to create, and not knowing how to create the app even if they know what they want to create. In addition, because the user communicates their industry and occupation to the generation AI system 50, the generation AI system 50 can more easily generate application items appropriate for the user.

[0140] The application generation system 100 of this embodiment allows a user to develop an application by conversing with the generation AI system 50 in natural language. The information processing system 20 specifies a function to the generation AI system 50, and the generation AI system 50 can request the information processing system 20 to call the function along with the field names of the application, etc. Then, the information processing system 20 actually generates or updates the application. From the user's perspective, this allows a no-code or low-code platform for actually developing a daily report app to be realized by simply inputting a message such as "Please create a daily report app."

[0141] [Second embodiment] In this embodiment, an embodiment will be described in which inconveniences regarding authentication when an information processing system uses a second API made public by an application service are avoided.

[0142] In order for the information processing system 20 to call the second API 27, the information processing system 20 needs to be authenticated by the application service 40. When the information processing system 20 in the sequence diagram of FIG. 10 operates in the same domain as the application service 40, authentication information for the application service 40 is sent to the information processing system 20 from a web browser running on the user terminal 10. The authentication information is, for example, included in a cookie in advance. This allows the information processing system 20 to call the second API 27 published by the application service 40. When the low-code or no-code platform (application service 40) and the information processing system 20 are developed by the same organization, it is considered easy to make them in the same domain, and in this case, there is considered to be no problem.

[0143] However, when the information processing system 20 and the application service 40 operate in different domains, authentication issues may arise. This will be explained with reference to Fig. 14. Fig. 14 shows an example of a portal screen 330 for the application service 40 displayed on the user terminal 10. The user can use or develop applications from the portal screen 330.

[0144] For example, consider the following configuration of the portal screen 330 of the application service 40. A "Create AI App" button 331 is displayed on the portal screen 330. When the user presses the "Create AI App" button 331, a separate web page 332 (the web page 332 in FIG. 14 is a chat screen) that pops up and communicates with the information processing system 20 is opened. In this case, because the application service 40 and the information processing system 20 are in different domains, the user terminal 10 cannot send authentication information for the application service 40 to the information processing system 20. Therefore, the information processing system 20 cannot call the second API 27 published by the application service 40. This is because the separate web page 332 displayed in the pop-up is in a different domain from the portal screen 330, and therefore the separate web page 332 displayed in the pop-up cannot access the cookies of the application service 40.

[0145] Therefore, a configuration is conceivable in which a request is made from another pop-up displayed web page 332 to the original portal screen 330 to call the second API 27 made public by the application service 40.

[0146] <About the function> 15 is a diagram showing an example of the functional configuration of the information processing system 20 and the user terminal 10 of this embodiment. The functions of the developer terminal 60 may be the same as those in the first embodiment. The explanation of FIG. 15 may mainly focus on the differences from FIG. 6.

[0147] <<User device>> A first web browser 240 and a second web browser 250 are executed on the user terminal 10. The first web browser 240 and the second web browser 250 may be separate applications, or may be separate tabs (separate web pages) displayed by a tab browser.

[0148] The first Web browser 240 includes a first communication unit 11a, a first display control unit 12a, a first operation receiving unit 13a, an application generation unit 25, a launch unit 15, and a first browser-to-browser cooperation unit 14a. Each of these functional units is a function or means realized by the CPU 501 shown in FIG. 4 executing a script included in a Web page acquired by the user terminal 10 from the application service 40. The application generation unit 25 may be the same as that shown in FIG. 6.

[0149] The first communication unit 11a transmits and receives various types of information to and from the application service 40. In this embodiment, the first communication unit 11a receives screen information such as a portal screen from the application service 40.

[0150] The first display control unit 12a interprets screen information such as a web page displayed by the first web browser 240 and displays it on the display 506. The first operation accepting unit 13a accepts various operations performed by the user on the web page displayed on the display 506.

[0151] The launching unit 15 launches the second web browser 250 in response to a user operation on the web page displayed by the first web browser 240. The web page displayed by the first web browser 240 includes the URL of the information processing system 20, and the second web browser 250 connects to this URL.

[0152] The first browser-to-browser linkage unit 14a transmits and receives information to and from the second browser-to-browser linkage unit 14b of the second web browser 250. A single user terminal 10 can simultaneously run multiple web browsers. Information can be transmitted from the first browser-to-browser linkage unit 14a to the second browser-to-browser linkage unit 14b (and vice versa). If only the first web browser 240 holds authentication information for a specific website (e.g., application service 40), the second web browser 250 can communicate with the specific website in cooperation with the first web browser 240 through the first browser-to-browser linkage unit 14a and the second browser-to-browser linkage unit 14b. The first web browser 240 communicates with the application service 40, and the second web browser 250 communicates with the generation AI system 50 via the information processing system 20. The second web browser 250 can transmit a response message from the generation AI system 50 to the first web browser 240 using the second browser-to-browser linkage unit 14b. The functions of the first inter-browser linking unit 14a and the second inter-browser linking unit 14b are implemented by codes written in scripts transmitted from the application service 40 and the information processing system 20, respectively.

[0153] The second Web browser 250 includes a second communication unit 11b, a second display control unit 12b, a second operation receiving unit 13b, and a second browser-to-browser linkage unit 14b. These functional units are functions or means realized by the CPU 501 shown in FIG. 4 executing a script included in a Web page acquired by the user terminal 10 from the information processing system 20. The second communication unit 11b transmits and receives various information to and from the information processing system 20. In this embodiment, the first communication unit 11a receives screen information of the chat screen 630 from the information processing system 20. The second communication unit 11b also transmits chat messages to the information processing system 20 and receives function call requests from the information processing system 20.

[0154] The second display control unit 12b interprets screen information such as a web page displayed by the second web browser 250 and displays it on the display 506. The second operation accepting unit 13b accepts various operations performed by the user on the web page displayed on the display 506.

[0155] The second inter-browser cooperation unit 14b has the same functions as the first inter-browser cooperation unit 14a. The second inter-browser cooperation unit 14b transmits a function call request received from the information processing system 20 to the first inter-browser cooperation unit 14a.

[0156] <<Information Processing System>> The information processing system 20 has a communication unit 21, a screen generation unit 22, a chat control unit 23, a setting information storage unit 24, and a setting information generation unit 28. These functions may be the same as those in FIG.

[0157] <Action or Processing> 16 and 17 are example sequence diagrams in which the information processing system 20 generates or updates an application for the application service 40 by utilizing cooperation between two web browsers in the user terminal 10. Note that the explanation of Fig. 16 and Fig. 17 may mainly focus on the differences from Fig. 10. As a general flow, steps S36 to S49 are repeatedly executed.

[0158] S21: The user specifies the URL of the application service 40 to the user terminal 10. The web browser that connects to the application service 40 is assumed to be the first web browser 240.

[0159] S22: The first communication unit 11a of the first Web browser 240 connects to the URL of the application service 40. The user instructs the user terminal 10 on the URL of the portal screen 330, so the first communication unit 11a sends an HTTP request including the URL of the portal screen 330 to the application service 40.

[0160] S23: When the application service 40 receives the above HTTP request from the user terminal 10, it transmits screen information (HTML, JavaScript, CSS, etc.) of the portal screen 330 to the user terminal 10. This screen information includes a script for launching the second Web browser 250, the URL of the chat screen, etc.

[0161] S24: The first communication unit 11a of the first Web browser 240 receives the screen information of the portal screen 330, and the first display control unit 12a of the first Web browser 240 causes the portal screen 330 to be displayed.

[0162] S25: The user presses the "Create AI application" button 331 on the portal screen 330. The first operation accepting unit 13a accepts the press.

[0163] S26: This causes the launching unit 15 to launch the second Web browser 250. The first inter-browser linking unit 14a notifies the second Web browser 250 of the URL of the chat screen 630 included in the customer management application screen 610. The second Web browser 250 is displayed as a pop-up. More specifically, the second Web browser 250 is launched by a script included in the screen information of the portal screen 330.

[0164] S27: The second communication unit 11b of the second Web browser 250 uses the URL of the chat screen 630 notified by the first Web browser 240 to request the chat screen 630 from the information processing system 20.

[0165] S28: The screen generation unit 22 of the information processing system 20 generates screen information (HTML, JavaScript, CSS, etc.) for the chat screen 630, and the communication unit 21 transmits the screen information for the chat screen 630 to the second Web browser 250 (user terminal 10).

[0166] S29: The second communication unit 11b of the second Web browser 250 receives the screen information of the chat screen 630. The second display control unit 12b displays the chat screen 630 based on the screen information.

[0167] S30: In response to message 631, which is an input instruction, the user inputs the industry and job type into the second web browser 250. The input may be made using a keyboard or by voice input. The second operation accepting unit 13b accepts the industry and job type. The user performs an operation to send the industry and job type.

[0168] S31: The second communication unit 11b of the second Web browser 250 generates a request message including the industry and occupation, and transmits the generated request message to the information processing system 20. The second communication unit 11b transmits the generated request message as, for example, an HTTP request.

[0169] S32: Next, the user inputs a chat message such as "I want the XX application" on the chat screen 310.

[0170] The flow after the user terminal 10 displays the chat screen 310 is the same as in Fig. 10, so in Figs. 16 and 17, the differences from Fig. 10 will be mainly explained. First, steps S33 to S36 may be the same as steps S6 to S9 in Fig. 10.

[0171] S33: The second communication unit 11b of the second Web browser 250 transmits the chat message and the past history to the information processing system 20.

[0172] S34: The communication unit 21 of the information processing system 20 receives the chat messages and the history of past conversations. The communication unit 21 of the information processing system 20 passes the chat messages and the history of past conversations to the chat control unit 23. The setting information generation unit 28 generates system settings from the industry and job type information 231 received in step S31 and the setting information stored in the setting information storage unit 24. The chat control unit 23 generates a request message including the system settings (setting information), chat messages, the history of past conversations, and function specification settings, and sends the generated request message to the generation AI system 50 by calling the first API 26 (see FIG. 6).

[0173] S35: The generation AI system 50 returns a response message including a response message or a function call request to the information processing system 20 (see FIG. 7). The chat control unit 23 receives the response message from the generation AI system 50. This response message may be a response message or a function call request.

[0174] S36: The communication unit 21 of the information processing system 20 transmits a response message (normal message) or a response message including a function call request to the second Web browser 250. If it is a response message, the process proceeds to step S37, and if it is a function call request, the process proceeds to step S38.

[0175] S37: When the second Web browser 250 receives a response message (in this case a response message) from the generation AI system 50 in step S36, the second display control unit 12b of the second Web browser 250 displays the response message (e.g., Please tell me more).

[0176] S38: When the second Web browser 250 receives a response message (here, a function call request) from the generation AI system 50 in step S36, the second inter-browser cooperation unit 14b of the second Web browser 250 requests the first Web browser 240 to generate or update an application of the application service 40. Examples of such cooperation (message communication) between browsers include: https: / / developer.mozilla.org / ja / docs / web-API / Window / postMessage is known.

[0177] S39: The first inter-browser cooperation unit 14a of the first Web browser 240 receives a request to generate or update an application, and the application generation unit 25 calls the second API 32 to generate or update the application for the application service 40.

[0178] S40: The application service 40 sends the result (success or failure) of the application generation or update to the application generation unit 25 of the first Web browser 240. If successful, the URL of the application is notified. If unsuccessful, an error message is notified.

[0179] S41: The first inter-browser cooperation unit 14a of the first Web browser 240 transmits the result of the application generation or update to the second Web browser 250. After that, if the result is successful, the process proceeds to step S42, and if the result is unsuccessful, the process proceeds to step S48.

[0180] S42: The second inter-browser cooperation unit 14b of the second Web browser 250 receives the result of success (URL of the application), and the second communication unit 11b of the second Web browser 250 transmits the result (success) regarding the generation or update of the application to the information processing system 20. Therefore, in the flow of Fig. 17, the information processing system 20 receives the result from the user terminal 10 (second Web browser 250) rather than the application service 40. The subsequent processing of steps S43 to S45 is the same as steps S12 to S14 of Fig. 10.

[0181] S46: The second communication unit 11b of the second Web browser 250 receives the response message. The second display control unit 12b displays the response message on the chat screen 310. In step S46, the processing in Fig. 17 ends for the time being, and thereafter, the user may return to step S32 as necessary to update the application.

[0182] S47: When the second Web browser 250 receives the result (success or failure) of step S41, the second browser-to-browser cooperation unit 14b determines whether the number of consecutive failures is greater than or equal to a certain number. If the number of consecutive failures is greater than or equal to the certain number, the second display control unit 12b displays a message such as "Failed to create / update the application" on the chat screen 310. The process of FIG. 17 ends once, and the user then returns to step S32 as necessary to create the application again.

[0183] S48: If the second inter-browser cooperation unit 14b of the second Web browser 250 receives a result of failure (error message), the second communication unit 11b of the second Web browser 250 transmits the result (failure) regarding the generation or update of the application to the information processing system 20. The subsequent processes of steps S49 and S50 are the same as steps S16 and S17 in FIG.

[0184] S51: The information processing system 20 sends a function call request or a normal response message to the second Web browser 250. If it is a function call request, the process proceeds to step S38, and if it is a response message, the process proceeds to step S41.

[0185] Thereafter, even during repeated processing, the information processing system 20 generates or updates the application of the application service 40 by requesting the user terminal 10 .

[0186] 16 and 17 show an example in which the second web browser 250 is displayed as a pop-up, but a function called iframe supported by the web browser may also be used. An iframe (inline frame) is defined by an HTML element (tag) and is a function that displays another web page or content (text, image, video, etc.) within a web page. By embedding another web page within a web page, a chat screen on a separate site can be displayed within the portal screen of the application service 40. In this case, postMessage is known as a method of communication between windows. In this case, the sequence diagram may be the same as that shown in FIG. 10.

[0187] <Major Effects> In addition to the effects of the first embodiment, the information processing system 20 of this embodiment allows the information processing system 20 to generate an application even if the application service 40 and the information processing system 20 provide services from websites in different domains.

[0188] The application generation system 100 of this embodiment allows a user to develop an application by conversing with the generation AI system 50 in natural language. The information processing system 20 specifies a function to the generation AI system 50, and the generation AI system 50 can request the information processing system 20 to call the function along with the field names of the application, etc. Then, the information processing system 20 actually generates or updates the application. From the user's perspective, this allows a no-code or low-code platform for actually developing a daily report app to be realized by simply inputting a message such as "Please create a daily report app."

[0189] <Other application examples> The best mode for carrying out the present invention has been described above using examples, but the present invention is not limited to these examples in any way, and various modifications and substitutions can be made within the scope that does not deviate from the gist of the present invention.

[0190] For example, in the present embodiment, an example of a chat message input by a user in natural language has been described, but the user may also request the generation of an application by, for example, sending an image (photo, handwriting, snapshot, etc.) representing an app screen to the information processing system 20. The information processing system 20 sends the app screen to the generation AI system 50, which analyzes the app screen and sends a function call request to the information processing system 20. The generation AI system 50 can include field names and data formats extracted from the app screen in the function call request. Also, a file may be sent as a chat message.

[0191] For example, in the present embodiment, an example of chat messages input by a user in natural language has been described, but a method of inputting by speech through speech may also be used. In the case of a method of inputting by speech, speech input into the user terminal 10 is transmitted from the user terminal 10 to the information processing system 20. The information processing system 20 then converts the received speech into text and generates a request message including the converted text. The generated request message is then transmitted to the generation AI system 50.

[0192] In addition, if the generation AI system 50 supports voice input, the information processing system 20 may transmit the received voice to the generation AI system 50.

[0193] Furthermore, in this embodiment, the user explicitly requests the information processing system 20 to generate an application, for example, "I want an XX app." However, the user does not necessarily have to make an explicit request. For example, if the user sends a chat message to the information processing system 20 saying, "Data entry is a hassle," the information processing system 20 or the generation AI system 50 detects the problem. If the information processing system 20 or the generation AI system 50 determines that the problem can be solved by generating an application, it can suggest to the user that they generate a new application.

[0194] Also, in this embodiment, the information processing system 20 transmits the URL of the application to the generation AI system 50, but the URL may be access information for accessing the application. For example, when the application service 40 returns the ID (identification information) of the generated application to the information processing system 20, the information processing system 20 transmits the ID of the application to the generation AI system 50. The information processing system 20 transmits the ID of the application contained in the response message returned from the generation AI system 50 to the user terminal 10. When the user terminal 10 requests execution of the application by specifying the ID of the application, the information processing system 20 converts it into a URL for the application based on the ID and returns this URL to the user terminal 10.

[0195] Furthermore, in this embodiment, an example has been described in which the information processing system 20 receives a request to call a function from the generation AI system 50, but the information processing system 20 may also receive a request to call the Web-API itself from the generation AI system 50. In other words, functions and APIs do not need to be strictly distinguished.

[0196] Additionally, the devices described in the examples are merely illustrative of one of several computing environments for implementing the embodiments disclosed herein. In one embodiment, information processing system 20 includes multiple computing devices, such as a server cluster, configured to communicate with each other via any type of communication link, including a network, shared memory, etc., and to perform the processes disclosed herein.

[0197] Furthermore, the information processing system 20 can be configured to share the processing steps disclosed in this embodiment, such as those shown in FIG. 10, in various combinations. For example, a process executed by a specific unit can be executed by multiple information processing devices included in the information processing system 20. Furthermore, the information processing system 20 may be integrated into a single server device, or may be divided into multiple devices.

[0198] Furthermore, the configuration examples shown in Fig. 5 and the like are divided according to main functions to facilitate understanding of the processing by the information processing system 20. The present invention is not limited by the manner in which the processing units are divided or the names of the processing units. The processing of the information processing system 20 can also be divided into more processing units depending on the processing content. Furthermore, it can also be divided so that one processing unit includes more processes.

[0199] Furthermore, each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to perform each function by software, such as a processor implemented by an electronic circuit, as well as devices such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and conventional circuit modules designed to perform each of the above-described functions.

[0200] A configuration example will be described in which the application service 40 and the information processing system 20 are integrated. In the following, an example will be described in which the information processing system 20 includes the functions of the application service 40, but the application service 40 may also include the functions of the information processing system 20.

[0201] 18 is a diagram illustrating the process from when the generation AI system 50 requests the information processing system 20 to execute a function in response to a chat message entered by a user to when the information processing system 20 generates an application. The processes (1) to (3) may be the same as those described in FIG. 1.

[0202] (4) The information processing system 20 generates an application in response to a function call request included in the response message sent from the generation AI system 50. The type of application to be generated is determined by (2) and (3). More specifically, the information processing system 20 executes a function for generating an application based on the contents of the function call request. That is, in the configuration of FIG. 18, the information processing system 20 itself generates or updates an application.

[0203] 19 is a diagram showing an example of the functional configuration of the information processing system 20, the user terminal 10, and the developer terminal 60 when the application service 40 and the information processing system 20 are integrated. Note that the explanation of FIG. 19 will mainly focus on the differences from FIG. 5. Because the information processing system 20 and the application service 40 are integrated, the application generation unit 25 does not call the second API 27. Furthermore, the functions of the communication unit 21, the screen generation unit 22, the setting information storage unit 24, the chat control unit 23, and the setting information generation unit 28 may be the same as those in FIG. 5.

[0204] 19 functions by executing predefined functions. Parameters to be input to the executed functions include database field names, data formats, etc.

[0205] Embodiments of the present invention provide significant improvements in computer power and functionality. These improvements allow users to utilize computers that provide more efficient and robust interaction with tables, which are ways of storing and presenting information in information processing devices. Furthermore, embodiments of the present invention provide a better user experience through the use of more efficient, powerful, and robust user interfaces. Such user interfaces provide better interaction between humans and machines.

[0206] <Additional Notes> [Appendix 1] An information processing device capable of communicating with a terminal device and a generation AI (Artificial Intelligence) system via a network, an application generator that functions by executing a predefined function, the application generator generating an application according to a request for application generation based on parameters included in the request; a chat control unit that, when receiving a chat message from the terminal device, transmits the received chat message to the generation AI system; a setting information generating unit that generates setting information for generating the application; and the chat control unit displays an input instruction for inputting prerequisite information for generating the application on a screen for receiving input of the chat message; the setting information generation unit generates the setting information including the premise information input in response to the input instruction, the chat control unit transmits the setting information for generating the application and information for calling the function to the generation AI system at least once; When the chat control unit receives the request sent by the generation AI system based on the chat message sent to the generation AI system, the setting information sent to the generation AI system, and the information for calling the function sent to the generation AI system, the application generation unit generates the application related to the request based on the parameters included in the received request. Information processing device. [Appendix 2] The information processing device described in Appendix 1, wherein the chat control unit, when receiving a response message from the generation AI system in response to the chat message sent to the generation AI system, sends the response message to the terminal device. [Appendix 3] The information processing device described in Appendix 2, wherein the chat control unit transmits access information for accessing the generated application to the generation AI system so that the generation AI system can include the access information in the response message. [Appendix 4] The information processing device described in Appendix 3, wherein when the chat control unit receives a response message including the access information from the generation AI system in response to sending the access information to the generation AI system, the chat control unit sends the response message including the access information to the terminal device. [Appendix 5] The information for calling the function includes a setting of the specifications of the function to be called by the generation AI system, a function call request for calling the function, which the generation AI system transmits to the information processing device based on the setting of the function specification, includes a request for generating the application; 5. The information processing device according to any one of claims 1 to 4, wherein the chat control unit receives a request for generating the application from the generation AI system. [Appendix 6] When the chat control unit receives a request for generating the application from the generation AI system, the application generation unit generates the application related to the request based on the parameters; When the chat control unit receives the response message to the chat message from the generation AI system, rather than a request for generation of the application, The information processing device according to claim 3, wherein the chat control unit transmits the response message to the terminal device. [Appendix 7] If the application generation unit fails to generate the application, The information processing device according to any one of claims 1 to 6, wherein the chat control unit transmits an error message obtained due to a failure in the generation of the application and the chat message received again to the generation AI system, and receives a request for the generation of the application. [Appendix 8] If the application generation unit fails to generate the application a certain number of times, 7. The information processing device according to claim 1, wherein the chat control unit transmits to the terminal device a message indicating that the generation of the application has failed. [Appendix 9] If the application is an application in which data is registered in a table, 8. The information processing device according to any one of appendices 1 to 7, wherein the parameter is one or more field names of the table. [Appendix 10] the information processing device communicates with an application service that executes the application via a network; 9. The information processing device according to any one of appendices 1 to 8, wherein the application generation unit specifies the parameters and requests the application service to generate the application. [Appendix 11] a first web browser that communicates with the application service and a second web browser that is started by the first web browser are executed on the terminal device; the information processing device receives the chat message from the second web browser; When the chat control unit receives a request for generating the application sent by the generation AI system, the application generation unit transmits a request for generating the application to the second web browser; the second web browser sends a request for generating the application to the first web browser; The information processing device according to claim 10, wherein the first web browser sends a request for generating the application to the application service. [Appendix 12] The information processing device according to any one of claims 1 to 11, wherein the premise information is one or more of the industry or occupation in which the application is used, the content of the business in which the application is used, the work content of the user of the terminal device, or the app name of the application. [Explanation of symbols]

[0207] 10 User Devices 20 Information Processing Systems 40 Application Services 50 Generative AI System 100 App Generation System [Prior art documents] [Patent documents]

[0208] [Patent Document 1] Japanese Patent Application Publication No. 2023-018851

Claims

1. An information processing device capable of communicating with a terminal device and a generation AI (Artificial Intelligence) system via a network, an application generator that functions by executing a predefined function, the application generator generating an application according to a request for application generation based on parameters included in the request; a chat control unit that, when receiving a chat message from the terminal device, transmits the received chat message to the generation AI system; a setting information generating unit that generates setting information for generating the application; and the chat control unit displays an input instruction for inputting prerequisite information for generating the application on a screen for receiving input of the chat message; the setting information generation unit generates the setting information including the premise information input in response to the input instruction, the chat control unit transmits the setting information for generating the application and information for calling the function to the generation AI system at least once; When the chat control unit receives the request sent by the generation AI system based on the chat message sent to the generation AI system, the setting information sent to the generation AI system, and information for calling the function sent to the generation AI system, the application generation unit generates the application related to the request based on the parameters included in the received request. Information processing device.

2. The information processing device according to claim 1 , wherein the chat control unit, when receiving a response message from the generation AI system in response to the chat message sent to the generation AI system, sends the response message to the terminal device.

3. The information processing device described in claim 2, wherein the chat control unit transmits access information for accessing the generated application to the generation AI system so that the generation AI system can include the access information in the response message.

4. The information processing device described in claim 3, wherein when the chat control unit receives a response message including the access information from the generation AI system in response to sending the access information to the generation AI system, the chat control unit sends the response message including the access information to the terminal device.

5. The information for calling the function includes a setting of the specifications of the function to be called by the generating AI system, a function call request for calling the function, which is sent by the generation AI system to the information processing device based on the setting of the function specification, includes a request for generating the application; The information processing device according to any one of claims 1 to 4, wherein the chat control unit receives a request for generating the application from the generation AI system.

6. When the chat control unit receives a request for generating the application from the generation AI system, the application generation unit generates the application related to the request based on the parameters, When the chat control unit receives the response message to the chat message from the generation AI system, rather than a request for generation of the application, The information processing device according to claim 3 , wherein the chat control unit transmits the response message to the terminal device.

7. If the application generation unit fails to generate the application, 2. The information processing device according to claim 1, wherein the chat control unit transmits an error message obtained due to a failure in the generation of the application and the chat message received again to the generation AI system, and receives a request for the generation of the application in response to the error message and the chat message.

8. If the application generation unit fails to generate the application a certain number of times, The information processing device according to claim 1 , wherein the chat control unit transmits a notification to the terminal device that the generation of the application has failed.

9. If the application is an application in which data is registered in a table, The information processing apparatus according to claim 1 , wherein the parameter is one or more field names of the table.

10. the information processing device communicates with an application service that executes the application via a network; The information processing apparatus according to claim 1 , wherein the application generation unit specifies the parameters and requests the application service to generate the application.

11. a first web browser that communicates with the application service and a second web browser that is started by the first web browser are executed on the terminal device; the information processing device receives the chat message from the second web browser; When the chat control unit receives a request for generating the application transmitted by the generation AI system, the information processing device transmits the request for generating the application to the second web browser; the second web browser sends a request for generating the application to the first web browser; The information processing apparatus according to claim 10 , wherein the first web browser transmits a request for generating the application to the application service.

12. The information processing device according to claim 1 , wherein the prerequisite information is one or more of the industry or occupation in which the application is used, the content of the business in which the application is used, the work content of the user of the terminal device, and the app name of the application.

13. An application generation system in which a terminal device, a generation AI (Artificial Intelligence) system, and an information processing device communicate with each other via a network, The terminal device Sending a chat message to the generative AI system; The information processing device includes: an application generator that functions by executing a predefined function, the application generator generating an application according to a request for application generation based on parameters included in the request; a chat control unit that, when receiving a chat message from the terminal device, transmits the received chat message to the generation AI system; a setting information generating unit that generates setting information for generating the application; and the chat control unit displays an input instruction for inputting prerequisite information for generating the application on a screen for receiving input of the chat message; the setting information generation unit generates the setting information including the premise information input in response to the input instruction, the chat control unit transmits the setting information for generating the application and information for calling the function to the generation AI system at least once; When the chat control unit receives the request sent by the generation AI system based on the chat message sent to the generation AI system, the setting information sent to the generation AI system, and information for calling the function sent to the generation AI system, the application generation unit generates the application related to the request based on the parameters included in the received request. App generation system.

14. An information processing device capable of communicating with a terminal device and a generating AI (Artificial Intelligence) system via a network, an application generator that functions by executing a predefined function, the application generator generating an application according to a request for application generation based on parameters included in the request; a chat control unit that, when receiving a chat message from the terminal device, transmits the received chat message to the generation AI system; a setting information generating unit that generates setting information for generating the application; It functions as the chat control unit displays an input instruction for inputting prerequisite information for generating the application on a screen for receiving input of the chat message; the setting information generation unit generates the setting information including the premise information input in response to the input instruction, the chat control unit transmits the setting information for generating the application and information for calling the function to the generation AI system at least once; When the chat control unit receives the request sent by the generation AI system based on the chat message sent to the generation AI system, the setting information sent to the generation AI system, and information for calling the function sent to the generation AI system, the application generation unit generates the application related to the request based on the parameters included in the received request. program.

15. An application generation method performed by an information processing device that can communicate with a terminal device and a generation AI (Artificial Intelligence) system via a network, comprising: The information processing device includes an application generation unit that functions by executing a predefined function, and that generates an application related to a request for application generation based on parameters included in the request; a chat control unit that, when receiving a chat message from the terminal device, transmits the received chat message to the generation AI system; a setting information generating unit that generates setting information for generating the application; and the chat control unit displays an input instruction for inputting prerequisite information for generating the application on a screen for receiving input of the chat message; the setting information generation unit generates the setting information including the premise information input in response to the input instruction, the chat control unit transmits the setting information for generating the application and information for calling the function to the generation AI system at least once; When the chat control unit receives the request sent by the generation AI system based on the chat message sent to the generation AI system, the setting information sent to the generation AI system, and information for calling the function sent to the generation AI system, an application generation unit generates the application related to the request based on the parameters included in the received request; How to generate an application.

Citation Information

Patent Citations

  • Automatic program code generation system

    JP2023018851A