system

The system simplifies the use of Google Apps Script by allowing users to input Japanese commands in spreadsheet cells, generating and executing GAS programs, making it accessible to those without programming expertise.

JP2026045005APending Publication Date: 2026-03-12SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2026-03-12

AI Technical Summary

Technical Problem

Conventional technologies make it difficult for general users to easily master and use Google Apps Script (GAS) due to its complexity.

Method used

A system that includes a reception unit to input Japanese language commands into spreadsheet cells, a generation AI to analyze and generate a GAS program, a control unit to execute the program, and a provision unit to provide execution results, allowing users to easily utilize GAS functions by entering commands in Japanese.

Benefits of technology

Enables users without programming knowledge to easily perform tasks in GAS, such as copying cell values, performing calculations, and filtering data, by generating and executing GAS programs through natural language processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026045005000001_ABST
    Figure 2026045005000001_ABST
Patent Text Reader

Abstract

The system according to the embodiment aims to enable anyone to easily use GAS. [Solution] A system according to an embodiment includes a reception unit, a generation unit, a control unit, and a provision unit. The reception unit inputs Japanese language commands into cells of a spreadsheet. The generation unit analyzes the commands input by the reception unit and generates a GAS program. The control unit executes the GAS program generated by the generation unit. The provision unit provides the results of the execution by the control unit to a user.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology of the present disclosure relates to a system. [Background technology]

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]

[0004] Conventional technology has the problem that it is difficult for general users to master GAS and use it easily.

[0005] The system according to the embodiment aims to enable anyone to easily use GAS. [Means for solving the problem]

[0006] The system according to the embodiment includes a reception unit, a generation unit, a control unit, and a provision unit. The reception unit inputs Japanese language commands into cells of a spreadsheet. The generation unit analyzes the commands input by the reception unit and generates a GAS program. The control unit executes the GAS program generated by the generation unit. The provision unit provides the results of the execution by the control unit to a user. [Effects of the Invention]

[0007] The system according to the embodiment allows anyone to easily use GAS. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. DETAILED DESCRIPTION OF THE INVENTION

[0009] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

[0010] First, the terms used in the following description will be explained.

[0011] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, the processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), or a TPU (Tensor Processing Unit).

[0012] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.

[0013] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0014] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), and Bluetooth (registered trademark).

[0015] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

[0016] [First embodiment] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0017] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0018] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0019] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0020] The reception device 38 includes a touch panel 38A and a microphone 38B, and receives user input. The touch panel 38A detects contact with a pointer (for example, a pen or a finger) to receive user input by the touch of the pointer. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 (see FIG. 2) acquires the data indicating the user input.

[0021] Output device 40 includes a display 40A and a speaker 40B, and presents data to a user by outputting the data in a form of expression that the user can perceive (e.g., audio and / or text). Display 40A displays visible information such as text and images in accordance with instructions from processor 46. Speaker 40B outputs audio in accordance with instructions from processor 46. Camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0022] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

[0023] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0024] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0025] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0026] In the smart device 14, the specific processing is performed by the processor 46. The storage 50 stores a specific processing program 60. The specific processing program 60 is used together with the specific processing program 56 by the data processing system 10. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. Note that the smart device 14 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the specific processing unit 290 using these models.

[0027] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device (e.g., a generation server) may have the data generation model 58. In this case, the data processing device 12 obtains a processing result (prediction result, etc.) using the data generation model 58 by communicating with the server device having the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device owned by a user (e.g., a mobile phone, a robot, a home appliance, etc.). Next, an example of processing by the data processing system 10 according to the first embodiment will be described.

[0028] (Example 1) In an embodiment of the present invention, a system allows a user to simply enter Japanese text into a spreadsheet cell, and a generation AI creates and executes a Google® Apps Script (GAS) program, for example, that conforms to the user's instructions. In this system, a user enters instructions in Japanese into a spreadsheet cell, and the generation AI analyzes the instructions to generate a GAS program, which then automatically executes the program on the spreadsheet. This allows even users who are not proficient with GAS to easily utilize GAS functions. For example, if a user enters an instruction such as "copy the value of cell A1 to cell B1" into a spreadsheet cell, the instruction is sent to the generation AI. The generation AI analyzes the input instruction and generates a corresponding GAS program. The generated GAS program is automatically executed on the spreadsheet, copying the value of cell A1 to cell B1. In this way, processing is performed according to the user's instructions. This mechanism allows even users who are not proficient with GAS to easily utilize GAS functions. Even users without complex programming knowledge can utilize GAS functions simply by entering instructions in Japanese into spreadsheet cells. For example, various processes can be easily performed, such as copying cell values, performing calculations, and filtering data. In addition, the execution results of the generated GAS program are fed back to the user. For example, the execution results are displayed on the spreadsheet, and error messages are displayed. This allows the user to check the execution results and make corrections or re-execute them as necessary. This means that a GAS program can be generated and the execution results provided simply by entering commands in Japanese into spreadsheet cells.

[0029] A GAS generation system according to an embodiment includes a receiving unit, a generating unit, a control unit, and a providing unit. The receiving unit inputs a Japanese command into a cell of a spreadsheet. For example, a user inputs a command such as "copy the value of cell A1 to cell B1." The generating unit uses a generation AI to analyze the command input by the receiving unit and generate a GAS program. The generation AI analyzes the Japanese command using, for example, natural language processing technology and generates a corresponding GAS program. For example, the generation AI generates a corresponding GAS program based on the command "copy the value of cell A1 to cell B1." The control unit automatically executes the GAS program generated by the generating unit on the spreadsheet. For example, the generated GAS program copies the value of cell A1 to cell B1. The providing unit provides the result of execution by the control unit to the user. For example, the execution result may be displayed on the spreadsheet, or an error message may be displayed. This allows the user to check the execution result and make corrections or re-execute the program as necessary. As a result, the GAS generation system according to the embodiment can generate a GAS program and provide the execution results simply by the user inputting instructions in Japanese into cells of a spreadsheet.

[0030] The reception unit can transmit Japanese language commands entered into spreadsheet cells to the generation AI. For example, when a user enters a command such as "copy the value of cell A1 to cell B1" into a spreadsheet cell, the reception unit transmits the command to the generation AI. The generation AI analyzes the entered command and generates a corresponding GAS program. As a result, the reception unit transmits the command to the generation AI, enabling command analysis and program generation. Some or all of the above-described processing in the reception unit may be performed, for example, using AI or may be performed without using AI. For example, the reception unit transmits Japanese language commands entered into spreadsheet cells to the generation AI, and the generation AI analyzes the command and generates a GAS program.

[0031] The generation unit can use a generation AI to analyze input Japanese commands and generate a GAS program. For example, the generation unit uses a generation AI to analyze Japanese commands input into spreadsheet cells and generate a corresponding GAS program. The generation AI, for example, uses natural language processing technology to analyze Japanese commands and generate a GAS program. For example, the generation AI generates a corresponding GAS program based on the command "copy the value of cell A1 to cell B1." This improves the accuracy of command analysis and program generation by using the generation AI. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit uses a generation AI to analyze Japanese commands input into spreadsheet cells and generate a GAS program.

[0032] The control unit can automatically execute the generated GAS program on a spreadsheet. For example, the control unit automatically executes the GAS program generated by the generation unit on a spreadsheet. The generated GAS program, for example, performs a process of copying the value of cell A1 to cell B1. This automatically executes the generated program, thereby reducing the user's effort. Some or all of the above-described processes in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit automatically executes the GAS program generated by the generation unit on a spreadsheet and performs processes according to the user's instructions.

[0033] The providing unit can display execution results and error messages to the user. The providing unit, for example, provides the user with the results executed by the control unit. The execution results are displayed, for example, on a spreadsheet, or error messages are displayed. This allows the user to check the execution results and make corrections or re-executions as necessary. Some or all of the above-described processing in the providing unit may be performed, for example, using AI, or may be performed without using AI. For example, the providing unit provides the user with the results executed by the control unit, allowing the user to check the execution results.

[0034] The reception unit can analyze the user's past command history and select the optimal reception method. The reception unit, for example, prioritizes reception of commands that the user has frequently used in the past. The reception unit can also predict and accept commands that will be used in a specific time period based on the user's past command history. The reception unit can also analyze patterns of commands that the user has used in the past and suggest the optimal reception method. In this way, by analyzing the past command history, the optimal reception method can be provided to the user. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit analyzes the user's past command history and selects the optimal reception method.

[0035] The reception unit may perform filtering based on the user's current project or field of interest when receiving a command. For example, the reception unit may preferentially receive commands related to a project currently underway by the user. The reception unit may also filter and receive related commands based on the user's field of interest. The reception unit may also filter and receive commands based on fields in which the user has previously shown interest. In this way, by filtering commands based on the user's project or field of interest, highly relevant commands can be preferentially received. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may perform filtering based on the user's current project or field of interest when receiving a command.

[0036] When receiving a command, the reception unit can prioritize receiving highly relevant commands in consideration of the user's geographical location information. For example, when the user is in a specific location, the reception unit can prioritize receiving commands related to that location. Furthermore, when the user is traveling, the reception unit can prioritize receiving commands related to traveling. Furthermore, when the user is at home, the reception unit can prioritize receiving commands related to work to be done at home. In this way, highly relevant commands can be prioritized by taking the user's geographical location information into consideration. Some or all of the above-described processing in the reception unit may be performed using AI, for example, or may be performed without using AI. For example, when receiving a command, the reception unit prioritizes receiving highly relevant commands in consideration of the user's geographical location information.

[0037] The reception unit can analyze the user's social media activity and receive related commands when receiving a command. The reception unit can receive related commands based on, for example, information shared by the user on social media. The reception unit can also receive related commands based on the activity of accounts the user follows on social media. The reception unit can also receive related commands based on topics in which the user has shown interest on social media. In this way, by analyzing the user's social media activity, related commands can be preferentially received. Some or all of the above-described processing in the reception unit can be performed using, for example, AI, or can be performed without using AI. For example, the reception unit can analyze the user's social media activity and receive related commands when receiving a command.

[0038] The generation unit can adjust the level of detail of the generated program based on the importance of the instruction when generating the program. For example, the generation unit generates a program that includes detailed comments and explanations for important instructions. The generation unit can also generate a concise program for instructions with low importance. The generation unit can also strengthen the error checking function of the program according to the importance. In this way, by adjusting the level of detail of the generated program based on the importance of the instruction, a detailed program can be generated for important instructions. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit adjusts the level of detail of the generated program based on the importance of the instruction when generating the program.

[0039] The generation unit can apply different generation algorithms depending on the category of instructions when generating a program. For example, the generation unit generates a program by applying an optimal algorithm to instructions related to data processing. The generation unit can also generate a program by applying a visually attractive algorithm to instructions related to a user interface. The generation unit can also generate a program by applying an algorithm that prioritizes safety to instructions related to security. This enables efficient program generation by applying the optimal generation algorithm depending on the category of instructions. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit applies different generation algorithms depending on the category of instructions when generating a program.

[0040] The generation unit can determine the generation priority based on the submission time of the instructions when generating a program. For example, the generation unit prioritizes program generation for instructions whose deadline is approaching. The generation unit can also postpone program generation for instructions whose submission time is further away. The generation unit can also adjust the program generation schedule according to the submission time. In this way, by determining the generation priority based on the submission time of the instructions, efficient program generation according to deadlines is possible. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit determines the generation priority based on the submission time of the instructions when generating a program.

[0041] The generation unit can adjust the order of generation based on the relevance of instructions when generating a program. For example, the generation unit generates a program by processing highly relevant instructions with priority. The generation unit can also generate a program by leaving less relevant instructions for later generation. The generation unit can also optimize the order of program generation according to the relevance of instructions. In this way, by adjusting the order of generation based on the relevance of instructions, highly relevant instructions can be processed with priority. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit adjusts the order of generation based on the relevance of instructions when generating a program.

[0042] When executing a program, the control unit can analyze the user's past execution history and select the optimal execution method. For example, the control unit preferentially selects an execution method that the user has used successfully in the past. The control unit can also suggest the optimal execution method based on the user's past execution history. The control unit can also select the optimal execution method by avoiding execution methods that the user has used unsuccessfully in the past. In this way, the optimal execution method can be provided by analyzing the user's past execution history. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, when executing a program, the control unit analyzes the user's past execution history and selects the optimal execution method.

[0043] The control unit can customize the execution means based on the user's current project status when the program is executed. For example, the control unit preferentially provides execution means related to the user's current project. The control unit can also suggest the optimal execution means according to the user's project status. If the user is currently working on multiple projects, the control unit can also customize the execution means for each project. This allows the optimal execution method to be provided by customizing the execution means according to the user's project status. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit customizes the execution means based on the user's current project status when the program is executed.

[0044] When executing a program, the control unit can select an optimal execution method by taking into account the user's geographical location information. For example, when the user is in a specific location, the control unit can preferentially provide an execution method related to that location. Furthermore, when the user is traveling, the control unit can preferentially provide an execution method related to travel. Furthermore, when the user is at home, the control unit can preferentially provide an execution method related to work to be done at home. In this way, by taking into account the user's geographical location information, it is possible to provide a highly relevant execution method. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, when executing a program, the control unit selects an optimal execution method by taking into account the user's geographical location information.

[0045] The control unit can analyze the user's social media activity and suggest a means of execution when the program is executed. The control unit can suggest a relevant means of execution based on, for example, information shared by the user on social media. The control unit can also suggest a relevant means of execution based on the activity of accounts the user follows on social media. The control unit can also suggest a relevant means of execution based on topics in which the user has shown interest on social media. In this way, by analyzing the user's social media activity, relevant means of execution can be provided. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit can analyze the user's social media activity and suggest a means of execution when the program is executed.

[0046] The providing unit can select the optimal display method by referring to the user's past operation history when displaying the execution result. For example, the providing unit preferentially provides display methods that the user has used favorably in the past. The providing unit can also suggest the optimal display method from the user's past operation history. The providing unit can also select the optimal display method by excluding display methods that the user has avoided in the past. In this way, the optimal display method can be provided by referring to the user's past operation history. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit selects the optimal display method by referring to the user's past operation history when displaying the execution result.

[0047] The providing unit can customize the display content based on the user's current project status when displaying the execution results. For example, the providing unit preferentially displays execution results related to the user's current project. The providing unit can also suggest optimal display content according to the user's project status. If the user is currently working on multiple projects, the providing unit can also customize the display content for each project. This makes it possible to provide optimal display content by customizing the display content according to the user's project status. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit customizes the display content based on the user's current project status when displaying the execution results.

[0048] The providing unit can select the optimal display method by taking into account the user's geographical location information when displaying the execution results. For example, when the user is in a specific location, the providing unit can prioritize displaying execution results related to that location. Furthermore, when the user is traveling, the providing unit can also prioritize displaying execution results related to travel. Furthermore, when the user is at home, the providing unit can also prioritize displaying execution results related to work performed at home. In this way, by taking into account the user's geographical location information, it is possible to provide a highly relevant display method. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, when displaying the execution results, the providing unit selects the optimal display method by taking into account the user's geographical location information.

[0049] The providing unit can analyze the user's social media activity and suggest display content when displaying the execution results. The providing unit displays related execution results based on, for example, information shared by the user on social media. The providing unit can also display related execution results based on the activity of accounts the user follows on social media. The providing unit can also display related execution results based on topics in which the user has shown interest on social media. In this way, related display content can be provided by analyzing the user's social media activity. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit analyzes the user's social media activity and suggests display content when displaying the execution results.

[0050] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.

[0051] The reception unit can analyze the user's voice commands and send them to the generation AI. For example, if the user commands by voice, "Copy the value of cell A1 to cell B1," the reception unit converts the voice into text and sends it to the generation AI. The reception unit can also learn the user's speech patterns to improve the accuracy of analyzing voice commands. Furthermore, the reception unit can also feed back the results of analyzing the voice commands to the user and ask for confirmation. This enables operations using voice commands, improving user convenience.

[0052] The control unit can request confirmation from the user before executing the generated GAS program. For example, the control unit can display the contents of the generated program to the user and request confirmation as to whether or not to execute the program. The control unit can also modify parts of the program based on the contents confirmed by the user. Furthermore, the control unit can learn the user's confirmation history and optimize the confirmation process from the next time onward. This allows the user to run the generated program with peace of mind.

[0053] The providing unit can generate graphs and charts to visually display the execution results. For example, if the execution results are numerical data, the data is displayed as a graph or chart. The providing unit can also display the execution results in a format specified by the user. Furthermore, the providing unit can display a summary of the execution results so that the user can quickly understand the results. This improves the visibility of the execution results, making it easier for the user to understand the results.

[0054] The generator can add security check functions to the generated program. For example, if the generated program accesses external data, it checks the access permissions. The generator can also check whether there are any potential security risks within the program. Furthermore, the generator can display security warnings to the user and correct the program as necessary. This strengthens the security of the generated program, allowing users to use it with peace of mind.

[0055] The providing unit can display the execution results in cooperation with other applications. For example, the execution results can be sent by email or notified to a chat application. The providing unit can also save the execution results in cloud storage and share them with other users. Furthermore, the providing unit can reflect the execution results in a calendar application to help with schedule management. This expands the scope of use of the execution results and improves user convenience.

[0056] The generation unit can apply a user's custom template to the program to be generated. For example, the program can be generated based on a template preset by the user. The generation unit can also generate a program according to a format or style specified by the user. Furthermore, the generation unit can learn the user's custom template and reflect it in subsequent program generation. This allows the generation of a program that meets the user's preferences, improving user satisfaction.

[0057] The processing flow of the first embodiment will be briefly explained below.

[0058] Step 1: The reception unit inputs a command in Japanese into a cell in the spreadsheet. For example, the user inputs a command such as "Copy the value in cell A1 to cell B1." Step 2: The generation unit uses the generation AI to analyze the command entered by the reception unit and generate a GAS program. The generation AI analyzes the Japanese command using, for example, natural language processing technology and generates a corresponding GAS program. For example, based on the command "copy the value of cell A1 to cell B1," it generates a corresponding GAS program. Step 3: The control unit automatically executes the GAS program generated by the generation unit on the spreadsheet. For example, the generated GAS program copies the value of cell A1 to cell B1. Step 4: The providing unit provides the results of the execution performed by the control unit to the user. For example, the execution results may be displayed on a spreadsheet or an error message may be displayed. This allows the user to check the execution results and make corrections or re-execute the execution if necessary.

[0059] (Example 2) In an embodiment of the present invention, a system allows a user to simply enter Japanese text into a spreadsheet cell, and a generation AI creates and executes a Google Apps Script (GAS) program, for example, that conforms to the user's instructions. In this system, a user enters instructions in Japanese into a spreadsheet cell, and the generation AI analyzes the instructions to generate a GAS program, which then automatically executes the program on the spreadsheet. This allows even users who are not proficient with GAS to easily utilize GAS functions. For example, if a user enters an instruction such as "copy the value of cell A1 to cell B1" into a spreadsheet cell, the instruction is sent to the generation AI. The generation AI analyzes the input instruction and generates a corresponding GAS program. The generated GAS program is automatically executed on the spreadsheet, copying the value of cell A1 to cell B1. In this way, processing is performed according to the user's instructions. This mechanism allows even users who are not proficient with GAS to easily utilize GAS functions. Even users without complex programming knowledge can utilize GAS functions simply by entering instructions in Japanese into spreadsheet cells. For example, various processes can be easily performed, such as copying cell values, performing calculations, and filtering data. In addition, the execution results of the generated GAS program are fed back to the user. For example, the execution results are displayed on the spreadsheet, and error messages are displayed. This allows the user to check the execution results and make corrections or re-execute them as necessary. This means that a GAS program can be generated and the execution results provided simply by entering commands in Japanese into spreadsheet cells.

[0060] A GAS generation system according to an embodiment includes a receiving unit, a generating unit, a control unit, and a providing unit. The receiving unit inputs a Japanese command into a cell of a spreadsheet. For example, a user inputs a command such as "copy the value of cell A1 to cell B1." The generating unit uses a generation AI to analyze the command input by the receiving unit and generate a GAS program. The generation AI analyzes the Japanese command using, for example, natural language processing technology and generates a corresponding GAS program. For example, the generation AI generates a corresponding GAS program based on the command "copy the value of cell A1 to cell B1." The control unit automatically executes the GAS program generated by the generating unit on the spreadsheet. For example, the generated GAS program copies the value of cell A1 to cell B1. The providing unit provides the result of execution by the control unit to the user. For example, the execution result may be displayed on the spreadsheet, or an error message may be displayed. This allows the user to check the execution result and make corrections or re-execute the program as necessary. As a result, the GAS generation system according to the embodiment can generate a GAS program and provide the execution results simply by the user inputting instructions in Japanese into cells of a spreadsheet.

[0061] The reception unit can transmit Japanese language commands entered into spreadsheet cells to the generation AI. For example, when a user enters a command such as "copy the value of cell A1 to cell B1" into a spreadsheet cell, the reception unit transmits the command to the generation AI. The generation AI analyzes the entered command and generates a corresponding GAS program. As a result, the reception unit transmits the command to the generation AI, enabling command analysis and program generation. Some or all of the above-described processing in the reception unit may be performed, for example, using AI or may be performed without using AI. For example, the reception unit transmits Japanese language commands entered into spreadsheet cells to the generation AI, and the generation AI analyzes the command and generates a GAS program.

[0062] The generation unit can use a generation AI to analyze input Japanese commands and generate a GAS program. For example, the generation unit uses a generation AI to analyze Japanese commands input into spreadsheet cells and generate a corresponding GAS program. The generation AI, for example, uses natural language processing technology to analyze Japanese commands and generate a GAS program. For example, the generation AI generates a corresponding GAS program based on the command "copy the value of cell A1 to cell B1." This improves the accuracy of command analysis and program generation by using the generation AI. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit uses a generation AI to analyze Japanese commands input into spreadsheet cells and generate a GAS program.

[0063] The control unit can automatically execute the generated GAS program on a spreadsheet. For example, the control unit automatically executes the GAS program generated by the generation unit on a spreadsheet. The generated GAS program, for example, performs a process of copying the value of cell A1 to cell B1. This automatically executes the generated program, thereby reducing the user's effort. Some or all of the above-described processes in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit automatically executes the GAS program generated by the generation unit on a spreadsheet and performs processes according to the user's instructions.

[0064] The providing unit can display execution results and error messages to the user. The providing unit, for example, provides the user with the results executed by the control unit. The execution results are displayed, for example, on a spreadsheet, or error messages are displayed. This allows the user to check the execution results and make corrections or re-executions as necessary. Some or all of the above-described processing in the providing unit may be performed, for example, using AI, or may be performed without using AI. For example, the providing unit provides the user with the results executed by the control unit, allowing the user to check the execution results.

[0065] The reception unit can estimate the user's emotions and adjust the timing of receiving commands based on the estimated user emotions. For example, if the user is feeling stressed, the reception unit can temporarily delay receiving commands to provide time for the user to relax. Furthermore, if the user is concentrating, the reception unit can immediately accept commands and quickly start processing. Furthermore, if the user is tired, the reception unit can delay receiving commands and display a message encouraging the user to take a break. This allows the user's stress to be reduced by adjusting the timing of receiving commands according to the user's emotions. The emotion estimation is realized using an emotion estimation function, such as an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the reception unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the reception unit can estimate the user's emotions and adjust the timing of receiving commands based on the estimated user emotions.

[0066] The reception unit can analyze the user's past command history and select the optimal reception method. The reception unit, for example, prioritizes reception of commands that the user has frequently used in the past. The reception unit can also predict and accept commands that will be used in a specific time period based on the user's past command history. The reception unit can also analyze patterns of commands that the user has used in the past and suggest the optimal reception method. In this way, by analyzing the past command history, the optimal reception method can be provided to the user. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit analyzes the user's past command history and selects the optimal reception method.

[0067] The reception unit may perform filtering based on the user's current project or field of interest when receiving a command. For example, the reception unit may preferentially receive commands related to a project currently underway by the user. The reception unit may also filter and receive related commands based on the user's field of interest. The reception unit may also filter and receive commands based on fields in which the user has previously shown interest. In this way, by filtering commands based on the user's project or field of interest, highly relevant commands can be preferentially received. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may perform filtering based on the user's current project or field of interest when receiving a command.

[0068] The reception unit can estimate the user's emotions and determine the priority of commands to be received based on the estimated user emotions. For example, when the user is nervous, the reception unit can prioritize simple commands. Furthermore, when the user is relaxed, the reception unit can prioritize complex commands. Furthermore, when the user is in a hurry, the reception unit can prioritize commands that can be processed quickly. By determining the priority of commands according to the user's emotions, commands appropriate to the user's situation can be processed preferentially. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the reception unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the reception unit can estimate the user's emotions and determine the priority of commands to be received based on the estimated user emotions.

[0069] When receiving a command, the reception unit can prioritize receiving highly relevant commands in consideration of the user's geographical location information. For example, when the user is in a specific location, the reception unit can prioritize receiving commands related to that location. Furthermore, when the user is traveling, the reception unit can prioritize receiving commands related to traveling. Furthermore, when the user is at home, the reception unit can prioritize receiving commands related to work to be done at home. In this way, highly relevant commands can be prioritized by taking the user's geographical location information into consideration. Some or all of the above-described processing in the reception unit may be performed using AI, for example, or may be performed without using AI. For example, when receiving a command, the reception unit prioritizes receiving highly relevant commands in consideration of the user's geographical location information.

[0070] The reception unit can analyze the user's social media activity and receive related commands when receiving a command. The reception unit can receive related commands based on, for example, information shared by the user on social media. The reception unit can also receive related commands based on the activity of accounts the user follows on social media. The reception unit can also receive related commands based on topics in which the user has shown interest on social media. In this way, by analyzing the user's social media activity, related commands can be preferentially received. Some or all of the above-described processing in the reception unit can be performed using, for example, AI, or can be performed without using AI. For example, the reception unit can analyze the user's social media activity and receive related commands when receiving a command.

[0071] The generation unit can estimate the user's emotions and adjust the expression method of the generated program based on the estimated user's emotions. For example, if the user is relaxed, the generation unit generates a program including easy-to-understand comments. Furthermore, if the user is in a hurry, the generation unit can generate a concise program. Furthermore, if the user is excited, the generation unit can generate a visually appealing program. By adjusting the expression method of the program according to the user's emotions, it is possible to generate a program that is easy for the user to understand. The emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI may be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit estimates the user's emotions and adjusts the expression method of the generated program based on the estimated user's emotions.

[0072] The generation unit can adjust the level of detail of the generated program based on the importance of the instruction when generating the program. For example, the generation unit generates a program that includes detailed comments and explanations for important instructions. The generation unit can also generate a concise program for instructions with low importance. The generation unit can also strengthen the error checking function of the program according to the importance. In this way, by adjusting the level of detail of the generated program based on the importance of the instruction, a detailed program can be generated for important instructions. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit adjusts the level of detail of the generated program based on the importance of the instruction when generating the program.

[0073] The generation unit can apply different generation algorithms depending on the category of instructions when generating a program. For example, the generation unit generates a program by applying an optimal algorithm to instructions related to data processing. The generation unit can also generate a program by applying a visually attractive algorithm to instructions related to a user interface. The generation unit can also generate a program by applying an algorithm that prioritizes safety to instructions related to security. This enables efficient program generation by applying the optimal generation algorithm depending on the category of instructions. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit applies different generation algorithms depending on the category of instructions when generating a program.

[0074] The generation unit can estimate the user's emotions and adjust the length of the generated program based on the estimated user emotions. For example, if the user is in a hurry, the generation unit can generate a short, to-the-point program. Furthermore, if the user is relaxed, the generation unit can generate a longer program with detailed explanations. Furthermore, if the user is excited, the generation unit can generate a program with visually stimulating effects. By adjusting the length of the program according to the user's emotions, a program suited to the user's situation can be generated. The emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or without AI. For example, the generation unit can estimate the user's emotions and adjust the length of the generated program based on the estimated user emotions.

[0075] The generation unit can determine the generation priority based on the submission time of the instructions when generating a program. For example, the generation unit prioritizes program generation for instructions whose deadline is approaching. The generation unit can also postpone program generation for instructions whose submission time is further away. The generation unit can also adjust the program generation schedule according to the submission time. In this way, by determining the generation priority based on the submission time of the instructions, efficient program generation according to deadlines is possible. Some or all of the above-mentioned processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit determines the generation priority based on the submission time of the instructions when generating a program.

[0076] The generation unit can adjust the order of generation based on the relevance of instructions when generating a program. For example, the generation unit generates a program by processing highly relevant instructions with priority. The generation unit can also generate a program by leaving less relevant instructions for later generation. The generation unit can also optimize the order of program generation according to the relevance of instructions. In this way, by adjusting the order of generation based on the relevance of instructions, highly relevant instructions can be processed with priority. Some or all of the above-described processing in the generation unit may be performed using, for example, AI, or may be performed without using AI. For example, the generation unit adjusts the order of generation based on the relevance of instructions when generating a program.

[0077] The control unit can estimate the user's emotions and adjust the program execution method based on the estimated user emotions. For example, if the user is nervous, the control unit can provide a simple, highly visible display method. Furthermore, if the user is relaxed, the control unit can provide a display method including detailed information. Furthermore, if the user is in a hurry, the control unit can provide a display method that focuses on the main points. This allows the program execution method to be adjusted according to the user's emotions, thereby providing an optimal execution method for the user. The emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI may be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or without AI. For example, the control unit can estimate the user's emotions and adjust the program execution method based on the estimated user emotions.

[0078] When executing a program, the control unit can analyze the user's past execution history and select the optimal execution method. For example, the control unit preferentially selects an execution method that the user has used successfully in the past. The control unit can also suggest the optimal execution method based on the user's past execution history. The control unit can also select the optimal execution method by avoiding execution methods that the user has used unsuccessfully in the past. In this way, the optimal execution method can be provided by analyzing the user's past execution history. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, when executing a program, the control unit analyzes the user's past execution history and selects the optimal execution method.

[0079] The control unit can customize the execution means based on the user's current project status when the program is executed. For example, the control unit preferentially provides execution means related to the user's current project. The control unit can also suggest the optimal execution means according to the user's project status. If the user is currently working on multiple projects, the control unit can also customize the execution means for each project. This allows the optimal execution method to be provided by customizing the execution means according to the user's project status. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit customizes the execution means based on the user's current project status when the program is executed.

[0080] The control unit can estimate the user's emotions and determine the execution priority of programs based on the estimated user's emotions. For example, if the user is nervous, the control unit can prioritize executing a simple program. Furthermore, if the user is relaxed, the control unit can prioritize executing a complex program. Furthermore, if the user is in a hurry, the control unit can prioritize executing a program that can be processed quickly. By determining the execution priority according to the user's emotions, it is possible to prioritize executing a program that is appropriate for the user's situation. The emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI may be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the control unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the control unit can estimate the user's emotions and determine the execution priority of programs based on the estimated user's emotions.

[0081] When executing a program, the control unit can select an optimal execution method by taking into account the user's geographical location information. For example, when the user is in a specific location, the control unit can preferentially provide an execution method related to that location. Furthermore, when the user is traveling, the control unit can preferentially provide an execution method related to travel. Furthermore, when the user is at home, the control unit can preferentially provide an execution method related to work to be done at home. In this way, by taking into account the user's geographical location information, it is possible to provide a highly relevant execution method. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, when executing a program, the control unit selects an optimal execution method by taking into account the user's geographical location information.

[0082] The control unit can analyze the user's social media activity and suggest a means of execution when the program is executed. The control unit can suggest a relevant means of execution based on, for example, information shared by the user on social media. The control unit can also suggest a relevant means of execution based on the activity of accounts the user follows on social media. The control unit can also suggest a relevant means of execution based on topics in which the user has shown interest on social media. In this way, by analyzing the user's social media activity, relevant means of execution can be provided. Some or all of the above-described processing in the control unit may be performed using, for example, AI, or may be performed without using AI. For example, the control unit can analyze the user's social media activity and suggest a means of execution when the program is executed.

[0083] The providing unit can estimate the user's emotions and adjust the display method of the execution results based on the estimated user emotions. For example, if the user is nervous, the providing unit can provide a simple, highly visible display method. Furthermore, if the user is relaxed, the providing unit can provide a display method including detailed information. Furthermore, if the user is in a hurry, the providing unit can provide a display method that focuses on the main points. By adjusting the display method according to the user's emotions, it is possible to provide an optimal display method for the user. The emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI may be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the providing unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the providing unit can estimate the user's emotions and adjust the display method of the execution results based on the estimated user emotions.

[0084] The providing unit can select the optimal display method by referring to the user's past operation history when displaying the execution result. For example, the providing unit preferentially provides display methods that the user has used favorably in the past. The providing unit can also suggest the optimal display method from the user's past operation history. The providing unit can also select the optimal display method by excluding display methods that the user has avoided in the past. In this way, the optimal display method can be provided by referring to the user's past operation history. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit selects the optimal display method by referring to the user's past operation history when displaying the execution result.

[0085] The providing unit can customize the display content based on the user's current project status when displaying the execution results. For example, the providing unit preferentially displays execution results related to the user's current project. The providing unit can also suggest optimal display content according to the user's project status. If the user is currently working on multiple projects, the providing unit can also customize the display content for each project. This makes it possible to provide optimal display content by customizing the display content according to the user's project status. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit customizes the display content based on the user's current project status when displaying the execution results.

[0086] The providing unit can estimate the user's emotions and prioritize the execution results based on the estimated user emotions. For example, when the user is nervous, the providing unit can prioritize displaying important execution results. Furthermore, when the user is relaxed, the providing unit can prioritize displaying detailed execution results. Furthermore, when the user is in a hurry, the providing unit can prioritize displaying execution results that highlight the main points. This allows the execution results appropriate for the user's situation to be provided by prioritizing the execution results according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, an emotion engine or a generation AI. The generation AI may be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-described processing in the providing unit may be performed using, for example, an AI, or may be performed without using an AI. For example, the providing unit can estimate the user's emotions and prioritize the execution results based on the estimated user emotions.

[0087] The providing unit can select the optimal display method by taking into account the user's geographical location information when displaying the execution results. For example, when the user is in a specific location, the providing unit can prioritize displaying execution results related to that location. Furthermore, when the user is traveling, the providing unit can also prioritize displaying execution results related to travel. Furthermore, when the user is at home, the providing unit can also prioritize displaying execution results related to work performed at home. In this way, by taking into account the user's geographical location information, it is possible to provide a highly relevant display method. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, when displaying the execution results, the providing unit selects the optimal display method by taking into account the user's geographical location information.

[0088] The providing unit can analyze the user's social media activity and suggest display content when displaying the execution results. The providing unit displays related execution results based on, for example, information shared by the user on social media. The providing unit can also display related execution results based on the activity of accounts the user follows on social media. The providing unit can also display related execution results based on topics in which the user has shown interest on social media. In this way, related display content can be provided by analyzing the user's social media activity. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit analyzes the user's social media activity and suggests display content when displaying the execution results. === Hard Collateral 1-1 === Each of the multiple elements, including the above-mentioned reception unit, generation unit, control unit, and provision unit, is realized, for example, by at least one of the smart device 14 and the data processing device 12. For example, the reception unit receives user instructions using a touch panel 38A or microphone 38B of the smart device 14. The generation unit is realized by the specific processing unit 290 of the data processing device 12, analyzes the instructions using a generation AI, and generates a GAS program. The control unit is realized by the control unit 46A of the smart device 14, and automatically executes the generated GAS program on a spreadsheet. The provision unit provides the execution results to the user using a display 40A or speaker 40B of the smart device 14. === Hard Collateral 1-2 === Each of the multiple elements including the above-described reception unit, generation unit, control unit, and provision unit is realized, for example, by at least one of the smart glasses 214 and the data processing device 12. For example, the reception unit receives a user's command using the microphone 238 of the smart glasses 214. The generation unit is realized by the specific processing unit 290 of the data processing device 12, analyzes the command using a generation AI, and generates a GAS program. The control unit is realized by the control unit 46A of the smart glasses 214, and automatically executes the generated GAS program on a spreadsheet. The provision unit provides the execution result to the user using the speaker 240 of the smart glasses 214. === Hard Collateral 1-3 === Each of the multiple elements including the above-mentioned reception unit, generation unit, control unit, and provision unit is realized, for example, by at least one of the headset type terminal 314 and the data processing device 12. For example, the reception unit receives a user's command using the microphone 238 of the headset type terminal 314. The generation unit is realized by the specific processing unit 290 of the data processing device 12, analyzes the command using a generation AI, and generates a GAS program. The control unit is realized by the control unit 46A of the headset type terminal 314, and automatically executes the generated GAS program on a spreadsheet. The provision unit provides the execution result to the user using the speaker 240 of the headset type terminal 314. === Hard Collateral 1-4 === Each of the multiple elements including the above-mentioned reception unit, generation unit, control unit, and provision unit is realized, for example, by at least one of the robot 414 and the data processing device 12. For example, the reception unit receives a user's command using the microphone 238 of the robot 414. The generation unit is realized by the specific processing unit 290 of the data processing device 12, analyzes the command using a generation AI, and generates a GAS program. The control unit is realized by the control unit 46A of the robot 414, and automatically executes the generated GAS program on a spreadsheet. The provision unit provides the execution result to the user using the speaker 240 of the robot 414.

[0089] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.

[0090] The reception unit can analyze the user's voice commands and send them to the generation AI. For example, if the user commands by voice, "Copy the value of cell A1 to cell B1," the reception unit converts the voice into text and sends it to the generation AI. The reception unit can also learn the user's speech patterns to improve the accuracy of analyzing voice commands. Furthermore, the reception unit can also feed back the results of analyzing the voice commands to the user and ask for confirmation. This enables operations using voice commands, improving user convenience.

[0091] The generation unit can estimate the user's emotions and adjust the difficulty of the generated program based on the estimated user emotions. For example, if the user is feeling stressed, a simple program can be generated. If the user is relaxed, a complex program can be generated. Furthermore, if the user is excited, a challenging program can be generated. In this way, by adjusting the difficulty of the program according to the user's emotions, a program suited to the user's situation can be provided.

[0092] The control unit can request confirmation from the user before executing the generated GAS program. For example, the control unit can display the contents of the generated program to the user and request confirmation as to whether or not to execute the program. The control unit can also modify parts of the program based on the contents confirmed by the user. Furthermore, the control unit can learn the user's confirmation history and optimize the confirmation process from the next time onward. This allows the user to run the generated program with peace of mind.

[0093] The providing unit can generate graphs and charts to visually display the execution results. For example, if the execution results are numerical data, the data is displayed as a graph or chart. The providing unit can also display the execution results in a format specified by the user. Furthermore, the providing unit can display a summary of the execution results so that the user can quickly understand the results. This improves the visibility of the execution results, making it easier for the user to understand the results.

[0094] The reception unit can estimate the user's emotions and adjust the method of receiving commands based on the estimated user emotions. For example, if the user is feeling stressed, simple commands can be given priority. Also, if the user is relaxed, complex commands can be given priority. Furthermore, if the user is in a hurry, commands that can be processed quickly can be given priority. In this way, by adjusting the method of receiving commands according to the user's emotions, commands appropriate to the user's situation can be received.

[0095] The generator can add security check functions to the generated program. For example, if the generated program accesses external data, it checks the access permissions. The generator can also check whether there are any potential security risks within the program. Furthermore, the generator can display security warnings to the user and correct the program as necessary. This strengthens the security of the generated program, allowing users to use it with peace of mind.

[0096] The control unit can estimate the user's emotions and adjust the program execution speed based on the estimated user emotions. For example, if the user is in a hurry, the program execution speed can be increased. Alternatively, if the user is relaxed, the program can be executed at a normal speed. Furthermore, if the user is feeling stressed, the execution speed can be decreased to make it easier for the user to check the results. In this way, by adjusting the program execution speed according to the user's emotions, it is possible to provide an execution method suited to the user's situation.

[0097] The providing unit can display the execution results in cooperation with other applications. For example, the execution results can be sent by email or notified to a chat application. The providing unit can also save the execution results in cloud storage and share them with other users. Furthermore, the providing unit can reflect the execution results in a calendar application to help with schedule management. This expands the scope of use of the execution results and improves user convenience.

[0098] The reception unit can estimate the user's emotions and customize the command reception interface based on the estimated user's emotions. For example, if the user is nervous, a simple and intuitive interface can be provided. If the user is relaxed, an interface including detailed options can be provided. Furthermore, if the user is excited, a visually appealing interface can be provided. In this way, by customizing the command reception interface according to the user's emotions, an interface suitable for the user's situation can be provided.

[0099] The generation unit can apply a user's custom template to the program to be generated. For example, the program can be generated based on a template preset by the user. The generation unit can also generate a program according to a format or style specified by the user. Furthermore, the generation unit can learn the user's custom template and reflect it in subsequent program generation. This allows the generation of a program that meets the user's preferences, improving user satisfaction.

[0100] The processing flow of the second embodiment will be briefly explained below.

[0101] Step 1: The reception unit inputs a command in Japanese into a cell in the spreadsheet. For example, the user inputs a command such as "Copy the value in cell A1 to cell B1." Step 2: The generation unit uses the generation AI to analyze the command entered by the reception unit and generate a GAS program. The generation AI analyzes the Japanese command using, for example, natural language processing technology and generates a corresponding GAS program. For example, based on the command "copy the value of cell A1 to cell B1," it generates a corresponding GAS program. Step 3: The control unit automatically executes the GAS program generated by the generation unit on the spreadsheet. For example, the generated GAS program copies the value of cell A1 to cell B1. Step 4: The providing unit provides the results of the execution performed by the control unit to the user. For example, the execution results may be displayed on a spreadsheet or an error message may be displayed. This allows the user to check the execution results and make corrections or re-execute the execution if necessary.

[0102] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0103] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> Examples of the generative AI include a neural network (NN) and a neural network (NN). The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image (e.g., still image data or video data). The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in one or more data formats of voice data, text data, image data, etc. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The specification processing unit 290 performs the above-mentioned specification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI ​​other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and may perform various processes, but is not limited to these examples. The AI ​​may also be an AI agent. When the processing of each of the above-mentioned parts is performed by an AI, the processing may be performed in part or entirely by the AI, but is not limited to these examples. The processing performed by an AI including the generative AI may be replaced with rule-based processing, and rule-based processing may be replaced with processing performed by an AI including the generative AI.

[0104] Furthermore, the processing by the data processing system 10 described above is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart device 14, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart device 14. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information necessary for processing from the smart device 14 or an external device, and the smart device 14 acquires or collects information necessary for processing from the data processing device 12 or an external device.

[0105] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0106] [Second embodiment] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0107] 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0108] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

[0109] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.

[0110] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0111] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0112] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0113] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0114] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0115] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0116] In the smart glasses 214, the specific processing is performed by the processor 46. A specific processing program 60 is stored in the storage 50. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. The smart glasses 214 also have a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform processing similar to that of the specific processing unit 290 using these models.

[0117] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0118] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0119] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt including an instruction, as well as inference data such as audio data indicating speech, text data indicating text, and image data indicating an image (e.g., still image data or video data). The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in one or more data formats, such as audio data, text data, and image data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation models 58 include AIs other than the generation AI. Examples of AIs other than the generation AI include, but are not limited to, linear regression, logistic regression, decision trees, random forests, support vector machines (SVMs), k-means clustering, convolutional neural networks (CNNs), recurrent neural networks (RNNs), generative adversarial networks (GANs), and naive Bayes. These AIs can perform various types of processing, but are not limited to these examples. The AI ​​may also be an AI agent. When the processing of each of the above-described parts is performed by an AI, the processing may be performed in part or entirely by the AI, but is not limited to these examples. Processing performed by an AI, including the generation AI, may be replaced with rule-based processing, and rule-based processing may be replaced with processing performed by an AI, including the generation AI.

[0120] The data processing system 210 according to the second embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 210 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart glasses 214, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart glasses 214. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the smart glasses 214 or an external device, etc., and the smart glasses 214 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0121] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0122] [Third embodiment] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0123] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.

[0124] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

[0125] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.

[0126] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0127] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0128] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0129] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0130] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0131] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0132] In the headset type terminal 314, the identification process is performed by the processor 46. A identification program 60 is stored in the storage 50. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as a control unit 46A in accordance with the identification program 60 executed on the RAM 48. Note that the headset type terminal 314 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the identification processing unit 290 using these models.

[0133] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0134] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0135] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt including an instruction, as well as inference data such as audio data indicating speech, text data indicating text, and image data indicating an image (e.g., still image data or video data). The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in one or more data formats, such as audio data, text data, and image data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation models 58 include AIs other than the generation AI. Examples of AIs other than the generation AI include, but are not limited to, linear regression, logistic regression, decision trees, random forests, support vector machines (SVMs), k-means clustering, convolutional neural networks (CNNs), recurrent neural networks (RNNs), generative adversarial networks (GANs), and naive Bayes. These AIs can perform various types of processing, but are not limited to these examples. The AI ​​may also be an AI agent. When the processing of each of the above-described parts is performed by an AI, the processing may be performed in part or entirely by the AI, but is not limited to these examples. Processing performed by an AI, including the generation AI, may be replaced with rule-based processing, and rule-based processing may be replaced with processing performed by an AI, including the generation AI.

[0136] The data processing system 310 according to the third embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 310 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the headset type terminal 314, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the headset type terminal 314. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the headset type terminal 314 or an external device, etc., and the headset type terminal 314 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0137] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0138] [Fourth embodiment] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[0139] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[0140] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

[0141] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

[0142] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0143] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS image sensor or a CCD image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0144] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0145] The control object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[0146] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0147] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0148] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0149] In the robot 414, the processor 46 performs the identification process. The storage 50 stores the identification program 60. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as the control unit 46A in accordance with the identification program 60 executed on the RAM 48. The robot 414 also has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform the same process as the identification processing unit 290 using these models.

[0150] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0151] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

[0152] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt including an instruction, as well as inference data such as audio data indicating speech, text data indicating text, and image data indicating an image (e.g., still image data or video data). The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in one or more data formats, such as audio data, text data, and image data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation models 58 include AIs other than the generation AI. Examples of AIs other than the generation AI include, but are not limited to, linear regression, logistic regression, decision trees, random forests, support vector machines (SVMs), k-means clustering, convolutional neural networks (CNNs), recurrent neural networks (RNNs), generative adversarial networks (GANs), and naive Bayes. These AIs can perform various types of processing, but are not limited to these examples. The AI ​​may also be an AI agent. When the processing of each of the above-described parts is performed by an AI, the processing may be performed in part or entirely by the AI, but is not limited to these examples. Processing performed by an AI, including the generation AI, may be replaced with rule-based processing, and rule-based processing may be replaced with processing performed by an AI, including the generation AI.

[0153] The data processing system 410 according to the fourth embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 410 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the robot 414, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the robot 414. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the robot 414 or an external device, etc., and the robot 414 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0154] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0155] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[0156] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion encompasses both emotions and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[0157] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[0158] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[0159] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, cars, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on speech emotion recognition and brain physiological signal analysis systems for emotions, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the area called "reaction," where sensation is dominant. The right half of the emotion map lists emotions belonging to the area called "situation," where situational awareness is dominant.

[0160] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[0161] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[0162] In the above embodiment, an example was given in which a specific process is performed by one computer 22, but the technology disclosed herein is not limited to this, and distributed processing of the specific process may be performed by multiple computers including computer 22.

[0163] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

[0164] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[0165] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[0166] The hardware resource for executing a specific process can be any of the following types of processors: A processor, for example, is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. A processor also includes a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[0167] The hardware resource that executes the specific process may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific process may be a single processor.

[0168] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[0169] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[0170] In the above example, the first to fourth embodiments have been described separately, but some or all of these embodiments may be combined. The smart device 14, smart glasses 214, headset terminal 314, and robot 414 are merely examples, and they may be combined, or other devices may be used. In the above example, the first and second embodiments have been described separately, but they may be combined.

[0171] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[0172] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[0173] [Explanation of symbols]

[0174] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot

Claims

1. A reception section where Japanese commands are entered into the cells of a spreadsheet, a generation unit that analyzes the command input by the reception unit and generates a GAS program; A control unit that executes the GAS program generated by the generation unit; a providing unit that provides a result executed by the control unit to a user. system.

2. The reception unit Send Japanese commands entered into spreadsheet cells to the generation AI The system of claim 1 .

3. The generation unit Using generative AI, the input Japanese commands are analyzed and a GAS program is generated. The system of claim 1 .

4. The control unit Automatically run the generated GAS program on a spreadsheet The system of claim 1 .

5. The providing unit Displaying execution results and error messages to the user The system of claim 1 .

6. The reception unit Estimates the user's emotions and adjusts the timing of command acceptance based on the estimated user emotions. The system of claim 1 .

7. The reception unit Analyze the user's past command history and select the optimal reception method The system of claim 1 .

8. The reception unit Filter incoming orders based on the user's current projects and interests The system of claim 1 .

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A