WO2021161629A1 - Automatic program code generation system, and program - Google Patents

Automatic program code generation system, and program Download PDF

Info

Publication number
WO2021161629A1
WO2021161629A1 PCT/JP2020/045006 JP2020045006W WO2021161629A1 WO 2021161629 A1 WO2021161629 A1 WO 2021161629A1 JP 2020045006 W JP2020045006 W JP 2020045006W WO 2021161629 A1 WO2021161629 A1 WO 2021161629A1
Authority
WO
WIPO (PCT)
Prior art keywords
execution operation
case
program code
association
execution
Prior art date
Application number
PCT/JP2020/045006
Other languages
French (fr)
Japanese (ja)
Inventor
基光 白川
Original Assignee
ソプラ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソプラ株式会社 filed Critical ソプラ株式会社
Publication of WO2021161629A1 publication Critical patent/WO2021161629A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven

Definitions

  • the present invention relates to a program code automatic generation system and a program suitable for automatically generating a business automatic processing program for realizing business assistance.
  • the information processing device of Patent Document 1 has an acquisition unit that acquires user message information, an extraction unit that extracts task information related to the user from the acquired message information, and a task information from the extracted task information.
  • An identification unit that identifies a person in charge and a related person, and a classification unit that classifies the task information into first task information in which the user is the person in charge, or second task information in which the user is the related person. It is characterized by including a registration unit for registering the classified first or second task information in a database, and an output unit for outputting the first or second task information with reference to the database.
  • an object of the present invention is to execute the business in order to automatically execute the business in the system on the computer side. It is an object of the present invention to provide a program code automatic generation system and a program which can be extremely easily and automatically generated without human intervention when generating the program code of the above.
  • the program code automatic generation system has a reception means that accepts the input of text data via voice or an input terminal, and an instruction operation by morphologically analyzing the text data received by the reception means.
  • a reception means that accepts the input of text data via voice or an input terminal, and an instruction operation by morphologically analyzing the text data received by the reception means.
  • the extraction means for extracting the case component consisting of at least the target case and the end point case to be dependent, and the execution action table in which the actual execution action instruction for the reference instruction action is associated with three or more levels of association.
  • the actual execution operation target for the target case is associated with the target case table having three or more levels of association
  • the actual execution operation destination for the reference end point case is associated with the three or more levels of association.
  • the storage means for storing the extracted end point case, the execution operation instruction corresponding to the extracted instruction operation, the execution operation target corresponding to the extracted target case, and the extracted end point case.
  • the search means for searching the execution operation destination by referring to the degree of association of the execution action table, the target case table, and the end point case table stored by the above storage means, and the basic syntax of the program code by the above search means.
  • the program code for executing the execution operation specified in the execution operation instruction for the execution operation target to the execution operation destination can be obtained. It is characterized by including a code generating means for generating.
  • the program code automatic generation program relates to an instruction operation by performing a morphological analysis of a reception step that accepts input of text data via voice or an input terminal and the text data received in the reception step.
  • An extraction step that extracts a case component consisting of at least the target case and the end point case to be received, an execution operation table in which the actual execution operation instruction for the reference instruction operation is associated with three or more levels of association, and a reference
  • the actual execution operation target for the target case is associated with the target case table having three or more levels of association
  • the actual execution operation destination for the reference end point case is associated with the three or more levels of association.
  • the execution action instruction corresponding to the above-extracted instruction action the execution action target corresponding to the above-extracted target case, and the execution corresponding to the above-extracted end point case.
  • the execution operation target is assigned to the execution operation destination.
  • the computer is made to execute the code generation step of generating the program code for executing the execution operation specified in the execution operation instruction.
  • FIG. 1 is a block diagram of the program code automatic generation system according to the embodiment.
  • 2 (a) and 2 (b) are schematic views showing an example of the configuration of the program code automatic generation device 1.
  • FIG. 3 is a flowchart of a program code automatic generation system to which the present invention is applied.
  • FIG. 4 is a diagram showing an example in which a user who installs this system sets and registers an execution destination in advance for each company.
  • FIG. 5 is a diagram showing an example of an execution operation table.
  • FIG. 6 is a diagram showing another example of the execution operation table shown in FIG.
  • FIG. 7 is a diagram showing an example of an accusative case table.
  • FIG. 8 is a diagram showing another example of the accusative table shown in FIG.
  • FIG. 9 is a diagram showing an example of an end point case table.
  • FIG. 10 is a diagram showing another example of the end point case table shown in FIG.
  • FIG. 11 is a diagram for explaining a case where machine learning by artificial intelligence is used in searching the basic syntax of the program code.
  • FIG. 12 is a diagram for explaining a method of generating a confirmation statement for confirming the input contents to the user.
  • FIG. 1 is a schematic diagram showing the overall configuration of the program code automatic generation system 100 according to the present embodiment.
  • the program code automatic generation system 100 is mainly used for generating program code for realizing business assistance (for example, business automation processing) such as routine work.
  • the program code automatic generation system 100 automatically generates a program code for executing a business, and thereby performs each business in the company (for example, delivery of mail, collection of progress of workers, file management, file transfer, work). Management etc.) can be performed automatically on the computer.
  • the program code automatic generation system 100 can set the automatic generation of the program code by voice or text, and a user who does not have specialized knowledge such as a system administrator (for example, the program code automatic generation system 100). Even for users who manage their business by using them), it is possible to easily realize automatic generation of program code for automatically performing new business on a computer.
  • the program code automatic generation system 100 includes a program code automatic generation device 1, and the user may use the program code automatic generation device 1.
  • the program code automatic generation system 100 may include a terminal 2 connected to the program code automatic generation device 1 via, for example, a communication network 4, and the user may use the program code automatic generation device 1 via the terminal 2.
  • the program code automatic generation system 100 includes, for example, a server 3 connected to the program code automatic generation device 1 via a communication network 4, and a user can perform various information with the server 3 via the program code automatic generation device 1 or a terminal 2. Each means may be realized by sending and receiving.
  • FIG. 2A is a schematic diagram showing an example of the configuration of the program code automatic generation device 1.
  • the program code automatic generation device 1 for example, a known electronic device such as a personal computer (PC), a smartphone, or a tablet terminal is used.
  • the program code automatic generation device 1 includes, for example, a housing 10, a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a storage unit 104, and an I / F 105 to It includes 107, an input unit 108, and a notification unit 109.
  • Each configuration 101 to 107 is connected by an internal bus 110.
  • the CPU 101 controls the entire program code automatic generation device 1.
  • the ROM 102 stores the operation code of the CPU 101.
  • the RAM 103 is a work area used during the operation of the CPU 101.
  • the storage unit 104 stores various information such as processing data.
  • an HDD Hard Disk Drive
  • an SSD Solid State Drive
  • the I / F 105 is an interface for transmitting and receiving various information to and from the terminal 2, the server 3, the communication network 4, and the like.
  • the I / F 106 is an interface for transmitting and receiving various information to and from the input unit 108.
  • the I / F 107 is an interface for transmitting and receiving various information to and from the notification unit 109.
  • a sound collecting device such as a microphone may be used.
  • a user who uses the program code automatic generation device 1 can input various information such as text data and voice via, for example, the input unit 108.
  • the notification unit 109 displays various information such as display data stored in the storage unit 104, the processing status of the program code automatic generation device 1, and the like.
  • a display may be used as the notification unit 109, or a speaker may be used, for example.
  • the notification unit 109 may include the input unit 108.
  • FIG. 2B is a schematic diagram showing an example of the function of the program code automatic generation device 1.
  • the program code automatic generation device 1 may include an acquisition unit 11 and a calculation unit 12, and may include, for example, an execution unit 13, a storage unit 14, an output unit 15, and an intent storage unit 16.
  • Each function shown in FIG. 2B is realized by the CPU 101 executing a program stored in the storage unit 104 or the like using the RAM 103 as a work area.
  • a part of each function may be controlled by artificial intelligence.
  • the "artificial intelligence" may be based on any well-known artificial intelligence technology.
  • the acquisition unit 11 accepts the input of text data via voice or an input terminal.
  • the acquisition unit 11 acquires text data input from the user via, for example, the terminal 2 or the input unit 108.
  • the acquisition unit 11 uses a known voice recognition technology (for example, voice recognition technology) to generate text data from the voice. get.
  • voice recognition technology for example, a cloud-type voice recognition technology may be used, for example, via the communication network 4.
  • the calculation unit 12 refers to the database and executes various processing operations and calculations based on the acquired text data.
  • the arithmetic unit 12 extracts individual components of the sentence, including verbs, nouns, case components, etc., by performing morphological analysis on the received conversational sentence.
  • the calculation unit 12 performs a processing operation of assigning an execution operation instruction corresponding to an instruction operation extracted from the received text data, an execution operation target corresponding to the target case, and an execution operation destination corresponding to the end point case.
  • the calculation unit 12 executes a processing operation for determining an intent corresponding to the received text data.
  • the arithmetic unit 12 refers to the storage unit 14 and extracts the basic syntax of the program code. Further, the arithmetic unit 12 generates a program code by substituting the assigned execution operation instruction, execution operation target, and execution operation destination into the basic syntax of the extracted program code.
  • the execution unit 13 executes business processing based on the program code generated by the calculation unit 12.
  • business processing for example, routine work such as sending an email to the person in charge based on the content and deadline of the task, work management, updating the task progress history, etc. can be mentioned, and the content that can execute the business processing information as a program on the computer is used. Be done.
  • the storage unit 14 temporarily stores text data composed of conversational sentences acquired through the acquisition unit 11.
  • the text data stored in the storage unit 14 may be read out and updated under the control of the calculation unit 12, the execution unit 13, and the like.
  • the storage unit 14 holds at least three tables, an execution operation table, a target case table, and an end point case table. Further, the storage unit 14 may hold a code table.
  • the output unit 15 outputs various information regarding the operation executed by the program code.
  • the display data is notified so that the user can recognize it via the notification unit 109, the terminal 2, or the like.
  • the output unit 15 outputs display data or the like to the terminal 2 or the like via the I / F 105, and outputs display data or the like to the notification unit 109 via the I / F 107.
  • ⁇ Intent storage 16> One or two or more intents are stored in the intent storage unit 16.
  • the intent may be stored in the intent storage unit 16 in association with the information that identifies the business process.
  • the information that identifies the business process is usually an action name described later, but the format is not limited to these.
  • Correspondence also includes, for example, the case where the intent has information that identifies the business process.
  • Terminal 2 for example, a known electronic device such as a personal computer, a smartphone, a tablet terminal, or a wearable terminal is used.
  • the terminal 2 may have at least a part of the same configuration and functions as the program code automatic generation device 1 described above, for example.
  • a plurality of terminals 2 may be provided, for example, and each terminal 2 may be connected to the program code automatic generation device 1 via the communication network 4.
  • the server 3 stores the above-mentioned various information.
  • Various information sent from the program code automatic generation device 1 and the like is stored in the server 3 via, for example, the communication network 4.
  • the server 3 stores the same information as the storage unit 104, and may transmit and receive various information to and from the program code automatic generation device 1 and the like via the communication network 4. That is, in the program code automatic generation system 100, the server 3 may be used instead of the program code automatic generation device 1 or the storage unit 104 of the program code automatic generation device 1.
  • the communication network 4 is an Internet network or the like to which the program code automatic generation device 1 is connected via a communication circuit.
  • the communication network 4 may be composed of a so-called optical fiber communication network. Further, the communication network 4 may be realized by a known communication network such as a wireless communication network in addition to the wired communication network.
  • the conversational sentence is accepted in step S11. Specifically, when a conversational sentence is acquired by the acquisition unit 11 as voice data, text data is generated using a known voice recognition technique (for example, a phoneme recognition technique). Further, when the text data converted into electronic data is acquired by the acquisition unit 11, it will be used as it is.
  • the text data converted into electronic data may include, for example, e-mail texts, information bulletin boards used inside or outside the company, and postings on various sites as they are.
  • the acquisition unit 11 may acquire text data at each timing of input by the user, or may acquire, for example, a plurality of text data accumulated in a certain period at once.
  • a method of generating text data from non-text format data input via the terminal 2 or the input unit 108 a known technique can be used.
  • the text data acquired in this way is temporarily stored in the storage unit 14.
  • step S12 the conversational sentence as text data acquired in S11 and temporarily stored in the storage unit 14 is read out, and this is morphologically analyzed.
  • This morphological analysis is mainly performed by the arithmetic unit 12.
  • the morphological analysis technique any well-known morphological analysis technique may be used.
  • step S12 for example, for the text data "Register the product name, A5-7853K", the instruction operation consisting of "Register the accusative case consisting of the product name
  • the text "Transfer this month's daily report of Taro Yamada to Chief Tokugawa” has the accusative case of "Taro Yamada
  • text data can be extracted through a combination of case components consisting of the accusative case and the end point case that are related to the verb consisting of the instruction action.
  • the case component is a noun phrase required to form a sentence with a verb (instruction action).
  • the case in the case component is a function that selectively requests a combination of nouns or noun phrases necessary for forming a sentence according to the lexical meaning of the verb, and is called case control.
  • the case grammar that is the rationale for this case component is based on a single sentence that is associated with the deep case (object case, conditional case, tool case, start point case, end point case, time case, etc.) that represents the substance. It is a theory that analyzes sentences as being. Then, it can be said that the noun (phrase) required as the deep case of the sentence by the verb is a case component necessary for supplementing the realization of the proposition by the verb.
  • a case component is not just a noun phrase, but a noun phrase that a verb is involved in to realize its proposition.
  • the case component is an element of nouns (including noun phrases) that are related to a verb, which can be an action start condition for realizing a proposition by a verb that defines an instructional action.
  • the accusative case here means the execution target of the proposition by the verb that defines the instruction action.
  • the verb "transfer” is subject to "file A” as the accusative case.
  • the end point rating defines the place where the execution target defined by the target case is reflected, the destination to benefit from the execution target, and the destination to which the execution target is sent.
  • the verb "send” is subject to "file A” as the accusative case, and this is sent with Taro Yamada as the end point. This end point is "Taro Yamada”.
  • step S13 the process proceeds to step S13, and the intent consisting of the execution operation instruction, the execution operation target, the execution operation destination, etc. is determined from the instruction operation and the case component analyzed through the morphological analysis.
  • the arithmetic unit 12 corresponds to the execution action command corresponding to the extracted instruction action, the execution action target corresponding to the extracted accusative case, and the extracted end point case for the conversation sentence morphologically analyzed in step S12.
  • the execution operation destination is searched by referring to each degree of association between the execution operation table, the target case table, and the end point case table.
  • the execution operation instruction here is a wording for instructing the execution operation in the actual program code, and corresponds to the actual database registration, writing to a file, transfer, deletion, monitor display, etc.
  • the execution operation target indicates the target for executing this execution operation instruction, and may be an invoice, a daily report, a specification file, data, an email, or the like, a product name, various events, and information. It may be (for example, working hours, inventory, etc.).
  • the execution operation destination indicates the execution destination for executing the execution operation instruction.
  • the user who installs this system may set and register the execution destination in advance for each company.
  • "Taro Yamada's PC”, “Tokugawa section chief's PC”, “Development department's shared PC”, etc. may be registered as execution operation destinations in the in-house LAN.
  • a business partner who has crossed the internal LAN but is outside the company may also be registered as "a person in charge B of the business partner A company" via an external public communication network.
  • the end point case table is created, and at the time of this creation, each terminal device in the communication network (for example, "PC of Taro Yamada", “PC of Chief Tokugawa", An operation of pre-registering "a shared PC of the development unit” or the like) as an execution operation destination for each reference in the end point case table may be executed.
  • step S14 the association analysis of the program code is performed.
  • This association analysis of the program code performs an operation of extracting the basic syntax of the program code.
  • step S15 the program code is created.
  • step S14 as described above, the basic syntax of the program code is merely extracted, and by substituting the target of the actual processing operation and the wording that defines each condition necessary for completing the processing operation.
  • the program code is complete. Therefore, in step S15, the execution operation target is assigned to the execution operation destination by substituting the words defining the execution operation target, the execution operation destination, and the execution operation instruction into the basic syntax of the extracted program code. To generate the program code for executing the execution operation specified in the execution operation instruction.
  • a program can be automatically generated based on the user's intention included in the conversational sentence received in step S11.
  • the program code After the program code is completed in this way, it may be provided to the user or displayed via the notification unit 109, or the completed program code may be executed via the execution unit 13. You may do so. That is, according to the present invention, it is possible to execute the automatically generated program code as it is. Therefore, when included from the process from step S11, the user can automatically generate a program code incorporating the intention by issuing a conversational sentence, and the generated program code is put into execution as it is. be able to. This means that when the user speaks the action he / she wants the system to perform in a conversational sentence or inputs text data corresponding to the action, the action incorporating the intention is executed as it is based on the automatically generated program code. It becomes possible.
  • step S13 the detailed method of determining the intent in step S13 and analyzing the association of the program code in step S14 will be described.
  • the actual execution action instruction for the reference instruction action is associated with the execution action table having three or more levels of association, and the actual execution action target for the reference target accusative case is three.
  • Each of these tables is not limited to being organized in a visually recognizable table or matrix, but simply consists of trained data in which a machine learning model of artificial intelligence is stored, and a set thereof. You may be.
  • FIGS. 5 and 6 show an example of the execution operation table among these.
  • this execution operation table it is premised that three or more levels of association between the reference instruction operation and the execution operation instruction are set in advance.
  • the input data is, for example, reference instruction operations P01 to P03.
  • the reference instruction operation P01 is "sent”
  • the reference instruction operation P02 is "up”
  • the reference instruction operation P03 is "erase”, and the like.
  • the reference instruction operations P01 to P03 as such input data are linked to the execution operation instruction as output.
  • Such a reference instruction operation is associated with three or more stages of execution operation instructions (for example, "open file”, “transfer”, “print”, “delete”, etc.) as the output solution. They are linked to each other throughout the degree. Reference instruction actions are arranged on the left side via this degree of association, and each execution operation instruction is arranged on the right side via this degree of association.
  • the degree of association indicates the degree of relevance to which execution operation instruction is highly related to the reference instruction operation arranged on the left side. In other words, this degree of association is an index indicating which execution action instruction is likely to be associated with each instruction action, and the accuracy in selecting the most probable execution action instruction from the instruction actions. Is shown. In the example of FIG. 5, w13 to w19 are shown as the degree of association.
  • w13 to w19 are shown in 10 stages as shown in Table 1 below, and the closer to 10 points, the higher the degree of relevance of each combination as an intermediate node to the execution operation instruction as an output. On the contrary, the closer to one point, the lower the degree of relevance of each combination as an intermediate node to the execution operation instruction as an output.
  • the degree of association w13 to w19 of three or more stages shown in FIG. 5 is acquired in advance. That is, in determining the actual search solution, a past data set is accumulated as to which of the processing operation and the execution operation instruction is adopted and evaluated, and these are analyzed and analyzed to show in FIG. Create a degree of association.
  • This analysis may be performed by artificial intelligence.
  • the analysis is performed based on the past data set.
  • the degree of association connected to this execution operation instruction is set higher, and if there are many cases of "printing", this execution operation is performed. Set a higher degree of association that leads to commands.
  • "Open file” and "Print” are linked, but from the previous case, the degree of association of w13 that leads to "Open file” is set to 7 points, and "Print”.
  • the degree of association of w14 that leads to is set to 2 points.
  • this degree of association may be composed of the nodes of the neural network in artificial intelligence. That is, the weighting coefficient for the output of the node of this neural network corresponds to the above-mentioned degree of association.
  • the network is not limited to a neural network, and may be composed of all decision-making factors constituting artificial intelligence.
  • a processing operation is input as input data, an execution operation instruction is output as output data, at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn.
  • the above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
  • Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, the execution operation instruction will be actually searched from the instruction operation. In such a case, the instruction operation extracted in step S12 is newly acquired. Based on the newly acquired instruction operation, the execution operation instruction corresponding to this is searched. In such a case, the degree of association shown in FIG. 5 (Table 1) acquired in advance is referred to. For example, when the newly acquired instruction operation is the same as or similar to P02, "transfer” is associated with w15 and “print” is associated with the association degree w16 via the association degree. In such a case, "transfer” with the highest degree of association is selected as the optimum solution.
  • the synonym dictionary may be stored in the storage unit 14.
  • a synonym dictionary is a dictionary related to synonyms.
  • a word possessed by the reference instruction operation and one or more synonyms of the word are registered for each one or more reference instruction operations stored in the storage unit 14. Specifically, for example, “send”, “deliver”, and the like may be registered in association with the reference instruction operation "transfer”. Then, through this synonym dictionary, it is possible to determine whether or not the newly acquired instruction operation is similar to the reference instruction operation. If the reference instruction action is "transfer” and the newly acquired instruction action is "send”, it corresponds to "deliver” because it is registered in advance as similar in the synonym dictionary. It becomes possible to judge that it should be done.
  • FIGS. 7 and 8 show an example in which the actual execution operation target for the reference target case uses the target case table associated with three or more levels of association.
  • the input data is, for example, reference target cases P01 to P03.
  • the reference target case P04 is "mail at 12:00 on December 3”
  • the reference target case P05 is "delivery note”
  • the reference target case P06 is "weekly report”.
  • the reference target cases P04 to P06 as such input data are connected to the execution operation target as output.
  • Such a reference target case is for an execution operation target as this output solution (for example, "mail received at 14:00 on December 7", “invoice”, “daily report”, “specification”, etc.). They are linked to each other through three or more levels of linking.
  • the reference target cases are arranged on the left side via this degree of association, and each execution operation target is arranged on the right side via this degree of association.
  • the degree of association indicates the degree of relevance to which execution operation target is highly related to the reference target cases arranged on the left side. In other words, this degree of association is an index showing what kind of accusative case is likely to be associated with the accusative case, and the accuracy in selecting the most probable accusative case from the accusative case. Is shown. In the example of FIG. 7, w13 to w19 are shown as the degree of association. Of course, the example of the degree of association in FIG. 7 is not necessarily the same as that in FIG.
  • the degree of association w13 to w19 of three or more stages shown in FIG. 7 is acquired in advance. That is, in determining the actual search solution, it is shown in FIG. 7 by accumulating past data sets and analyzing and analyzing which of the accusative case and the execution operation target was adopted and evaluated. Create a degree of association.
  • the "invoice" is judged to have the highest suitability as the execution operation target for the reference target case P04 and evaluated.
  • the degree of association with the accusative case for reference becomes stronger.
  • This analysis may be performed by artificial intelligence.
  • the analysis is performed based on the past data set.
  • the degree of association connected to this execution operation target is set higher, and there are many cases of "invoice”. Is set to a higher degree of association connected to this execution operation target.
  • the degree of association of w13 is set to 7 points, and the degree of association of w14 that leads to the "daily report” is set to 2 points.
  • this degree of association may be composed of the nodes of the neural network in artificial intelligence.
  • the processing operation is input as input data
  • the execution operation instruction is output as output data
  • at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn.
  • the above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
  • Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, we will actually search for the execution operation target from the accusative case. In such a case, the accusative case extracted in step S12 is newly acquired. Based on the newly acquired accusative case, the execution operation target corresponding to this is searched. In such a case, the degree of association shown in FIG. 7 (Table 1) acquired in advance is referred to. For example, when the newly acquired accusative case is the same as or similar to P05, the "invoice" is associated with the association degree w15 and the "daily report” is associated with the association degree w16 through the association degree. In such a case, the "invoice" with the highest degree of association is selected as the optimum solution.
  • the synonym dictionary may be stored in the storage unit 14.
  • a word possessed by the accusative case and one or more synonyms of the word are registered for each one or more accusative cases stored in the storage unit 14.
  • a "business report”, a "business diary”, and the like may be registered in association with the reference target case "daily report”.
  • the synonym dictionary it is possible to determine whether or not the newly acquired accusative case is similar to the accusative case for reference. If the accusative case for reference is "daily report” and the newly acquired accusative case is "business diary”, it corresponds to "daily report” because it is registered in advance as similar in the synonym dictionary. It becomes possible to judge.
  • FIGS. 9 and 10 show an example in which the actual execution operation target for the reference end point case uses the end point case table associated with three or more levels of association.
  • the degree of association between the reference end point case and the execution operation destination is set in advance.
  • the input data is, for example, reference end point cases P07 to P09.
  • the reference end point rating P07 is "Taro Yamada's PC”
  • the reference end point rating P08 is "Doi section chief's PC”
  • the reference end point rating P09 is "person in charge C of business partner A”.
  • the reference end point cases P07 to P09 as such input data are connected to the execution operation destination as the output.
  • Such reference end points are the execution operation destinations as this output solution (for example, "Taro Yamada's PC”, “Tokugawa's PC”, “Business partner A's person in charge B", “Common to the development department”. It is linked to each other through three or more levels of linking to "PC” etc.).
  • the reference end point cases are arranged on the left side via this degree of association, and each execution operation destination is arranged on the right side via this degree of association.
  • the degree of association indicates the degree of relevance to which execution operation destination is highly related to the reference end point case arranged on the left side. In other words, this degree of association is an index indicating what execution operation destination each end point case is likely to be associated with, and the accuracy in selecting the most probable execution operation destination from the end point case. Is shown. In the example of FIG. 9, w13 to w19 are shown as the degree of association. Of course, the example of the degree of association in FIG. 9 is not necessarily the same as that in FIGS. 5 and 7.
  • the degree of association w13 to w19 of three or more stages shown in FIG. 9 is acquired in advance.
  • the past data set which is adopted or evaluated as the end point case or the execution operation destination, is accumulated, and these are analyzed and analyzed to show in FIG. Create a degree of association.
  • This analysis may be performed by artificial intelligence.
  • the analysis is performed based on the past data set.
  • the degree of association connected to this execution operation destination is set higher, and there are many cases of "person in charge B of business partner A”.
  • the degree of association connected to this execution operation destination is set higher.
  • the degree of association of w14 connected to "the person in charge B of the business partner A company” is set to 2 points.
  • this degree of association may be composed of the nodes of the neural network in artificial intelligence.
  • a processing operation is input as input data, an execution operation instruction is output as output data, at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn.
  • the above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
  • Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, we will actually search for the execution operation destination from the end point case. In such a case, the end point case extracted in step S12 is newly acquired. Based on the newly acquired end point case, the execution operation destination corresponding to this is searched. In such a case, the degree of association shown in FIG. 9 (Table 1) acquired in advance is referred to. For example, if the newly acquired end point rating is the same as or similar to P08, the "PC of Tokugawa section chief" is w15 and the "person in charge B of business partner A" is linked through the degree of association. It is associated with degree w16.
  • the “PC of Tokugawa section chief” with the highest degree of association is selected as the optimum solution.
  • an output solution to which the arrows are not connected may be selected, and any other output solution may be selected in any other priority as long as it is based on the degree of association.
  • the synonym dictionary may be stored in the storage unit 14.
  • a word possessed by the end point case and one or more synonyms of the word are registered for each one or more reference end point cases stored in the storage unit 14. Through this synonym dictionary, it may be determined whether or not the newly acquired end point case is similar to the reference end point case.
  • the program code is created by extracting the basic syntax of the highly relevant program code based on the execution operation target, the execution operation target, and the execution operation destination searched through the degree of association. Then, the execution operation target, the execution operation target, and the execution operation destination searched through the degree of association are substituted for the basic syntax of the extracted program code.
  • Table 2 shows an example of searching for the basic code of the program code.
  • the basic syntax of the program code is the prototype of the program code for actually executing various processing operations on a PC or the like.
  • the program code can be completed by substituting the necessary wording into the basic syntax of this program code.
  • Examples of the basic syntax of the program code are "INSERT INTO registration destination VALUES ⁇ param1 ⁇ ;", etc., there is "INSERT” (register) as an execution operation instruction, and "registration destination” as an execution operation destination, ( ⁇ Param1 ⁇ ) as the execution operation target has already been completed in the syntax.
  • the program code can be completed by substituting the execution operation target, the execution operation target, and the execution operation destination that are actually searched through the degree of association with such a syntax.
  • the basic syntax of the program code is searched through the code table shown in Table 2.
  • the basic syntax of the program code corresponds to each other for the reference execution operation target, the reference execution operation target, and the reference execution operation destination in the same row. For example, if the reference execution operation target is "billing data" and the reference execution operation instruction is "DB reference”, the basic syntax of the program code corresponding to this is "SELECT billing amount”.
  • the combination of one reference execution operation target, reference execution operation target, and reference execution operation destination may correspond to the basic syntax of a plurality of program codes, and conversely, one basic syntax may correspond to a plurality of references. It may correspond to the combination of the execution operation target for reference, the execution operation target for reference, and the execution operation destination for reference.
  • FIG. 11 shows an example of searching the basic syntax of the program code through machine learning by artificial intelligence for the code table.
  • a combination having a reference execution operation instruction as an input variable in the code table, a reference execution operation target, and a reference execution operation destination is input as an intent, and the basic syntax of the program code is set. It becomes the output.
  • the input data is, for example, a reference execution operation instruction (“printer output”, “open file”, etc.), a reference execution operation target, and a reference execution operation destination.
  • the intermediate node 61 is a combination of the reference execution operation target and the reference execution operation destination with respect to the reference execution operation instruction as such input data. Each intermediate node 61 is further connected to an output.
  • Each combination (intermediate node) of the reference execution operation instruction, the reference execution operation target, and the reference execution operation destination is related to each other through three or more levels of association with the basic syntax of the program code as this output solution. It is related.
  • the reference execution operation instruction, the reference execution operation target, and the reference execution operation destination are arranged on the left side via this degree of association, and the basic syntax is arranged on the right side via this degree of association.
  • the degree of association indicates the degree of relevance to the basic syntax for the execution operation instructions arranged on the left side. In other words, this degree of association is an index indicating which program code basic syntax is likely to be associated with each reference execution operation instruction, reference execution operation target, and reference execution operation destination. , It shows the accuracy in selecting the most probable basic syntax of the program code from the execution operation instructions.
  • the degree of association w13 to w22 of three or more stages shown in FIG. 11 is acquired in advance.
  • the past data indicating which of the reference execution operation instruction, the reference execution operation target, the reference execution operation destination, and the basic syntax of the program code in that case was suitable is used. Accumulate, analyze and analyze these to create a degree of association.
  • This analysis may be performed by artificial intelligence.
  • the reference execution operation instruction is "transfer”
  • the reference execution operation target and the reference execution operation destination are "sales data, Taro Yamada's PC"
  • the program code Analyze the basic syntax of from past data.
  • the degree of association leading to this basic syntax C is set higher, and when there are many cases of basic syntax E and few cases of basic syntax C, the association leading to basic syntax E is set. Set the degree high and the degree of association leading to the basic syntax C low.
  • the output of the basic syntax A and the basic syntax B is linked, but from the previous case, the degree of association of w13 connected to the basic syntax A is 7 points, and the association of w14 connected to the basic syntax B is set to 7.
  • the degree is set to 2 points.
  • the degree of association shown in FIG. 11 may be composed of the nodes of the neural network in artificial intelligence. That is, the weighting coefficient for the output of the node of this neural network corresponds to the above-mentioned degree of association.
  • the network is not limited to a neural network, and may be composed of all decision-making factors constituting artificial intelligence.
  • the node 61b has the degree of association of the basic syntax C w15 and the degree of association of the basic syntax E w16.
  • Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, when actually searching for the basic syntax from now on, the above-mentioned learned data will be used. In such a case, the execution operation instruction, the execution operation target, and the execution operation destination searched in steps S13 to S14 are used.
  • the degree of association shown in FIG. 11 (Table 1) acquired in advance is referred to.
  • the node 61d moves through the degree of association.
  • the node 61d is associated with the basic syntax C at w19 and the basic syntax D at the degree of association w20.
  • the basic syntax C having the highest degree of association is selected as the optimum solution.
  • Table 3 shows an example of the degree of association w1 to w12 extending from the input.
  • the intermediate node 61 may be selected based on the degree of association w1 to w12 extending from this input. That is, the larger the degree of association w1 to w12, the heavier the weighting in the selection of the intermediate node 61 may be. However, the degrees of association w1 to w12 may all have the same value, and the weights in the selection of the intermediate node 61 may all be the same.
  • the present invention is not limited to the above-described embodiment.
  • searching for the execution operation target, execution operation target, and execution operation destination, and substituting the execution operation target, execution operation target, and execution operation destination into the basic syntax of the program code the execution operation target is assigned to the execution operation destination.
  • the case where the program code for executing the execution operation specified in the execution operation instruction is generated has been described as an example, but the present invention is not limited to this.
  • the search for the execution operation destination may be omitted, and the program code for executing the execution operation specified in the execution operation instruction may be generated for the execution operation target.
  • case component to be extracted is not limited to the above-mentioned target case and end point case, but may include a start point case and a conditional case.
  • the starting point case defines the place where the execution target specified by the target case is generated and the start source of the execution target.
  • the verb "send” is subject to "file A” as the accusative case, and this is sent starting from Taro Yamada.
  • This starting point is "Taro Yamada”.
  • the reference end point case in the end point case table shown in FIG. 9 becomes the reference start point case, and the search is the execution operation source. That is, the start point case table in which the actual execution operation source for the reference start point case is associated with three or more levels of association is stored. Then, the text data is analyzed, and the execution operation source for the extracted start point case is searched by referring to the degree of association of the stored start point case table. Next, by substituting the searched execution operation source into the basic syntax of the program code, the execution operation specified in the execution operation instruction is performed from the execution operation source to the execution operation destination. Generate program code to execute.
  • conditional case defines the conditions for executing the operation of the execution target specified by the accusative case.
  • the conditions include when (time), how (method), when to start (operation start condition), when to execute (operation end condition), and the like.
  • the reference end point case shown in FIG. 9 becomes the reference condition case, and the search is the execution operation condition. That is, the condition case table in which the actual execution operation conditions for the reference condition case are associated with each other with three or more levels of association is stored. Then, the text data is analyzed, and the execution operation condition for the extracted conditional case is searched by referring to the degree of association of the stored conditional case table. Next, by substituting the searched execution operation condition into the basic syntax of the program code, the execution operation target is executed for the execution operation destination as specified in the execution operation instruction based on the execution operation condition. The action will be performed.
  • a confirmation statement for confirming the input contents to the user is generated based on the degree of association defined in each of the execution operation table, the target case table, and the end point case table. You may.
  • the generated confirmation text may be output by voice or image. That is, if any of the execution operation instruction, the execution operation target, and the execution operation destination cannot be appropriately specified from the input contents from the user, a confirmation statement for inquiring the user about the intention is generated again and the intention is generated. Run the process to confirm. While the execution action instruction, the execution action target, and the execution action destination as the search solution are all finite, the types of wording of the text data generated by the user are almost infinite.
  • the execution operation instruction, the execution operation target, and the execution operation destination may not be narrowed down through the degree of association depending on the content of the dialect.
  • a confirmation statement for inquiring the user about the intention is generated again.
  • the process is to accept re-entry of text data from the user in response to the generation of confirmation text and notification, but this process may be performed in a so-called chat format.
  • the confirmation statement may be generated based on the degree of association associated with the execution action instruction, the execution action target, and the execution action destination searched through the execution action table, the target case table, and the end point case table. If the execution operation instruction "Open file" is searched for in the execution operation table, but the association degree w13 associated with this is 5 out of 10 grades, to be honest, it is under such a strong association degree. There is a possibility that the execution operation instruction has not been determined in, and the search solution does not capture the user's intention. In other words, it is a case where the execution operation instruction, the execution operation target, and the execution operation destination cannot be narrowed down through the degree of association.
  • a confirmation statement is generated, the user's intention is confirmed, and re-input is accepted. Then, the solution search may be performed upsetly based on the contents of the received re-input. In this way, when the degree of association associated with the execution operation instruction, the execution operation target, and the execution operation destination is less than a certain threshold value, it is determined that the search that reflects the user's intention has not been performed. , You may want to generate a confirmation statement.
  • This confirmation sentence may be performed by preparing a plurality of types of example sentences in advance and substituting those corresponding to the search solution into the example sentences. For example, if you want to check whether the user really intended the execution operation command "transfer", this execution operation command is in the ⁇ part of "Do you want to ⁇ file A?” A confirmation statement may be generated by substituting "transfer".
  • a confirmation statement is generated by comparing the degree of association associated with each of the execution operation instruction, the execution operation target, and the execution operation destination searched using each table. You may try to do it.
  • the degree of association associated with each of the searched execution operation instruction, execution operation target, and execution operation destination is compared with each other, if the degree of association associated with the searched execution operation target is the lowest, A confirmation statement for confirming the execution operation target may be generated and output.
  • Program code automatic generation device 2 Terminal 3 Server 4 Communication network 10 Housing 11 Acquisition unit 12 Calculation unit 13 Execution unit 14 Storage unit 15 Output unit 16 Intent storage unit 61 Intermediate node 100
  • Program code automatic generation system 101
  • Preservation unit 105-107 I / F 108 Input unit 109 Notification unit 110 Internal bus

Abstract

According to the present invention, when generating a program code for executing a task, the code is very easily and automatically generated without requiring human intervention. A program code for executing an execution operation, in which an execution operation target is specified in an execution operation command, is generated by: extracting an indication operation and a case component composed of at least an object case received according to the indication operation by a morpheme analysis of received text data; searching for the execution operation command corresponding to the extracted indication operation and the execution operation object corresponding to the extracted object case by referring to an execution operation table in which actual execution operation commands for a reference indication operation are associated with a degree of association having three or more steps and an object case table in which actual execution operation objects for a reference object case are associated with the degree of association having three or more steps, and substituting the execution operation command and the execution operation target which have been searched in the searching step for a basic syntax of the program code.

Description

プログラムコード自動生成システム及びプログラムProgram code automatic generation system and program
 本発明は、業務の補助を実現するための業務自動処理のプログラムを自動的に生成する上で好適なプログラムコード自動生成システム及びプログラムに関する。 The present invention relates to a program code automatic generation system and a program suitable for automatically generating a business automatic processing program for realizing business assistance.
 近年、デスクワーク(定型作業)等のような業務の補助を実現するための手段として、RPA(Robotic Process Automation)等に関する技術が注目を集めている。このような技術として、例えば特許文献1の情報処理装置等が提案されている。 In recent years, technologies related to RPA (Robotic Process Automation) have been attracting attention as a means for realizing work assistance such as desk work (routine work). As such a technique, for example, an information processing device of Patent Document 1 has been proposed.
 特許文献1の情報処理装置は、ユーザのメッセージ情報を取得する取得部と、取得した前記メッセージ情報から、前記ユーザに関連するタスク情報を抽出する抽出部と、抽出した前記タスク情報から、タスクの担当者及び関係者を識別する識別部と、前記タスク情報を、前記ユーザが前記担当者である第1タスク情報、又は前記ユーザが前記関係者である第2タスク情報に分類する分類部と、分類した前記第1又は第2タスク情報をデータベースに登録する登録部と、該データベースを参照して、前記第1又は第2タスク情報を出力する出力部とを備えることを特徴とする。 The information processing device of Patent Document 1 has an acquisition unit that acquires user message information, an extraction unit that extracts task information related to the user from the acquired message information, and a task information from the extracted task information. An identification unit that identifies a person in charge and a related person, and a classification unit that classifies the task information into first task information in which the user is the person in charge, or second task information in which the user is the related person. It is characterized by including a registration unit for registering the classified first or second task information in a database, and an output unit for outputting the first or second task information with reference to the database.
特開2019-16280号公報Japanese Unexamined Patent Publication No. 2019-16280
 ところで、新規業務についてプログラムにより自動的に実行させる場合には、プログラムを作成する作業が必要となる。プログラムの作成は、従来において、その新規業務の要件定義を行い、システム設計を行い、更にプログラムコードの開発を行った後、これをテスト、検証するプロセスが発生する。このようなプログラムコードは、新規業務が生まれる都度、人手によりコーディングするのが通常であった。 By the way, if you want the program to automatically execute new work, you need to create a program. Conventionally, the process of creating a program involves defining the requirements for the new business, designing the system, developing the program code, and then testing and verifying the program code. Such program code was usually manually coded each time a new business was created.
 しかしながら、近年のIT化の急速な進展に伴い、新規業務は多岐にわたり、これらが新たに生まれる頻度も増している。 However, with the rapid progress of IT in recent years, new businesses are diverse and the frequency of new creations is increasing.
 また、社内の簡単な作業一つとっても状況によっては随時変更を施さなければならないケースがある。例えば、「社員〇〇のPCに日報を送っておいて」という社内業務をプログラムコード化し、自動的に行えるようになったとしても、「社員〇〇」、「日報」が何であるのかを特定し、その都度プログラムコードは作成しなければならなくなる。 In addition, there are cases where even one simple task within the company must be changed at any time depending on the situation. For example, even if the in-house work of "send daily report to employee XX's PC" can be programmed and automatically performed, identify what "employee XX" and "daily report" are. However, the program code must be created each time.
 このように新規業務の増大と、業務内容の変更の都度、人手によりプログラムコードを生成することになると作業量が膨大になり、作業者の作業負担が増大してしまうばかりか、作業の遅延が生じれば業務の流れを阻害してしまうことにもなりかねないという問題点があった。 In this way, if the program code is manually generated each time the new work is increased and the work content is changed, the amount of work becomes enormous, the work load on the worker increases, and the work delays. If it occurs, there is a problem that it may hinder the flow of business.
 そこで本発明は、上述した問題点に鑑みて案出されたものであり、その目的とするところは、業務をコンピュータ側のシステムにおいて自動的に実行していくために、その業務を実行するためのプログラムコードを生成する際において、極めて容易に、しかも人手を介することなく自動的に生成することが可能なプログラムコード自動生成システム及びプログラムを提供することにある。 Therefore, the present invention has been devised in view of the above-mentioned problems, and an object of the present invention is to execute the business in order to automatically execute the business in the system on the computer side. It is an object of the present invention to provide a program code automatic generation system and a program which can be extremely easily and automatically generated without human intervention when generating the program code of the above.
 本発明に係るプログラムコード自動生成システムは、音声又は入力端末を介してテキストデータの入力を受け付ける受付手段と、上記受付手段により受け付けられたテキストデータを形態素解析することにより、指示動作と、これに係り受けする少なくとも対象格及び終点格からなる格成分を抽出する抽出手段と、参照用指示動作に対する実際の実行動作命令が3段階以上の連関度を以って関連付けられた実行動作テーブルと、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルと、参照用終点格に対する実際の実行動作先が3段階以上の連関度を以って関連付けられた終点格テーブルとを記憶する記憶手段と、上記抽出された指示動作に対応する実行動作命令と、上記抽出された対象格に対応する実行動作対象と、上記抽出された終点格に対応する実行動作先を、上記記憶手段により記憶されている実行動作テーブル、対象格テーブル、終点格テーブルの各連関度を参照することにより探索する探索手段と、プログラムコードの基本構文に、上記探索手段により探索された実行動作対象、実行動作対象、実行動作先を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するコード生成手段とを備えることを特徴とする。 The program code automatic generation system according to the present invention has a reception means that accepts the input of text data via voice or an input terminal, and an instruction operation by morphologically analyzing the text data received by the reception means. Refer to the extraction means for extracting the case component consisting of at least the target case and the end point case to be dependent, and the execution action table in which the actual execution action instruction for the reference instruction action is associated with three or more levels of association. The actual execution operation target for the target case is associated with the target case table having three or more levels of association, and the actual execution operation destination for the reference end point case is associated with the three or more levels of association. Corresponds to the storage means for storing the extracted end point case, the execution operation instruction corresponding to the extracted instruction operation, the execution operation target corresponding to the extracted target case, and the extracted end point case. The search means for searching the execution operation destination by referring to the degree of association of the execution action table, the target case table, and the end point case table stored by the above storage means, and the basic syntax of the program code by the above search means. By substituting the searched execution operation target, execution operation target, and execution operation destination, the program code for executing the execution operation specified in the execution operation instruction for the execution operation target to the execution operation destination can be obtained. It is characterized by including a code generating means for generating.
 本発明に係るプログラムコード自動生成プログラムは、音声又は入力端末を介してテキストデータの入力を受け付ける受付ステップと、上記受付ステップにおいて受け付けたテキストデータを形態素解析することにより、指示動作と、これに係り受けする少なくとも対象格及び終点格からなる格成分を抽出する抽出ステップと、参照用指示動作に対する実際の実行動作命令が3段階以上の連関度を以って関連付けられた実行動作テーブルと、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルと、参照用終点格に対する実際の実行動作先が3段階以上の連関度を以って関連付けられた終点格テーブルの各連関度を参照し、上記抽出された指示動作に対応する実行動作命令と、上記抽出された対象格に対応する実行動作対象と、上記抽出された終点格に対応する実行動作先を探索する探索ステップと、プログラムコードの基本構文に、上記探索ステップにおいて探索した実行動作対象、実行動作対象、実行動作先を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するコード生成ステップとをコンピュータに実行させる。 The program code automatic generation program according to the present invention relates to an instruction operation by performing a morphological analysis of a reception step that accepts input of text data via voice or an input terminal and the text data received in the reception step. An extraction step that extracts a case component consisting of at least the target case and the end point case to be received, an execution operation table in which the actual execution operation instruction for the reference instruction operation is associated with three or more levels of association, and a reference The actual execution operation target for the target case is associated with the target case table having three or more levels of association, and the actual execution operation destination for the reference end point case is associated with the three or more levels of association. Refer to each degree of association in the end point case table, the execution action instruction corresponding to the above-extracted instruction action, the execution action target corresponding to the above-extracted target case, and the execution corresponding to the above-extracted end point case. By substituting the execution operation target, the execution operation target, and the execution operation destination searched in the above search step into the search step for searching the operation destination and the basic syntax of the program code, the execution operation target is assigned to the execution operation destination. The computer is made to execute the code generation step of generating the program code for executing the execution operation specified in the execution operation instruction.
 上述した発明によれば、業務をコンピュータ側のシステムにおいて自動的に実行していくために、その業務を実行するためのプログラムコードを生成する際において、極めて容易に、しかも人手を介することなく自動的に生成することが可能となる。 According to the invention described above, in order to automatically execute a business in a system on the computer side, it is extremely easy and automatic without human intervention when generating a program code for executing the business. It is possible to generate the system.
図1は、実施の形態におけるプログラムコード自動生成システムのブロック図である。FIG. 1 is a block diagram of the program code automatic generation system according to the embodiment. 図2(a)及び図2(b)は、プログラムコード自動生成装置1の構成の一例を示す模式図である。2 (a) and 2 (b) are schematic views showing an example of the configuration of the program code automatic generation device 1. 図3は、本発明を適用したプログラムコード自動生成システムのフローチャートである。FIG. 3 is a flowchart of a program code automatic generation system to which the present invention is applied. 図4は、本システムを設けるユーザが企業毎に予め実行先を設定登録する例を示す図である。FIG. 4 is a diagram showing an example in which a user who installs this system sets and registers an execution destination in advance for each company. 図5は、実行動作テーブルの例を示す図である。FIG. 5 is a diagram showing an example of an execution operation table. 図6は、図5に示す実行動作テーブルの他の例を示す図である。FIG. 6 is a diagram showing another example of the execution operation table shown in FIG. 図7は、対象格テーブルの例を示す図である。FIG. 7 is a diagram showing an example of an accusative case table. 図8は、図6に示す対象格テーブルの他の例を示す図である。FIG. 8 is a diagram showing another example of the accusative table shown in FIG. 図9は、終点格テーブルの例を示す図である。FIG. 9 is a diagram showing an example of an end point case table. 図10は、図9に示す終点格テーブルの他の例を示す図である。FIG. 10 is a diagram showing another example of the end point case table shown in FIG. 図11は、プログラムコードの基本構文を探索する上で人工知能による機械学習を利用する場合について説明するための図である。FIG. 11 is a diagram for explaining a case where machine learning by artificial intelligence is used in searching the basic syntax of the program code. 図12は、ユーザに対して入力内容を確認するための確認文を生成する方法について説明するための図である。FIG. 12 is a diagram for explaining a method of generating a confirmation statement for confirming the input contents to the user.
 以下、本発明の実施形態におけるプログラムコード自動生成システムの一例について、図面を参照しながら説明する。 Hereinafter, an example of the program code automatic generation system according to the embodiment of the present invention will be described with reference to the drawings.
(実施形態:プログラムコード自動生成システム100)
 図1~図2を参照して、本実施形態におけるプログラムコード自動生成システム100の構成の一例について説明する。図1は、本実施形態におけるプログラムコード自動生成システム100の全体の構成を示す模式図である。
(Embodiment: Program Code Automatic Generation System 100)
An example of the configuration of the program code automatic generation system 100 according to the present embodiment will be described with reference to FIGS. 1 to 2. FIG. 1 is a schematic diagram showing the overall configuration of the program code automatic generation system 100 according to the present embodiment.
 プログラムコード自動生成システム100は、主に定型作業等のような業務の補助(例えば業務の自動化処理)を実現するためのプログラムコードの生成のために利用される。プログラムコード自動生成システム100は、業務を実行するためのプログラムコードを自動生成することで、企業内における各業務(例えば、メールの配信、作業者の進捗状況の収集、ファイル管理、ファイル転送、勤務管理等)をコンピュータ上で自動的に行うことができる。プログラムコード自動生成システム100は、特にこのプログラムコードの自動生成を、音声又はテキストにより設定することができ、システム管理者等のような専門的知識を有しないユーザ(例えばプログラムコード自動生成システム100を利用して業務を管理する利用者等)においても、新規業務をコンピュータに自動的に行わせるためのプログラムコードの自動生成を容易に実現することが可能となる。 The program code automatic generation system 100 is mainly used for generating program code for realizing business assistance (for example, business automation processing) such as routine work. The program code automatic generation system 100 automatically generates a program code for executing a business, and thereby performs each business in the company (for example, delivery of mail, collection of progress of workers, file management, file transfer, work). Management etc.) can be performed automatically on the computer. The program code automatic generation system 100 can set the automatic generation of the program code by voice or text, and a user who does not have specialized knowledge such as a system administrator (for example, the program code automatic generation system 100). Even for users who manage their business by using them), it is possible to easily realize automatic generation of program code for automatically performing new business on a computer.
 プログラムコード自動生成システム100は、例えば図1に示すように、プログラムコード自動生成装置1を備え、ユーザがプログラムコード自動生成装置1を利用してもよい。プログラムコード自動生成システム100は、例えば通信網4を介してプログラムコード自動生成装置1と接続された端末2を備え、ユーザが端末2を介してプログラムコード自動生成装置1を利用してもよい。プログラムコード自動生成システム100は、例えば通信網4を介してプログラムコード自動生成装置1と接続されたサーバ3を備え、ユーザがプログラムコード自動生成装置1又は端末2を介してサーバ3との各種情報の送受信により、各手段を実現してもよい。 As shown in FIG. 1, for example, the program code automatic generation system 100 includes a program code automatic generation device 1, and the user may use the program code automatic generation device 1. The program code automatic generation system 100 may include a terminal 2 connected to the program code automatic generation device 1 via, for example, a communication network 4, and the user may use the program code automatic generation device 1 via the terminal 2. The program code automatic generation system 100 includes, for example, a server 3 connected to the program code automatic generation device 1 via a communication network 4, and a user can perform various information with the server 3 via the program code automatic generation device 1 or a terminal 2. Each means may be realized by sending and receiving.
 図2(a)は、プログラムコード自動生成装置1の構成の一例を示す模式図である。プログラムコード自動生成装置1として、例えばパーソナルコンピュータ(PC)、スマートフォン、タブレット端末等の公知の電子機器が用いられる。プログラムコード自動生成装置1は、例えば筐体10と、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、保存部104と、I/F105~107と、入力部108と、報知部109とを備える。各構成101~107は、内部バス110により接続される。 FIG. 2A is a schematic diagram showing an example of the configuration of the program code automatic generation device 1. As the program code automatic generation device 1, for example, a known electronic device such as a personal computer (PC), a smartphone, or a tablet terminal is used. The program code automatic generation device 1 includes, for example, a housing 10, a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a storage unit 104, and an I / F 105 to It includes 107, an input unit 108, and a notification unit 109. Each configuration 101 to 107 is connected by an internal bus 110.
 CPU101は、プログラムコード自動生成装置1全体を制御する。ROM102は、CPU101の動作コードを格納する。RAM103は、CPU101の動作時に使用される作業領域である。保存部104は、処理用データ等の各種情報が保存される。保存部104として、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)等が用いられる。 The CPU 101 controls the entire program code automatic generation device 1. The ROM 102 stores the operation code of the CPU 101. The RAM 103 is a work area used during the operation of the CPU 101. The storage unit 104 stores various information such as processing data. As the storage unit 104, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like is used.
 I/F105は、端末2、サーバ3、通信網4等との各種情報の送受信を行うためのインターフェースである。I/F106は、入力部108との各種情報の送受信を行うためのインターフェースである。I/F107は、報知部109との各種情報の送受信を行うためのインターフェースである。 The I / F 105 is an interface for transmitting and receiving various information to and from the terminal 2, the server 3, the communication network 4, and the like. The I / F 106 is an interface for transmitting and receiving various information to and from the input unit 108. The I / F 107 is an interface for transmitting and receiving various information to and from the notification unit 109.
 入力部108として、キーボードが用いられるほか、例えばマイク等の収音装置が用いられてもよい。プログラムコード自動生成装置1を利用するユーザは、例えば入力部108を介してテキストデータや音声等の各種情報を入力できる。 In addition to using a keyboard as the input unit 108, a sound collecting device such as a microphone may be used. A user who uses the program code automatic generation device 1 can input various information such as text data and voice via, for example, the input unit 108.
 報知部109は、保存部104に保存された表示用データ等の各種情報や、プログラムコード自動生成装置1の処理状況などを表示する。報知部109として、ディスプレイが用いられるほか、例えばスピーカが用いられてもよい。 The notification unit 109 displays various information such as display data stored in the storage unit 104, the processing status of the program code automatic generation device 1, and the like. A display may be used as the notification unit 109, or a speaker may be used, for example.
 なお、I/F105~I/F107として、例えば同一のものが用いられてもよく、各I/F105~I/F107として、例えばそれぞれ複数のものが用いられてもよい。また、報知部109としてタッチパネル式のディスプレイが用いられる場合、報知部109が入力部108を含む構成としてもよい。 As I / F105 to I / F107, for example, the same one may be used, and as each I / F105 to I / F107, for example, a plurality of ones may be used. When a touch panel type display is used as the notification unit 109, the notification unit 109 may include the input unit 108.
 図2(b)は、プログラムコード自動生成装置1の機能の一例を示す模式図である。プログラムコード自動生成装置1は、取得部11と、演算部12とを備え、例えば実行部13と、記憶部14と、出力部15と、インテント格納部16とを備えてもよい。なお、図2(b)に示した各機能は、CPU101が、RAM103を作業領域として、保存部104等に記憶されたプログラムを実行することにより実現される。また、各機能の一部は、人工知能により制御されてもよい。ここで、「人工知能」は、いかなる周知の人工知能技術に基づくものであってもよい。 FIG. 2B is a schematic diagram showing an example of the function of the program code automatic generation device 1. The program code automatic generation device 1 may include an acquisition unit 11 and a calculation unit 12, and may include, for example, an execution unit 13, a storage unit 14, an output unit 15, and an intent storage unit 16. Each function shown in FIG. 2B is realized by the CPU 101 executing a program stored in the storage unit 104 or the like using the RAM 103 as a work area. In addition, a part of each function may be controlled by artificial intelligence. Here, the "artificial intelligence" may be based on any well-known artificial intelligence technology.
 <取得部11>
 取得部11は、音声又は入力端末を介してテキストデータの入力を受け付ける。取得部11は、例えば端末2又は入力部108を介してユーザから入力されたテキストデータを取得する。例えば端末2又は入力部108を介して、ユーザから会話文が音声により入力された場合、取得部11は、公知の音声認識技術(例えば音声認識技術)を用いて音声から生成されたテキストデータを取得する。なお、音声認識技術は、例えば通信網4を介して、クラウド型の音声認識技術を用いてもよい。
<Acquisition unit 11>
The acquisition unit 11 accepts the input of text data via voice or an input terminal. The acquisition unit 11 acquires text data input from the user via, for example, the terminal 2 or the input unit 108. For example, when a conversational sentence is input by voice from the user via the terminal 2 or the input unit 108, the acquisition unit 11 uses a known voice recognition technology (for example, voice recognition technology) to generate text data from the voice. get. As the voice recognition technology, a cloud-type voice recognition technology may be used, for example, via the communication network 4.
 <演算部12>
 演算部12は、データベースを参照し、取得したテキストデータに基づいて各種処理動作、演算を実行する。演算部12は、受け付けた会話文について形態素解析することにより、動詞や名詞、格成分等を始めとする文の個々の構成要素を抽出する。演算部12は、受け付けたテキストデータから抽出した指示動作に対応する実行動作命令、対象格に対応する実行動作対象、終点格に対応する実行動作先を割り当てる処理動作を行う。この演算部12は、受け付けたテキストデータに対応するインテントを決定する処理動作を実行する。演算部12は、記憶部14を参照し、プログラムコードの基本構文を抽出する。また演算部12は、抽出されたプログラムコードの基本構文に、割り当てた実行動作命令、実行動作対象、実行動作先を代入することによりプログラムコードを生成する。
<Calculation unit 12>
The calculation unit 12 refers to the database and executes various processing operations and calculations based on the acquired text data. The arithmetic unit 12 extracts individual components of the sentence, including verbs, nouns, case components, etc., by performing morphological analysis on the received conversational sentence. The calculation unit 12 performs a processing operation of assigning an execution operation instruction corresponding to an instruction operation extracted from the received text data, an execution operation target corresponding to the target case, and an execution operation destination corresponding to the end point case. The calculation unit 12 executes a processing operation for determining an intent corresponding to the received text data. The arithmetic unit 12 refers to the storage unit 14 and extracts the basic syntax of the program code. Further, the arithmetic unit 12 generates a program code by substituting the assigned execution operation instruction, execution operation target, and execution operation destination into the basic syntax of the extracted program code.
 <実行部13>
 実行部13は、演算部12において生成されたプログラムコードに基づき、業務処理を実行する。業務処理として、例えばタスクの内容や期限に基づき担当者へのメール送信、勤務管理、タスク進行履歴更新等の定型作業が挙げられ、業務処理情報をプログラムとしてコンピュータに実行させることができる内容が用いられる。
<Execution unit 13>
The execution unit 13 executes business processing based on the program code generated by the calculation unit 12. As business processing, for example, routine work such as sending an email to the person in charge based on the content and deadline of the task, work management, updating the task progress history, etc. can be mentioned, and the content that can execute the business processing information as a program on the computer is used. Be done.
 <記憶部14>
 記憶部14は、取得部11を介して取得した会話文からなるテキストデータを一時的に保存する。この記憶部14に記憶されたテキストデータは、演算部12や実行部13等による制御に基づき読み出され、また更新される場合もある。記憶部14は、実行動作テーブル、対象格テーブル、終点格テーブルの少なくとも3つのテーブルを保持している。また記憶部14は、コードテーブルを保持していてもよい。
<Memory unit 14>
The storage unit 14 temporarily stores text data composed of conversational sentences acquired through the acquisition unit 11. The text data stored in the storage unit 14 may be read out and updated under the control of the calculation unit 12, the execution unit 13, and the like. The storage unit 14 holds at least three tables, an execution operation table, a target case table, and an end point case table. Further, the storage unit 14 may hold a code table.
 <出力部15>
 出力部15は、プログラムコードにより実行された動作に関する各種情報を出力する。表示用データは、報知部109又は端末2等を介して、ユーザが認識できるように報知される。出力部15は、I/F105を介して端末2等に表示用データ等を出力し、I/F107を介して報知部109に表示用データ等を出力する。
<Output unit 15>
The output unit 15 outputs various information regarding the operation executed by the program code. The display data is notified so that the user can recognize it via the notification unit 109, the terminal 2, or the like. The output unit 15 outputs display data or the like to the terminal 2 or the like via the I / F 105, and outputs display data or the like to the notification unit 109 via the I / F 107.
 <インテント格納部16>
 インテント格納部16には、1または2以上のインテントが格納される。インテントは、業務処理を特定する情報に対応付けて、このインテント格納部16に格納されるものであってもよい。なお、業務処理を特定する情報は、通常、後述するアクション名であるが、その形式はこれらに限定されるものではない。また、対応付くことは、例えば、インテントが、業務処理を特定する情報を有する場合も含む。
<Intent storage 16>
One or two or more intents are stored in the intent storage unit 16. The intent may be stored in the intent storage unit 16 in association with the information that identifies the business process. The information that identifies the business process is usually an action name described later, but the format is not limited to these. Correspondence also includes, for example, the case where the intent has information that identifies the business process.
 <端末2>
 端末2として、例えばパーソナルコンピュータ、スマートフォン、タブレット端末、ウェアラブル端末等の公知の電子機器が用いられる。端末2は、例えば上述したプログラムコード自動生成装置1と同様の構成及び機能の少なくとも一部を備えてもよい。端末2は、例えば複数備えてもよく、各端末2がそれぞれ通信網4を介してプログラムコード自動生成装置1と接続されてもよい。
<Terminal 2>
As the terminal 2, for example, a known electronic device such as a personal computer, a smartphone, a tablet terminal, or a wearable terminal is used. The terminal 2 may have at least a part of the same configuration and functions as the program code automatic generation device 1 described above, for example. A plurality of terminals 2 may be provided, for example, and each terminal 2 may be connected to the program code automatic generation device 1 via the communication network 4.
 <サーバ3>
 サーバ3には、例えば上述した各種情報が記憶される。サーバ3には、例えば通信網4を介してプログラムコード自動生成装置1等から送られてきた各種情報が蓄積される。サーバ3には、例えば保存部104と同様の情報が記憶され、通信網4を介してプログラムコード自動生成装置1等と各種情報の送受信が行われてもよい。即ち、プログラムコード自動生成システム100では、プログラムコード自動生成装置1又はプログラムコード自動生成装置1の保存部104の代わりにサーバ3を用いてもよい。
<Server 3>
For example, the server 3 stores the above-mentioned various information. Various information sent from the program code automatic generation device 1 and the like is stored in the server 3 via, for example, the communication network 4. For example, the server 3 stores the same information as the storage unit 104, and may transmit and receive various information to and from the program code automatic generation device 1 and the like via the communication network 4. That is, in the program code automatic generation system 100, the server 3 may be used instead of the program code automatic generation device 1 or the storage unit 104 of the program code automatic generation device 1.
 <通信網4>
 通信網4は、プログラムコード自動生成装置1が通信回路を介して接続されるインターネット網等である。通信網4は、いわゆる光ファイバ通信網で構成されてもよい。また、通信網4は、有線通信網のほか、無線通信網等の公知の通信網で実現されてもよい。
<Communication network 4>
The communication network 4 is an Internet network or the like to which the program code automatic generation device 1 is connected via a communication circuit. The communication network 4 may be composed of a so-called optical fiber communication network. Further, the communication network 4 may be realized by a known communication network such as a wireless communication network in addition to the wired communication network.
 次に、本発明を適用したプログラムコード自動生成システム100の動作について説明をする。 Next, the operation of the program code automatic generation system 100 to which the present invention is applied will be described.
 図3に示すようにステップS11において会話文の受け付けを行う。具体的には、音声データとして取得部11において会話文が取得した場合1には、これを公知の音声認識技術(例えば音素認識技術)を用いテキストデータを生成する。また、電子データ化されたテキストデータを取得部11において取得した場合には、これをそのまま利用することになる。電子データ化されたテキストデータは、例えばメール文や社内又は社外において活用している情報掲示板や各種サイトの書き込みをそのまま取り込むようにしてもよい。 As shown in FIG. 3, the conversational sentence is accepted in step S11. Specifically, when a conversational sentence is acquired by the acquisition unit 11 as voice data, text data is generated using a known voice recognition technique (for example, a phoneme recognition technique). Further, when the text data converted into electronic data is acquired by the acquisition unit 11, it will be used as it is. The text data converted into electronic data may include, for example, e-mail texts, information bulletin boards used inside or outside the company, and postings on various sites as they are.
 取得部11は、ユーザの入力するタイミング毎にテキストデータを取得するほか、例えば一定期間に蓄積された複数のテキストデータを一度に取得してもよい。なお、端末2又は入力部108を介して入力された非テキスト形式のデータから、テキストデータを生成する方法は、公知技術を用いることができる。このようにして取得されたテキストデータは、記憶部14において一時的に記憶される。 The acquisition unit 11 may acquire text data at each timing of input by the user, or may acquire, for example, a plurality of text data accumulated in a certain period at once. As a method of generating text data from non-text format data input via the terminal 2 or the input unit 108, a known technique can be used. The text data acquired in this way is temporarily stored in the storage unit 14.
 次にステップS12に移行し、S11において取得され、記憶部14において一時的に記憶されているテキストデータとしての会話文を読み出し、これを形態素解析する。この形態素解析は、主として演算部12が行う。形態素解析技術は周知のいかなる形態素解析技術を利用するようにしてもよい。 Next, the process proceeds to step S12, the conversational sentence as text data acquired in S11 and temporarily stored in the storage unit 14 is read out, and this is morphologically analyzed. This morphological analysis is mainly performed by the arithmetic unit 12. As the morphological analysis technique, any well-known morphological analysis technique may be used.
 このステップS12における形態素解析の結果、例えばテキストデータ「商品名、A5-7853Kを登録して」については、「商品名|A5-7853K |からなる対象格を | 登録 | して」からなる指示動作に分解することができる。またテキスト「山田太郎の今月の日報を徳川課長に転送して」は、「山田太郎|の | 今月 | の | 残業 | 時間 |」という対象格、「徳川課長|に」という終点格、「転送|して」の指示動作に分解することができる。つまりテキストデータを指示動作からなる動詞に係り受けする対象格や終点格からなる格成分の組み合わせを通じて抽出することができる。 As a result of the morphological analysis in step S12, for example, for the text data "Register the product name, A5-7853K", the instruction operation consisting of "Register the accusative case consisting of the product name | A5-7853K |". Can be disassembled into. In addition, the text "Transfer this month's daily report of Taro Yamada to Chief Tokugawa" has the accusative case of "Taro Yamada | | This month | | Overtime | It can be decomposed into the instruction operation of "|". In other words, text data can be extracted through a combination of case components consisting of the accusative case and the end point case that are related to the verb consisting of the instruction action.
 格成分は、動詞(指示動作)による文の形成に必要とされる名詞句である。格成分における格とは、動詞が自らの帯びている語彙的意味に応じて、文の形成に必要な名詞または名詞句の組み合わせを選択的に要求する働きであり、いわゆる格支配という。この格成分の理論的根拠となる格文法は、単文が、実体を表す深層格(対象格・条件格・道具格・始点格・終点格・時間格など)とこれらと結びついた一つの動詞からなるものとして文を分析する理論である。そして、動詞により文の深層格として要求された名詞(句)が、動詞による命題実現を補足する上で必要な格成分ということができる。格成分とは、単なる名詞句ではなく、動詞が自らの命題の実現するために係り受けた名詞句である。言い換えれば、格成分は、動詞に係り受けする名詞(名詞句を含む)のうち、指示動作を規定する動詞による命題を実現するための動作開始条件となり得る要素である。 The case component is a noun phrase required to form a sentence with a verb (instruction action). The case in the case component is a function that selectively requests a combination of nouns or noun phrases necessary for forming a sentence according to the lexical meaning of the verb, and is called case control. The case grammar that is the rationale for this case component is based on a single sentence that is associated with the deep case (object case, conditional case, tool case, start point case, end point case, time case, etc.) that represents the substance. It is a theory that analyzes sentences as being. Then, it can be said that the noun (phrase) required as the deep case of the sentence by the verb is a case component necessary for supplementing the realization of the proposition by the verb. A case component is not just a noun phrase, but a noun phrase that a verb is involved in to realize its proposition. In other words, the case component is an element of nouns (including noun phrases) that are related to a verb, which can be an action start condition for realizing a proposition by a verb that defines an instructional action.
 ここでいう対象格は、指示動作を規定する動詞による命題の実行対象を意味する。「ファイルAを転送して」という文言の場合、「転送して」という動詞に対して「ファイルA」が対象格として係り受けすることになる。また終点格とは、対象格で規定される実行対象が反映される場所、実行対象による恩恵を受ける先、実行対象が送られる先を規定するものである。「ファイルAを山田太郎に送って」という文言の場合、「送って」という動詞に対して、「ファイルA」が対象格として係り受けし、更にこれが山田太郎を終点として送るものであるから、この終点格は「山田太郎」となる。 The accusative case here means the execution target of the proposition by the verb that defines the instruction action. In the case of the phrase "transfer file A", the verb "transfer" is subject to "file A" as the accusative case. The end point rating defines the place where the execution target defined by the target case is reflected, the destination to benefit from the execution target, and the destination to which the execution target is sent. In the case of the phrase "send file A to Taro Yamada", the verb "send" is subject to "file A" as the accusative case, and this is sent with Taro Yamada as the end point. This end point is "Taro Yamada".
 次にステップS13に移行し、形態素解析を通じて解析した指示動作、格成分から、実行動作命令、実行動作対象、実行動作先等からなるインテントを決定する。 Next, the process proceeds to step S13, and the intent consisting of the execution operation instruction, the execution operation target, the execution operation destination, etc. is determined from the instruction operation and the case component analyzed through the morphological analysis.
 演算部12は、先ずステップS12において形態素解析した会話文について、抽出された指示動作に対応する実行動作命令と、抽出された対象格に対応する実行動作対象と、抽出された終点格に対応する実行動作先とを、実行動作テーブル、対象格テーブル、終点格テーブルの各連関度を参照することにより探索する。 First, the arithmetic unit 12 corresponds to the execution action command corresponding to the extracted instruction action, the execution action target corresponding to the extracted accusative case, and the extracted end point case for the conversation sentence morphologically analyzed in step S12. The execution operation destination is searched by referring to each degree of association between the execution operation table, the target case table, and the end point case table.
 ここでいう実行動作命令は、実際のプログラムコードにおいて実行動作を命令するための文言であり、実際のデータベース登録、ファイルへの書き込み、転送、削除、モニタ表示等に対応する。 The execution operation instruction here is a wording for instructing the execution operation in the actual program code, and corresponds to the actual database registration, writing to a file, transfer, deletion, monitor display, etc.
 実行動作対象とは、この実行動作命令を実行する対象を示すものであり、請求書や日報、仕様書のファイル、データ、或いはメール等であってもよいし、商品名や様々な事象、情報(例えば勤務時間や、在庫等)であってもよい。 The execution operation target indicates the target for executing this execution operation instruction, and may be an invoice, a daily report, a specification file, data, an email, or the like, a product name, various events, and information. It may be (for example, working hours, inventory, etc.).
 この実行動作対象と実行動作命令とを組み合わせることで様々なプログラムコードを完成することができる。 Various program codes can be completed by combining this execution operation target and the execution operation instruction.
 例えば、実行動作命令が「転送」であり、実行動作命令が「仕様書のファイル」であれば、これを組み合わせることで「仕様書のファイルの転送」というプログラムコードを作り上げることが可能となる。 For example, if the execution operation instruction is "transfer" and the execution operation instruction is "specification file", it is possible to create a program code called "specification file transfer" by combining these.
 実行動作先とは、実行動作命令を実行する実行先を示すものである。例えば、本システムを設けるユーザが企業毎に予め実行先を設定登録しておくようにしてもよい。例えば図4に示すように、社内LANにおいて、「山田太郎のPC」、「徳川課長のPC」、「開発部の共用PC」等を実行動作先として登録しておくようにしてもよい。また、社内LANを越えたが社外の取引先についても、外部の公衆通信網を介して「取引先A社の担当者B」等のように登録してもよい。 The execution operation destination indicates the execution destination for executing the execution operation instruction. For example, the user who installs this system may set and register the execution destination in advance for each company. For example, as shown in FIG. 4, "Taro Yamada's PC", "Tokugawa section chief's PC", "Development department's shared PC", etc. may be registered as execution operation destinations in the in-house LAN. In addition, a business partner who has crossed the internal LAN but is outside the company may also be registered as "a person in charge B of the business partner A company" via an external public communication network.
 即ち、本発明を実施する前に、終点格テーブルを作成することになるが、この作成時において、通信ネットワーク中の各端末装置(例えば、「山田太郎のPC」、「徳川課長のPC」、「開発部の共用PC」等)を上記終点格テーブルの各参照用実行動作先として予め登録する動作を実行してもよい。 That is, before implementing the present invention, the end point case table is created, and at the time of this creation, each terminal device in the communication network (for example, "PC of Taro Yamada", "PC of Chief Tokugawa", An operation of pre-registering "a shared PC of the development unit" or the like) as an execution operation destination for each reference in the end point case table may be executed.
 次にステップS14へ移行し、プログラムコードの関連付け解析を行う。このプログラムコードの関連付け解析は、プログラムコードの基本構文を抽出する動作を行う。 Next, the process proceeds to step S14, and the association analysis of the program code is performed. This association analysis of the program code performs an operation of extracting the basic syntax of the program code.
 なお、ステップS13、14の具体的な方法については、後段において詳述する。 The specific methods of steps S13 and 14 will be described in detail later.
 次にステップS15に移行し、プログラムコードの作成を行う。ステップS14においては、上述したように単にプログラムコードの基本構文を抽出したに過ぎず、実際の処理動作の対象や、処理動作を完成させるために必要な各条件を規定する文言を代入することでプログラムコードが完成になる。このため、ステップS15では、抽出したプログラムコードの基本構文に対して、実行動作対象、実行動作先、実行動作命令を規定する文言を代入することで、当該実行動作対象を当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成する。 Next, the process proceeds to step S15, and the program code is created. In step S14, as described above, the basic syntax of the program code is merely extracted, and by substituting the target of the actual processing operation and the wording that defines each condition necessary for completing the processing operation. The program code is complete. Therefore, in step S15, the execution operation target is assigned to the execution operation destination by substituting the words defining the execution operation target, the execution operation destination, and the execution operation instruction into the basic syntax of the extracted program code. To generate the program code for executing the execution operation specified in the execution operation instruction.
 このステップS11~S15の工程において、ステップS11において受け付けられた会話文に含められているユーザの意図に基づいてプログラムを自動生成させることができる。 In the steps S11 to S15, a program can be automatically generated based on the user's intention included in the conversational sentence received in step S11.
 このようにしてプログラムコードを完成させた後、これをユーザに提供し、或いは報知部109を介して表示するようにしてもよいし、実行部13を介してその完成させたプログラムコードを実行させるようにしてもよい。即ち、本発明によれば、この自動生成したプログラムコードをそのまま実行させるようにすることが可能となる。このため、ステップS11からの工程から含めた場合には、ユーザが会話文を発することで、その意図を組み込んだプログラムコードを自動生成することができ、しかもその生成したプログラムコードをそのまま実行に移すことができる。これは、ユーザがシステムに対して実行して欲しい動作を会話文で話すか、これに応じたテキストデータを入力すると、その意図を組み込んだ動作を、自動生成したプログラムコードに基づいてそのまま実行させることが可能となる。 After the program code is completed in this way, it may be provided to the user or displayed via the notification unit 109, or the completed program code may be executed via the execution unit 13. You may do so. That is, according to the present invention, it is possible to execute the automatically generated program code as it is. Therefore, when included from the process from step S11, the user can automatically generate a program code incorporating the intention by issuing a conversational sentence, and the generated program code is put into execution as it is. be able to. This means that when the user speaks the action he / she wants the system to perform in a conversational sentence or inputs text data corresponding to the action, the action incorporating the intention is executed as it is based on the automatically generated program code. It becomes possible.
 次にステップS13のインテント決定、ステップS14のプログラムコードの関連付け解析の詳細な方法について説明をする。 Next, the detailed method of determining the intent in step S13 and analyzing the association of the program code in step S14 will be described.
 これらの方法を実行する上では、参照用指示動作に対する実際の実行動作命令が3段階以上の連関度を以って関連付けられた実行動作テーブルと、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルを利用する。これらの各テーブルは視覚的に視認できるような表やマトリックスで整理されている場合に限定されるものではなく、単に人工知能の機械学習モデルが記憶された学習済みデータ、並びにその集合で構成されていてもよい。 In executing these methods, the actual execution action instruction for the reference instruction action is associated with the execution action table having three or more levels of association, and the actual execution action target for the reference target accusative case is three. Use the accusative table associated with more than one level of association. Each of these tables is not limited to being organized in a visually recognizable table or matrix, but simply consists of trained data in which a machine learning model of artificial intelligence is stored, and a set thereof. You may be.
 図5、6は、これらのうち実行動作テーブルの例を示している。この実行動作テーブルでは、参照用指示動作と、実行動作命令との3段階以上の連関度が予め設定されていることが前提となる。入力データとして例えば参照用指示動作P01~P03であるものとする。例えば、この参照用指示動作P01は、「送っておいて」、参照用指示動作P02は「アップしておいて」、参照用指示動作P03は「消しておいて」等であるものとする。このような入力データとしての参照用指示動作P01~P03は、出力としての実行動作命令に連結している。 FIGS. 5 and 6 show an example of the execution operation table among these. In this execution operation table, it is premised that three or more levels of association between the reference instruction operation and the execution operation instruction are set in advance. It is assumed that the input data is, for example, reference instruction operations P01 to P03. For example, it is assumed that the reference instruction operation P01 is "sent", the reference instruction operation P02 is "up", the reference instruction operation P03 is "erase", and the like. The reference instruction operations P01 to P03 as such input data are linked to the execution operation instruction as output.
 このような参照用指示動作は、この出力解としての実行動作命令(例えば、「ファイルを開く」、「転送する」、「印刷する」、「削除する」等)に対して3段階以上の連関度を通じて互いに連関しあっている。参照用指示動作がこの連関度を介して左側に配列し、各実行動作命令が連関度を介して右側に配列している。連関度は、左側に配列された参照用指示動作に対して、何れの実行動作命令と関連性が高いかの度合いを示すものである。換言すれば、この連関度は、各指示動作が、いかなる実行動作命令に紐付けられる可能性が高いかを示す指標であり、指示動作から最も確からしい実行動作命令を選択する上での的確性を示すものである。図5の例では、連関度としてw13~w19が示されている。このw13~w19は以下の表1に示すように10段階で示されており、10点に近いほど、中間ノードとしての各組み合わせが出力としての実行動作命令と互いに関連度合いが高いことを示しており、逆に1点に近いほど中間ノードとしての各組み合わせが出力としての実行動作命令と互いに関連度合いが低いことを示している。 Such a reference instruction operation is associated with three or more stages of execution operation instructions (for example, "open file", "transfer", "print", "delete", etc.) as the output solution. They are linked to each other throughout the degree. Reference instruction actions are arranged on the left side via this degree of association, and each execution operation instruction is arranged on the right side via this degree of association. The degree of association indicates the degree of relevance to which execution operation instruction is highly related to the reference instruction operation arranged on the left side. In other words, this degree of association is an index indicating which execution action instruction is likely to be associated with each instruction action, and the accuracy in selecting the most probable execution action instruction from the instruction actions. Is shown. In the example of FIG. 5, w13 to w19 are shown as the degree of association. These w13 to w19 are shown in 10 stages as shown in Table 1 below, and the closer to 10 points, the higher the degree of relevance of each combination as an intermediate node to the execution operation instruction as an output. On the contrary, the closer to one point, the lower the degree of relevance of each combination as an intermediate node to the execution operation instruction as an output.
Figure JPOXMLDOC01-appb-T000001
Figure JPOXMLDOC01-appb-T000001
 このような図5に示す3段階以上の連関度w13~w19を予め取得しておく。つまり実際の探索解の判別を行う上で、処理動作と、実行動作命令の何れが採用、評価されたか、過去のデータセットを蓄積しておき、これらを分析、解析することで図5に示す連関度を作り上げておく。 The degree of association w13 to w19 of three or more stages shown in FIG. 5 is acquired in advance. That is, in determining the actual search solution, a past data set is accumulated as to which of the processing operation and the execution operation instruction is adopted and evaluated, and these are analyzed and analyzed to show in FIG. Create a degree of association.
 例えば、過去において参照用指示動作P01に対して実行動作命令として「ファイルを開く」が最も適合性が高いと判断され、評価されたものとする。このようなデータセットを集めて分析することにより、参照用指示動作との連関度が強くなる。 For example, in the past, it is assumed that "open file" is judged to have the highest suitability as an execution operation instruction for the reference instruction operation P01 and evaluated. By collecting and analyzing such a data set, the degree of association with the reference instruction operation becomes stronger.
 この分析、解析は人工知能により行うようにしてもよい。かかる場合には、例えば指示動作P01である場合に、過去のデータセットに基づいて分析する。指示動作P01である場合に、「ファイルを開く」の事例が多い場合には、この実行動作命令につながる連関度をより高く設定し、「印刷する」の事例が多い場合には、この実行動作命令につながる連関度をより高く設定する。例えば処理動作P01の例では、「ファイルを開く」と、「印刷する」にリンクしているが、以前の事例から「ファイルを開く」につながるw13の連関度を7点に、「印刷する」につながるw14の連関度を2点に設定している。 This analysis may be performed by artificial intelligence. In such a case, for example, in the case of the instruction operation P01, the analysis is performed based on the past data set. In the case of the instruction operation P01, if there are many cases of "opening a file", the degree of association connected to this execution operation instruction is set higher, and if there are many cases of "printing", this execution operation is performed. Set a higher degree of association that leads to commands. For example, in the example of the processing operation P01, "Open file" and "Print" are linked, but from the previous case, the degree of association of w13 that leads to "Open file" is set to 7 points, and "Print". The degree of association of w14 that leads to is set to 2 points.
 また、この連関度は、人工知能におけるニューラルネットワークのノードで構成されるものであってもよい。即ち、このニューラルネットワークのノードが出力に対する重み付け係数が、上述した連関度に対応することとなる。またニューラルネットワークに限らず、人工知能を構成するあらゆる意思決定因子で構成されるものであってもよい。 Further, this degree of association may be composed of the nodes of the neural network in artificial intelligence. That is, the weighting coefficient for the output of the node of this neural network corresponds to the above-mentioned degree of association. Further, the network is not limited to a neural network, and may be composed of all decision-making factors constituting artificial intelligence.
 かかる場合には、図6に示すように、入力データとして処理動作が入力され、出力データとして実行動作命令が出力され、入力ノードと出力ノードの間に少なくとも1以上の隠れ層が設けられ、機械学習させるようにしてもよい。入力ノード又は隠れ層ノードの何れか一方又は両方において上述した連関度が設定され、これが各ノードの重み付けとなり、これに基づいて出力の選択が行われる。そして、この連関度がある閾値を超えた場合に、その出力を選択するようにしてもよい。 In such a case, as shown in FIG. 6, a processing operation is input as input data, an execution operation instruction is output as output data, at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn. The above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
 このような連関度が、人工知能でいうところの学習済みデータとなる。このような学習済みデータを作った後に、実際にこれから新たに指示動作から実行動作命令の探索を行うこととなる。かかる場合には、ステップS12において抽出した指示動作を新たに取得する。新たに取得した指示動作に基づいて、これに見合う実行動作命令を探索する。かかる場合には、予め取得した図5(表1)に示す連関度を参照する。例えば、新たに取得した指示動作がP02と同一かこれに類似するものである場合には、連関度を介して「転送する」がw15、「印刷する」が連関度w16で関連付けられている。かかる場合には、連関度の最も高い「転送する」を最適解として選択する。但し、最も連関度の高いものを最適解として選択することは必須ではなく、連関度は低いものの連関性そのものは認められる「印刷する」を最適解として選択するようにしてもよい。また、これ以外に矢印が繋がっていない出力解を選択してもよいことは勿論であり、連関度に基づくものであれば、その他いかなる優先順位で選択されるものであってもよい。 Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, the execution operation instruction will be actually searched from the instruction operation. In such a case, the instruction operation extracted in step S12 is newly acquired. Based on the newly acquired instruction operation, the execution operation instruction corresponding to this is searched. In such a case, the degree of association shown in FIG. 5 (Table 1) acquired in advance is referred to. For example, when the newly acquired instruction operation is the same as or similar to P02, "transfer" is associated with w15 and "print" is associated with the association degree w16 via the association degree. In such a case, "transfer" with the highest degree of association is selected as the optimum solution. However, it is not essential to select the one with the highest degree of association as the optimum solution, and "print", which has the lowest degree of association but the association itself is recognized, may be selected as the optimum solution. In addition to this, it goes without saying that an output solution to which the arrows are not connected may be selected, and any other output solution may be selected in any other priority as long as it is based on the degree of association.
 このとき記憶部14に類義語辞書を格納しておくようにしてもよい。類義語辞書とは、類義語に関する辞書である。類義語辞書には、記憶部14に格納されている1以上の各参照用指示動作ごとに、当該参照用指示動作が有する単語と、当該単語の1または2以上の類義語とが登録されている。具体的には、例えば、参照用指示動作「転送する」に対応付けて、「送信する」、「配信する」などが登録されていてもよい。そして、この類義語辞書を介して、新たに取得した指示動作が参照用指示動作と類似するか否かを判別することができる。仮に参照用指示動作が「転送する」である場合において、新たに取得した指示動作が「送信する」である場合、類義語辞書において類似するものとして予め登録されていることから「配信する」に対応するものと判断することが可能となる。 At this time, the synonym dictionary may be stored in the storage unit 14. A synonym dictionary is a dictionary related to synonyms. In the synonym dictionary, a word possessed by the reference instruction operation and one or more synonyms of the word are registered for each one or more reference instruction operations stored in the storage unit 14. Specifically, for example, "send", "deliver", and the like may be registered in association with the reference instruction operation "transfer". Then, through this synonym dictionary, it is possible to determine whether or not the newly acquired instruction operation is similar to the reference instruction operation. If the reference instruction action is "transfer" and the newly acquired instruction action is "send", it corresponds to "deliver" because it is registered in advance as similar in the synonym dictionary. It becomes possible to judge that it should be done.
 このような連関度を参照することにより、テキストデータから抽出した指示動作がいかなる実行動作命令に該当するものであるのかを精度良く判別することができる。 By referring to such a degree of association, it is possible to accurately determine what kind of execution operation instruction the instruction operation extracted from the text data corresponds to.
 図7、8は、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルを利用する例について示している。 FIGS. 7 and 8 show an example in which the actual execution operation target for the reference target case uses the target case table associated with three or more levels of association.
 この対象格テーブルでは、参照用対象格と、実行動作対象との3段階以上の連関度が予め設定されていることが前提となる。入力データとして例えば参照用対象格P01~P03であるものとする。例えば、この参照用対象格P04は、「12月3日12時のメール」、参照用対象格P05は「納品書」、参照用対象格P06は「週報」等であるものとする。このような入力データとしての参照用対象格P04~P06は、出力としての実行動作対象に連結している。 In this accusative table, it is premised that three or more levels of association between the accusative case for reference and the accusative case for execution are set in advance. It is assumed that the input data is, for example, reference target cases P01 to P03. For example, it is assumed that the reference target case P04 is "mail at 12:00 on December 3", the reference target case P05 is "delivery note", and the reference target case P06 is "weekly report". The reference target cases P04 to P06 as such input data are connected to the execution operation target as output.
 このような参照用対象格は、この出力解としての実行動作対象(例えば、「12月7日14時受信のメール」、「請求書」、「日報」、「仕様書」等)に対して3段階以上の連関度を通じて互いに連関しあっている。参照用対象格がこの連関度を介して左側に配列し、各実行動作対象が連関度を介して右側に配列している。連関度は、左側に配列された参照用対象格に対して、何れの実行動作対象と関連性が高いかの度合いを示すものである。換言すれば、この連関度は、各対象格が、いかなる実行動作対象に紐付けられる可能性が高いかを示す指標であり、対象格から最も確からしい実行動作対象を選択する上での的確性を示すものである。図7の例では、連関度としてw13~w19が示されている。図7の連関度の例は、図5のものと必ずしも同一とならないことは勿論である。 Such a reference target case is for an execution operation target as this output solution (for example, "mail received at 14:00 on December 7", "invoice", "daily report", "specification", etc.). They are linked to each other through three or more levels of linking. The reference target cases are arranged on the left side via this degree of association, and each execution operation target is arranged on the right side via this degree of association. The degree of association indicates the degree of relevance to which execution operation target is highly related to the reference target cases arranged on the left side. In other words, this degree of association is an index showing what kind of accusative case is likely to be associated with the accusative case, and the accuracy in selecting the most probable accusative case from the accusative case. Is shown. In the example of FIG. 7, w13 to w19 are shown as the degree of association. Of course, the example of the degree of association in FIG. 7 is not necessarily the same as that in FIG.
 このような図7に示す3段階以上の連関度w13~w19を予め取得しておく。つまり実際の探索解の判別を行う上で、対象格と、実行動作対象の何れが採用、評価されたか、過去のデータセットを蓄積しておき、これらを分析、解析することで図7に示す連関度を作り上げておく。 The degree of association w13 to w19 of three or more stages shown in FIG. 7 is acquired in advance. That is, in determining the actual search solution, it is shown in FIG. 7 by accumulating past data sets and analyzing and analyzing which of the accusative case and the execution operation target was adopted and evaluated. Create a degree of association.
 例えば、過去において参照用対象格P04に対して実行動作対象として「請求書」が最も適合性が高いと判断され、評価されたものとする。このようなデータセットを集めて分析することにより、参照用対象格との連関度が強くなる。 For example, in the past, it is assumed that the "invoice" is judged to have the highest suitability as the execution operation target for the reference target case P04 and evaluated. By collecting and analyzing such data sets, the degree of association with the accusative case for reference becomes stronger.
 この分析、解析は人工知能により行うようにしてもよい。かかる場合には、例えば対象P04である場合に、過去のデータセットに基づいて分析する。対象格P04である場合に、「12月7日14時受信のメール」の事例が多い場合には、この実行動作対象につながる連関度をより高く設定し、「請求書」の事例が多い場合には、この実行動作対象につながる連関度をより高く設定する。例えば参照用対象格P04の例では、「12月7日14時受信のメール」と、「日報」にリンクしているが、以前の事例から「12月7日14時受信のメール」につながるw13の連関度を7点に、「日報」につながるw14の連関度を2点に設定している。 This analysis may be performed by artificial intelligence. In such a case, for example, in the case of the target P04, the analysis is performed based on the past data set. In the case of accusative P04, if there are many cases of "email received at 14:00 on December 7", the degree of association connected to this execution operation target is set higher, and there are many cases of "invoice". Is set to a higher degree of association connected to this execution operation target. For example, in the example of the accusative case P04 for reference, it is linked to "Email received at 14:00 on December 7" and "Daily report", but it leads to "Email received at 14:00 on December 7" from the previous case. The degree of association of w13 is set to 7 points, and the degree of association of w14 that leads to the "daily report" is set to 2 points.
 また、この連関度は、人工知能におけるニューラルネットワークのノードで構成されるものであってもよい。 Further, this degree of association may be composed of the nodes of the neural network in artificial intelligence.
 かかる場合には、図8に示すように、入力データとして処理動作が入力され、出力データとして実行動作命令が出力され、入力ノードと出力ノードの間に少なくとも1以上の隠れ層が設けられ、機械学習させるようにしてもよい。入力ノード又は隠れ層ノードの何れか一方又は両方において上述した連関度が設定され、これが各ノードの重み付けとなり、これに基づいて出力の選択が行われる。そして、この連関度がある閾値を超えた場合に、その出力を選択するようにしてもよい。 In such a case, as shown in FIG. 8, the processing operation is input as input data, the execution operation instruction is output as output data, at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn. The above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
 このような連関度が、人工知能でいうところの学習済みデータとなる。このような学習済みデータを作った後に、実際にこれから新たに対象格から実行動作対象の探索を行うこととなる。かかる場合には、ステップS12において抽出した対象格を新たに取得する。新たに取得した対象格に基づいて、これに見合う実行動作対象を探索する。かかる場合には、予め取得した図7(表1)に示す連関度を参照する。例えば、新たに取得した対象格がP05と同一かこれに類似するものである場合には、連関度を介して「請求書」がw15、「日報」が連関度w16で関連付けられている。かかる場合には、連関度の最も高い「請求書」を最適解として選択する。但し、最も連関度の高いものを最適解として選択することは必須ではなく、連関度は低いものの連関性そのものは認められる「日報」を最適解として選択するようにしてもよい。また、これ以外に矢印が繋がっていない出力解を選択してもよいことは勿論であり、連関度に基づくものであれば、その他いかなる優先順位で選択されるものであってもよい。 Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, we will actually search for the execution operation target from the accusative case. In such a case, the accusative case extracted in step S12 is newly acquired. Based on the newly acquired accusative case, the execution operation target corresponding to this is searched. In such a case, the degree of association shown in FIG. 7 (Table 1) acquired in advance is referred to. For example, when the newly acquired accusative case is the same as or similar to P05, the "invoice" is associated with the association degree w15 and the "daily report" is associated with the association degree w16 through the association degree. In such a case, the "invoice" with the highest degree of association is selected as the optimum solution. However, it is not essential to select the one with the highest degree of association as the optimum solution, and the "daily report", which has the lowest degree of association but the association itself is recognized, may be selected as the optimum solution. In addition to this, it goes without saying that an output solution to which the arrows are not connected may be selected, and any other output solution may be selected in any other priority as long as it is based on the degree of association.
 このとき記憶部14に類義語辞書を格納しておくようにしてもよい。類義語辞書には、記憶部14に格納されている1以上の各参照用対象格ごとに、当該対象格が有する単語と、当該単語の1または2以上の類義語とが登録されている。具体的には、例えば、参照用対象格「日報」に対応付けて、「業務報告書」、「業務日誌」などが登録されていてもよい。そして、この類義語辞書を介して、新たに取得した対象格が参照用対象格と類似するか否かを判別することができる。仮に参照用対象格が「日報」である場合において、新たに取得した対象格が「業務日誌」である場合、類義語辞書において類似するものとして予め登録されていることから「日報」に対応するものと判断することが可能となる。 At this time, the synonym dictionary may be stored in the storage unit 14. In the synonym dictionary, a word possessed by the accusative case and one or more synonyms of the word are registered for each one or more accusative cases stored in the storage unit 14. Specifically, for example, a "business report", a "business diary", and the like may be registered in association with the reference target case "daily report". Then, through this synonym dictionary, it is possible to determine whether or not the newly acquired accusative case is similar to the accusative case for reference. If the accusative case for reference is "daily report" and the newly acquired accusative case is "business diary", it corresponds to "daily report" because it is registered in advance as similar in the synonym dictionary. It becomes possible to judge.
 このような連関度を参照することにより、テキストデータから抽出した対象格がいかなる実行動作対象に該当するものであるのかを精度良く判別することができる。 By referring to such a degree of association, it is possible to accurately determine what kind of execution operation target the accusative case extracted from the text data corresponds to.
 図9、10は、参照用終点格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた終点格テーブルを利用する例について示している。 FIGS. 9 and 10 show an example in which the actual execution operation target for the reference end point case uses the end point case table associated with three or more levels of association.
 この終点格テーブルでは、参照用終点格と、実行動作先との3段階以上の連関度が予め設定されていることが前提となる。入力データとして例えば参照用終点格P07~P09であるものとする。例えば、この参照用終点格P07は、「山田太郎のPC」、参照用終点格P08は「土井課長のPC」、参照用終点格P09は「取引先A社の担当者C」等であるものとする。このような入力データとしての参照用終点格P07~P09は、出力としての実行動作先に連結している。 In this end point case table, it is premised that the degree of association between the reference end point case and the execution operation destination is set in advance. It is assumed that the input data is, for example, reference end point cases P07 to P09. For example, the reference end point rating P07 is "Taro Yamada's PC", the reference end point rating P08 is "Doi section chief's PC", and the reference end point rating P09 is "person in charge C of business partner A". And. The reference end point cases P07 to P09 as such input data are connected to the execution operation destination as the output.
 このような参照用終点格は、この出力解としての実行動作先(例えば、「山田太郎のPC」、「徳川課長のPC」、「取引先A社の担当者B」、「開発部の共用PC」等)に対して3段階以上の連関度を通じて互いに連関しあっている。参照用終点格がこの連関度を介して左側に配列し、各実行動作先が連関度を介して右側に配列している。連関度は、左側に配列された参照用終点格に対して、何れの実行動作先と関連性が高いかの度合いを示すものである。換言すれば、この連関度は、各終点格が、いかなる実行動作先に紐付けられる可能性が高いかを示す指標であり、終点格から最も確からしい実行動作先を選択する上での的確性を示すものである。図9の例では、連関度としてw13~w19が示されている。図9の連関度の例は、図5、7のものと必ずしも同一とならないことは勿論である。 Such reference end points are the execution operation destinations as this output solution (for example, "Taro Yamada's PC", "Tokugawa's PC", "Business partner A's person in charge B", "Common to the development department". It is linked to each other through three or more levels of linking to "PC" etc.). The reference end point cases are arranged on the left side via this degree of association, and each execution operation destination is arranged on the right side via this degree of association. The degree of association indicates the degree of relevance to which execution operation destination is highly related to the reference end point case arranged on the left side. In other words, this degree of association is an index indicating what execution operation destination each end point case is likely to be associated with, and the accuracy in selecting the most probable execution operation destination from the end point case. Is shown. In the example of FIG. 9, w13 to w19 are shown as the degree of association. Of course, the example of the degree of association in FIG. 9 is not necessarily the same as that in FIGS. 5 and 7.
 このような図9に示す3段階以上の連関度w13~w19を予め取得しておく。つまり実際の探索解の判別を行う上で、終点格と、実行動作先の何れが採用、評価されたか、過去のデータセットを蓄積しておき、これらを分析、解析することで図9に示す連関度を作り上げておく。 The degree of association w13 to w19 of three or more stages shown in FIG. 9 is acquired in advance. In other words, in determining the actual search solution, the past data set, which is adopted or evaluated as the end point case or the execution operation destination, is accumulated, and these are analyzed and analyzed to show in FIG. Create a degree of association.
 例えば、過去において参照用終点格P07に対して実行動作先として「取引先A社の担当者B」が最も適合性が高いと判断され、評価されたものとする。このようなデータセットを集めて分析することにより、この参照用終点格P07との連関度が強くなる。 For example, in the past, it is assumed that "the person in charge B of the business partner A" is judged to have the highest suitability as the execution operation destination for the reference end point rating P07, and is evaluated. By collecting and analyzing such a data set, the degree of association with the reference end point case P07 becomes stronger.
 この分析、解析は人工知能により行うようにしてもよい。かかる場合には、例えば対象P07である場合に、過去のデータセットに基づいて分析する。終点格P07である場合に、「山田太郎のPC」の事例が多い場合には、この実行動作先につながる連関度をより高く設定し、「取引先A社の担当者B」の事例が多い場合には、この実行動作先につながる連関度をより高く設定する。例えば参照用終点格P07の例では、「山田太郎のPC」と、「取引先A社の担当者B」にリンクしているが、以前の事例から「山田太郎のPC」につながるw13の連関度を7点に、「取引先A社の担当者B」につながるw14の連関度を2点に設定している。 This analysis may be performed by artificial intelligence. In such a case, for example, in the case of the target P07, the analysis is performed based on the past data set. In the case of the end point rating P07, if there are many cases of "Taro Yamada's PC", the degree of association connected to this execution operation destination is set higher, and there are many cases of "person in charge B of business partner A". In that case, the degree of association connected to this execution operation destination is set higher. For example, in the example of the end point rating P07 for reference, it is linked to "Taro Yamada's PC" and "Person in charge B of customer A company", but from the previous case, the connection of w13 connected to "Taro Yamada's PC". The degree is set to 7 points, and the degree of association of w14 connected to "the person in charge B of the business partner A company" is set to 2 points.
 また、この連関度は、人工知能におけるニューラルネットワークのノードで構成されるものであってもよい。 Further, this degree of association may be composed of the nodes of the neural network in artificial intelligence.
 かかる場合には、図10に示すように、入力データとして処理動作が入力され、出力データとして実行動作命令が出力され、入力ノードと出力ノードの間に少なくとも1以上の隠れ層が設けられ、機械学習させるようにしてもよい。入力ノード又は隠れ層ノードの何れか一方又は両方において上述した連関度が設定され、これが各ノードの重み付けとなり、これに基づいて出力の選択が行われる。そして、この連関度がある閾値を超えた場合に、その出力を選択するようにしてもよい。 In such a case, as shown in FIG. 10, a processing operation is input as input data, an execution operation instruction is output as output data, at least one hidden layer is provided between the input node and the output node, and the machine is provided. You may let them learn. The above-mentioned degree of association is set in either one or both of the input node and the hidden layer node, and this is the weight of each node, and the output is selected based on this. Then, when the degree of association exceeds a certain threshold value, the output may be selected.
 このような連関度が、人工知能でいうところの学習済みデータとなる。このような学習済みデータを作った後に、実際にこれから新たに終点格から実行動作先の探索を行うこととなる。かかる場合には、ステップS12において抽出した終点格を新たに取得する。新たに取得した終点格に基づいて、これに見合う実行動作先を探索する。かかる場合には、予め取得した図9(表1)に示す連関度を参照する。例えば、新たに取得した終点格がP08と同一かこれに類似するものである場合には、連関度を介して「徳川課長のPC」がw15、「取引先A社の担当者B」が連関度w16で関連付けられている。かかる場合には、連関度の最も高い「徳川課長のPC」を最適解として選択する。但し、最も連関度の高いものを最適解として選択することは必須ではなく、連関度は低いものの連関性そのものは認められる「取引先A社の担当者B」を最適解として選択するようにしてもよい。また、これ以外に矢印が繋がっていない出力解を選択してもよいことは勿論であり、連関度に基づくものであれば、その他いかなる優先順位で選択されるものであってもよい。 Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, we will actually search for the execution operation destination from the end point case. In such a case, the end point case extracted in step S12 is newly acquired. Based on the newly acquired end point case, the execution operation destination corresponding to this is searched. In such a case, the degree of association shown in FIG. 9 (Table 1) acquired in advance is referred to. For example, if the newly acquired end point rating is the same as or similar to P08, the "PC of Tokugawa section chief" is w15 and the "person in charge B of business partner A" is linked through the degree of association. It is associated with degree w16. In such a case, the “PC of Tokugawa section chief” with the highest degree of association is selected as the optimum solution. However, it is not essential to select the one with the highest degree of association as the optimum solution, and select "the person in charge B of business partner A" as the optimum solution, although the degree of association is low but the association itself is recognized. May be good. In addition to this, it goes without saying that an output solution to which the arrows are not connected may be selected, and any other output solution may be selected in any other priority as long as it is based on the degree of association.
 このとき記憶部14に類義語辞書を格納しておくようにしてもよい。類義語辞書には、記憶部14に格納されている1以上の各参照用終点格ごとに、当該終点格が有する単語と、当該単語の1または2以上の類義語とが登録されている。この類義語辞書を介して、新たに取得した終点格が参照用終点格と類似するか否かを判別するようにしてもよい。 At this time, the synonym dictionary may be stored in the storage unit 14. In the synonym dictionary, a word possessed by the end point case and one or more synonyms of the word are registered for each one or more reference end point cases stored in the storage unit 14. Through this synonym dictionary, it may be determined whether or not the newly acquired end point case is similar to the reference end point case.
 このような連関度を参照することにより、テキストデータから抽出した終点格がいかなる実行動作先に該当するものであるのかを精度良く判別することができる。 By referring to such a degree of association, it is possible to accurately determine what kind of execution operation destination the end point case extracted from the text data corresponds to.
 このようにしてステップS13、14においてプログラムコードの関連付け解析を行うことで、抽出された指示動作に対応する実行動作命令と、抽出された対象格に対応する実行動作対象と、抽出された終点格に対応する実行動作先が絞り込まれることになる。 By performing the association analysis of the program code in steps S13 and 14 in this way, the execution action instruction corresponding to the extracted instruction action, the execution action target corresponding to the extracted accusative case, and the extracted end point case. The execution operation destination corresponding to is narrowed down.
 次にステップS15におけるプログラムコードの作成方法の詳細について説明をする。プログラムコードの作成は、連関度を介して探索された実行動作対象、実行動作対象、実行動作先に基づいて、関連性の高いプログラムコードの基本構文を抽出する。そして、抽出したプログラムコードの基本構文に対して、連関度を介して探索された実行動作対象、実行動作対象、実行動作先を代入することにより行う。 Next, the details of the program code creation method in step S15 will be described. The program code is created by extracting the basic syntax of the highly relevant program code based on the execution operation target, the execution operation target, and the execution operation destination searched through the degree of association. Then, the execution operation target, the execution operation target, and the execution operation destination searched through the degree of association are substituted for the basic syntax of the extracted program code.
 表2は、プログラムコードの基本コードを探索する例を示している。 Table 2 shows an example of searching for the basic code of the program code.
Figure JPOXMLDOC01-appb-T000002
Figure JPOXMLDOC01-appb-T000002
 プログラムコードの基本構文は、実際にPC等により各種処理動作を実行させるためのプログラムコードの原型である。このプログラムコードの基本構文に、必要な文言を代入することで、プログラムコードを完成させることができる。プログラムコードの基本構文の例としては、「INSERT INTO 登録先 VALUES {param1} ;」等であり、実行動作命令としての「INSERT」(登録する)があり、実行動作先としての「登録先」、実行動作対象としての({param1})が構文で既に出来上がっている。このような構文に対して、実際に連関度を介して探索された実行動作対象、実行動作対象、実行動作先をそれぞれ代入していくことでプログラムコードを完成させることができる。例えば「登録先」として、探索した実行動作先「山田太郎のPC」を代入し、({param1})として、探索した売上のデータを代入することで、「売上のデータを山田太郎のPCに登録する」というプログラムコードが完成させることができる。 The basic syntax of the program code is the prototype of the program code for actually executing various processing operations on a PC or the like. The program code can be completed by substituting the necessary wording into the basic syntax of this program code. Examples of the basic syntax of the program code are "INSERT INTO registration destination VALUES {param1};", etc., there is "INSERT" (register) as an execution operation instruction, and "registration destination" as an execution operation destination, ({Param1}) as the execution operation target has already been completed in the syntax. The program code can be completed by substituting the execution operation target, the execution operation target, and the execution operation destination that are actually searched through the degree of association with such a syntax. For example, by substituting the searched execution operation destination "Taro Yamada's PC" as the "registration destination" and substituting the searched sales data as ({param1}), "sales data is transferred to Taro Yamada's PC". The program code "Register" can be completed.
 同様に、「プレゼンテーション用のスライドを会議室のディスプレイに表示する」というテキストデータの場合には、対象格としての「プレゼンテーション用のスライド」、終点格としての「会議室のディスプレイ」、指示動作としての「表示する」が抽出され、それぞれに応じた実行動作対象、実行動作対象、実行動作先が探索される。そして、この実行動作先に応じたプログラムコードの基本構文が同様に探索されることになる。 Similarly, in the case of the text data "display the slide for presentation on the display of the conference room", the "slide for presentation" as the target case, the "display of the conference room" as the end point case, and the instruction operation. "Display" is extracted, and the execution operation target, execution operation target, and execution operation destination are searched according to each. Then, the basic syntax of the program code according to the execution operation destination is searched in the same manner.
 実際には、表2に示すコードテーブルを介して、プログラムコードの基本構文の探索を行う。コードテーブルでは、同一の行にある参照用実行動作対象、参照用実行動作対象、参照用実行動作先に対して、プログラムコードの基本構文が互いに対応する関係となる。例えば、参照用実行動作対象「請求データ」であり、参照用実行動作命令が「DB参照」であれば、これに対応するプログラムコードの基本構文は、「SELECT 請求額 」となる。 Actually, the basic syntax of the program code is searched through the code table shown in Table 2. In the code table, the basic syntax of the program code corresponds to each other for the reference execution operation target, the reference execution operation target, and the reference execution operation destination in the same row. For example, if the reference execution operation target is "billing data" and the reference execution operation instruction is "DB reference", the basic syntax of the program code corresponding to this is "SELECT billing amount".
 このとき、一つの参照用実行動作対象、参照用実行動作対象、参照用実行動作先の組み合わせが複数のプログラムコードの基本構文に対応する場合もあれば、逆に一つの基本構文が複数の参照用実行動作対象、参照用実行動作対象、参照用実行動作先の組み合わせに対応する場合もある。 At this time, the combination of one reference execution operation target, reference execution operation target, and reference execution operation destination may correspond to the basic syntax of a plurality of program codes, and conversely, one basic syntax may correspond to a plurality of references. It may correspond to the combination of the execution operation target for reference, the execution operation target for reference, and the execution operation destination for reference.
 このようなコードテーブルを記憶部14に記憶させておくことで、演算部12による演算の過程でこれを読み出し、参照することができる。 By storing such a code table in the storage unit 14, it can be read and referred to in the process of calculation by the calculation unit 12.
 図11は、コードテーブルについて人工知能による機械学習を通じてプロゴラムコードの基本構文を探索する例を示している。この図11の例では、インテントとして、コードテーブルにおける入力変数としての参照用実行動作命令と、参照用実行動作対象、参照用実行動作先とを有する組み合わせを入力し、プログラムコードの基本構文が出力となる。具体的には、入力データとして例えば参照用実行動作命令(「プリンタ出力」、「ファイルを開く」等)と、参照用実行動作対象、参照用実行動作先であるものとする。このような入力データとしての、参照用実行動作命令に対して、参照用実行動作対象、参照用実行動作先が組み合わさったものが、中間ノード61である。各中間ノード61は、更に出力に連結している。この出力においては、出力解としての、プログラムコードの基本構文A~Eが表示されている。プログラムコードの基本構文Aは、例えば、「SELECT 請求額 FROM 請求データ WHERE 会社= {param1} AND 請求月={param2};」であり、基本構文Bは、例えば「Write Line 商品リスト.dat {param1} ;」であるものとする。 FIG. 11 shows an example of searching the basic syntax of the program code through machine learning by artificial intelligence for the code table. In the example of FIG. 11, a combination having a reference execution operation instruction as an input variable in the code table, a reference execution operation target, and a reference execution operation destination is input as an intent, and the basic syntax of the program code is set. It becomes the output. Specifically, it is assumed that the input data is, for example, a reference execution operation instruction (“printer output”, “open file”, etc.), a reference execution operation target, and a reference execution operation destination. The intermediate node 61 is a combination of the reference execution operation target and the reference execution operation destination with respect to the reference execution operation instruction as such input data. Each intermediate node 61 is further connected to an output. In this output, the basic syntaxes A to E of the program code as the output solution are displayed. The basic syntax A of the program code is, for example, "SELECT billing amount FROM billing data WHERE company = {param1} AND billing month = {param2};", and the basic syntax B is, for example, "Write Line product list.dat {param1". }; ”.
 参照用実行動作命令と、参照用実行動作対象、参照用実行動作先との各組み合わせ(中間ノード)は、この出力解としての、プログラムコードの基本構文に対して3段階以上の連関度を通じて互いに連関しあっている。参照用実行動作命令と、参照用実行動作対象、参照用実行動作先がこの連関度を介して左側に配列し、基本構文が連関度を介して右側に配列している。連関度は、左側に配列された実行動作命令等に対して、基本構文と関連性が高いかの度合いを示すものである。換言すれば、この連関度は、各参照用実行動作命令と、参照用実行動作対象、参照用実行動作先が、いかなるプログラムコードの基本構文に紐付けられる可能性が高いかを示す指標であり、実行動作命令等から最も確からしいプログラムコードの基本構文を選択する上での的確性を示すものである。 Each combination (intermediate node) of the reference execution operation instruction, the reference execution operation target, and the reference execution operation destination is related to each other through three or more levels of association with the basic syntax of the program code as this output solution. It is related. The reference execution operation instruction, the reference execution operation target, and the reference execution operation destination are arranged on the left side via this degree of association, and the basic syntax is arranged on the right side via this degree of association. The degree of association indicates the degree of relevance to the basic syntax for the execution operation instructions arranged on the left side. In other words, this degree of association is an index indicating which program code basic syntax is likely to be associated with each reference execution operation instruction, reference execution operation target, and reference execution operation destination. , It shows the accuracy in selecting the most probable basic syntax of the program code from the execution operation instructions.
 このような図11に示す3段階以上の連関度w13~w22を予め取得しておく。実際の探索解の判別を行う上で、参照用実行動作命令と、参照用実行動作対象、参照用実行動作先、並びにその場合のプログラムコードの基本構文が何れが好適であったか、過去のデータを蓄積しておき、これらを分析、解析することで連関度を作り上げておく。 The degree of association w13 to w22 of three or more stages shown in FIG. 11 is acquired in advance. In determining the actual search solution, the past data indicating which of the reference execution operation instruction, the reference execution operation target, the reference execution operation destination, and the basic syntax of the program code in that case was suitable is used. Accumulate, analyze and analyze these to create a degree of association.
 この分析、解析は人工知能により行うようにしてもよい。かかる場合には、例えば参照用実行動作命令が「転送する」であり、、参照用実行動作対象、参照用実行動作先が「売り上げのデータ、山田太郎のPC」である場合に、そのプログラムコードの基本構文を過去のデータから分析する。基本構文Cの事例が多い場合には、この基本構文Cにつながる連関度をより高く設定し、基本構文Eの事例が多く、基本構文Cの事例が少ない場合には、基本構文Eにつながる連関度を高くし、基本構文Cにつながる連関度を低く設定する。例えば中間ノード61aの例では、基本構文Aと基本構文Bの出力にリンクしているが、以前の事例から基本構文Aにつながるw13の連関度を7点に、基本構文Bにつながるw14の連関度を2点に設定している。 This analysis may be performed by artificial intelligence. In such a case, for example, when the reference execution operation instruction is "transfer", and the reference execution operation target and the reference execution operation destination are "sales data, Taro Yamada's PC", the program code. Analyze the basic syntax of from past data. When there are many cases of basic syntax C, the degree of association leading to this basic syntax C is set higher, and when there are many cases of basic syntax E and few cases of basic syntax C, the association leading to basic syntax E is set. Set the degree high and the degree of association leading to the basic syntax C low. For example, in the example of the intermediate node 61a, the output of the basic syntax A and the basic syntax B is linked, but from the previous case, the degree of association of w13 connected to the basic syntax A is 7 points, and the association of w14 connected to the basic syntax B is set to 7. The degree is set to 2 points.
 また、この図11に示す連関度は、人工知能におけるニューラルネットワークのノードで構成されるものであってもよい。即ち、このニューラルネットワークのノードが出力に対する重み付け係数が、上述した連関度に対応することとなる。またニューラルネットワークに限らず、人工知能を構成するあらゆる意思決定因子で構成されるものであってもよい。 Further, the degree of association shown in FIG. 11 may be composed of the nodes of the neural network in artificial intelligence. That is, the weighting coefficient for the output of the node of this neural network corresponds to the above-mentioned degree of association. Further, the network is not limited to a neural network, and may be composed of all decision-making factors constituting artificial intelligence.
 図11に示す連関度の例で、ノード61bは、基本構文Cの連関度がw15、基本構文Eの連関度がw16となっている。 In the example of the degree of association shown in FIG. 11, the node 61b has the degree of association of the basic syntax C w15 and the degree of association of the basic syntax E w16.
 このような連関度が、人工知能でいうところの学習済みデータとなる。このような学習済みデータを作った後に、実際にこれから基本構文の探索を行う際において、上述した学習済みデータを利用して行うこととなる。かかる場合には、ステップS13~S14において探索された実行動作命令と実行動作対象と、実行動作先を利用する。 Such degree of association is what is called learned data in artificial intelligence. After creating such learned data, when actually searching for the basic syntax from now on, the above-mentioned learned data will be used. In such a case, the execution operation instruction, the execution operation target, and the execution operation destination searched in steps S13 to S14 are used.
 このようにして新たに取得した実行動作命令と、実行動作対象と、実行動作先に基づいて、最適なプログラムコードの基本構文を探索する。かかる場合には、予め取得した図11(表1)に示す連関度を参照する。例えば、新たに取得した実行動作命令が「ファイルを開く」である場合であって、実行動作対象と、実行動作先からなるインテントがP21である場合には、連関度を介してノード61dが関連付けられており、このノード61dは、基本構文Cがw19、基本構文Dが連関度w20で関連付けられている。かかる場合には、連関度の最も高い基本構文Cを最適解として選択する。但し、最も連関度の高いものを最適解として選択することは必須ではなく、連関度は低いものの連関性そのものは認められる基本構文Dを最適解として選択するようにしてもよい。また、これ以外に矢印が繋がっていない出力解を選択してもよいことは勿論であり、連関度に基づくものであれば、その他いかなる優先順位で選択されるものであってもよい。 Search for the optimum basic syntax of the program code based on the newly acquired execution operation instruction, execution operation target, and execution operation destination in this way. In such a case, the degree of association shown in FIG. 11 (Table 1) acquired in advance is referred to. For example, when the newly acquired execution operation instruction is "open file" and the intent consisting of the execution operation target and the execution operation destination is P21, the node 61d moves through the degree of association. The node 61d is associated with the basic syntax C at w19 and the basic syntax D at the degree of association w20. In such a case, the basic syntax C having the highest degree of association is selected as the optimum solution. However, it is not essential to select the one with the highest degree of association as the optimum solution, and the basic syntax D in which the degree of association is low but the association itself is recognized may be selected as the optimum solution. In addition to this, it goes without saying that an output solution to which the arrows are not connected may be selected, and any other output solution may be selected in any other priority as long as it is based on the degree of association.
 また、入力から伸びている連関度w1~w12の例を以下の表3に示す。 Table 3 below shows an example of the degree of association w1 to w12 extending from the input.
Figure JPOXMLDOC01-appb-T000003
Figure JPOXMLDOC01-appb-T000003
 この入力から伸びている連関度w1~w12に基づいて中間ノード61が選択されていてもよい。つまり連関度w1~w12が大きいほど、中間ノード61の選択における重みづけを重くしてもよい。しかし、この連関度w1~w12は何れも同じ値としてもよく、中間ノード61の選択における重みづけは何れも全て同一とされていてもよい。 The intermediate node 61 may be selected based on the degree of association w1 to w12 extending from this input. That is, the larger the degree of association w1 to w12, the heavier the weighting in the selection of the intermediate node 61 may be. However, the degrees of association w1 to w12 may all have the same value, and the weights in the selection of the intermediate node 61 may all be the same.
 なお、本発明は、上述した実施の形態に限定されるものではない。実行動作対象、実行動作対象、実行動作先を探索し、プログラムコードの基本構文に、実行動作対象、実行動作対象、実行動作先を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するが場合について例をとり説明をしたが、これに限定されるものではない。実行動作先の探索を省略し、当該実行動作対象を当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するものであってもよい。 The present invention is not limited to the above-described embodiment. By searching for the execution operation target, execution operation target, and execution operation destination, and substituting the execution operation target, execution operation target, and execution operation destination into the basic syntax of the program code, the execution operation target is assigned to the execution operation destination. The case where the program code for executing the execution operation specified in the execution operation instruction is generated has been described as an example, but the present invention is not limited to this. The search for the execution operation destination may be omitted, and the program code for executing the execution operation specified in the execution operation instruction may be generated for the execution operation target.
 また、抽出対象の格成分は、上述した対象格や終点格に限定されるものではなく、始点格、条件格を含めてもよい。 Further, the case component to be extracted is not limited to the above-mentioned target case and end point case, but may include a start point case and a conditional case.
 始点格とは、対象格で規定される実行対象が生成される場所、実行対象の開始元を規定するものである。「ファイルAを山田太郎から送って」という文言の場合、「送って」という動詞に対して、「ファイルA」が対象格として係り受けし、更にこれが山田太郎を始点として送られるものであるから、この始点格は「山田太郎」となる。 The starting point case defines the place where the execution target specified by the target case is generated and the start source of the execution target. In the case of the phrase "send file A from Taro Yamada", the verb "send" is subject to "file A" as the accusative case, and this is sent starting from Taro Yamada. , This starting point is "Taro Yamada".
 このような始点格を利用する場合においても、図9に示す終点格テーブルにおける、参照用終点格が参照用始点格になり、探索するのは実行動作元となる。つまり参照用始点格に対する実際の実行動作元が3段階以上の連関度を以って関連付けられた始点格テーブルを記憶しておく。そして、テキストデータを分析し、抽出された始点格に対する実行動作元を、記憶されている始点格テーブルの連関度を参照することにより探索する。次に、プログラムコードの基本構文に、探索された実行動作元を代入することにより、当該実行動作対象を当該実行動作元から当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成する。 Even when such a start point case is used, the reference end point case in the end point case table shown in FIG. 9 becomes the reference start point case, and the search is the execution operation source. That is, the start point case table in which the actual execution operation source for the reference start point case is associated with three or more levels of association is stored. Then, the text data is analyzed, and the execution operation source for the extracted start point case is searched by referring to the degree of association of the stored start point case table. Next, by substituting the searched execution operation source into the basic syntax of the program code, the execution operation specified in the execution operation instruction is performed from the execution operation source to the execution operation destination. Generate program code to execute.
 また、条件格とは、対象格で規定される実行対象の動作を実行する条件を規定するものである。この条件としては、いつ(時間)やどのような方法で(方法)、いつから開始(動作開始条件)、いつまでに実行(動作終了条件)等である。 In addition, the conditional case defines the conditions for executing the operation of the execution target specified by the accusative case. The conditions include when (time), how (method), when to start (operation start condition), when to execute (operation end condition), and the like.
 例えば「ファイルAを明日までに送って」という文言の場合、「送って」という動詞に対して、「ファイルA」が対象格として係り受けし、更に「明日までに」が条件格として係り受けするものであるから、この条件格は「明日までに」となる。 For example, in the case of the phrase "send file A by tomorrow", "file A" is assigned as the accusative case and "by tomorrow" is assigned as the accusative case for the verb "send". This condition is "by tomorrow".
 このような始点格を利用する場合においても、図9に示す参照用終点格が参照用条件格になり、探索するのは実行動作条件となる。つまり参照用条件格に対する実際の実行動作条件が3段階以上の連関度を以って関連付けられた条件格テーブルを記憶しておく。そして、テキストデータを分析し、抽出された条件格に対する実行動作条件を、記憶されている条件格テーブルの連関度を参照することにより探索する。次に、プログラムコードの基本構文に、探索された実行動作条件を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作条件に基づいて当該実行動作命令に規定された実行動作を実行することになる。 Even when such a start point case is used, the reference end point case shown in FIG. 9 becomes the reference condition case, and the search is the execution operation condition. That is, the condition case table in which the actual execution operation conditions for the reference condition case are associated with each other with three or more levels of association is stored. Then, the text data is analyzed, and the execution operation condition for the extracted conditional case is searched by referring to the degree of association of the stored conditional case table. Next, by substituting the searched execution operation condition into the basic syntax of the program code, the execution operation target is executed for the execution operation destination as specified in the execution operation instruction based on the execution operation condition. The action will be performed.
 なお、本発明は、上述した実施の形態に限定されるものではない。例えば図12に示すように、実行動作テーブル、対象格テーブル、終点格テーブルのそれぞれに規定されている連関度に基づいて、ユーザに対して入力内容を確認するための確認文を生成するようにしてもよい。生成した確認文は、音声出力又は画像出力するようにしてもよい。つまり、ユーザからの入力内容から実行動作命令、実行動作対象、実行動作先のいずれかが好適に特定することができない場合には、改めてその意図をユーザに問い合わせるための確認文を生成し、意図を確認するプロセスを実行する。探索解としての実行動作命令、実行動作対象、実行動作先は、何れも有限であるのに対して、ユーザにより生成されるテキストデータの文言の種類は無限に近い。このため、ユーザから生成されるテキストデータから抽出した指示動作や格成分によっては、実行動作命令、実行動作対象、実行動作先を探索することができない場合がある。また、ユーザが方言を使う場合、その方言の内容によっては実行動作命令、実行動作対象、実行動作先を連関度を通じて絞り込めない場合がある。かかる場合には、改めてその意図をユーザに問い合わせるための確認文を生成する。確認文の生成、通知に対してユーザから改めてテキストデータの再入力を受け付けることにあるが、このプロセスは、いわゆるチャット形式で行うようにしてもよい。 The present invention is not limited to the above-described embodiment. For example, as shown in FIG. 12, a confirmation statement for confirming the input contents to the user is generated based on the degree of association defined in each of the execution operation table, the target case table, and the end point case table. You may. The generated confirmation text may be output by voice or image. That is, if any of the execution operation instruction, the execution operation target, and the execution operation destination cannot be appropriately specified from the input contents from the user, a confirmation statement for inquiring the user about the intention is generated again and the intention is generated. Run the process to confirm. While the execution action instruction, the execution action target, and the execution action destination as the search solution are all finite, the types of wording of the text data generated by the user are almost infinite. Therefore, depending on the instruction operation and the case component extracted from the text data generated by the user, it may not be possible to search for the execution operation instruction, the execution operation target, and the execution operation destination. Further, when the user uses a dialect, the execution operation instruction, the execution operation target, and the execution operation destination may not be narrowed down through the degree of association depending on the content of the dialect. In such a case, a confirmation statement for inquiring the user about the intention is generated again. The process is to accept re-entry of text data from the user in response to the generation of confirmation text and notification, but this process may be performed in a so-called chat format.
 確認文の生成は、実行動作テーブル、対象格テーブル、終点格テーブルを介して探索した実行動作命令、実行動作対象、実行動作先にそれぞれ紐付けられていた連関度に基づいて行ってもよい。仮に実行動作テーブルにおいて「ファイルを開く」という実行動作命令が探索されたが、これに紐付いている連関度w13が10段階評価の中で5である場合、正直なところ、それほど強い連関度の下で実行動作命令が決定されたものではなく、ユーザの意図を汲み取った探索解になっていない可能性がある。つまり、実行動作命令、実行動作対象、実行動作先を連関度を通じて絞り込めないケースである。かかる場合には、確認文を生成し、ユーザの意図を確認し、再入力を受け付ける。そして受け付けた再入力の内容に基づいて動揺に解探索を行うようにしてもよい。このように実行動作命令、実行動作対象、実行動作先にそれぞれ紐付けられていた連関度がある一定の閾値未満である場合に、ユーザの意図を反映した探索が行われていないものと判断し、確認文を生成するようにしてもよい。この確認文は、予め例文を複数種類準備しておき、これに対して探索解に応じたものを例文中に代入することで行うようにしてもよい。例えば、実行動作命令「転送する」について本当にユーザが意図しているか否かを確認したい場合には、「ファイルAを●●されたいということですか?」の●●の部分にこの実行動作命令「転送(する)」を代入することで確認文を生成するようにしてもよい。 The confirmation statement may be generated based on the degree of association associated with the execution action instruction, the execution action target, and the execution action destination searched through the execution action table, the target case table, and the end point case table. If the execution operation instruction "Open file" is searched for in the execution operation table, but the association degree w13 associated with this is 5 out of 10 grades, to be honest, it is under such a strong association degree. There is a possibility that the execution operation instruction has not been determined in, and the search solution does not capture the user's intention. In other words, it is a case where the execution operation instruction, the execution operation target, and the execution operation destination cannot be narrowed down through the degree of association. In such a case, a confirmation statement is generated, the user's intention is confirmed, and re-input is accepted. Then, the solution search may be performed upsetly based on the contents of the received re-input. In this way, when the degree of association associated with the execution operation instruction, the execution operation target, and the execution operation destination is less than a certain threshold value, it is determined that the search that reflects the user's intention has not been performed. , You may want to generate a confirmation statement. This confirmation sentence may be performed by preparing a plurality of types of example sentences in advance and substituting those corresponding to the search solution into the example sentences. For example, if you want to check whether the user really intended the execution operation command "transfer", this execution operation command is in the ●● part of "Do you want to ●● file A?" A confirmation statement may be generated by substituting "transfer".
 また、このような閾値を設定する代わりに、各テーブルを利用して探索した実行動作命令、実行動作対象、実行動作先にそれぞれ紐付けられていた連関度を互いに比較することで確認文を生成するようにしてもよい。仮に探索した実行動作命令、実行動作対象、実行動作先にそれぞれ紐付けられていた連関度を互いに比較したところ、その探索した実行動作対象に紐付けられている連関度が最も低い場合には、この実行動作対象を確認するための確認文を生成して出力するようにしてもよい。 In addition, instead of setting such a threshold value, a confirmation statement is generated by comparing the degree of association associated with each of the execution operation instruction, the execution operation target, and the execution operation destination searched using each table. You may try to do it. When the degree of association associated with each of the searched execution operation instruction, execution operation target, and execution operation destination is compared with each other, if the degree of association associated with the searched execution operation target is the lowest, A confirmation statement for confirming the execution operation target may be generated and output.
 また、ユーザの音声にノイズが重畳していることから、これをテキストデータに落とし込んだ場合、そもそも類義語辞典にそのような文言が存在せず、参照用指示動作、参照用対象格、参照用終点格との照合ができない場合が出てくる。このように参照用指示動作、参照用対象格、参照用終点格との照合ができない場合も、同様に確認文を生成し、ユーザに出力するようにしてもよい。この確認文の生成は、照合ができない参照用指示動作、参照用対象格、参照用終点格毎に例文を作成して記憶しておき、実際に照合ができなかった参照用指示動作、参照用対象格、参照用終点格に応じて例文を読み出して出力するようにしてもよい。 In addition, since noise is superimposed on the user's voice, when this is incorporated into text data, there is no such wording in the synonym dictionary in the first place, and the reference instruction operation, reference target case, and reference end point are used. In some cases, it cannot be matched with the case. Even when the reference instruction operation, the reference target case, and the reference end point case cannot be collated in this way, a confirmation statement may be generated and output to the user in the same manner. For the generation of this confirmation sentence, an example sentence is created and stored for each reference instruction operation, reference target case, and reference end point case that cannot be collated, and the reference instruction operation and reference that cannot be actually collated. An example sentence may be read and output according to the accusative case and the end point case for reference.
 連関度が相対的に引く場合には、ユーザの意図を反映した探索が行われていないものと判断し、確認文を生成することでその意図を確認することが可能となる。 When the degree of association is relatively low, it is judged that the search that reflects the user's intention has not been performed, and it is possible to confirm the intention by generating a confirmation sentence.
1 プログラムコード自動生成装置
2 端末
3 サーバ
4 通信網
10 筐体
11 取得部
12 演算部
13 実行部
14 記憶部
15 出力部
16 インテント格納部
61 中間ノード
100 プログラムコード自動生成システム
101 CPU
102 ROM
103 RAM
104 保存部
105~107 I/F
108 入力部
109 報知部
110 内部バス
1 Program code automatic generation device 2 Terminal 3 Server 4 Communication network 10 Housing 11 Acquisition unit 12 Calculation unit 13 Execution unit 14 Storage unit 15 Output unit 16 Intent storage unit 61 Intermediate node 100 Program code automatic generation system 101 CPU
102 ROM
103 RAM
104 Preservation unit 105-107 I / F
108 Input unit 109 Notification unit 110 Internal bus

Claims (12)

  1.  音声又は入力端末を介してテキストデータの入力を受け付ける受付手段と、
     上記受付手段により受け付けられたテキストデータを形態素解析することにより、指示動作と、これに係り受けする少なくとも対象格からなる格成分を抽出する抽出手段と、
     参照用指示動作に対する実際の実行動作命令が3段階以上の連関度を以って関連付けられた実行動作テーブルと、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルとを少なくとも記憶する記憶手段と、
     上記抽出された指示動作に対応する実行動作命令と、上記抽出された対象格に対応する実行動作対象とを、上記記憶手段により記憶されている実行動作テーブル、対象格テーブルの各連関度を参照することにより探索する探索手段と、
     プログラムコードの基本構文に、上記探索手段により探索された実行動作命令、実行動作対象を代入することにより、当該実行動作対象を当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するコード生成手段とを備えること
     を特徴とするプログラムコード自動生成システム。
    A reception means that accepts text data input via voice or an input terminal,
    By morphological analysis of the text data received by the above-mentioned receiving means, an instruction operation, an extraction means for extracting at least a case component consisting of an accusative case, and an extraction means.
    The execution operation table in which the actual execution operation instruction for the reference instruction operation is associated with three or more levels of association, and the actual execution operation target for the reference target case have three or more levels of association. A storage means that at least stores the associated accusative table,
    Refer to the degree of association between the execution operation table and the accusative table stored by the storage means for the execution operation instruction corresponding to the extracted instruction operation and the execution operation target corresponding to the extracted accusative case. Search means to search by doing
    By substituting the execution operation instruction and the execution operation target searched by the above search means into the basic syntax of the program code, the program code for executing the execution operation specified in the execution operation instruction can be obtained. An automatic program code generation system characterized by having a code generation means for generating.
  2.  上記抽出手段は、指示動作に係り受けする終点格からなる格成分を抽出し、
     上記記憶手段は、参照用終点格に対する実際の実行動作先が3段階以上の連関度を以って関連付けられた終点格テーブルを記憶し、
     上記探索手段は、上記抽出された終点格に対する実行動作先を、上記記憶手段により記憶されている終点格テーブルの連関度を参照することにより探索し、
     上記コード生成手段は、プログラムコードの基本構文に、上記探索手段により探索された実行動作先を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成すること
     を特徴とする請求項1記載のプログラムコード自動生成システム。
    The above-mentioned extraction means extracts a case component consisting of an end point case that depends on an instruction operation, and extracts the case component.
    The storage means stores an end point case table in which the actual execution operation destination for the reference end point case is associated with three or more levels of association.
    The search means searches for the execution operation destination for the extracted end point case by referring to the degree of association of the end point case table stored by the storage means.
    The code generating means substitutes the execution operation destination searched by the search means into the basic syntax of the program code, so that the execution operation target is executed with respect to the execution operation destination specified in the execution operation instruction. The program code automatic generation system according to claim 1, wherein the program code for executing an operation is generated.
  3.  上記探索手段は、上記実行動作テーブル、上記対象格テーブル、上記終点格テーブルを介して探索した実行動作命令、実行動作対象、実行動作先にそれぞれ紐付けられていた連関度に基づいて、ユーザに対して入力内容を確認するための確認文を生成する確認文生成手段と、
     上記確認文生成手段により生成された確認文を音声出力又は画像出力する出力手段とを備え、
     上記受付手段は、ユーザによりテキストデータの再入力を受け付けること
     を特徴とする請求項2記載のプログラムコード自動生成システム。
    The search means informs the user based on the degree of association associated with the execution action table, the target case table, the execution action instruction searched through the execution action table, the execution action target, and the execution action destination, respectively. On the other hand, a confirmation statement generation means for generating a confirmation statement for confirming the input contents, and a confirmation statement generation means
    It is provided with an output means for outputting a voice or an image of the confirmation sentence generated by the above confirmation sentence generation means.
    The program code automatic generation system according to claim 2, wherein the reception means accepts re-input of text data by a user.
  4.  上記コード生成手段は、参照用実行動作対象、参照用実行動作対象、参照用実行動作先の組み合わせに対するプログラムコードの基本構文が関連付けられたコードテーブルを参照し、上記探索手段により探索された実行動作対象、実行動作対象、実行動作先に基づいて、関連性の高いプログラムコードの基本構文を抽出し、抽出した基本構文に対して上記代入を行うこと
     を特徴とする請求項2又は3記載のプログラムコード自動生成システム。
    The code generation means refers to a code table associated with the basic syntax of the program code for the combination of the reference execution operation target, the reference execution operation target, and the reference execution operation destination, and the execution operation searched by the search means. The program according to claim 2 or 3, wherein the basic syntax of a highly relevant program code is extracted based on the target, the execution operation target, and the execution operation destination, and the above substitution is performed on the extracted basic syntax. Code automatic generation system.
  5.  上記コード生成手段は、参照用実行動作対象、参照用実行動作対象、参照用実行動作先の組み合わせとプログラムコードの基本構文との3段階以上の連関度を以って関連付けられた上記コードテーブルを参照すること
     を特徴とする請求項4記載のプログラムコード自動生成システム。
    The above code generation means creates the above code table associated with a combination of a reference execution operation target, a reference execution operation target, and a reference execution operation destination with three or more levels of association with the basic syntax of the program code. The program code automatic generation system according to claim 4, wherein the program code is referred to.
  6.  上記コード生成手段により生成されたプログラムコードを実行するプログラム実行手段を更に備えること
     を特徴とする請求項1~5のうち何れか1項記載のプログラムコード自動生成システム。
    The program code automatic generation system according to any one of claims 1 to 5, further comprising a program execution means for executing the program code generated by the code generation means.
  7.  通信ネットワーク中の各端末装置を上記終点格テーブルの各参照用実行動作先として予め登録するための動作先登録手段を更に備えること
     を特徴とする請求項2~5のうち何れか1項記載のプログラムコード自動生成システム。
    6. Program code automatic generation system.
  8.  上記抽出手段は、指示動作に係り受けする始点格からなる格成分を抽出し、
     上記記憶手段は、参照用始点格に対する実際の実行動作元が3段階以上の連関度を以って関連付けられた始点格テーブルを記憶し、
     上記探索手段は、上記抽出された始点格に対する実行動作元を、上記記憶手段により記憶されている始点格テーブルの連関度を参照することにより探索し、
     上記コード生成手段は、プログラムコードの基本構文に、上記探索手段により探索された実行動作元を代入することにより、当該実行動作対象を当該実行動作元から当該実行動作先に対して当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成すること
     を特徴とする請求項2~5のうち何れか1項記載のプログラムコード自動生成システム。
    The above-mentioned extraction means extracts a case component consisting of a starting point case that is affected by the instruction operation, and extracts the case component.
    The storage means stores a start point case table in which the actual execution operation source for the reference start point case is associated with three or more levels of association.
    The search means searches for an execution operation source for the extracted start point case by referring to the degree of association of the start point case table stored by the storage means.
    By substituting the execution operation source searched by the search means into the basic syntax of the program code, the code generation means sets the execution operation target from the execution operation source to the execution operation destination. The program code automatic generation system according to any one of claims 2 to 5, wherein the program code for executing the execution operation specified in the above is generated.
  9.  上記抽出手段は、指示動作に係り受けする条件格からなる格成分を抽出し、
     上記記憶手段は、参照用条件格に対する実際の実行動作条件が3段階以上の連関度を以って関連付けられた条件格テーブルを記憶し、
     上記探索手段は、上記抽出された条件格に対する実行動作条件を、上記記憶手段により記憶されている条件格テーブルの連関度を参照することにより探索し、
     上記コード生成手段は、プログラムコードの基本構文に、上記探索手段により探索された実行動作条件を代入することにより、当該実行動作対象を当該実行動作先に対して当該実行動作条件に基づいて当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成すること
     を特徴とする請求項2~5のうち何れか1項記載のプログラムコード自動生成システム。
    The above-mentioned extraction means extracts a case component consisting of a conditional case that depends on the instruction operation, and extracts the case component.
    The storage means stores a condition case table in which the actual execution operation condition with respect to the reference condition case is associated with three or more levels of association.
    The search means searches for the execution operation condition for the extracted conditional case by referring to the degree of association of the conditional case table stored by the storage means.
    By substituting the execution operation condition searched by the search means into the basic syntax of the program code, the code generation means sends the execution operation target to the execution operation destination based on the execution operation condition. The program code automatic generation system according to any one of claims 2 to 5, wherein a program code for executing an execution operation specified in an operation instruction is generated.
  10.  上記記憶手段は、人工知能におけるニューラルネットワークのノードの各出力の重み付け係数に対応する上記連関度を記憶すること
     を特徴とする請求項1~9のうち何れか1項記載のプログラムコード自動生成システム。
    The program code automatic generation system according to any one of claims 1 to 9, wherein the storage means stores the degree of association corresponding to the weighting coefficient of each output of the node of the neural network in artificial intelligence. ..
  11.  上記コード生成手段は、人工知能におけるニューラルネットワークのノードの各出力の重み付け係数に対応する上記連関度を利用すること
     を特徴とする請求項5記載のプログラムコード自動生成システム。
    The automatic program code generation system according to claim 5, wherein the code generation means uses the degree of association corresponding to the weighting coefficient of each output of the node of the neural network in artificial intelligence.
  12.  音声又は入力端末を介してテキストデータの入力を受け付ける受付ステップと、
     上記受付ステップにおいて受け付けたテキストデータを形態素解析することにより、指示動作と、これに係り受けする少なくとも対象格からなる格成分を抽出する抽出ステップと、
     参照用指示動作に対する実際の実行動作命令が3段階以上の連関度を以って関連付けられた実行動作テーブルと、参照用対象格に対する実際の実行動作対象が3段階以上の連関度を以って関連付けられた対象格テーブルとを参照し、上記抽出された指示動作に対応する実行動作命令と、上記抽出された対象格に対応する実行動作対象を探索する探索ステップと、
     プログラムコードの基本構文に、上記探索ステップにおいて探索した実行動作命令、実行動作対象を代入することにより、当該実行動作対象を当該実行動作命令に規定された実行動作を実行するためのプログラムコードを生成するコード生成ステップとをコンピュータに実行させること
     を特徴とするプログラムコード自動生成プログラム。
    A reception step that accepts text data input via voice or an input terminal,
    By morphological analysis of the text data received in the above reception step, the instruction operation, the extraction step of extracting the case component consisting of at least the accusative case related to this, and the extraction step.
    The execution operation table in which the actual execution operation instruction for the reference instruction operation is associated with three or more levels of association, and the actual execution operation target for the reference target case have three or more levels of association. With reference to the associated target case table, an execution action instruction corresponding to the above-extracted instruction action, a search step for searching for an execution action target corresponding to the above-extracted target case, and a search step.
    By substituting the execution operation instruction and the execution operation target searched in the above search step into the basic syntax of the program code, the program code for executing the execution operation specified in the execution operation instruction is generated. A program code automatic generation program characterized by having a computer execute a code generation step to be performed.
PCT/JP2020/045006 2020-02-13 2020-12-03 Automatic program code generation system, and program WO2021161629A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-022462 2020-02-13
JP2020022462A JP6889448B1 (en) 2020-02-13 2020-02-13 Program code automatic generation system and program

Publications (1)

Publication Number Publication Date
WO2021161629A1 true WO2021161629A1 (en) 2021-08-19

Family

ID=76429527

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/045006 WO2021161629A1 (en) 2020-02-13 2020-12-03 Automatic program code generation system, and program

Country Status (2)

Country Link
JP (1) JP6889448B1 (en)
WO (1) WO2021161629A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023226129A1 (en) * 2022-05-24 2023-11-30 来也科技(北京)有限公司 Item-rule code generation method and apparatus combining rpa and ai, and electronic device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6958884B1 (en) * 2021-06-15 2021-11-02 ソプラ株式会社 Program code automatic generation system
WO2023042365A1 (en) * 2021-09-17 2023-03-23 日本電気株式会社 Information processing apparatus, information processing system, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017033388A (en) * 2015-08-04 2017-02-09 富士通株式会社 Program for assisting in creating execution flow and method for assisting in creating execution flow
JP2019200756A (en) * 2018-05-20 2019-11-21 株式会社タカラトミー Artificial intelligence programming server and program for the same
JP6753598B1 (en) * 2019-11-28 2020-09-09 ソプラ株式会社 Program code automatic generator and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6598418B1 (en) * 2019-05-17 2019-10-30 ソプラ株式会社 Information output device, information output method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017033388A (en) * 2015-08-04 2017-02-09 富士通株式会社 Program for assisting in creating execution flow and method for assisting in creating execution flow
JP2019200756A (en) * 2018-05-20 2019-11-21 株式会社タカラトミー Artificial intelligence programming server and program for the same
JP6753598B1 (en) * 2019-11-28 2020-09-09 ソプラ株式会社 Program code automatic generator and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023226129A1 (en) * 2022-05-24 2023-11-30 来也科技(北京)有限公司 Item-rule code generation method and apparatus combining rpa and ai, and electronic device

Also Published As

Publication number Publication date
JP2021128516A (en) 2021-09-02
JP6889448B1 (en) 2021-06-18

Similar Documents

Publication Publication Date Title
WO2021161629A1 (en) Automatic program code generation system, and program
CN110337645B (en) Adaptable processing assembly
US10037768B1 (en) Assessing the structural quality of conversations
WO2021106380A1 (en) Program code automatic generation device and program
US9373075B2 (en) Applying a genetic algorithm to compositional semantics sentiment analysis to improve performance and accelerate domain adaptation
US7720674B2 (en) Systems and methods for processing natural language queries
US10750005B2 (en) Selective email narration system
US20120023393A1 (en) Intent-based information processing and updates
US11482223B2 (en) Systems and methods for automatically determining utterances, entities, and intents based on natural language inputs
KR20200032893A (en) Communication information processing system for chat bot service and control method thereof
US10713288B2 (en) Natural language content generator
KR20160147303A (en) Method for dialog management based on multi-user using memory capacity and apparatus for performing the method
US11216739B2 (en) System and method for automated analysis of ground truth using confidence model to prioritize correction options
US10606903B2 (en) Multi-dimensional query based extraction of polarity-aware content
CN111930792B (en) Labeling method and device for data resources, storage medium and electronic equipment
JP2020135135A (en) Dialog content creation assisting method and system
CN112579733A (en) Rule matching method, rule matching device, storage medium and electronic equipment
JP6958884B1 (en) Program code automatic generation system
KR102260396B1 (en) System for hybride translation using general neural machine translation techniques
CN111949785A (en) Query statement management method and device, readable storage medium and electronic device
WO2021002800A1 (en) Apparatus and method for tagging electronic legal documents for classification and retrieval
JP2020067864A (en) Knowledge search device, method for searching for knowledge, and knowledge search program
Sagum et al. FICOBU: Filipino WordNet construction using decision tree and language modeling
JP6949341B1 (en) Program code automatic generator and program
US20240134612A1 (en) Automatic program code generation device and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20918614

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20918614

Country of ref document: EP

Kind code of ref document: A1