Work support system, work support method, and program
The business support system addresses the limitations of existing systems by using AI to generate API requests, enhancing user convenience through no-code or low-code functionality for supporting diverse APIs.
Patent Information
- Application Number
- JP2025144793
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-01
- Publication Date
- 2025-11-18
Smart Images

Figure 2025170392000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a business support system, a business support method, and a program. [Background technology]
[0002] Conventionally, business support systems using APIs (Application Programming Interfaces) have been known. For example, Patent Document 1 describes an agent device as an information processing device that, upon determining that a user intends to "find the time of the last train," searches for a WebAPI that can be used to execute an action corresponding to the intent, and, if a WebAPI is found by the search, outputs a voice based on the search result.
[0003] For example, Patent Document 2 describes a business analytics conversation tool that includes a device having a communication channel, a natural language processor (NLP), a realization application program interface (F-API), a database application program interface (D-API), and a business management database, in which the NLP receives user input from a user through the communication channel, the NLP infers the intention of the user input, the NLP communicates the intention to the F-API, the F-API communicates a request for data related to the intention to the database via the D-API, the D-API communicates the data related to the intention to the F-API, the F-API converts the data related to the intention into a conversational format, and sends the conversational format for voice output through the communication channel. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2021-111047 [Patent Document 2] Japanese Patent Publication No. 2022-184890 Summary of the Invention [Problem to be solved by the invention]
[0005] However, the technology of Patent Document 1 was not originally intended for business support systems, but merely analyzes the intentions of general users in everyday life and inputs the user intentions into a Web API that matches those intentions. Therefore, the technology of Patent Document 1 cannot improve user convenience in business support systems. The technology of Patent Document 2 is specialized for a dedicated interface called F-API, which mediates between NLP and D-API, which operates a database, because the user intentions inferred by a natural language processor are input into a single API called F-API. Therefore, the technology of Patent Document 2 is not versatile enough to support various APIs, and therefore cannot improve user convenience.
[0006] One of the purposes of the present disclosure is to improve user convenience. [Means for solving the problem]
[0007] A business support system according to one aspect of the present disclosure is a business support system capable of supporting a user's business, and includes: a user input information acquisition unit that acquires user input information related to the user's input; an API request generation unit that generates an API request to a destination API from among a plurality of APIs related to supporting the business based on the user input information and AI; and an API request transmission unit that transmits the API request to the destination API. [Effects of the Invention]
[0008] According to the present disclosure, convenience for users is improved. [Brief explanation of the drawings]
[0009] [Figure 1]FIG. 1 illustrates an example of a hardware configuration of a business support system. [Figure 2] FIG. 10 is a diagram illustrating an example of a business support screen displayed on a user terminal. [Figure 3] FIG. 10 is a diagram illustrating an example of a business support screen displayed on a user terminal. [Figure 4] FIG. 2 is a diagram illustrating an example of functions realized by the business support system. [Figure 5] FIG. 10 is a diagram illustrating an example of an API specification information database. [Figure 6] FIG. 10 is a diagram illustrating an example of a method used to generate an API request. [Figure 7] FIG. 10 is a diagram illustrating an example of a business support database. [Figure 8] FIG. 2 is a diagram illustrating an example of processing executed in the business support system. [Figure 9] FIG. 10 is a diagram illustrating an example of functions realized by a modified example of a business support system. [Figure 10] FIG. 10 illustrates an example of a process for modifying an API request. [Figure 11] FIG. 20 is a diagram showing an example of a process for outputting an answer to a user in Modification 8. DETAILED DESCRIPTION OF THE INVENTION
[0010] [1. Hardware configuration] An example of an embodiment of a business support system, a business support method, and a program according to the present disclosure will be described. FIG. 1 is a diagram illustrating an example of the hardware configuration of the business support system. For example, the business support system 1 includes a voice conversion server 10, an API (Application Programming Interface) request generation server 20, a business support server 30, and a user terminal 40. Each of the voice conversion server 10, the API request generation server 20, the business support server 30, and the user terminal 40 is connected to a network N such as the Internet or a LAN. While FIG. 1 illustrates one of each of the voice conversion server 10, the API request generation server 20, the business support server 30, and the user terminal 40, there may be multiple of at least one of these.
[0011] The voice conversion server 10 is a server computer that executes the voice conversion process described below. For example, the voice conversion server 10 includes a control unit 11, a storage unit 12, and a communication unit 13. The control unit 11 includes at least one processor. The storage unit 12 includes at least one of a volatile memory such as RAM and a non-volatile memory such as a flash memory. The communication unit 13 includes at least one of a communication interface for wired communication and a communication interface for wireless communication.
[0012] The API request generation server 20 is a server computer that executes the API request generation process described below. For example, the API request generation server 20 includes a control unit 21, a storage unit 22, and a communication unit 23. The hardware configurations of the control unit 21, the storage unit 22, and the communication unit 23 may be similar to those of the control unit 11, the storage unit 12, and the communication unit 13, respectively.
[0013] The business support server 30 is a server computer that executes business support processing described below. For example, the business support server 30 includes a control unit 31, a storage unit 32, and a communication unit 33. The hardware configurations of the control unit 31, the storage unit 32, and the communication unit 33 may be similar to those of the control unit 11, the storage unit 12, and the communication unit 13, respectively.
[0014] The user terminal 40 is a user's computer. For example, the user terminal 40 is a personal computer, a tablet terminal, a smartphone, or a wearable terminal. The user terminal 40 includes a control unit 41, a memory unit 42, a communication unit 43, an operation unit 44, a display unit 45, an audio input unit 46, and an audio output unit 47. The hardware configurations of the control unit 41, the memory unit 42, and the communication unit 43 may be similar to those of the control unit 11, the memory unit 12, and the communication unit 13, respectively. The operation unit 44 includes an input device such as a mouse or a touch panel. The display unit 45 includes an LCD or organic EL display. The audio input unit 46 includes at least one microphone. The audio output unit 47 includes at least one speaker.
[0015] The programs stored in the storage units 12, 22, 32, and 42 may be supplied via the network N. The hardware configurations of the voice conversion server 10, the API request generation server 20, the business support server 30, and the user terminal 40 are not limited to the example shown in FIG. 1 . For example, at least one of the voice conversion server 10, the API request generation server 20, the business support server 30, and the user terminal 40 may include at least one of a reading unit (e.g., a memory card slot) that reads a computer-readable information storage medium and an input / output unit (e.g., a USB terminal) for direct connection to an external device. The programs stored in the information storage medium may be supplied to at least one of the voice conversion server 10, the API request generation server 20, the business support server 30, and the user terminal 40 via at least one of the reading unit and the input / output unit.
[0016] Furthermore, the business support system 1 only needs to include at least one computer. The computers included in the business support system 1 are not limited to the example in FIG. 1. For example, the business support system 1 may include only the API request generation server 20 and the business support server 30. In this case, the voice conversion server 10 and the user terminal 40 exist outside the business support system 1. The business support system 1 may also include only the API request generation server 20. In this case, the voice conversion server 10, the business support server 30, and the user terminal 40 exist outside the business support system 1. The business support system 1 may also include the API request generation server 20 and other server computers.
[0017] [2. Overview of the business support system] In this embodiment, the business support system 1 is capable of supporting a user's business. Furthermore, in this embodiment, an example is given in which the business support system 1 is capable of supporting a user's business with no-code or low-code, but the business support system 1 may also be capable of supporting a user's business based on code entered by the user. In other words, the business support system 1 may be a system that is not classified as a system capable of supporting a user's business with no-code or low-code.
[0018] No-code means that the user does not input any code. In other words, no-code means that the user does not need to input any code to use the business support system 1. Low-code means that the user inputs only the minimum amount of code necessary. In other words, the user only needs to input the minimum amount of code necessary to use the business support system 1.
[0019] Code is an instruction for a computer. In other words, code is information that enables a computer to understand a user's instructions. The code may be any code used in the field of computer software. For example, the code may be programming language code, CSS (Cascading Style Sheets) code, database language code, markup language code, or other code. Programming languages also include languages known as scripting languages. The code in this embodiment may be any of the various types of code that those skilled in the computer software field would call code.
[0020] The business support system 1 being able to support the user's business with no code means that the business support system 1 can execute the business support process described below based on pre-prepared code without the user having to enter any code. The business support system 1 being able to support the user's business with low code means that if the user enters only the minimum necessary code, the business support system 1 can execute the business support process described below based on the minimum necessary code entered by the user and the pre-prepared code.
[0021] The meanings of the terms no-code and low-code may be those generally known. A person skilled in the field of computer software can understand the meanings of no-code and low-code based on the common general technical knowledge at the time of filing. No-code and low-code may have a well-known meaning that can be understood by a person skilled in the art based on the common general technical knowledge at the time of filing. For example, the minimum amount of code required for low-code may be an amount that can be understood by a person skilled in the art based on the common general technical knowledge at the time of filing. For example, the minimum amount of code required for low-code may be approximately 1 to 100 lines, or may be 101 lines or more.
[0022] For example, the business support system 1 has various business support functions for supporting a user's business. The business support functions are functions realized by a program developed for business support. The types of business support functions may be known. For example, the business support functions may be a database function for a user to store data in a database, a communication function for a user to communicate with other users, a schedule function for a user to manage a schedule, an email management function for a user to manage emails, or other functions.
[0023] In this embodiment, the business support system 1 provides a cloud-based groupware to the user as an example. The business support system 1 may also provide an on-premise groupware to the user. The business support system 1 may also provide a service to the user that supports business operations but is not classified as groupware. For example, an organization such as a company to which the user belongs contracts with the business support system 1. As a member of the organization, the user uses the business support functions of the business support system 1. When the user logs in to the business support system 1 from the browser of the user terminal 40, the user terminal 40 displays a business support screen on the display unit 45, which allows the user to use the business support functions. The business support screen may be displayed on a program dedicated to the business support system 1, rather than on a browser.
[0024] 2 and 3 are diagrams showing an example of a business support screen displayed on the user terminal 40. In this embodiment, a case where a user uses a database function is taken as an example. For example, the user uses an app, which is a type of database. The user can store any data related to the user's business in the app. For example, the user can store not only data stored in the app's fields but also other data in the app. For example, the user can store comments to other users, files such as documents or images, or other data in the app. The app can also be said to have a complex business support function that not only has a database function but also a communication function, a file management function, and the like.
[0025] For example, when a user selects an app, the user terminal 40 displays a business support screen SC on the display unit 45, which shows a list L of records, which are units of data that make up the app, as shown in the upper part of FIG. 2. In the example in the upper part of FIG. 2, records of a minutes management app in which the user manages minutes are shown in list L. When the user selects a record in list L, the user terminal 40 displays details of the record on the business support screen SC. For example, the user can update the record from the business support screen SC.
[0026] In this embodiment, a user can create an app with no-code or low-code. For example, a user can create an app without entering code by performing simple configuration tasks such as field settings. A user can use a pre-prepared default app without performing configuration tasks. A user can expand the business support functions of an app by entering the minimum necessary code. In other words, a user can create a low-code app by expanding the business support functions of an app created with no-code. Expanding business support functions can also be called customizing the business support functions.
[0027] For example, a user may extend the functionality of an app by inputting a script to be executed in a browser on the user terminal 40. A script is code written in a scripting language. A user may extend the functionality of an app by inputting CSS (Cascading Style Sheets) code. The business support system 1 may also support code other than scripts and CSS. For example, a user may input code to change the behavior or appearance on the screen. A user may have AI (Artificial Intelligence), which will be described later, generate the code.
[0028] For example, code for extending the functionality of an app is uploaded to the business support server 30 and deployed to the app. In this embodiment, the business support server 30 executes a series of processes, such as deploying code, based on a code execution API, which is an API for deploying code to an app and executing the code. An API is an interface for linking multiple programs (applications) with each other. An API can also be said to be an interface for one program (one application) to call another program (another application). The API mechanism may be a known mechanism.
[0029] In this embodiment, various APIs are provided to support user business operations. Each API has its own specifications. For example, the API has various specifications, such as an event specification, a specification for registering or deleting an event handler, a specification for executing other APIs (e.g., an API for data integration), a specification for acquiring or setting information, a specification for controlling the display / hide of information such as fields, a specification related to plug-ins, or other specifications. The API specifications may be publicly known specifications. For example, the API specifications may be published on the website of the business support system 1, etc.
[0030] It should be noted that the API is not limited to a code execution API. For example, the business support server 30 can execute a data linkage API for data linkage. The data linkage API may include an API for at least one of retrieving, registering, updating, and deleting records, an API for at least one of uploading and downloading data other than records, an API for at least one of retrieving, changing, and deleting information such as app settings, or other APIs. For example, there may also be APIs for business support functions other than apps (for example, an API for a communication function, an API for a schedule function, or an API for an email management function).
[0031] For example, when a user creates an API request by themselves, they create the API request so that it meets the specifications defined in the API. An API request is information that requests a specific process. An API request is also called an API call. An API request can also be called API input information that is input to an API. For example, an API request includes code that indicates the content of the process requested by the API request. Therefore, an API request can be called a type of code. An API request is sent from a client (e.g., a user terminal 40 or another computer) to an API endpoint.
[0032] In this embodiment, an example is taken of the case where the API endpoint is the business support server 30. If the business support system 1 includes multiple business support servers 30, the API endpoint is one of the multiple business support servers 30. The API endpoint may also be a computer other than the business support server 30. For example, the API endpoint may be the voice conversion server 10 or a computer external to the business support system 1. The API endpoint is also one of the API specifications. When creating an API request by itself, a user needs to be aware of various specifications.
[0033] However, users with little or no knowledge of APIs find it difficult to create API requests while keeping in mind the API specifications. Even for users with API knowledge, it takes a lot of time and effort to understand the specifications of the API they use among the many APIs available. Therefore, the business support system 1 of this embodiment has an API request generation function that uses AI to generate API requests. The API request generation function is one type of business support function.
[0034] The API request generation function may be a default function of the business support system 1 (a function that all users can use from the beginning), but in this embodiment, it is a plug-in that users can add at their discretion. A user who wishes to use the API request generation function adds the API request generation function using a plug-in. A plug-in is a collection of programs and data for the API request generation function. When a user adds a plug-in, the user can use the programs and data for the API request generation function.
[0035] AI is a program with artificial intelligence that assists users in their work. There are various definitions of AI, and the AI of this embodiment may be AI defined by various known definitions. The AI may be AI called generative AI or conversational AI. For example, the AI may be a large-scale language model, a machine learning model not classified as a large-scale language model, a program called a bot, or other programs. There are various definitions of machine learning, and the machine learning of this embodiment may be machine learning defined by various known definitions. The machine learning may be any of supervised learning, semi-supervised learning, and unsupervised learning.
[0036] In this embodiment, a case where a large-scale language model corresponds to an AI will be described as an example. Furthermore, an API request for a code execution API will be described as an example of an API request. For example, a user may use text (characters) or voice to give instructions to an AI. In the example shown in the upper part of FIG. 2, the user selects icon I to start voice input and speaks the content of the function they want to expand in the app. When the voice input unit 46 detects the user's voice, the user terminal 40 executes a process to convert the user's voice into text with the voice conversion server 10. Once the user's voice is converted into text, the user terminal 40 displays the text in an input form F, as shown in the lower part of FIG. 2. If the text is incorrect, the user can correct the text by operating the operation unit 44. The user can also manually input text into the input form F without using voice input.
[0037] In the example at the bottom of Figure 2, the user gives an instruction such as "Create a function to color the record with the oldest meeting date green." For example, in order for the business support system 1 to expand the functionality of the app to meet the user's instruction, it needs to generate code that indicates the process of identifying the record with the oldest meeting date and the process of changing the color of that record. The business support system 1 causes an AI to generate the code. For example, when the user selects button B, the API request generation server 20 uses an AI to generate an API request for executing the code in accordance with the user's instruction. As shown in the upper part of Figure 3, the business support screen SC enters a state waiting for the generation of an API request. The instruction entered by the user is displayed in display area A of the business support screen SC.
[0038] For example, the API request generation server 20 sends an API request generated using AI to the business support server 30, which is the API endpoint of the code execution API. The business support server 30 receives the API request from the API request generation server 20. The business support server 30 executes the processing requested by the API request based on the code execution API. For example, as this processing, the business support server 30 executes a process to deploy code for expanding a function entered in input form F to an app.
[0039] For example, if the code deployed to the app is a script executed in the browser of the user terminal 40, the user terminal 40 receives the code from the business support server 30 and executes the code in the browser. When code that meets the user's wishes is deployed to the app, the user terminal 40 can execute the code to turn the record with the oldest meeting date green among the records displayed in list L, as shown in the lower part of Figure 3. The answer from the AI is displayed in display area A of the business support screen SC. When the user performs an operation to end the generation of the API request, the code deployed to the app is finally reflected in the app. If the user does not perform the operation, the code deployed to the app is discarded.
[0040] As described above, when a user inputs an instruction to an AI, the API request generation server 20 generates an API request according to the instruction. The API request generation server 20 sends the API request to the business support server 30. The business support server 30 executes the processing requested in the API request. This allows the user to execute processing according to their instruction by inputting the instruction in natural language without being aware of the API specifications, thereby enabling the business support system 1 to improve user convenience. Details of the business support system 1 will be described below.
[0041] [3. Functions realized by the business support system] FIG. 4 is a diagram showing an example of functions realized by the business support system 1. As shown in FIG.
[0042] [3-1. Functions realized by the voice conversion server] For example, the voice conversion server 10 includes a data storage unit 100 and a voice conversion unit 101. The data storage unit 100 is realized by a storage unit 12. The voice conversion unit 101 is realized by a control unit 11. Note that if voice input is not performed, the business support system 1 does not need to include the voice conversion server 10.
[0043] [Data storage section] The data storage unit 100 stores data necessary for the speech conversion process. For example, the data storage unit 100 stores a speech conversion program that indicates the speech conversion process. The speech conversion process is at least one of a process of converting speech to text and a process of converting text to speech. In this embodiment, an example is given in which the speech conversion process includes both of these processes, but the speech conversion process may include only one of these processes. A speech conversion program for converting speech to text and a speech conversion program for converting text to speech may be separate programs. The speech conversion program may be a known program. For example, the speech conversion program may be a program using a pattern matching method that utilizes speech waveform patterns, a machine learning method, or other methods.
[0044] [Voice conversion section] The speech conversion unit 101 executes speech conversion processing based on a speech conversion program. For example, the speech conversion server 10 acquires input speech data indicating speech input by a user from a user terminal 40. The data format of the input speech data may be a known format. The speech conversion unit 101 converts the speech input by the user into text based on the speech data and the speech conversion program. The speech conversion unit 101 transmits input text data indicating the text of the speech input by the user to the user terminal 40. The speech conversion unit 101 may transmit the input text data to the API request generation server 20, the business support server 30, or another computer.
[0045] For example, the speech conversion unit 101 acquires answer text data indicating the text of an answer from the AI from the API request generation server 20, the business support server 30, or another computer. The speech conversion unit 101 converts the text of the answer from the AI into speech based on the answer text data and a speech conversion program. The speech conversion unit 101 transmits answer voice data indicating the speech of the text of the answer from the AI to the user terminal 40. The user terminal 40 acquires the answer voice data from the speech conversion server 10. The user terminal 40 outputs the answer from the AI as voice from the voice output unit 47 based on the answer voice data. The user terminal 40 may acquire the answer text data from the speech conversion server 10, the API request generation server 20, the business support server 30, or another computer. The user terminal 40 may display the answer from the AI in the display area A of the business support screen SC based on the answer text data.
[0046] [3-2. Functions realized by the API request generation server] For example, the API request generation server 20 includes a data storage unit 200, a user input information acquisition unit 201, an API specification information acquisition unit 202, a default prompt acquisition unit 203, an API request generation unit 204, and an API request transmission unit 205. The data storage unit 200 is realized by the memory unit 22. The user input information acquisition unit 201, the API specification information acquisition unit 202, the default prompt acquisition unit 203, the API request generation unit 204, and the API request transmission unit 205 are each realized by the control unit 21.
[0047] [Data storage section] The data storage unit 200 stores data necessary for API request generation processing for generating API requests. For example, the data storage unit 200 stores an API specification information database DB1.
[0048] Figure 5 is a diagram showing an example of the API specification information database DB1. For example, the API specification information database DB1 stores API identification information and API specification information. The API identification information is information that can identify an individual API. The API identification information may be the name of the API, an ID assigned to the API, a URL, an IP address, or other information. The API identification information may also be information that can identify an API endpoint.
[0049] API specification information is information about API specifications. API specifications can also be considered API guidelines. For example, API specification information indicates the HTTP method and URL for processes such as record retrieval (e.g., a URL indicating the location where settings written in a markup language such as JSON are stored), the method for describing events, the type of event, details of when events occur, API limitations, the format of data to be operated on, the method for writing queries used to narrow down data, coding specifications related to the API (e.g., character codes used in coding, variable formats, attribute formats, security details), or other specifications. The specifications indicated by API specification information may be specifications adopted by publicly known services.
[0050] In this embodiment, the API specifications are written in natural language so that an AI, which is a large-scale language model, can recognize the API specifications. The API specification information may be in any data format. For example, the API specification information may be a text file, a rich text file, a document file, an HTML file, or any other format. The API specification information may be written in a language that a computer can understand, rather than a natural language that humans can understand. The API specification information may be the same as or different from the information made public to users on the website of the business support system 1. The API specification information may be processed to make it easier for an AI to recognize. The API specification information may include other elements besides text, such as tables or figures.
[0051] The data stored in the data storage unit 200 is not limited to the above examples. The data storage unit 200 can store any data. For example, the data storage unit 200 may store information (e.g., URLs or IP addresses) that can identify API endpoints of multiple APIs. The data storage unit 200 may also store a template database (described below) and a default prompt (described below).
[0052] In this embodiment, an example is given in which the API request generation server 20 uses an AI of an external service that cooperates with the business support system 1, so the data storage unit 200 does not store the AI itself, but the data storage unit 200 may store the AI itself. That is, in this embodiment, an example is given in which the actual data of the AI is stored in the system of another service, but the data storage unit 200 may store the actual data of the AI.
[0053] FIG. 6 is a diagram illustrating an example of an AI used to generate an API request. For example, the AI includes a program that indicates a series of processes, such as calculating an embedded representation, and parameters referenced by the program. The embedded representation is information that enables the AI to understand the meaning of data. For example, the embedded representation is expressed as a multidimensional vector. The embedded representation is also sometimes called a feature that indicates the characteristics of the data. The embedded representation may be expressed in a format other than a multidimensional vector. The AI may include other data other than the parameters (for example, data equivalent to a dictionary of terms). The other data is referenced by the program. The other data may be data separate from the AI. The AI calculates the embedded representation of the input data input to it based on the parameters, and produces output according to the embedded representation. For example, the parameters are weights and biases.
[0054] The AI programs and parameters may be publicly known programs and parameters. For example, the AI programs and parameters may be programs and parameters used in large-scale language models such as GPT (Generative Pre-trained Transformer) or BERT (Bidirectional Encoder Representations from Transformers), programs and parameters used in machine learning models such as neural networks or GANs (Generative Adversarial Networks), programs and parameters used in generative AI or interactive AI that do not fall into these categories, or other programs and parameters. The AI programs and parameters may be various programs and parameters that a person skilled in the computer software field would understand based on the common general technical knowledge at the time of filing.
[0055] In this embodiment, a large-scale language model (e.g., GPT) will be described as an example of AI, and therefore the AI program refers to a process of analyzing input data input to the AI. AI parameters are parameters such as weights and biases that the AI refers to in order to analyze the meaning of natural language. The AI performs language analysis of the input data input to itself based on the parameters adjusted through learning, and outputs according to the results of the language analysis. For example, the AI divides the natural language text represented by the input data into multiple tokens. The AI calculates embedded expressions that indicate the meaning of each token based on the parameters. The AI understands the meaning of natural language based on the order of the embedded expressions of each token. The AI may make predictions according to the order of the embedded expressions of each token, as necessary. The AI outputs output data according to the order of the embedded expressions.
[0056] In this embodiment, an example is given in which the AI has learned various codes (e.g., sample API requests). The AI may learn only codes that the business support system 1 can handle (e.g., JAVASCRIPT (registered trademark)). However, in this embodiment, it is assumed that the AI also learns other codes. The AI may be able to handle codes in various languages. For example, output data from the AI may vary depending on the input data. If the input data is a question, the output data indicates an answer to the question. If the input data is an instruction to generate code, the output data includes the code. In this case, the output data may include not only the code but also an explanation of the code. The output data may include any type of information. For example, the AI may generate code based on a well-known function called a code interpreter, which generates code from the results of learning various languages.
[0057] As shown in FIG. 6, in this embodiment, an example is given in which input data for an AI includes user input information, API specification information, function setting information, a template request, and a default prompt. Details of the information included in the input data will be described later. The input data only needs to include at least user input information. The input data is not limited to the example of this embodiment. For example, at least one of the API specification information, function setting information, template request, and default prompt does not need to be included in the input data. Even if API specification information is not included in the input data, if the AI has learned the API specification information in advance, the AI can generate an API request according to the API specifications.
[0058] In this embodiment, the output data includes an API request. For example, the output data may include code such as an API request and information other than the code (e.g., a response from the AI). The output data from the AI may include intermediate code used to generate code that is ultimately provided to the user, rather than code such as an API request. The output data does not need to include an API request. When the output data does not include an API request, the API request generation unit 204 (described later) generates an API request based on the output data. For example, when the output data includes only code such as a script generated by the AI, the API request generation unit 204 may generate an API request for executing the code based on the output data that is the code such as a script generated by the AI. In this case, it is assumed that a default API request is stored in the data storage unit 200. The API request generation unit 204 may generate a final API request by inserting the content of the output data output by the AI into the default API request.
[0059] [User input information acquisition section] The user input information acquisition unit 201 acquires user input information related to user input. In this embodiment, an example is given in which the user inputs voice from the voice input unit 46, but the user may also perform input from the operation unit 44. For example, the user may input instructions to the AI from the operation unit 44. The user may also perform input by selecting a part (for example, an image such as a button or check box) as a user interface.
[0060] User input information is an instruction to AI. User input information can also be called the user's intention. User input information is sometimes called a prompt for AI. Information included in the input data other than the user input information can also be called supplementary information input to AI along with the prompt. There are various definitions of the word prompt, but if information input to AI corresponds to a prompt, then information other than the user input information also corresponds to a prompt. The definition of the word prompt may be any of various publicly known definitions.
[0061] For example, a user inputs details about the processing they want to execute using an API. User input information indicates this content. The user can input any content. In this embodiment, the user does not code the API request themselves, but rather generates the API request using AI, so the user inputs details about the processing requested by the API request.
[0062] In the example of Fig. 2, the user inputs the extension content of the business support function, which is an example of an app, and the user input information acquisition unit 201 acquires user input information related to the extension content of the business support function in the business support system 1 based on the user's input. In this embodiment, AI is used to extend the business support function, and so the user input information indicates the content of the extension of the business support function desired by the user (the content of customization desired by the user). The user input information is written in natural language, but may also be information in which the meaning of the natural language is vectorized.
[0063] The user input information may indicate content that is not particularly related to the expansion of the business support function. For example, the user input information may indicate data that the user wants to acquire, data that the user wants to update, a person with whom the user wants to communicate, a new application that the user wants to create, or other content. The user input information may be information regarding the content of a process that the user requests from the business support system 1.
[0064] In this embodiment, an example is taken of a case where the text entered into input form F when the user selects button B corresponds to the user input information. Therefore, the user input information is text indicating the content related to the process the user wants to execute using the API. When the user selects button B, the user terminal 40 transmits the user input information, which is the text entered into input form F, to the API request generation server 20. The user input information acquisition unit 201 acquires the user input information from the user terminal 40. The user input information acquisition unit 201 may acquire only one piece of user input information, or may acquire multiple pieces of user input information.
[0065] Note that the user input information may not be text in a natural language, but may be the voice input by the user. In this case, the user input information acquisition unit 201 may acquire the user input information, which is voice, from the user terminal 40 and then request the voice conversion server 10 to convert the user input information into text. The user input information acquisition unit 201 acquires the user input information converted into text from the voice conversion server 10. In this embodiment, since the AI is a large-scale language model, the information converted into text is input to the AI. The user input information acquisition unit 201 may acquire the user input information indirectly via the voice conversion server 10, the business support server 30, or another computer, rather than directly from the user terminal 40.
[0066] [API specification information acquisition section] The API specification information acquisition unit 202 acquires API specification information relating to the specifications of the destination API. The destination API is an API, among multiple APIs, to which an API request is sent. The destination API can also be referred to as an API, among multiple APIs, that receives the API request (i.e., an API indicated by an API endpoint), or an API that executes the API request. In this embodiment, an example is given in which an API request and a destination API correspond one-to-one, but the API request and destination API may also correspond one-to-many, many-to-one, or many-to-many.
[0067] In this embodiment, API specification information is stored in API specification information database DB1, and therefore API specification information acquisition unit 202 acquires API specification information from API specification information database DB1. API specification information acquisition unit 202 may also acquire API specification information from a database other than API specification information database DB1, a computer other than API request generation server 20, or an external information storage medium. API specification information acquisition unit 202 may acquire only one piece of API specification information, or may acquire multiple pieces of API specification information.
[0068] For example, the API specification information acquisition unit 202 may acquire all of the API specification information stored in the API specification information database DB1. In this embodiment, the API specification information acquisition unit 202 acquires some of the API specification information from all of the API specification information stored in the API specification information database DB1. For example, the API specification information acquisition unit 202 acquires API specification information corresponding to the screen that was displayed on the user terminal 40 when the user input information was entered. In the examples of FIGS. 2 and 3, a business support screen SC showing an app is displayed on the user terminal 40, so the API specification information acquisition unit 202 acquires API specification information related to the app (for example, API specification information of a code execution API) from all of the API specification information.
[0069] The data storage unit 200 stores acquisition target data that indicates the relationship between the business support screen SC displayed on the user terminal 40 and the API specification information that is the target of acquisition by the API specification information acquisition unit 202. The acquisition target data may be in any format, such as a table format, a mathematical formula format, part of a program, a machine learning model, or any other format. In the examples of Figures 2 and 3, the acquisition target data associates the business support screen SC that indicates the app with the API specification information of the code execution API.
[0070] For example, the acquisition target data may be associated with a business support screen SC such as a thread used in the communication function and an API for the communication function. The acquisition target data may be associated with a business support screen SC such as a calendar used in the schedule function and an API for the schedule function. The acquisition target data may be associated with a business support screen SC for the email management function such as a received email list used in the email management function and an API for the email management function. The acquisition target data may be associated with a business support screen SC showing the processing results of another business support function and an API for the other business support function.
[0071] For example, the API request generation server 20 acquires display screen information from the user terminal 40 that allows identification of the currently displayed screen. The display screen information may also be in any format, such as the URL of the currently displayed screen, an ID assigned to the currently displayed screen, or other information. The API specification information acquisition unit 202 acquires API specification information associated with the screen indicated by the display screen information based on the acquisition target data. In the examples of FIGS. 2 and 3, the display screen information indicates the business support screen SC of the app, so the API specification information acquisition unit 202 acquires API specification information of the code execution API based on the acquisition target data. Similarly, when another business support screen SC is displayed on the user terminal 40, the API specification information acquisition unit 202 acquires API specification information associated with the business support screen SC indicated by the display screen information based on the acquisition target data.
[0072] The acquisition target data may indicate the API specification information to be acquired. The API specification information acquisition unit 202 may identify the API specification information to be acquired based on other elements rather than the business support screen SC currently displayed on the user terminal 40. For example, the API specification information acquisition unit 202 may identify the API specification information to be acquired based on user-input information. In this case, the acquisition target data indicates the relationship between the user-input information and the API specification information to be acquired. The API specification information acquisition unit 202 may identify the API specification information to be acquired based on the user-input information and the acquisition target data, and acquire the API specification information. When the user selects an API himself / herself, the API specification information acquisition unit 202 may acquire the API specification information of the API selected by the user without particularly using the acquisition target data.
[0073] [Default prompt acquisition section] The default prompt acquisition unit 203 acquires a default prompt related to the generation of an API request, which is a default prompt prepared in advance. In this embodiment, an example is given in which the default prompt is prepared by the business operator that operates the business support system 1, but the default prompt may be prepared by any party. For example, the user may prepare the default prompt, or another user in the organization to which the user belongs may prepare the default prompt. The default prompt may also be shared between users. The default prompt may also be prepared by another business operator that cooperates with the business operator that operates the business support system 1.
[0074] In this embodiment, an example is taken of a case where the data storage unit 200 stores a default prompt. For example, the default prompt acquisition unit 203 refers to the data storage unit 200 and acquires the default prompt. The default prompt acquisition unit 203 may acquire the default prompt from a computer other than the API request generation server 20 or from an external information storage medium. The default prompt acquisition unit 203 may acquire only one default prompt, or may acquire multiple default prompts. The default prompt acquisition unit 203 may acquire a default prompt from the multiple default prompts that corresponds to user input information.
[0075] For example, an AI may be capable of generating API requests for various APIs. On the other hand, the business support system 1 may only support a specific API. In this case, the user may not specify the specific API. For this reason, text indicating that the AI will generate an API request for a specific API may be prepared as a default prompt. This default prompt allows the AI to identify which API's API request it should generate.
[0076] For example, the default prompt may be text indicating the role that the AI should play, such as "You are an AI that assists users in creating API requests." Such a default prompt allows the AI to identify the role that it should play. Another example of the default prompt may be text indicating that the AI will provide some kind of response to the user along with the API request, such as "Please explain the API request you generated." Such a default prompt allows the AI to identify that it should generate a response to the user (e.g., an explanation of the API request) along with the code of the API request, etc. For example, the default prompt may be text indicating what information each of the user input information, API specification information, function setting information, and template request contains.
[0077] [API request generation part] The API request generation unit 204 executes an API request generation process. The API request generation process is a process for generating an API request. The API request generation unit 204 generates an API request for a destination API from among multiple APIs related to business support, based on user input information and the AI. For example, the API request generation unit 204 inputs input data including user input information to the AI. In this embodiment, since the AI is stored in an external system, the API request generation unit 204 transmits the input data to the external system. If the AI is stored in the data storage unit 200, the API request generation unit 204 simply inputs the input data to the AI stored in the data storage unit 200.
[0078] For example, the AI calculates the embedding representation of input data based on parameters adjusted by prior learning. In this embodiment, a large-scale language model, such as GPT, corresponds to the AI, and the AI divides the input data into tokens based on the parameters and calculates the embedding representation of each token. If necessary, the AI predicts the continuation based on the order of the embedded representations of the tokens. The AI outputs an API request as output data based on the order. The AI may output output data that includes not only the code of the API request, but also at least one of code such as a script corresponding to user input information and text of a response to the user. The API request generation unit 204 generates code corresponding to the user input information by acquiring the API request included in the output data output by the AI.
[0079] For example, since the user input information is acquired based on a user's input, the user input information indicates the processing the user wants to execute using the API. In the examples of FIGS. 2 and 3, the user input information indicates the expansion of the business support function desired by the user. For example, the user input information indicates specific content, such as turning the oldest meeting date green. The AI can understand such user input information through language analysis and generate code for expanding the business support function to be expanded, along with an API request for executing the code. While the AI generating an API request in the business support system 1 is a novel configuration as of the filing of the application, the technology itself for the AI to generate code such as an API request based on a prompt may be publicly known as of the filing of the application. Therefore, a person skilled in the art can understand the process of generating an API request by the AI of this embodiment to the extent that it can be implemented, based on the description of this embodiment and the common general technical knowledge at the time of filing.
[0080] In this embodiment, the API request generation unit 204 generates an API request further based on the API specification information. For example, the API request generation unit 204 inputs input data including user input information and API specification information to the AI. The AI calculates an embedded expression based not only on the user input information but also on the API specification information. The embedded expression reflects not only the user input information but also the API specifications indicated by the API specification information. The AI outputs output data including code corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the API specification information by obtaining the code included in the output data output by the AI.
[0081] For example, the AI identifies what specifications an API request should have based on an embedded expression that corresponds to the API specifications in the API specification information. The AI generates an API request that corresponds to the API specification information based on the roughly identified specifications. In the examples of Figures 2 and 3, code is generated for extending the functionality of an app, which is an example of a business support function, so the API specification information indicates the specifications of the code execution API. The AI identifies the specifications of the code execution API based on the API specification information and generates output data that includes an API request that satisfies the specifications.
[0082] 6, input data including not only user input information and API specification information but also function setting information, a template request, and a default prompt is input to the AI. Therefore, the API request generation unit 204 acquires each of the function setting information, the template request, and the default prompt.
[0083] The API request generation unit 204 acquires function setting information related to the settings of the business support function. The function setting information indicates the settings of the business support function to be expanded. In the examples of Figures 2 and 3, the database function of the app selected by the user corresponds to the business support function to be expanded. The app selected by the user is the app displayed on the business support screen SC when the user input information is acquired (in the examples of Figures 2 and 3, "minutes management app"). Therefore, the function setting information indicates the settings of the app selected by the user. The API request generation unit 204 may acquire only one piece of function setting information, or may acquire multiple pieces of function setting information.
[0084] In this embodiment, the setting data of the application selected by the user is stored in the business support database DB2 described below, and therefore the API request generation unit 204 acquires at least one item of the setting data stored in the business support database DB2 as function setting information. The API request generation unit 204 may acquire all items of the setting data as function setting information, but in this embodiment, the API request generation unit 204 acquires, from the setting data, the setting item of the field of the application selected by the user as function setting information. The API request generation unit 204 does not acquire other items of the setting data, such as access right settings, as function setting information.
[0085] In the examples of Figures 2 and 3, the minutes management app selected by the user has seven fields: "Record Number," "Meeting Date," "Meeting Time," "Attendees," "Task," "Decisions," and "Next Steps." The API request generation unit 204 acquires function setting information including the field codes, field names, field types, and order of these seven fields, or a combination thereof. If other setting items exist as setting items for the fields, the API request generation unit 204 may acquire function setting information including the other setting items.
[0086] The function setting information may indicate settings corresponding to the business support function to be expanded. The function setting information is not limited to the example of this embodiment. For example, the function setting information may indicate settings other than the fields of the app. The function setting information may indicate the app name, notes for an administrator who manages the app, the layout of a form for users to input data, the display format of the list L, the format of a graph displayed based on data stored in the app, the app icon, other app designs, notification settings, access right settings, or other settings.
[0087] In this embodiment, the API request generation unit 204 generates an API request further based on the function setting information. For example, the API request generation unit 204 inputs input data including user input information and function setting information to the AI. The AI calculates an embedded expression based on not only the user input information but also the function setting information. The embedded expression reflects not only the user input information but also the settings indicated by the function setting information. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the function setting information by acquiring the API request included in the output data output by the AI.
[0088] For example, the API request generation unit 204 generates a template request related to a business support function, which is a template request prepared in advance. The template request is an API request prepared in advance. The template request may include code that serves as a template (for example, an API request that serves as a template). In this embodiment, an example is given in which the business operator that operates the business support system 1 prepares the template request, but the template request may be prepared by any person. For example, a user may prepare a template request. A template request may be shared between users. A template request may also be prepared by another business operator that cooperates with the business operator that operates the business support system 1.
[0089] For example, the data storage unit 200 stores a template database in which template requests are stored. The template database may be associated with an index for searching for template requests using user-input information as a query. The API request generation unit 204 generates template requests from the template database. The API request generation unit 204 may generate template requests from a database other than the API specification information database DB1, from a computer other than the API request generation server 20, or from an external information storage medium. The API request generation unit 204 may acquire only one template request, or may generate multiple template requests.
[0090] In this embodiment, the API request generation unit 204 generates an API request further based on the template request. For example, the API request generation unit 204 inputs input data including user input information and the template request to the AI. The AI calculates an embedded expression based on not only the user input information but also the template request. The embedded expression reflects not only the user input information but also the characteristics of the template request. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the template request by acquiring the API request included in the output data output by the AI.
[0091] In this embodiment, the API request generation unit 204 generates an API request further based on the default prompt. For example, the API request generation unit 204 inputs input data including user input information and the default prompt to the AI. The AI calculates an embedded expression based not only on the user input information but also on the default prompt. The embedded expression reflects not only the user input information but also the settings indicated by the default prompt. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the default prompt by acquiring the API request included in the output data output by the AI. For example, if the default prompt indicates the destination API of the API request to be generated by the AI, the API request generation unit 204 identifies which API the AI should generate an API request for based on the embedded expression corresponding to the default prompt.
[0092] The API request generation unit 204 may generate an API request based on input data that includes other information. For example, the API request generation unit 204 may generate an API request based on input data that includes not only the function setting information of the app selected by the user, but also data stored in the app's record.
[0093] [API request sending section] The API request sending unit 205 sends an API request to the destination API. That is, the API request sending unit 205 sends an API request to the API endpoint of the destination API (for example, the business support server 30). Information that can identify the destination API (that is, information that can identify the API endpoint of the destination API) is assumed to be stored in advance in the data storage unit 200. The API request sending unit 205 can specify where to send the API request based on this information.
[0094] In this embodiment, the destination API is selected by the API specification information acquisition unit 202, and the API request sending unit 205 sends the API request generated by the API request generation unit 204 to the destination API selected by the API specification information acquisition unit 202. The destination API may also be selected by a function other than the API specification information acquisition unit 202. In this case, the API request sending unit 205 simply sends the API request generated by the API request generation unit 204 to the destination API selected by the AI.
[0095] For example, the destination API may be selected by the AI. In this case, the API request sending unit 205 may transmit the API request generated by the API request generation unit 204 to the destination API selected by the AI. The destination API may also be selected by the user. In this case, the API request sending unit 205 may transmit the API request generated by the API request generation unit 204 to the destination API selected by the user.
[0096] [3-3. Functions realized by the business support server] For example, the business support server 30 includes a data storage unit 300 and a business support unit 301. The data storage unit 300 is realized by the storage unit 32. The business support unit 301 is realized by the control unit 31.
[0097] [Data storage section] The data storage unit 300 stores data necessary for business support processing. For example, the data storage unit 300 stores a business support database DB2 that stores various data of the business support system 1. In this embodiment, a situation in which a user extends the functions of an application is taken as an example, and therefore a case in which various data of the application is stored in the business support database DB2 is taken as an example.
[0098] 7 is a diagram showing an example of the business support database DB2. For example, the business support database DB2 stores an application ID, an application name, application setting data, and record data. The data stored in the business support database DB2 is not limited to the example shown in FIG. 7. For example, the business support database DB2 may store data other than applications (for example, data on threads through which users communicate with each other, schedule data, or email data).
[0099] The app ID is an ID that can identify an app. The app name is the name of the app, and the app setting data indicates the app settings specified by the user using no-code or low-code. For example, the app setting data may be the aforementioned field settings, graph settings, list L display settings, access rights settings, or other settings. Code generated by AI may be saved as part of the app setting data. The record data is data stored in a record. When a user creates a new app, data such as the app ID of the new app is stored in the business support database DB2. When a user updates an app, the data for that app in the business support database DB2 is updated.
[0100] For example, the data storage unit 300 stores a program for a business support function and actual data for each of a plurality of APIs. The actual data for the API includes a program that performs various processes such as acquiring or transmitting data, and data such as settings referenced by the program. The program for the business support function can also be called by processing the program included in the actual data for the API. The actual data for the API may be similar to data used in known APIs. The data storage unit 300 may also store data necessary for the business support server 30 to receive an API request (e.g., information that can identify the API endpoints of each of a plurality of APIs).
[0101] The data stored in the data storage unit 300 is not limited to the above examples. The data storage unit 300 may store any data necessary for supporting business operations. For example, the data storage unit 300 may store data necessary for displaying the business support screen SC (e.g., HTML data or image data), or may store data necessary for deploying code (e.g., a deployment program). The data storage unit 300 may store API specification information for each of multiple APIs.
[0102] [Business Support Department] The business support unit 301 executes business support processing to support the user's business. The business support processing is processing for providing the user with business support functions. For example, the business support processing is processing for displaying a business support screen SC on the user terminal 40. In this embodiment, the API request generated by the API request generation server 20 is sent to the destination API, and the business support unit 301 executes the processing requested by the API request sent to the destination API. For example, the business support unit 301 executes the processing requested by the API request based on a program included in the actual data of the destination API stored in the data storage unit 300.
[0103] The process for executing the API request sent to the destination API may be similar to the process employed in a known API. The business support unit 301 sends the execution result of the API request to the user terminal 40 directly or indirectly (for example, via at least one of the voice conversion server 10 and the API request generation server 20). In the examples of FIGS. 2 and 3, the business support unit 301 executes the API request accepted by the code execution API and deploys code for realizing the extension of the function desired by the user. The deployment is the deployment to the business support function to be extended. In the examples of FIGS. 2 and 3, the deployment is the deployment of the code to the application selected by the user. The business support unit 301 performs the deployment by embedding the code in the display data (for example, HTML data) of the business support screen SC. The code may be embedded at any position in the display data.
[0104] For example, the business support unit 301 provides the code to the user by executing a process for displaying a screen showing the code deployment results on the user's user terminal 40. The business support screen SC at the bottom of FIG. 3 is an example of a screen showing the code deployment results. Therefore, the description of the business support screen SC at the bottom of FIG. 3 can be read as a screen showing the code deployment results. The screen showing the code deployment results may be any screen for the business support function to be expanded. The deployment method itself may be a known method. For example, the business support server 30 may execute the code and send only data showing the execution results to the user terminal 40.
[0105] For example, once the user confirms that the functionality has been extended in line with their wishes, they perform an operation to terminate the generation of the API request. In this case, the business support server 30 associates the code generated by the API request with the user and stores it in the data storage unit 300. From the next time onwards, the user can use the code stored in the data storage unit 300. For example, if the user again invokes an app for which code was generated by AI, the display data of the business support screen SC of the app will include the code. The user can also modify or delete the code stored in the data storage unit 300.
[0106] [3-4. Functions implemented on user devices] For example, the user terminal 40 includes a data storage unit 400, a display control unit 401, and an operation reception unit 402. The data storage unit 400 is realized by the storage unit 42. The display control unit 401 and the operation reception unit 402 are each realized by the control unit 41.
[0107] [Data storage section] The data storage unit 400 stores data for business support. For example, the data storage unit 400 stores a browser for displaying various screens of the business support system 1. For example, the data storage unit 400 stores an application dedicated to the business support system 1. The data storage unit 400 stores display data for the business support screen SC.
[0108] [Display control section] The display control unit 401 displays various screens in the business support system 1 on the display unit 45. For example, the display control unit 401 displays a business support screen SC on the display unit 45 based on data received from the voice conversion server 10, the API request generation server 20, or the business support server 30.
[0109] [Operation reception section] The operation reception unit 402 receives various operations in the business support system 1. For example, the operation reception unit 402 receives operations on the business support screen SC. Data indicating the operation content received by the operation reception unit 402 is transmitted to the voice conversion server 10, the API request generation server 20, or the business support server 30 as appropriate.
[0110] [4. Processing performed by the business support system] FIG. 8 is a diagram showing an example of processing executed in the business support system 1. The processing of FIG. 8 is executed by the control units 11, 21, 31, and 41 executing programs stored in the storage units 12, 22, 32, and 42, respectively. Each processing of FIG. 8 is an example of processing included in a business support method. FIG. 8 shows an example of processing when the business support function of an app is extended. Note that in FIG. 8, the user terminal 40 may communicate indirectly with the speech conversion server 10 and the API request generation server 20 via the business support server 30, rather than directly with each of them.
[0111] 8, the user terminal 40 executes processing with the business support server 30 to display a business support screen SC of an application selected by the user (S1). In S1, the business support server 30 generates display data for the business support screen SC of the application selected by the user based on the business support database DB2 and transmits the generated display data to the user terminal 40. Upon receiving the display data for the business support screen SC, the user terminal 40 displays the business support screen SC on the display unit 45. Thereafter, the user extends the business support functions of the application according to the flow shown in FIGS. 2 and 3.
[0112] When the user terminal 40 receives a voice input from the user via the voice input unit 46, it transmits input voice data indicating the voice input by the user to the voice conversion server 10 (S2). The voice conversion server 10 acquires the input voice data from the user terminal 40 (S3). The voice conversion server 10 executes a voice conversion process based on the voice conversion program and the input voice data (S4). The voice conversion server 10 transmits input text data indicating the text of the voice input by the user (S5). The user terminal 40 acquires the input text data from the voice conversion server 10 (S6).
[0113] When the user selects button B, the user terminal 40 sends user-input information to the API request generation server 20 (S7). In S7, the user terminal 40 requests the API request generation server 20 to generate code such as an API request. In S7, the user terminal 40 also sends the app ID of the app to be extended and information that can identify the business support screen SC that is being displayed. The API request generation server 20 acquires the user-input information and the like from the user terminal 40 (S8). The API request generation server 20 acquires API specification information of the destination API from the API specification information database DB1 (S9). The API request generation server 20 also executes processing to acquire function setting information, a template request, and a default prompt.
[0114] The API request generation server 20 generates an API request based on input data including the user input information acquired in S8 and the API specification information acquired in S9, and the AI (S10). In S10, the API request generation server 20 transmits the input data to an external system that manages the AI. The API request generation server 20 acquires output data including code such as an API request generated by the AI from the external system. The API request generation server 20 transmits the API request generated in S10 to the business support server 30, which is the API endpoint of the destination API (S11). The API request generated in S10 may be transmitted from the API request generation server 20 to the user terminal 40, and then transmitted by the user terminal 40 to the business support server 30.
[0115] The business support server 30 receives the API request from the API request generation server 20 (S12). The business support server 30 executes the processing requested by the API request (S13). In S13, the business support server 30 deploys code such as a script generated by the AI. The business support server 30 executes processing between the API request generation server 20 and the user terminal 40 to provide the user with the processing results of the API request (S14), and this processing ends. The business support server 30 transmits display data of the business support screen SC to the user terminal 40. Upon receiving the display data of the business support screen SC, the user terminal 40 executes the code included in the display data to display the business support screen SC on the display unit 45. If a voice output of the answer from the AI is required, the voice conversion server 10 acquires data indicating the AI's answer from the API request generation server 20 and executes processing to convert the text into voice. The converted voice is output on the user terminal 40.
[0116] [5. Summary of embodiments] The business support system 1 of this embodiment generates an API request for a destination API from among multiple APIs based on user input information and AI. The business support system 1 transmits the API request to the destination API. This allows the user to execute the API request by simply providing input for the business support system 1 to acquire user input information without coding the API request. This makes the business support system 1 compatible with multiple APIs, thereby improving user convenience. For example, users of the no-code or low-code business support system 1 may have little or no API knowledge. Users can easily expand business support functions through the API request generation process of the business support system 1, even without acquiring API knowledge. Since users with API knowledge can avoid the hassle of coding API requests, the business support system 1 improves convenience for users with API knowledge.
[0117] Furthermore, the business support system 1 generates an API request further based on the API specification information. This allows the business support system 1 to generate an API request that meets the specifications specific to the destination API. For example, a general-purpose AI may generate a general API request regardless of the specifications specific to the destination API. The API specification information allows the AI to understand the specifications specific to the destination API, making it easier for the business support system 1 to generate an API request that meets the user's wishes. For example, the business support system 1 can generate an API request that meets security specifications, thereby reducing security risks.
[0118] Furthermore, the business support system 1 generates an API request further based on the default prompt. This allows the business support system 1 to generate an API request after filling in any missing items in the user's input with the default prompt. For example, even if the user does not input what API request the AI should generate, the business support system 1 can generate an API request with certain specifications by defining the specifications in the default prompt.
[0119] [6. Modifications] The present disclosure is not limited to the above-described embodiments, and may be modified as appropriate without departing from the spirit of the present disclosure.
[0120] 9 is a diagram showing an example of functions realized by the business support system 1 of the modified example. As shown in FIG. 9, the modified example described below realizes a display screen information acquisition unit 206, a user attribute information acquisition unit 207, a correction content information acquisition unit 208, a correction portion request generation unit 209, an API request correction unit 210, an execution result information acquisition unit 211, an output process execution unit 212, a pre-execution information acquisition unit 213, and an output content correction unit 214. Each of the display screen information acquisition unit 206, the user attribute information acquisition unit 207, the correction content information acquisition unit 208, the correction portion request generation unit 209, the API request correction unit 210, the execution result information acquisition unit 211, the output process execution unit 212, the pre-execution information acquisition unit 213, and the output content correction unit 214 is realized by the control unit 21.
[0121] [6-1. Variation 1] For example, in the embodiment, an example has been given of a case where the API specification information acquisition unit 202 acquires API specification information based on display screen information that can identify the business support screen SC displayed on the user terminal 40. The display screen information may be used for a purpose other than the purpose for which the API specification information acquisition unit 202 acquires the API specification information. In Variation 1, a case where the display screen information is used for another purpose will be described.
[0122] The business support system 1 of the first modified example includes a display screen information acquisition unit 206. The display screen information acquisition unit 206 acquires display screen information related to the business support screen SC displayed on the user terminal 40 when a user input is made. The method of acquiring the display screen information is as described in the embodiment. The display screen information acquisition unit 206 acquires the display screen information from the user terminal 40. For example, the display screen information may be included in a request such as an HTTP request sent from the user terminal 40. The URL of the business support screen SC or a part of it may be used as the display screen information.
[0123] The API request generation unit 204 of Modification 1 generates an API request further based on the display screen information. For example, the API request generation unit 204 may acquire the function setting information described in the embodiment based on the display screen information. In the examples of FIGS. 2 and 3, the display screen information may indicate an application ID that can identify the application. The API request generation unit 204 may acquire the function setting information of the application indicated by the application ID based on the application ID indicated by the display screen information. The processing after the API request generation unit 204 acquires the function setting information is as described in the embodiment.
[0124] For example, the API request generation unit 204 may acquire specific content information indicating specific content displayed on the business support system 1, rather than acquiring API specification information based on the display screen information. In the examples of FIGS. 2 and 3, the specific content information may indicate a specific value displayed in an application field, a file registered in a record, the content of comments exchanged in the record, or other information. The API request generation unit 204 may input input data including the specific content information to the AI. The AI calculates an embedded expression based on not only the user input information but also the specific content information. The embedded expression reflects not only the user input information but also the characteristics of the specific content information. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the specific content information by acquiring the API request included in the output data output by the AI.
[0125] Note that the API request generation unit 204 may input input data including display screen information to the AI, rather than acquiring function setting information based on the display screen information. Furthermore, the display screen information may be a screenshot of the business support screen SC displayed on the user terminal 40. The screenshot is also an example of information capable of identifying the business support screen SC displayed on the user terminal 40, and corresponds to at least information related to the business support screen SC. The API request generation unit 204 may input input data including display screen information, which is a screenshot, to an AI capable of image analysis. The AI calculates an embedded expression based on not only the user input information but also the screenshot. The embedded expression reflects not only the user input information but also the characteristics of the screenshot. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 acquires the API request included in the output data output by the AI, thereby generating an API request corresponding to the screenshot.
[0126] The business support system 1 of the first modification generates an API request further based on the display screen information. This allows the business support system 1 to generate an API request according to the business support screen SC displayed on the user terminal 40. For example, the business support system 1 can generate an API request specific to settings related to the business support screen SC. The business support system 1 can generate an API request specific to values being displayed on the business support screen SC. The business support system 1 can generate an API request specific to a screenshot of the business support screen SC.
[0127] [6-2. Variation 2] For example, an appropriate API request may differ depending on the user. For this reason, in Modification 2, an example is given of a case where an API request is generated according to the user's attributes. The business support system 1 of Modification 2 includes a user attribute information acquisition unit 207. The user attribute information acquisition unit 207 acquires user attribute information related to the user's attributes. The user attribute information is information that can be used to classify users. For example, the user attribute information may be the user's organization, organization size, department, position, industry, profile, year of joining the company, age, gender, or other information. The user attribute information may also be information called demographic information.
[0128] In the second modification, an example is taken of a case where the data storage unit 300 of the business support server 30 stores a user database in which user attribute information is stored. The user attribute information acquisition unit 207 acquires the user attribute information from the user database. The user attribute information acquisition unit 207 may acquire the user attribute information from a database other than the user database, a computer other than the business support server 30 (for example, the API request generation server 20), or an external information storage medium. The user may be able to edit his or her own user attribute information.
[0129] The API request generation unit 204 of Modification 2 generates an API request further based on user attribute information. For example, the API request generation unit 204 inputs input data including user attribute information to the AI. The AI calculates an embedded expression based not only on the user input information but also on the user attribute information. The embedded expression reflects not only the user input information but also the characteristics of the user attribute information. The AI outputs output data including an API request according to the calculated embedded expression. The API request generation unit 204 generates an API request according to the user attribute information by obtaining the API request included in the output data output by the AI.
[0130] The business support system 1 of the second modification generates an API request further based on user attribute information. This allows the business support system 1 to generate an API request according to the user's attributes. For example, if an API request suitable for supporting the business of a user who belongs to a large company is different from an API request suitable for supporting the business of a user who belongs to a small or medium-sized company, the business support system 1 can generate an API request according to the size of the organization to which the user belongs. If an API request suitable for supporting the business of a user who works in the food and beverage industry is different from an API request suitable for supporting the business of a user who works in the apparel industry, the business support system 1 can generate an API request according to the industry in which the user works.
[0131] [6-3. Variation 3] For example, there may be multiple extensions that the business support function needs to expand. In this case, the user may be able to specify the extension information to the AI one after another. In Variation 3, as shown in Figures 2 and 3, an example is given in which, after a function that marks the oldest record as green is added to the app, a function that marks the newest record as red and a function that duplicates records that include a specific user as an attendee are added. The user will have to enter information three times in total.
[0132] The user input information acquisition unit 201 of Modification 3 acquires user input information each time the user makes a new input. For example, in the state of the business support screen SC shown in the lower part of FIG. 3, the user makes a voice input to mark the record with the most recent meeting date in red. The AI generates an API request to mark the record with the most recent meeting date in red based on the user input information corresponding to the user's voice input. Then, the user makes a voice input to duplicate a record in which a specific user is included in the attendees. The AI generates an API request to duplicate a record in which a specific user is included in the attendees based on the user input information corresponding to the user's voice input. In this way, the user input information acquisition unit 201 acquires user input information each time the user makes a successive input.
[0133] The API request generation unit 204 of Modification 3 generates an API request further based on the history of user input information. The history includes at least one piece of user input information. The history of user input information is stored in the data storage unit 200. The API request generation unit 204 acquires the history of user input information stored in the data storage unit 200 and generates code such as an API request. The API request generation unit 204 may acquire the history of user input information from another computer such as the user terminal 40. Since there is no history of user input information at the time of the user's first input, the API request generation unit 204 generates an API request based on the user input information at the time of the first input. This processing is as described in the embodiment. From the second input by the user onwards, the API request generation unit 204 generates an API request further based on the history of user input information.
[0134] For example, the API request generation unit 204 inputs input data including new user input information and a history of user input information to the AI. The AI calculates an embedded expression based on not only the new user input information but also the history of user input information. The embedded expression reflects not only the new user input information but also the characteristics of the history of user input information. The AI outputs output data including an API request corresponding to the calculated embedded expression. The API request generation unit 204 generates an API request corresponding to the history of user input information by obtaining the API request included in the output data output by the AI.
[0135] The business support system 1 of the third modification generates an API request based further on the history of user input information. This allows the business support system 1 to generate an API request that takes into account not only the most recent input made by the user but also past input made by the user, thereby improving user convenience. For example, when a user repeatedly inputs information, they may omit information that they have previously input. By utilizing the history of user input information, the business support system 1 can identify the information that the user has omitted from the context up to that point and generate an API request.
[0136] [6-4. Variation 4] For example, the API request generation unit 204 may generate an API request by supplementing a provisional API request output by an AI with complementary information related to business support. The provisional API request is the output itself from the AI. The complementary information is information added to the provisional API request. For example, the complementary information may be display screen information, function setting information, specific content information, or other information. The method for acquiring this information is as described above. The complementary information may be information prepared in advance on the API request generation server 20 side. The complementary information may be stored in the data storage unit 200.
[0137] For example, the API request generation unit 204 embeds all or part of the complementary information into the provisional API request to generate an API request to be sent to the destination API. The position where the complementary information is embedded is assumed to be predetermined. For example, the API request generation unit 204 may embed the complementary information at the beginning or end of the provisional API, in a part written in a markup language such as JSON, or in another part. The API request transmission unit 205 transmits the API request in which all or part of the complementary information has been embedded to the destination API.
[0138] The business support system 1 of the fourth modification generates an API request by supplementing the provisional API request output by the AI with complementary information. This allows the business support system 1 to supplement information that is lacking in the AI with complementary information, thereby generating a more appropriate API request.
[0139] [6-5. Variation 5] For example, an AI may not be able to generate an API request that meets the user's wishes in one try. For this reason, a user may be able to instruct the AI to modify the API request it has generated. In the examples of Figures 2 and 3, the user may instruct the AI to modify the API request it has generated from the business support screen SC at the bottom of Figure 3. Variation 5 cites an example in which the user instructs the API request to be modified by voice input, but the user may instruct the API request to be modified by any other input method. For example, the user may instruct the API request to be modified by text input.
[0140] The user may explicitly instruct the business support system 1 to modify the API request by voice input, text input, or other operation (for example, selecting the "Modify" button). The business support system 1 can specify, based on the user's explicit instruction, that an already-generated API request should be modified rather than a new API request being generated. The AI may also infer that an API request needs to be modified even without the user's explicit instruction. The AI may specify, based on the input data, that an already-generated API request should be modified rather than a new API request being generated. The AI can make such a specification using the embedded representation of the input data.
[0141] FIG. 10 is a diagram showing an example of processing for correcting an API request. The business support system 1 of the fifth modification includes a correction content information acquisition unit 208, a correction portion request generation unit 209, and an API request correction unit 210. The correction content information acquisition unit 208 acquires correction content information regarding the correction content of the API request based on user input. The correction content information is an instruction indicated by the user's input when correcting the API request. The correction content information can also be said to be the user's intention at the time of correction. The correction content information is sometimes called a prompt for the AI. As shown in FIG. 10, when making a correction, input data including the correction content information is input to the AI.
[0142] In Variation 5, an example is taken of a case where the text entered into input form F when the user selects button B when modifying an API request corresponds to the correction content information. Therefore, the correction content information is text indicating the specific content of the correction the user wishes to make to the API request. When the user selects button B, user terminal 40 transmits the correction content information, which is the text entered into input form F, to API request generation server 20. Correction content information acquisition unit 208 acquires the correction content information from user terminal 40. Correction content information acquisition unit 208 may acquire only one piece of correction content information, or may acquire multiple pieces of correction content information.
[0143] The correction content information may not be text in a natural language, but may be the voice input by the user. In this case, the correction content information acquisition unit 208 may acquire the correction content information in the form of voice from the user terminal 40, and then request the voice conversion server 10 to convert the correction content information into text. The correction content information acquisition unit 208 acquires the correction content information converted into text from the voice conversion server 10. The correction content information acquisition unit 208 may not acquire the correction content information directly from the user terminal 40, but may acquire the correction content information indirectly via the voice conversion server 10, the business support server 30, or another computer.
[0144] The correction portion request generation unit 209 generates a correction portion request, which is a request after correcting the portion of the API request before correction that has been corrected according to the correction content, based on the correction content information and AI. The portion corrected according to the correction content is a portion of the API request before correction. The amount of the correction portion varies depending on the correction content. For example, the correction portion may be only one line or two or more lines. The correction portion may not be a sequence of lines. For example, in an API request with 20 lines, the correction portions may be the third and tenth lines. The AI determines which parts will be corrected.
[0145] For example, the AI outputs a correction portion request along with correction portion identification information that can identify the correction portion in the API request before correction. The correction portion identification information can also be referred to as the position of the correction portion in the API request before correction. For example, the correction portion identification information indicates the line number of the correction portion. A default prompt for correction may be provided, such as, "Please correct only the part of the API request before correction that needs to be corrected. Please output the correction portion request after correcting that part and the identification information for that part." This default prompt allows the AI to more accurately understand that it is necessary to output the correction portion request code and correction portion identification information.
[0146] For example, the correction portion request generation unit 209 inputs input data including the API request before correction and correction content information to the AI. In the example of Figure 10, the correction portion request generation unit 209 inputs input data further including a default prompt to the AI. The AI calculates an embedded expression based on not only the correction content information but also the API request before correction. The embedded expression reflects not only the correction content information but also the API request before correction. The AI outputs output data including the correction portion request and correction portion identification information according to the calculated embedded expression. The correction portion request generation unit 209 acquires the correction portion request and correction portion identification information included in the output data output by the AI. In the example of Figure 10, only the seventh line of the API request before correction is output from the AI as an API request. The correction portion identification information indicates that it is the seventh line.
[0147] The API request modification unit 210 modifies the API request by replacing the modified portion of the API request before modification with the modified portion request. Replacing can also be referred to as overwriting or modifying. In the example of FIG. 10, line 7 of the API request before modification is replaced with the modified portion code. For example, the API request modification unit 210 replaces the modified portion of the code before modification indicated by the modified portion identification information with the modified portion request. The user may also specify the portion to be modified. For example, the user may input, "Please modify line 7." In this case, the modification content information includes the modified portion identification information. The AI does not need to output the modified portion identification information. Even if the AI does not output the modified portion identification information, the API request modification unit 210 can simply replace the modified portion input by the user with the modified portion request.
[0148] The API request sending unit 205 of the fifth modification example transmits to the destination API the API request that has been modified by the API request modification unit 210. The API request sending unit 205 differs in that it transmits to the destination API the API request that has been modified by the API request modification unit 210, rather than an API request that has been newly generated by the API request generation unit 204; however, the method of transmitting the API request itself may be the same as in the embodiment.
[0149] The business support system 1 of Variation 5 acquires correction content information based on user input. The business support system 1 generates a correction partial request based on the correction content information and AI. The business support system 1 corrects the API request by replacing the corrected portion of the API request before correction with the corrected partial request. The business support system 1 transmits the corrected API request to the destination API. This enables the business support system 1 to streamline the user's work of correcting API requests, thereby improving user convenience during correction. For example, when AI regenerates the entire API request, there is a possibility that an API request that indicates processing completely different from that before correction is generated. However, by replacing only the corrected portion of the API request before correction with the corrected partial request, the business support system 1 prevents such processing from becoming completely different from that before correction, thereby improving the accuracy of correction.
[0150] [6-6. Variation 6] For example, the business support system 1 may use terms specific to the user's business. Therefore, the speech conversion unit may convert the user's speech into text based on term information related to terms specific to the business support system 1. The term information is a dictionary that stores terms specific to the user's business. The term information may be prepared for each user's industry. For example, term information indicating terms specific to the medical industry, marketing industry, food and beverage industry, or other industry may be prepared for each industry. The term information may be prepared by an administrator of the business support system 1, or by the user or another person.
[0151] In the sixth modification, the data storage unit 100 stores term information. The speech conversion unit acquires the term information from the data storage unit 100. The speech conversion unit may acquire the term information from a computer other than the speech conversion server 10 or from an external information storage medium. For example, the term information indicates terms specific to the user's work and the speech patterns (speech waveform patterns) of the terms. The speech conversion unit converts the speech input by the user into text based on the input speech data acquired from the user terminal 40, the speech conversion program, and the term information. For example, the speech conversion program refers to the term information and determines whether the term indicated in the term information has been spoken based on the speech pattern indicated by the input speech data and the speech pattern indicated in the term information. The speech conversion program converts the speech indicated by the input speech data into text based on the result of the determination.
[0152] The user input information acquisition unit 201 of the sixth modification acquires user input information indicating text converted by the speech conversion unit. Although it differs from the embodiment in that terminology information is used in the speech conversion performed to acquire the user input information, the method by which the user input information acquisition unit 201 acquires the user input information in which speech has been converted into text may be the same as that of the embodiment. The user input information acquisition unit 201 acquires the user input information in which speech has been converted into text from the speech conversion server 10.
[0153] The task support system 1 of the sixth modification converts the user's speech into text based on terminology information. This allows the task support system 1 to realize speech conversion based on terms specific to the task support system 1, thereby improving the speech conversion accuracy. As a result, the user does not need to correct the text, and the task support system 1 can further improve user convenience.
[0154] [6-7. Variation 7] For example, the API request generation unit 204 may be capable of generating an API request with each API of multiple business support systems 1, including the business support system 1, as the destination API. In Modification 7, there are other business support systems 1 in addition to the business support system 1 shown in FIG. 1. The businesses operating the multiple business support systems 1 may be the same or different from each other. Each of the multiple business support systems 1 includes a configuration similar to that of the business support server 30 and has at least one API.
[0155] For example, the API specification information database DB1 stores API specification information for each API of a plurality of business support systems 1. The acquisition target data described in the embodiment indicates the relationship between the business support screen SC of each of the plurality of business support systems 1 and the API specification information for the API of that business support system 1. The display screen information acquired from the user terminal 40 indicates the business support screen SC of a certain business support system 1. The API specification information acquisition unit 202 acquires API specification information for the API of the business support system 1 associated with the business support screen SC of that business support system 1 based on the acquisition target data. The API request generation unit 204 generates an API request based on the API specification information of the API of that business support system 1.
[0156] Note that even when API specification information is not used in generating an API request, the API request generation unit 204 can generate an API request with each API of multiple business support systems 1 as the destination API. For example, the API request generation server 20 may acquire system-in-use information that can identify the business support system 1 currently being used by the user from among the multiple business support systems 1. The API request generation unit 204 may input input data including the system-in-use information to the AI and acquire the API request output from the AI.
[0157] The business support system 1 of the seventh modification can generate an API request with each API of a plurality of business support systems 1 as a destination API. This allows the business support system 1 to generate an API request compatible with the APIs of various business support systems 1, thereby improving user convenience. For example, the business support system 1 can generate an API request compatible with various systems without relying on a specific system.
[0158] [6-8. Variation 8] For example, in the embodiment, an example is given of a case where an AI generates a response to a user based on user input information. The method of generating a response to a user from an AI is not limited to the example of the embodiment. The API request generated by the API request generation unit 204 may succeed or fail depending on the processing of the destination API. For this reason, it may be better to output a response to the user according to the execution result of the API request. Therefore, in Modification Example 8, an example is given of a case where an AI generates a response to a user based on the execution result of an API request.
[0159] The business support system 1 of the eighth modification includes an execution result information acquisition unit 211 and an output process execution unit 212. The execution result information acquisition unit 211 acquires execution result information related to the execution result of an API request. The execution result information is information indicating whether the process requested by the API request was successful. For example, the execution result information indicates a first value indicating that the process requested by the API request was successful, or a second value indicating that the process requested by the API request failed. The execution result information may be information other than the success or failure of the process requested by the API request. For example, the execution result information may include an error code indicating the cause of the failure. The execution result information can also be referred to as information indicating the status of the API request. For example, the execution result information may be information called a status code included in an API response, which is a response to an API request. In other words, the execution result information may be included in the API response. The format of the API response may be a known format.
[0160] For example, when the business support server 30 executes the processing requested by the API request based on the destination API, it generates execution result information based on the execution result of the processing. The method for generating the execution result information may be the same as a known method for generating an API response. It is assumed that the program required for generating the execution result information is stored in the data storage unit 300. The business support server 30 transmits the execution result information to the API request generation server 20. The execution result information acquisition unit 211 acquires the execution result information from the business support server 30. The business support server 30 may transmit the execution result information to a computer other than the API request generation server 20 (e.g., a user terminal 40). The processing for generating the execution result information may be specified in a program indicating the processing requested by the API request, or may be specified in another program. These programs may be part of the destination API, or may be programs different from the destination API. It is assumed that these programs are stored in the data storage unit 300.
[0161] In the eighth modification, the business support server 30 determines whether the processing requested by the API request was successful. If the business support server 30 determines that the processing requested by the API request was successful, it generates execution result information indicating a first value. If the business support server 30 determines that the processing requested by the API request failed, it generates execution result information indicating a second value. If the execution result information indicates a value other than the success or failure of the processing, the business support server 30 may generate execution result information indicating the other value based on the execution result of the processing. Processing result data indicating the relationship between the execution result of the processing and the value indicated by the execution result information is assumed to be stored in advance in the data storage unit 300. The business support server 30 may identify a value to be indicated by the execution result information based on the processing result data and the execution result of the actual processing, and generate execution result information indicating the value.
[0162] FIG. 11 is a diagram showing an example of a process in which an answer to a user is output in Modification 8. In Modification 8, an AI different from the AI used in generating an API request is referred to as the other AI. The other AI may be any model, such as a large-scale language model, similar to the AI used in generating an API request. The other AI may be a model of each method described in the example of the AI used in generating an API request. The other AI may exist outside the business support system 1, or may exist inside the business support system 1. Hereinafter, the AI used in generating an API request will be simply referred to as the AI.
[0163] For example, the output process execution unit 212 executes output processing related to output to a user based on the execution result information and the AI or other AI. For example, the output process execution unit 212 inputs input data including the execution result information to the AI or other AI. The AI or other AI calculates an embedded expression based on the input data. The method of calculating the embedded expression may be the same as the calculation when generating an API request described in the embodiment. The AI or other AI may calculate an embedded expression that indicates the characteristics of the input data based on its own parameters. The AI or other AI outputs output data including an answer corresponding to the calculated embedded expression.
[0164] In the example of Figure 11, the execution result information indicates a first value, which means that the processing requested by the API request was successful. Therefore, the AI or other AI recognizes that the processing requested by the API request was successful based on the embedded expression calculated based on the input data including the execution result information indicating the first value, and outputs output data including an answer indicating that the processing was successful (an answer such as "I created a function that turns the record with the oldest meeting date green" in the example at the bottom of Figure 3).
[0165] For example, if the execution result information indicates a second value meaning that the processing requested by the API request has failed, the AI or other AI can recognize that the processing requested by the API request has failed based on the embedded expression calculated based on input data including the execution result information indicating the second value, and output output data including an answer indicating that the processing has failed.
[0166] For example, the output process execution unit 212 executes output processing to display the answer indicated by the output data on the user terminal 40. In the example at the bottom of Fig. 3, the output process execution unit 212 transmits data indicating the answer indicated by the output data to the user terminal 40. The user terminal 40 updates the display of the display area A based on the data and displays the answer in the display area A. The answer may be converted into speech by the speech conversion server 10 and then output.
[0167] Note that the meaning of the value indicated by the execution result information may differ depending on the API. For this reason, the output process execution unit 212 may execute the output process further based on the API specification information. The API specification information defines the value indicated by the execution result information. For example, the API specification information may define that a certain value of the execution result information means the processing is successful, and that a different value of the execution result information means the processing is unsuccessful. For example, the output process execution unit 212 inputs input data including the API specification information to an AI or another AI. The AI or another AI outputs output data including an answer corresponding to an embedded expression calculated based on the input data including the API specification information.
[0168] The output processing execution unit 212 may also execute the output processing further based on a default prompt. For example, a default prompt such as "The execution result of the processing requested by the API request is XX. Please generate an answer for the user based on the execution result" may be stored in the data storage unit 200. The output processing execution unit 212 inputs input data including the default prompt to the AI or another AI. The AI or another AI outputs output data including an answer corresponding to the embedded expression calculated based on the input data including the default prompt. The output processing execution unit 212 may also input input data including other information, such as user input information, to the AI or another AI. The output processing execution unit 212 may also input input data including other information, such as information indicating what kind of API request was sent, to the AI or another AI.
[0169] The business support system 1 of the eighth modification executes an output process for output to a user based on the execution result information and the AI or other AI. This allows the business support system 1 to perform output according to the execution result of the process requested by the API request, thereby further improving user convenience. For example, even if a user has little or no knowledge of API requests, the AI or other AI can provide output in an easy-to-understand format, so the business support system 1 can improve user convenience.
[0170] The business support system 1 may include only the output processing functions described in Modification 8 (for example, the execution result information acquisition unit 211 and the output processing execution unit 212) without including the function of generating the API request described in the embodiment (for example, the API request generation unit 204, etc.). Such a business support system 1 can improve user convenience by providing output according to the execution result of the processing requested by the API request. Such a business support system 1 is also within the scope of the present disclosure.
[0171] [6-9. Variation 9] For example, the input data input to the AI of Variation 8 or other AIs may include information other than the information described in Variation 8. Variation 9 takes as an example a case where input data including pre-execution information regarding the state before the processing requested by the API request is executed is input to the AI or other AIs. The state in question is the state of the business support screen SC or the state of data managed by the business support server 30. Variation 9 takes as an example a case where the pre-execution information is a screenshot of the business support screen SC before the processing requested by the API request is executed.
[0172] The business support system 1 of the 9th modification includes a pre-execution information acquisition unit 213. The pre-execution information acquisition unit 213 acquires pre-execution information. For example, the pre-execution information acquisition unit 213 acquires pre-execution information from the user terminal 40 or another computer (for example, the business support server 30). If the pre-execution information is a screenshot of the business support screen SC as in the 9th modification, the user terminal 40 acquires a screenshot of the business support screen SC when the user selects button B or at any timing before that. The user terminal 40 transmits the pre-execution information, which is the screenshot, to the API request generation server 20. The pre-execution information acquisition unit 213 receives the pre-execution information from the user terminal 40.
[0173] The output process execution unit 212 of variant example 9 executes output processing further based on the pre-execution information. For example, the output process execution unit 212 inputs input data including the pre-execution information to the AI or another AI. The AI or another AI calculates an embedded expression based on not only the execution result information but also the pre-execution information. The embedded expression reflects not only the execution result information but also information such as a screenshot indicated by the pre-execution information. The AI or another AI outputs output data including an answer corresponding to the embedded expression calculated based on the input data including the pre-execution information.
[0174] For example, if a screenshot of a business support screen SC corresponds to pre-execution information, the AI or other AI is capable of image analysis. The AI or other AI performs image analysis of the screenshot and outputs output data including an answer corresponding to the embedded expression in the screenshot. For example, the AI or other AI may output output data based on the pre-execution information, thereby outputting output data including information regarding changes before and after the execution of the processing requested by the API request.
[0175] The business support system 1 of the ninth modification executes the output process further based on the pre-execution information. This allows the business support system 1 to perform output according to the state before the process requested by the API request is executed, thereby further improving user convenience.
[0176] [6-10. Variation 10] For example, in variants 8 and 9, the output process execution unit 212 executes the output process by acquiring output content information regarding the output content to the user. The output content information is all or part of the information contained in the output data from the AI or another AI. In variant 10, the output content information is assumed to be text rather than audio. Furthermore, the output to the user is assumed to be audio. Depending on the specific content indicated by the output content information, it may be difficult to convert it into audio, so delimiters may be inserted to make it easier to convert it into audio.
[0177] The business support system 1 of the tenth modification includes an output content correction unit 214. The output content correction unit 214 corrects the output content information for speech conversion. The correction for speech conversion is a pre-processing to improve the accuracy of speech conversion. For example, the correction for speech conversion may be a process of inserting a predetermined delimiter. A delimiter is a character used to separate sentences. A delimiter may be a symbol. For example, a delimiter may be a slash, a backslash, a comma, a period, a punctuation mark, or another symbol. A delimiter may be a character that is not classified as a symbol. Data indicating which characters are used as delimiters is assumed to be stored in advance in the data storage unit 200.
[0178] For example, the output content correction unit 214 inserts a delimiter at the end of a sentence in the text indicated by the output content information. The output content correction unit 214 may also insert a delimiter at the end of a paragraph in the text indicated by the output content information. The output content correction unit 214 transmits the output content information in which the predetermined delimiter has been inserted to the speech conversion server 10. The speech conversion server 10 receives the output content information in which the predetermined delimiter has been inserted from the API request generation server 20.
[0179] The correction method by the output content correction unit 214 is not limited to inserting delimiters. Corrections for speech conversion may be made based on known correction methods. The output content correction unit 214 may also make corrections to the output content information based on other correction methods. For example, the other correction methods may be normalization of text indicated by the output content information (e.g., expansion of numbers or abbreviations, deletion or replacement of special characters), word conversion based on context understanding (e.g., resolution of ambiguous words, linguistic analysis), or other methods.
[0180] The speech conversion unit of Modification 10 performs speech conversion based on the corrected output content information and outputs speech to the user. This is different from the embodiment in that the information to be converted into speech is the output content information corrected by the output content correction unit 214, but the process of converting text into speech itself may be the same as the embodiment.
[0181] The business support system 1 of the tenth modification executes output processing by acquiring output content information regarding the output content for the user. The business support system 1 corrects the output content information for speech conversion. The business support system 1 performs speech conversion based on the corrected output content information and outputs speech to the user. This enables the business support system 1 to improve the accuracy of speech conversion.
[0182] [6-11. Other variations] For example, two or more of the modifications 1 to 10 may be combined.
[0183] For example, a function described as being realized by the speech conversion server 10 may be realized by the API request generation server 20, the business support server 30, or the user terminal 40. A function described as being realized by the API request generation server 20 may be realized by the speech conversion server 10, the business support server 30, or the user terminal 40. A function described as being realized by the business support server 30 may be realized by the speech conversion server 10, the API request generation server 20, or the user terminal 40. A function described as being realized by the user terminal 40 may be realized by the speech conversion server 10, the API request generation server 20, or the business support server 30. Each function may be shared by multiple computers or may be realized by a single computer. [Explanation of symbols]
[0184] 1 Business support system, 10 Voice conversion server, 11, 21, 31, 41 Control unit, 12, 22, 32, 42 Memory unit, 13, 23, 33, 43 Communication unit, 20 API request generation server, 30 Business support server, 40 User terminal, 44 Operation unit, 45 Display unit, 46 Voice input unit, 47 Voice output unit, 100 Data storage unit, 101 Voice conversion unit, 200 Data storage unit, 201 User input information acquisition unit, 202 API specification information acquisition unit, 203 Default prompt acquisition unit, 204 API request generation unit, 205 API request transmission unit, 206 Display screen information acquisition unit, 207 User attribute information acquisition unit, 208 Correction content information acquisition unit, 209 Correction part request generation unit, 210 API request correction unit, 211 Execution result information acquisition unit, 212 Output processing execution unit, 213 Pre-execution information acquisition unit, 214 output content correction unit, 300 data storage unit, 301 business support unit, 400 data storage unit, 401 display control unit, 402 operation reception unit, A display area, B button, F input form, I icon, L list, N network, SC business support screen, DB1 API specification information database, DB2 business support database.
Claims
[Claim 1] A business support system capable of supporting a user's business, a user input information acquisition unit that acquires user input information related to the user's input; an API request generation unit that generates an API request for a destination API among a plurality of APIs related to the business support based on the user input information and AI; an API request sending unit that sends the API request to the destination API; Business support system including.
Citation Information
Patent Citations
Information processing device, information processing method, and program
JP2021111047A
Conversational business tools
JP2022184890A
Cited By
API processing server and API processing program
JP7845738B1
API processing server and API processing program
JP7886665B1