Information Processing System and Information Processing Program
The information processing system addresses the challenge of unstable natural language dialogue responses by incorporating a request reception, answer generation, and presentation unit that verifies and formats responses to ensure accuracy and reliability for machine tool applications.
Patent Information
- Application Number
- JP2024571373
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-08-09
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2044-08-09
AI Technical Summary
Existing information processing systems face challenges in providing general usability and stability in natural language dialogue responses using artificial intelligence, particularly in fields like machine tools where errors are not allowed.
An information processing system that includes a request reception unit, an answer generation unit, and an answer presentation unit, which generates and presents responses to requests related to machine tools by verifying basic rules, functional specifications, and operations, and converting the answer format to ensure accuracy and stability.
The system achieves general-purpose usability and suppresses variations in output quality, ensuring that responses are accurate and reliable, even in fields where errors are not tolerated.
Smart Images

Figure 0007699729000001 
Figure 0007699729000002 
Figure 0007699729000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to an information processing system and an information processing program.
Background Art
[0002] In recent years, due to the declining birthrate and aging population, the decrease in the working population has become a social problem. Therefore, in various industries, efforts have been made to improve labor productivity by using information processing systems utilizing information technology (IT) to reduce the burden on workers or improve work efficiency. When proficiency and experience are required in the use of an information processing system, a long time and a great deal of labor are required until the information processing system can be used proficiently, and the effect of improving labor productivity may not be fully obtained. For this reason, there is a demand for an information processing system that does not require prior knowledge or empirical values for use.
[0003] As one of the means for realizing an information processing system that does not require prior knowledge or empirical values for use, a dedicated screen or user interface may be provided. For example, Patent Document 1 discloses a system that enables even beginners to easily utilize functions by guiding the input of necessary data in an interactive manner using a dedicated screen.
[0004] Also, from the perspective of versatility in use, in recent years, the technology of generative AI (Artificial Intelligence) has been developing and spreading. For example, the use of services that provide information to users or assist users' work using chat in natural language, which is one of the highly versatile input means, has been expanding. Patent Document 2 discloses a system that provides information related to a specific service using a chatbot that interacts with users.
[0005] Against the backdrop described above, there is an increasing demand for information processing systems to provide highly versatile usability by using natural language chats or the like, rather than preparing a large number of dedicated screens or user interfaces for each function or use case.
Prior Art Documents
Patent Documents
[0006]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0007] However, with the technology of Patent Document 1 above, it is difficult to create dedicated screens for specific functions in a general-purpose and comprehensive manner assuming all users, and it is difficult to provide general-purpose ease of use for all assumed functions. In addition, since a large number of dedicated screens are required for each function, there are problems that it takes a long time to build the system and the cost for developing the system becomes high.
[0008] Also, as shown in Patent Document 2 above, for example, in a conventional dialogue response using natural language that utilizes artificial intelligence using a language model, while it is possible to provide general-purpose ease of use by using natural language, it is known that, for example, the variation in output quality increases due to the variation in input. Specifically, even for sentences with similar meanings, the output may change when the word order is switched or words are changed to synonyms. That is, it can be said that the stability and reproducibility of the output with respect to the input of conventional dialogue responses are lower than those of systems that do not include artificial intelligence. That is, in conventional dialogue responses, there is a problem that it is impossible to reach the target quality that can withstand use due to the variation in output quality in fields where errors are not allowed, such as in machine tools.
[0009] The present disclosure has been made in view of the above, and an object thereof is to obtain an information processing system that provides general usability and suppresses variations in output quality in natural language dialogue responses using artificial intelligence.
Means for Solving the Problems
[0010] In order to solve the above-described problems and achieve the object, an information processing system according to the present disclosure includes a request reception unit that receives a request regarding work performed when using a machine tool, According to requirements Output by artificial intelligence into which an input data set is input using the first answer that is Answer to the request an answer generation unit that generates the second answer that is and an answer presentation unit that presents the answer, and includes , the requests accepted by the request acceptance unit include at least one of creating a processing program, creating a ladder program, creating or outputting a data file related to a machine tool or work using a machine tool, and responding to questions related to a machine tool or work using a machine tool. The answer generation unit executes at least one of verifying basic rules, verifying functional specifications, verifying operations, and converting the answer format to the second answer it.
Effects of the Invention
[0011] The information processing system according to the present disclosure has an effect that it can provide general usability and suppress variations in output quality in natural language dialogue responses using artificial intelligence.
Brief Description of the Drawings
[0012]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Figure 27
Figure 28
Figure 29
Figure 30
Figure 31
Figure 32
Figure 33
Figure 34
Figure 35
Mode for Carrying Out the Invention
[0013] Hereinafter, an information processing system and an information processing program according to an embodiment will be described in detail with reference to the drawings.
[0014] Embodiment 1. FIG. 1 is a diagram showing a first configuration example of the information processing system according to Embodiment 1. FIG. 1 shows an information processing system 1A which is a first configuration example of the information processing system according to Embodiment 1. The information processing system 1A is configured in a terminal device 2A. FIG. 1 shows the terminal device 2A and an artificial intelligence 4 outside the information processing system 1A. The artificial intelligence 4 is realized by a computer system outside the information processing system 1A.
[0015] The terminal device 2A includes a request reception unit 11, an input generation unit 12, a transmission / reception unit 13, a response generation unit 14, and a response presentation unit 15. The request reception unit 11 receives requests regarding operations performed when using a machine tool. The input generation unit 12 generates an input data set corresponding to the request based on the request received by the request reception unit 11.
[0016] The transmission / reception unit 13 communicates with devices outside the terminal device 2A. The terminal device 2A communicates with the artificial intelligence 4 through the transmission / reception unit 13. The transmission / reception unit 13 transmits the input data set generated by the input generation unit 12 to the artificial intelligence 4. The transmission / reception unit 13 receives a first response which is the output of the artificial intelligence 4 with the input data set input.
[0017] The response generation unit 14 generates a second response which is a response to the above request using the first response received by the transmission / reception unit 13. The response presentation unit 15 presents the second response generated by the response generation unit 14.
[0018] FIG. 2 is a diagram showing an example of the hardware configuration that realizes the terminal device 2A included in the information processing system 1A shown in FIG. 1. The terminal device 2A is realized by a computer system including a processing circuit 50, a communication device 51, an input device 54, and a display device 55. The processing circuit 50 includes a processor 52 and a memory 53. The processing circuit 50 is a circuit in which the processor 52 executes software. The processing functions in each of the request reception unit 11, the input generation unit 12, the transmission / reception unit 13, the response generation unit 14, and the response presentation unit 15 are realized by software, firmware, or a combination of software and firmware.
[0019] The software or firmware is described as a program and stored in the memory 53. In the processing circuit 50, the processor 52 reads and executes the program stored in the memory 53, thereby realizing the above-described processing functions of the terminal device 2A. That is, the processing circuit 50 includes a memory 53 for storing an information processing program that is a program by which the processing of the terminal device 2A is ultimately executed. Also, it can be said that the information processing program stored in the memory 53 causes a computer to execute the procedures and methods of the terminal device 2A.
[0020] The processor 52 is a CPU (Central Processing Unit), a central processing unit, a processing device, an arithmetic device, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor). The memory 53 corresponds to, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory), a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, or a DVD (Digital Versatile Disc).
[0021] The communication device 51 communicates with a device external to the terminal device 2A. The communication function of the transmission / reception unit 13 is realized by the communication device 51. The communication device 51 performs communication via Ethernet (registered trademark), wireless LAN, or Wi-Fi (registered trademark), etc.
[0022] The input device 54 is a device that is operated by a user of the information processing system 1A and into which information is input. The input device 54 includes, for example, a keyboard, a mouse, a keypad, or a touch panel, etc. The function of receiving information in the request reception unit 11 is realized by the input device 54.
[0023] The display device 55 is a device that displays information. The display device 55 is, for example, an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display. The function of displaying information in the answer presentation unit 15 is realized by the display device 55.
[0024] Note that the hardware configuration for realizing the terminal device 2A is not limited to what is exemplified here and can be changed as appropriate. The terminal device 2A may be provided with a voice input unit and a voice output unit. The voice input unit is, for example, a microphone. The voice output unit is, for example, a speaker. A typical example of the terminal device 2A is a personal computer. The terminal device 2A may be a terminal such as a smartphone or a tablet. Note that the terminal device 2A may be a numerical control device that is a control device for a machine tool.
[0025] In the information processing system 1A shown in FIG. 1, the components of the information processing system 1A are provided in a terminal device 2A that is one device. The information processing system according to Embodiment 1 is not limited to one in which the components of the information processing system are provided in one device. The components of the information processing system may be distributed among two or more devices that can cooperate functionally.
[0026] FIG. 3 is a diagram showing a second configuration example of the information processing system according to Embodiment 1. FIG. 3 shows an information processing system 1B which is a second configuration example of the information processing system. The information processing system 1B is configured by a terminal device 2B and a backend device 3B. That is, in the information processing system 1B, the components of the information processing system 1B are distributed between the terminal device 2B and the backend device 3B. FIG. 3 shows the terminal device 2B, the backend device 3B, and an artificial intelligence 4 outside the information processing system 1B.
[0027] The terminal device 2B includes a request reception unit 11, a transmission / reception unit 13, and an answer presentation unit 15. The backend device 3B includes an input generation unit 12, a transmission / reception unit 13, and an answer generation unit 14. In the information processing system 1B, the components that are interfaces with the user are provided in the terminal device 2B, and the other components are provided in the backend device 3B. In the information processing system 1B, each of the terminal device 2B and the backend device 3B is provided with a transmission / reception unit 13.
[0028] The request reception unit 11 of the terminal device 2B receives requests regarding operations performed when using the machine tool, in the same manner as the request reception unit 11 of the terminal device 2A shown in FIG. 1. The transmission / reception unit 13 of the terminal device 2B communicates with the backend device 3B. The terminal device 2B communicates with the backend device 3B through the transmission / reception unit 13. The transmission / reception unit 13 of the terminal device 2B transmits information indicating the request received by the request reception unit 11 to the backend device 3B.
[0029] The transceiver unit 13 of the backend device 3B communicates with each of the terminal device 2B and the artificial intelligence 4. The transceiver unit 13 of the backend device 3B receives information indicating a request transmitted from the terminal device 2B. Based on the information indicating the request received by the transceiver unit 13, the input generation unit 12 of the backend device 3B generates an input data set corresponding to the request. The transceiver unit 13 of the backend device 3B transmits the input data set generated by the input generation unit 12 to the artificial intelligence 4. The transceiver unit 13 of the backend device 3B receives a first response, which is the output by the artificial intelligence 4 with the input data set input thereto.
[0030] The response generation unit 14 of the backend device 3B generates a second response, which is a response to the above request, using the first response received by the transceiver unit 13. The transceiver unit 13 of the backend device 3B transmits the second response generated by the response generation unit 14 to the terminal device 2B. The transceiver unit 13 of the terminal device 2B receives the second response transmitted from the backend device 3B. The response presentation unit 15 of the terminal device 2B presents the second response received by the transceiver unit 13.
[0031] The transceiver unit 13 of the terminal device 2B and the transceiver unit 13 of the backend device 3B are communicably connected to each other by various known communication means. The communication means may be either wired communication or wireless communication. For wired communication, Ethernet may be used. The wired communication may be either serial communication using USB (Universal Serial Bus) or the like, or parallel communication. For wireless communication, Wi-Fi or Bluetooth (registered trademark) may be used.
[0032] Among the components of the information processing system 1B, the component that is an interface between the user and the other components are provided in the terminal device 2B, and the other components are provided in the backend device 3B, whereby the terminal device 2B can be made lightweight.
[0033] The terminal device 2B can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2. The hardware configuration for realizing the terminal device 2B may include a voice input unit or a voice output unit. Since the terminal device 2B can have a lightweight configuration as described above, it is suitable for terminals where weight reduction is emphasized, such as smartphones, tablets, or wearable terminals. The terminal device 2B may also be a personal computer. The backend device 3B can be realized by a configuration similar to the configuration of the hardware configuration shown in FIG. 2 excluding the input device 54 and the display device 55. Examples of the backend device 3B are a personal computer or a server device, etc.
[0034] FIG. 4 is a diagram showing a third configuration example of the information processing system according to the first embodiment. FIG. 4 shows an information processing system 1C which is a third configuration example of the information processing system. The information processing system 1C is composed of two terminal devices 2C1, 2C2 and a backend device 3C. That is, in the information processing system 1C, the components of the information processing system 1C are distributed among the two terminal devices 2C1, 2C2 and the backend device 3C. FIG. 4 shows the two terminal devices 2C1, 2C2, the backend device 3C, and the artificial intelligence 4 outside the information processing system 1C.
[0035] The terminal device 2C1 includes a request reception unit 11 and a transmission / reception unit 13. The terminal device 2C2 includes a transmission / reception unit 13 and an answer presentation unit 15. The backend device 3C includes an input generation unit 12, a transmission / reception unit 13, and an answer generation unit 14. The backend device 3C has the same configuration as the backend device 3B shown in FIG. 3. In the information processing system 1C, the components that are interfaces with the user are distributed among the respective terminal devices 2C1, 2C2, and the components other than the interfaces are provided in the backend device 3C. In the information processing system 1C, each of the terminal device 2C1, the terminal device 2C2, and the backend device 3C is provided with a transmission / reception unit 13.
[0036] The request reception unit 11 of the terminal device 2C1 receives requests regarding operations performed when using the machine tool, similar to the request reception unit 11 of the terminal device 2A shown in FIG. 1. The transmission / reception unit 13 of the terminal device 2C1 communicates with the backend device 3C. The terminal device 2C1 communicates with the backend device 3C through the transmission / reception unit 13. The transmission / reception unit 13 of the terminal device 2C1 transmits information indicating the request received by the request reception unit 11 to the backend device 3C.
[0037] The transmission / reception unit 13 of the backend device 3C communicates with each of the terminal device 2C1, the terminal device 2C2, and the artificial intelligence 4. The transmission / reception unit 13 of the backend device 3C receives information indicating the request transmitted from the terminal device 2C1. The input generation unit 12 of the backend device 3C generates an input data set corresponding to the request based on the information indicating the request received by the transmission / reception unit 13. The transmission / reception unit 13 of the backend device 3C transmits the input data set generated by the input generation unit 12 to the artificial intelligence 4. The transmission / reception unit 13 of the backend device 3C receives a first response, which is the output of the artificial intelligence 4 with the input data set input thereto.
[0038] The response generation unit 14 of the backend device 3C generates a second response, which is a response to the above request, using the first response received by the transmission / reception unit 13. The transmission / reception unit 13 of the backend device 3C transmits the second response generated by the response generation unit 14 to the terminal device 2C2. The transmission / reception unit 13 of the terminal device 2C2 receives the second response transmitted from the backend device 3C. The response presentation unit 15 of the terminal device 2C2 presents the second response received by the transmission / reception unit 13.
[0039] The transmission / reception unit 13 of the terminal device 2C1, the transmission / reception unit 13 of the terminal device 2C2, and the transmission / reception unit 13 of the backend device 3C are communicably connected to each other by various known communication means. The communication means may be either wired communication or wireless communication, similar to the case of the information processing system 1B shown in FIG. 3.
[0040] Among the components of the information processing system 1C, the components that are interfaces with the user are provided in the terminal devices 2C1 and 2C2, and the other components are provided in the backend device 3C. Further, the request reception unit 11 and the response presentation unit 15, which are interfaces with the user, are divided between the terminal device 2C1 and the terminal device 2C2. The terminal device 2C1 can be configured to be specialized in the function of receiving requests. The terminal device 2C2 can be configured to be specialized in the function of presenting responses. Thereby, each of the terminal devices 2C1 and 2C2 can be made lightweight.
[0041] Each of the terminal devices 2C1 and 2C2 can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2. The hardware configuration for realizing each of the terminal devices 2C1 and 2C2 may include a voice input unit or a voice output unit. As an example, the terminal device 2C1 may be a headset, and the terminal device 2C2 may be smart glasses. In this case, a request is input to the request reception unit 11 by the speech of the user wearing the headset. Also, the response by the response presentation unit 15 is presented by the display on the smart glasses worn by the user. The user can input a request and confirm the response to the request without using their hands. Thereby, the information processing system 1C can provide the user with a very comfortable operability.
[0042] Note that the mode of distributing the components of the information processing system is not limited to the above-described second or third configuration example and is arbitrary.
[0043] Next, the operation procedure of the information processing system according to Embodiment 1 will be described. Here, taking the information processing system 1A shown in FIG. 1 as an example, the operation procedure of the information processing system 1A will be described. FIG. 5 is a flowchart showing an example of the operation procedure of the information processing system according to Embodiment 1.
[0044] In step S1, the request reception unit 11 receives a request regarding the work performed when using the machine tool. In step S2, the input generation unit 12 generates an input data set corresponding to the request based on the request received in step S1. In step S3, the transmission / reception unit 13 transmits the input data set generated in step S2 to the artificial intelligence 4. When the input data set is input, the artificial intelligence 4 outputs a first response.
[0045] In step S4, the transmission / reception unit 13 receives the first response output by the artificial intelligence 4. In step S5, the response generation unit 14 generates a second response using the first response received in step S4. In step S6, the response presentation unit 15 presents the second response generated in step S5. Thus, the information processing system 1A ends the operation according to the procedure shown in FIG. 5.
[0046] In the information processing system 1A, the operation according to the procedure from step S1 to step S6 is performed by the terminal device 2A. In the information processing system 1B shown in FIG. 3, an operation similar to the operation according to the procedure shown in FIG. 5 is performed by the terminal device 2B and the backend device 3B. In the information processing system 1C shown in FIG. 4, an operation similar to the operation according to the procedure shown in FIG. 5 is performed by the two terminal devices 2C1 and 2C2 and the backend device 3C.
[0047] Next, each component of the information processing system according to Embodiment 1 will be described. Hereinafter, taking the information processing system 1A shown in FIG. 1 as an example, each component of the information processing system 1A will be described. It should be noted that the description of each component of the information processing system 1A is assumed to be the same for each component of the information processing systems 1B and 1C.
[0048] <Request reception unit 11> The request reception unit 11 receives requests regarding operations performed when using a machine tool. In Embodiment 1, the machine tool includes a cutting machine, a grinding machine, an electric discharge machine, a laser processing machine, or an additive manufacturing (AM) processing machine, etc. Also, the configuration of each of these processing machines is not particularly limited. For example, the cutting machine may be any of a machining center, a lathe, or a composite machining machine. Furthermore, operations performed when using a press working machine, an injection molding machine, or an industrial robot, etc. may also be the subject of the request.
[0049] When using such a wide variety of industrial machines, expertise regarding the machine itself, or the controller or peripheral devices that control the machine is required. The requests in Embodiment 1 include all operations performed based on such expertise.
[0050] More specifically, the requests received by the request reception unit 11 are represented by information indicating operations performed when using the above-mentioned machine tool. The information includes a set of verb information representing at least one operation and object information representing one or more objects that are the targets of the operation. Note that in a request, a plurality of object information may be combined with one verb information. A request may include a plurality of verb information.
[0051] For example, in the request "create a ladder program that...", "create" is the verb information, and "a ladder program that..." is the object information. Also, in the request "What is the parameter for setting the maximum speed?", it can be considered that "What is it?" after "is" is omitted. In this case, "What is it?" is the verb information, and the object information corresponding to this verb information is "the parameter for setting the maximum speed". Or, "What is...?" may be read as "answer...", and "answer..." may also be used as the verb information.
[0052] The expression form of the request shall not be particularly limited. The request may be composed in natural language by using text data, that is, a character string, or may be composed of voice information. Further, the request may be composed of information indicating a button operation or information indicating a screen operation. In this case, by associating in advance the content of the operation on the button or the screen with the content of the request, the content of the request can be determined according to the content of the button operated or the operation on the screen. By doing so, the request reception unit 11 may be able to grasp the content of the request and convert the input request into request information.
[0053] When the request is composed of voice information, more specifically, voice data obtained from a sound collection device such as a microphone is converted into text information by a speech recognition process. When receiving a request by a button operation or a screen operation, the content of the request indicated by the button or the operation is stored in advance in a database or a table, and the content of the request corresponding to the button operation or the screen operation is read from the database or the table, whereby the content of the request is grasped.
[0054] FIG. 6 is a first diagram showing an example of a screen displayed by the request reception unit 11 included in the information processing system according to Embodiment 1. FIG. 7 is a second diagram showing an example of a screen displayed by the request reception unit 11 included in the information processing system according to Embodiment 1. The button indicated as "AI Assist" at the lower right of the screen shown in FIG. 6 is a button that receives an operation for activating the request reception unit 11. When the "AI Assist" button shown in FIG. 6 is pressed, as shown in FIG. 7, a pop-up for inputting a request is displayed on the screen. Note that the hand-shaped figure shown in FIG. 6 represents that the button is pressed.
[0055] Note that an area where requests are input may be constantly displayed on the screen. However, as shown in FIGS. 6 and 7, by displaying the area where requests are input as a pop-up as needed, the operability of the screen other than when accepting requests can be improved. Also, it becomes easier to detect the operation content for the request reception unit 11 from the operation history of the buttons or the operation history of the screen. That is, by triggering an operation such as pressing the "AI Assist" button, it becomes easier to determine that subsequent operations are related to requests.
[0056] As shown in FIG. 7, in the pop-up, a system-side speech bubble representing the content of the conversation from the information processing system 1A to the user is displayed. In the example shown in FIG. 7, a string "Please select your request from the following" which is a message prompting the user to input a request is displayed in such a speech bubble. In the pop-up shown in FIG. 7, a button for accepting questions for the information processing system 1A and a button for accepting work requests to the information processing system 1A are displayed. When the user presses the "Question" button, the request reception unit 11 accepts the question. When the user presses the "Request" button, the request reception unit 11 accepts the work request.
[0057] FIG. 8 is a third diagram showing an example of a screen displayed by the request reception unit 11 included in the information processing system according to Embodiment 1. FIG. 8 shows an example of a pop-up displayed when accepting a request composed of text data. The pop-up shown in FIG. 8 is displayed when the "AI Assist" button is pressed from the state shown in FIG. 6. The pop-up shown in FIG. 8 is an example of a pop-up in the case of accepting requests in a chat format from the beginning when the request reception unit 11 is activated. In the pop-up shown in FIG. 8, a field for inputting text data is displayed in the user-side speech bubble.
[0058] FIG. 9 is a fourth diagram showing an example of a screen displayed by a request reception unit 11 included in the information processing system according to Embodiment 1. FIG. 9 shows an example of a pop-up displayed when a request is input by voice. The pop-up shown in FIG. 9 is displayed when the "AI Assist" button is pressed from the state shown in FIG. 6.
[0059] In FIG. 9, a button with a graphic indicating a microphone is displayed in the pop-up. By pressing the button, the request reception unit 11 becomes capable of receiving voice. After the request reception unit 11 becomes capable of receiving voice, pressing the button again ends the reception of voice. Thereby, the request reception unit 11 can prevent malfunction due to unintended voice input.
[0060] Alternatively, by changing the display of the graphic indicating the microphone only when voice is detected, it is possible to easily confirm whether voice is detected or not by visually observing the graphic. Note that the mode of changing the display of the graphic indicating the microphone is arbitrary. For example, as a mode of changing the display of the graphic, changing the brightness of the graphic or changing the color of the graphic can be considered.
[0061] In the pop-up shown in FIG. 9, a character string indicating the result of speech recognition for the input voice is displayed in the speech bubble on the user side. From such a display, the user can confirm whether the content of the request by speech has been correctly received.
[0062] FIG. 10 is a diagram showing a first example of screen transitions displayed by a request reception unit 11 included in the information processing system according to Embodiment 1. In FIG. 10, an example of screen transitions when the "Question" button in the pop-up shown in FIG. 7 is pressed is shown. As shown in the upper part of FIG. 10, when the "Question" button is pressed, the display of the pop-up transitions to the display shown in the middle part of FIG. 10. As shown in the middle part of FIG. 10, in the system-side balloon portion in the pop-up, a character string "Please select your question content from the following" which is a message prompting selection of the question content is displayed.
[0063] Also, below the said balloon portion shown in FIG. 10, several buttons representing options regarding the question content, such as "Regarding Machine Tools" or "Regarding Numerical Control", are displayed. In the state shown in the middle part of FIG. 10, for example, when the "Regarding Numerical Control" button is pressed, the display of the pop-up transitions to the display shown in the lower part of FIG. 10.
[0064] As shown in the lower part of FIG. 10, in the system-side balloon portion in the pop-up, a character string "Regarding numerical control. Please enter your question content" which is a message prompting input of the question content is displayed. Also, in the user-side balloon portion, a field for inputting text data indicating the question content is displayed. Thereby, the request reception unit 11 can grasp that a question regarding numerical control has been input as a request and that the question regarding numerical control has been input as text data.
[0065] FIG. 11 is a diagram showing a second example of screen transitions displayed by a request reception unit 11 included in the information processing system according to Embodiment 1. In FIG. 11, an example of screen transitions when the "Request" button in the pop-up shown in FIG. 7 is pressed is shown. As shown in the upper part of FIG. 11, when the "Request" button is pressed, the display of the pop-up transitions to the display shown in the middle part of FIG. 11. As shown in the middle part of FIG. 11, in the system-side balloon portion in the pop-up, a character string "Please select your request content from the following" which is a message prompting selection of the request content is displayed.
[0066] Also, below the blowing section shown in FIG. 11, several buttons representing options regarding the request content, such as "Program Creation" or "Data Creation / Output", are displayed. When the "Program Creation" button shown in the middle of FIG. 11 is pressed, the pop-up display transitions to the display shown in the lower part of FIG. 11.
[0067] As shown in the lower part of FIG. 11, in the system-side blowing section in the pop-up, the character string "Let's create a program. Please select the target" which is a message prompting the selection of the program to be created is displayed. Also, several buttons indicating options for the program to be created are displayed in the pop-up. In the example shown in the lower part of FIG. 11, the "Ladder Program" button and the "Processing Program" button are displayed. When one of the "Ladder Program" button and the "Processing Program" button is pressed, the request reception unit 11 can recognize that the creation of the program selected by the button press has been requested.
[0068] FIG. 12 is a diagram showing a third example of the screen transition displayed by the request reception unit 11 included in the information processing system according to Embodiment 1. FIG. 12 shows an example of the screen transition when the "Request" button in the pop-up shown in FIG. 7 is pressed. The pop-up display shown in the middle of FIG. 12 is the same as the pop-up display shown in the middle of FIG. 11. In FIG. 12, assume that the "Data Creation / Output" button is pressed in the state shown in the middle of FIG. 12. When the "Data Creation / Output" button is pressed, the pop-up display transitions to the display shown in the lower part of FIG. 12.
[0069] As shown in the lower part of FIG. 12, in the system-side blowing part in the pop-up, the character string "Create / Output data. Please select the target" which is a message prompting the selection of the data to be created or output is displayed. Also, several buttons indicating the options of the data to be created or output are displayed in the pop-up. In the example shown in the lower part of FIG. 12, buttons for "Processing program", "Tool model", "Operation procedure manual", and "Work model" are displayed. When one of these buttons is pressed, the request reception unit 11 can recognize that the creation or output of the data selected by the button press has been requested.
[0070] When a request is input in natural language by using chat or voice, the request reception unit 11 can grasp the details of the request with high versatility. However, for example, when a request to create a processing program is made, the request reception unit 11 can accept the detailed request content only from screen operations or button operations by displaying a list of function names for selection or by selecting from a list of previously input requests.
[0071] The request reception unit 11 converts the received request into the form of data called request information and passes it to the input generation unit 12. The request information is at least data that enables the input generation unit 12 to utilize the content of the received request. The request information includes one or more verb information and one or more object information paired with the verb information.
[0072] The request information is information extracted from the requests expressed in the above various expression forms. The form of the request information is not particularly limited. The request information may be in the form of a simple sentence that arranges the words extracted from the request in the order they were extracted as they are. Or, the request information may be in a structured form by arranging the words according to a certain rule. A certain rule is, for example, to clarify the relationship between the verb and the object, or the relationship such as parallel or contrast by the order of the words. Or, the request information may hold the character string indicating the received request as it is.
[0073] The request receiving unit 11 creates request information by extracting verb information and object information from the received request as described above. The request receiving unit 11 passes the created request information to the input generating unit 12.
[0074] <Input Generation Unit 12> The input generation unit 12 generates an input data set, which is an input to the artificial intelligence 4, based on the request information received from the request reception unit 11. The input generation unit 12 generates an input data set according to the request indicated in the request information, by referring to at least one of a specification database in which information indicating the specifications of the information processing system 1A or the specifications of a device external to the information processing system 1A is stored, setting parameters related to the settings of the information processing system 1A or the settings of a device external to the information processing system 1A, and retained data retained in a storage area accessible by the information processing system 1A.
[0075] The input generation unit 12 is provided with request information expressed in natural language. For this reason, the request information input to the input generation unit 12 may contain problems in obtaining a desired answer, such as variations in expression, missing or insufficient necessary information, or the inclusion of errors. In the artificial intelligence 4 that inputs and outputs natural language, the basic mechanism is often to predict what words are likely to appear before and after a certain word and create an output for the input, and language processing is not performed by accurately reading the context, etc. For this reason, it is expected that the above-mentioned problems will reduce the stability and reproducibility of the output for the input, and will have a significant impact on the quality of the output obtained from the artificial intelligence 4.
[0076] In the first embodiment, in order to suppress adverse effects of such problems, an input data set is generated by the input generation unit 12. In the following, generation of an input data set by the input generation unit 12 will be described using an example in which a machining program is requested to be created.
[0077] The elements that make up a machining program include G-codes or M-codes that specify the functions of the numerical control device, S-codes or F-codes that specify various speeds, axis commands that specify the axes to be operated or the coordinates of the target positions, and T-codes that specify the numbers of the tools to be used. In addition to these, information specifying a system number, or argument information according to the G-codes to be used, etc. is included in the elements that make up the machining program. In order to create the machining program as intended, correct information according to the specifications needs to be selected and specified in the correct order for these elements. However, these specifications vary depending on the manufacturer of the numerical control device, and may also vary depending on the series or settings even by the same manufacturer. For this reason, it is not easy to obtain correct output from the input of requirements expressed in natural language.
[0078] Therefore, the input generation unit 12 solves this problem by referring to the specification database, setting parameters, and held data. Hereinafter, the specification database will be referred to as the "specification DB".
[0079] <Specification DB> The specification DB referred to by the input generation unit 12 is a database that stores information regarding the specifications of the information processing system 1A and information regarding the specifications of external devices or external equipment that are the targets of information processing by the information processing system 1A. External devices or external equipment are, for example, machine tools or artificial intelligence 4, etc. In the specification DB, addition and deletion of information can be performed at any time. However, the content of the information stored in the specification DB is not frequently changed by the user of the information processing system 1A.
[0080] The specification DB stores, for example, information on specifications or manuals. The information on specifications or manuals includes, for example, information indicating basic usage methods of various functions, information on errors or alarms, or definitions and explanations of terms. More specifically, the specification DB may store a table in which functions and codes of G-codes or M-codes, which are commands of a machining program of a machine tool, are associated with each other for each manufacturer of the machine tool, for each manufacturer of the numerical control device, for each series of the numerical control device, or for each parameter setting.
[0081] The specification DB stores information regarding specification information for each manufacturer or series of each numerical control device. For example, the information stored in the specification DB includes information on a table or database in which the correspondence between components and functions is described for the above components of the machining program. Further, the information stored in the specification DB may include examples of commands of the machining program for each function.
[0082] <Set Parameter> The set parameters referred to by the input generation unit 12 are parameters related to the settings of the information processing system 1A or parameters related to the settings of an external device or external equipment that is the target of information processing by the information processing system 1A. The external device or external equipment is, for example, a machine tool or artificial intelligence 4 or the like. One example of the set parameters is a parameter used when controlling a machine tool. The set parameters shall include one or more of the type of the machine tool, information indicating the manufacturer of the machine tool, and information indicating the manufacturer of the control device of the machine tool. In the information processing system 1A, the specification DB to be referred to is switched according to the set value of the set parameters.
[0083] For example, the setting parameters may include information indicating the type of machine tool, such as a machining center, a lathe, a laser processing machine, or an electric discharge machining machine. The information indicating the type of machine tool is used to switch the instruction format in function commands such as G-codes or M-codes, that is, the command format. This is because the functions used differ depending on the type of machine tool, or the importance of the functions used differs depending on the type of machine tool, resulting in different command formats for each type of machine tool.
[0084] In addition, the setting parameters may include information about the axes provided in the machine tool that is the control target, more specifically, information such as the names or numbers of the axes. The above axis command consists of a combination of an alphabet specifying the axis and a numerical value of the coordinates of the target position. For example, when the target position is 100.0 mm on the X-axis, the axis command is "X100.0". In order to correctly create such an axis command, information such as what axes are provided in the machine tool and in which directions the provided axes are attached is required. The information indicating what axes are provided in the machine tool can also be said to be information representing what axes are not provided, that is, what axes should not be the target of the command.
[0085] <Held Data> The held data referred to by the input generation unit 12 is data stored in a storage area accessible by the information processing system 1A. The held data is data for which not only addition or deletion but also content changes are frequently performed compared to the data in the specification DB. Examples of the held data include a machining program, a ladder program, tool data, work data, work instructions, or internal data (coordinate values, variable values, or state variables).
[0086] For example, assume that the held data includes values indicating the current coordinates of each axis. The values of the current coordinates of each axis can be broadly divided into command values and feedback values. The command value is a value indicating the target position created by the control software. The feedback value is a value obtained by the motor actually operating in response to a command and the information of an encoder or sensor provided in the motor being fed back to the control system.
[0087] By referring to this information indicating the current coordinates of each axis, the input generation unit 12 can grasp the current state of the machine tool. When the user implicitly desires to create a machining program for an operation "from the current position", this information is required.
[0088] Alternatively, the input generation unit 12 can also use this information indicating the current coordinates of each axis when determining whether a request by the user is appropriate in light of the current position. For example, when the current position in a certain axis direction is near the end of the movable range, a request indicating further movement to a position ahead is determined to be inappropriate.
[0089] <Input data set> The input data set is information that is directly input to the artificial intelligence 4 and is composed of one piece of data or a combination of two or more pieces of data. The input data set mainly consists of two types: a prompt and a data file. The input data set may consist of only information from one of the prompt and the data file, or a combination of the prompt and the data file. The input data set may also be a combination of a plurality of prompts and a plurality of data files.
[0090] <Prompt> In types of artificial intelligence such as generative AI represented by ChatGPT (Chat Generative Pre-trained Transformer), or large language models (LLMs) used in generative AI, a prompt is used as the input to the artificial intelligence. The prompt is described in natural language. The prompt includes questions or requests for the artificial intelligence.
[0091] <Data file> The data files included in the input data set include one or more of a processing program, a ladder program, setting parameters, a work procedure manual for a machine tool, shape data of each of the tools and jigs attached to the machine tool, and shape data of the object to be processed by the machine tool.
[0092] There are large language models that can handle data files. For example, in ChatGPT, by using a plugin called Code Interpreter, it is possible to handle not only text files but also files described in the formats of programming languages such as Python, JavaScript (registered trademark), or HTML, and it is also possible to handle MSOffice files and image files such as jpg and png. Also, as AI that generates images or 3D data (hereinafter referred to as "3D data"), there is some that generates 3D data from text data or 2D image data. Examples of such AI include NVIDIA's GET3D, Stable Dreamfusion, and Text-to-CAD. By including data files in the input data set, such artificial intelligence can be effectively utilized. Note that in Embodiment 1, there are no particular restrictions on the format of the data file and the size of the data file. Each of the format of the data file and the size of the data file can be selected according to the artificial intelligence to be utilized.
[0093] <Function of the input generation unit 12> As a basic process, the input generation unit 12 adds additional text to the prompt to improve the accuracy of the answer. In the artificial intelligence where natural language is used for input and output as described above, it is known that the accuracy of the output varies depending on the prompt, and empirical rules for improving the accuracy of the output are known.
[0094] For example, by clarifying the role of the artificial intelligence 4, that is, by clarifying the position of the artificial intelligence 4 that gives the answer, the accuracy of the output of the artificial intelligence 4 is improved. Specifically, adding content such as "You are a skilled operator of a machine tool." to the prompt can be generally effective when giving the requirements necessary for using a machine tool to the artificial intelligence 4.
[0095] As another example, according to the research called EmotionPrompt (Large Language Models Understand and Can Be Enhanced by Emotional Stimuli, Cheng Li et.al), it is said that by adding emotional expressions to the prompt, the output accuracy of the LLM is improved. Specific examples of emotional expressions are things like "This is very important to my career." or "Take pride in your work and give it your best." Adding such text that draws out a sense of responsibility and self-efficacy from the emotional aspect to the prompt is also a good example.
[0096] Next, the input generation unit 12 refers to the set parameters and adds an explanation about the situation where the information processing system 1A, or an external device or external equipment (such as a machine tool or the artificial intelligence 4, etc.) is placed to the prompt. By inputting background knowledge or situation settings in detail to the artificial intelligence 4 through the prompt, it can be expected to reduce the probability of an inappropriate answer being output. For example, it is conceivable to add information indicating the type of the target machine tool to the prompt.
[0097] Then, the input generation unit 12 extracts relevant specific examples from the information stored in the specification DB and adds the specific examples to the prompt. Regarding the content for which an answer is requested from the artificial intelligence 4, it is expected that the accuracy of the answer will be improved by adding reference specific examples to the prompt. In particular, when the content of the request is in a predetermined form or format, by including specific examples described in the form or format in the prompt, the possibility that the answer from the artificial intelligence 4 will be in the expected form or format increases.
[0098] For example, when the request is a request regarding the creation of a machining program, it is conceivable to include a specific program example conforming to the format of the machining program in the prompt. In this case, the input generation unit 12 refers to the specification DB and describes a program example conforming to the functional specification in the prompt. It is expected that this will prevent an answer that violates the functional specification from being output.
[0099] Then, the input generation unit 12 selects a data file to be included in the input data set from the held data. As described above, when utilizing the artificial intelligence 4 that can handle data files, the input generation unit 12 selects data to be included in the input data set from the held data. The selection of data is performed according to the content of the request. For example, if in an existing work instruction manual, some of the work content is changed, when creating a work instruction manual reflecting the change, the original existing work instruction manual is selected.
[0100] In the above manner, the input generation unit 12 creates an input data set corresponding to the request based on the request information.
[0101] <Transmission / Reception Unit 13> The transmission / reception unit 13 transmits the input data set generated by the input generation unit 12 to the artificial intelligence 4. The transmission / reception unit 13 receives a first response that is the output from the artificial intelligence 4 for the input data set. Note that, in a configuration without the input generation unit 12, the transmission / reception unit 13 transmits the request information as it is to the artificial intelligence 4.
[0102] The first response is a response corresponding to the request and includes at least text information described in natural language or data including a data file configured in a specific format or format. The first response may include both the text information and the data file.
[0103] Regarding the transmission and reception by the transmission / reception unit 13, it is sufficient if it is possible to input necessary information to the artificial intelligence 4 and acquire the output from the artificial intelligence 4, and any known method may be used to implement it. The transmission and reception may be realized, for example, by a wired electrical communication connection such as Ethernet, or may be realized by a connection using wireless communication such as Wi-Fi or Bluetooth. Also, in a form where the artificial intelligence 4 is configured on the same hardware as the information processing system 1A, the transmission and reception may be realized by software data input / output processing via a storage unit such as a memory shared by the information processing system 1A and the artificial intelligence 4.
[0104] In Embodiment 1, it is assumed that there is no limitation on where the artificial intelligence 4 is configured. As long as the transmission / reception unit 13 can transmit the input data set to the artificial intelligence 4 and the transmission / reception unit 13 can receive the output of the artificial intelligence 4, the artificial intelligence 4 may be configured inside the information processing system 1A or may be configured outside the information processing system 1A.
[0105] In addition, in Embodiment 1, various forms of artificial intelligence can be used as the artificial intelligence 4. The artificial intelligence 4 may be configured using an algorithm such as Transformer, BERT (Bidirectional Encoder Representations from Transformers), or GPT, or may be configured by combining a plurality of algorithms including these. Also, in Embodiment 1, the information processing system 1A can also utilize various artificial intelligence services outside the information processing system 1A. The information processing system 1A may utilize, for example, ChatGPT, Bing, or Bard, or may use a smaller-scale language model, and furthermore, additional learning may be performed on these for utilization.
[0106] <Answer generation unit 14> The answer generation unit 14 generates a second answer, which is an answer to the request, using the first answer received by the transmission / reception unit 13. When generating the second answer, the answer generation unit 14 performs processing such as verification of basic rules, verification of functional specifications, verification of operations, and conversion to the answer format when presenting the second answer. The answer generation unit 14 does not need to perform all of these, and may execute any one or a combination of two or more of them. Or, the answer generation unit 14 may execute all of these.
[0107] <Verification of basic rules> As verification of basic rules, the answer generation unit 14 performs verification of the formal aspect of the first answer. Here, the verification of the formal aspect is to mechanically confirm whether or not the first answer conforms to a certain rule based on a certain rule with respect to the superficial aspect, regardless of the content of the first answer.
[0108] For example, regarding the machining program, checking the basic grammar corresponds to verifying the basic rules. When the machining program is an EIA / ISO format program, a line feed code (End Of Block: EOB) needs to be inserted at the end of each block, which is often represented by ";". Also, at the beginning and end of the program, an end of record (End Of Record: EOR), usually represented by "%", needs to be inserted. Moreover, the types of characters used in the program are only alphanumeric, and double-byte characters found in some languages or characters of other languages are not accepted. These characters are allowed when they are described as comments having a role as a memo rather than a part to be executed, that is, when they are enclosed by symbols indicating a comment area such as "()".
[0109] Regarding the data file, checking the data format corresponds to verifying the basic rules. Although there are various data formats, it is common to identify them by the file extension or by the information contained in the header area at the beginning of the data. Whether the data format identified by these methods matches the required data type is verified.
[0110] <Verification of Functional Specifications> The verification of the above-described basic rules was a verification on the formal side, but in the verification of functional specifications, more specifically, verification is performed on the content of the first answer. The first answer includes the functions of the information processing system 1A and the content regarding various functions provided by an external device or external equipment (such as a machine tool, etc.) that is the object of information processing by the information processing system 1A. Verifying whether this content is correct in light of the functional specification information is the verification of functional specifications. The answer generation unit 14 may verify the functional specifications by referring to the specification DB.
[0111] For example, regarding the machining program, it is verified whether there are any problems in light of the usage environment such as parameter settings with respect to the availability of the instructions included in the machining program. Regarding the ladder program, it is verified whether there are any problems with respect to the availability of the instructions or devices used in the ladder program.
[0112] For each of the verification of basic rules and the verification of functional specifications, items that violate the rules are kept in a list form as check items, and such a list of prohibited items (hereinafter referred to as the "NG list") may be used for verification. Specifically, a method of detecting a specific character string or a specific type of data file, etc. can be considered. Also, the items in this NG list may be added, deleted, or changed appropriately or sequentially. Furthermore, the list to be used as the NG list may be added, deleted, or changed appropriately or sequentially.
[0113] Here, a more specific example of the verification of functional specifications will be described. In artificial intelligence, there may be a problem called hallucination. This is when the artificial intelligence answers as if incorrect or inaccurate content is correct. As a technique using this, there is a report that it is possible to execute malicious code by having the artificial intelligence learn malicious code and outputting an answer including the malicious code to the artificial intelligence (Diving Deeper into AI Package Hallucinations (Lasso Security)).
[0114] Using the NG list, it is possible to detect information on known malicious code published as described above and prevent the execution of malicious code. Also, when new information is published, it is possible to respond quickly by updating the NG list. In addition, it is possible to prevent the risk that the artificial intelligence 4 answers information that should not be disclosed to the user or operation contents that should be prohibited from a safety perspective.
[0115] <Verification of Operations> In the operation verification, among the contents included in the first response, for the contents that can be executed as software, the operation is actually performed or virtually performed using simulation or the like to verify whether there is any problem with the contents. For example, for machining programs, program check or simulation functions are implemented in many products, and the operation can be verified by using these functions.
[0116] <Conversion to the response format when presenting the second response> The conversion to the response format when presenting the second response aims to make the format of the second response suitable for the user by keeping the content of the information included in the first response unchanged and changing the expression format. Although it may be possible to present the first response as the response as it is, depending on the situation desired by the user, additional operations such as editing, copying, or fine-tuning may occur for the user. Therefore, here, the response generation unit 14 generates the second response by changing only the expression format of the first response. The response generation unit 14 finally performs the conversion to the format when presenting the response to the user.
[0117] Here, the conversion of the expression format refers to changing the electronic expression method such as the position of the display screen, the display method such as the display size or color, when presenting the response by the response presentation unit 15, whether to display by listing strings, in a table format, in a graphical or 3D graphics format, etc., which is a visual drawing expression method, and the data format when outputting as text data or data files. Furthermore, the change in the transmission format, that is, whether to transmit the response by visual expression or by auditory expression, that is, voice, may also be included in the conversion of the expression format.
[0118] Alternatively, the display position of the answer may be specified by coordinates on the screen. As the display position of the answer, for example, the current position of the cursor, the position of a specific window, or a position after a character string that is a specific keyword may be specified. For example, for a machining program, whether to output the created program as a program file, input the created program at a predetermined position on the screen like in an MDI (Manual Data Input) window, or input the created program after the current position of the cursor, etc., may be selected, and thereby the display position of the answer may be specified.
[0119] FIG. 13 is a first diagram for explaining the conversion of the answer format by the answer generation unit 14 included in the information processing system according to Embodiment 1. FIG. 14 is a second diagram for explaining the conversion of the answer format by the answer generation unit 14 included in the information processing system according to Embodiment 1. FIG. 13 shows a state when the creation of a machining program for a command of tool tip point control is requested by an operation on a popup on the screen. FIG. 14 shows a state where the machining program created in response to such a request is input after the current position of the cursor.
[0120] FIG. 15 is a third diagram for explaining the conversion of the answer format by the answer generation unit 14 included in the information processing system according to Embodiment 1. FIG. 16 is a fourth diagram for explaining the conversion of the answer format by the answer generation unit 14 included in the information processing system according to Embodiment 1. FIG. 15 shows a state when the creation of the continuation of the currently created machining program is requested by an operation on a popup on the screen. FIG. 16 shows a state where the machining program created in response to such a request is input as the continuation of the machining program created so far.
[0121] Further, when there are problems in each verification in the answer generation unit 14, the answer generation unit 14 may stop the presentation of the answer by the answer presentation unit 15. In this case, the information processing system 1A can obtain the effect of suppressing the presentation of answers with quality problems. Or, the answer generation unit 14 may cause the answer presentation unit 15 to present an answer and prompt the user's attention by describing the fact that there are problems in the verification as a verification result. The answer generation unit 14 may present a second answer by adding information on the verification result to the first answer and displaying it.
[0122] Or, the answer generation unit 14 may delete only the part of the answer that has problems in the verification and use the other part as the second answer. For example, when using the above NG list, by deleting only the information that should not be presented as an answer, the information processing system 1A can obtain the effect of avoiding the risk of presenting the problematic part while presenting the part without quality problems as an answer.
[0123] Also, the answer generation unit 14 may be able to distinguish the part created by the artificial intelligence 4 in the processing program. Since it is difficult to guarantee 100% reproducibility or quality of the output of the artificial intelligence 4, there may be a desire to check the part created by the artificial intelligence 4 before the processing program is finally used. By making it possible to distinguish the part created by the artificial intelligence 4, the location to be checked becomes clear, and the explainability and transparency of the system using the artificial intelligence 4 can be improved.
[0124] The answer generation unit 14 performs a display conversion for making the part created by the artificial intelligence 4 distinguishable. That is, the conversion to the answer format indicating the second answer includes the conversion for making the part created by the artificial intelligence 4 distinguishable.
[0125] The mode of display conversion for making the parts created by the artificial intelligence 4 distinguishable shall be arbitrary. As specific examples, for a character string, changing the color or thickness of the characters, drawing a marker on the relevant part, surrounding the relevant part with a frame, or underlining the relevant part, etc. can be considered. For data, embedding information indicating that it was created by the artificial intelligence 4 as metadata, or explicitly stating in the file name of the data that it was created by the artificial intelligence 4, etc. can be considered. The information processing system 1A can explicitly show the user the parts created by the artificial intelligence 4 among the answers presented to the user in a display that makes the parts created by the artificial intelligence 4 distinguishable.
[0126] Also, when the part created by the artificial intelligence 4 contains a numerical value, the answer generation unit 14 may further perform conversion on the numerical value.
[0127] The artificial intelligence 4 based on the language model predicts which words are likely to come after a certain word through learning based on the relevance between words. In this case, since numerical information has less dependence on the surrounding context than words, it is known that the accuracy of the numerical information output by the generative AI is lower compared to the case of words. From this, it can be said that the numerical information output by the artificial intelligence 4 needs to be carefully confirmed by the user.
[0128] To prompt the user to make a more careful confirmation, the answer generation unit 14 may, for example, convert the numerical information created by the artificial intelligence 4 to be more prominent than other parts. As specific examples, making the characters thicker, making the characters thicker after applying a marker to the characters, or using the complementary color to the color of the marker as the character color, etc., by combining various display modes, it is conceivable to make the characters of the numerical information stand out.
[0129] Alternatively, when the part created by the artificial intelligence 4 contains numerical values, the answer generation unit 14 may replace the numerical values with specific symbols or specific characters, or may delete the numerical values. That is, when the part created by the artificial intelligence 4 contains numerical values, the conversion to the answer format indicating the second answer may include the conversion of replacing the numerical values with specific symbols or specific characters, or the deletion of the numerical values.
[0130] For example, simply deleting the numerical values contained in the part created by the artificial intelligence 4 may cause the part where the numerical values are deleted to be overlooked. In this case, by replacing the numerical values with specific symbols or specific characters by the answer generation unit 14, it becomes easier for the user to recognize that confirmation and correction by the user are necessary. Note that such conversion is not necessarily uniformly performed for all numerical values contained in the part created by the artificial intelligence 4. The answer generation unit 14 may selectively perform conversion only for numerical values that meet specific conditions by conforming to specific rules.
[0131] Here, a specific example of the conversion of numerical values included in the part created by the artificial intelligence 4 will be described. For example, assume that the artificial intelligence 4 outputs a program "G90 G01 X100.0 F1000;" as a machining program. In such a program, the numerical value following "G" is a numerical value that specifies the G code and can be said to be a numerical value with a one-to-one correspondence with the function. Therefore, the numerical value following "G" in the program output by the artificial intelligence 4 can be said to be highly reliable among numerical information. The numerical value that specifies the M code, that is, the numerical value following "M", can also be said to be highly reliable, similar to the numerical value following "G". In contrast, the numerical value following "X" and the numerical value following "F" represent the position of the axis and the moving speed, respectively. Each of the numerical value following "X" and the numerical value following "F" can take any value and it can be said that accurate prediction is difficult. Therefore, each of the numerical value following "X" and the numerical value following "F" in the program output by the artificial intelligence 4 can be said to be less reliable compared to the numerical value of the G code or the numerical value of the M code.
[0132] Therefore, the answer generation unit 14 converts a program such as "G90 G01 X100.0 F1000;" into "G90 G01 X F〇;", for example. In the converted program, the numerical value following "X" is deleted. The user makes a correction to add the accurate numerical value of the X code to this converted program.
[0133] In this way, by deleting the numerical value of the X code in the converted program, even if the converted program is executed as it is, the execution of the program will be interrupted due to an error. If an incorrect value is described as the numerical value of the X code, there may be a problem that the machine tool tries to move to an unexpected position due to the incorrect value being overlooked. By performing the conversion to delete the numerical value of the X code by the answer generation unit 14, such problems can be prevented in advance.
[0134] In addition, in the program after the above conversion, instead of the numerical value following "F", a symbol "〇" that is not normally possible is inserted. The user makes a correction to this converted program by deleting "〇" and adding the exact numerical value of the F code. Note that the symbol inserted instead of the numerical value may be any specific symbol that is not normally used in the program, and it may be a symbol other than "〇". Or, instead of a symbol, a specific character may be inserted in place of the numerical value. By the conversion in the answer generation unit 14, a specific symbol or a specific character is inserted in place of the numerical value of the F code, so that the user can easily recognize that it is necessary to replace the symbol or the character with the numerical value of the F code.
[0135] Alternatively, the information processing system 1A may automatically perform verification, correction, or modification on the numerical part output by the artificial intelligence 4. For example, when the information processing system 1A verifies the operation of the machine tool by executing the program, if a problem occurs in the position or speed in a certain axis direction, the information processing system 1A may use the verification result of such operation to correct the numerical part output by the artificial intelligence 4.
[0136] Note that it is not necessary for all of the above processes in the answer generation unit 14 to be implemented, and at least any one of them may be implemented. Also, two or more of the above processes may be combined and implemented, or all of the above processes may be implemented. Depending on the content of each process implemented, the effect of improving the accuracy of the second answer through verification and the effect of improving the convenience for the user by converting the answer format can be obtained.
[0137] Also, for example, the answer generation unit 14 may use the first answer without performing any form change and only performing verification of the basic rules as the second answer. Or, the answer generation unit 14 may only change the form of the first answer without performing any verification and use it as the second answer.
[0138] Each of the above processes in the response generation unit 14 may be performed in any order. Also, at least one of the above processes may be performed multiple times. For example, the response generation unit 14 may perform each verification process after formatting the response by format conversion, and then perform format conversion again. For example, when creating a processing program with the artificial intelligence 4, explanatory texts other than the main body of the processing program may be attached to the created processing program. In such a case, verification may be regarded as inappropriate when performed with such explanatory texts remaining. The response generation unit 14 can avoid such a problem by extracting only the part to be verified in advance.
[0139] The response generation unit 14 outputs the second response generated as described above to the response presentation unit 15.
[0140] <Response presentation unit 15> The response presentation unit 15 presents the second response generated by the response generation unit 14. That is, the response presentation unit 15 presents a response to the request created based on the output by the artificial intelligence 4 to which the input data set is input.
[0141] The response presentation unit 15 presents the second response using a display means such as a display provided in the terminal device 2A. Note that in the information processing system according to the first embodiment, the response generation unit 14 may be omitted. When the information processing system has a configuration in which the response generation unit 14 is omitted, the response presentation unit 15 presents the first response output by the artificial intelligence 4 as it is.
[0142] When the request received by the request reception unit 11 is for creating or outputting a data file, the information processing system 1A stores the data file in a predetermined storage area. In this case, the response presentation unit 15 presents information indicating that the storage of the data file has been completed.
[0143] As described above, due to the series of roles in each component of the information processing system 1A, the information processing system 1A can present a more accurate answer to the request input to the information processing system 1A. The information processing system 1A can present a more accurate answer compared to the case where an answer is obtained simply by inputting a request to the artificial intelligence 4.
[0144] <Specific Example> A specific example will be used to describe the series of operations of the information processing system according to Embodiment 1 described above. Here, an example is a case where a user inputs a request "Tool change at T08" to the information processing system. If the information processing system according to Embodiment 1 is not applied, such a request will be directly input to the artificial intelligence 4. In this case, since the request is unclear, the artificial intelligence 4 may output an answer such as "Understood. Performing tool change at T08. Please wait a moment."
[0145] In the information processing system according to Embodiment 1, first, the request reception unit 11 determines that "exchange" is a verb and detects "tool" as the object. The request reception unit 11 outputs request information including a set of the original input request "Tool change at T08", the verb information "exchange", and the object information "tool".
[0146] Next, the input generation unit 12 searches the specification DB with the keyword "tool change". As a result, "M06" is retrieved as the M-code command for tool change, and further, information "Tt M06" is detected as a program example.
[0147] FIG. 17 is a diagram showing an example of a prompt included in the input data set in the information processing system according to Embodiment 1. By the above processing by the request reception unit 11 and the input generation unit 12, it can be expected that the output from the artificial intelligence 4 can be approximated to the correct answer "T08 M06" even if the prompt of the input data set is simply configured with information as shown in FIG. 17.
[0148] Next, a case where the user inputs a request regarding the creation of a ladder program to the information processing system will be described. Although there are various description methods for ladder programs, here, the case of describing a ladder program in ST language will be taken as an example. The ST language is a language defined in IEC61131-3. By using the ST language, it is possible to describe a ladder program or a sequence program by using expressions using operators (*, / , +, -, =, etc.), selection branches by conditional statements, control statements such as repetition by loop statements, calling user-defined function blocks (Function Block: FB), calling other vendor-defined functions, or describing comments including full-width characters. Since the ST language is close to a high-level language, it can be expected that processing by artificial intelligence 4 will be easier than with ladder language.
[0149] FIG. 18 is a first diagram for explaining an example in which the information processing system according to Embodiment 1 is requested to create a ladder program. For example, assume that a request for creating a ladder program as shown in FIG. 18 is input as a request. If the information processing system according to Embodiment 1 is not applied, such a request will be directly input to the artificial intelligence 4. In this case, since the "ladder program" indicated in the request generally assumes a program in a ladder diagram, there are cases where it cannot be processed by text-based artificial intelligence 4.
[0150] In the information processing system according to Embodiment 1, first, the request reception unit 11 determines that "create" is a verb and detects "ladder program" as an object. The request reception unit 11 outputs request information including a set of the entire input original request, the verb information "create", and the object information "ladder program".
[0151] Next, the input generation unit 12 searches the specification DB for the keyword "ladder program". As a result, "ST language" is detected.
[0152] FIG. 19 is a second diagram for explaining an example in which creation of a ladder program is requested to the information processing system according to Embodiment 1. FIG. 20 is a third diagram for explaining an example in which creation of a ladder program is requested to the information processing system according to Embodiment 1. By the above processing by the request reception unit 11 and the input generation unit 12, for example, a single word "in ST language" as shown in FIG. 19 is supplemented as a prompt for the input data set. By supplementing the single word "in ST language", for example, the possibility of obtaining a response in which a specific program as shown in FIG. 20 is described increases.
[0153] In addition, the response generation unit 14 performs processing to delete the opening explanatory text and the closing explanatory text from the response shown in FIG. 20. Further, the response generation unit 14 performs processing such as checking whether a label can be used or verifying grammar for the program part in the response shown in FIG. 20. The information processing system can present the program required by the user by presenting a second response after performing these processes by the response generation unit 14.
[0154] Next, a case where the user inputs a change to the work procedure manual as a request to the information processing system will be described. The work procedure manual is a document created for the purpose of standardizing the procedures when using a machine tool. In general, the work procedure manual describes procedures and precautions for operations using the machine tool and the processes before and after it, such as pre-preparation (setup) and cleanup, using characters and diagrams. The work procedure manual may be operated as paper materials, but may also be created and referred to as an electronic file such as a Word, Excel, or PDF (Portable Document Format) file.
[0155] By an operator using a machine tool to work according to this work procedure manual, it can be said that the purpose of creating the work procedure manual is to standardize the work quality regardless of knowledge and skills. Even if there are slight changes or modifications to the procedure, it is desirable to revise the work procedure manual to match the actual work, but changing the electronic file may be troublesome for the operator.
[0156] Therefore, for example, assume that a user inputs a request to an information processing system saying "Please change Work Instruction Manual_No.xxx as [Change Location · Change Content] and create Work Instruction Manual_No.xxx-1". [Change Location · Change Content] may include, for example, information specifying the change location in the work procedure manual that is the object of change, such as "Add wearing protective gear as a precaution to Work Procedure 1", and information specifying the change content.
[0157] In the information processing system according to Embodiment 1, first, the request reception unit 11 detects "change" and "create" as verbs and detects "Work Instruction Manual_No.xxx" and "Work Instruction Manual_No.xxx-1" as object words. The request reception unit 11 outputs request information including a set of the input original request, the verb information "change" and "create", and the object word information "Work Instruction Manual_No.xxx" and "Work Instruction Manual_No.xxx-1".
[0158] Next, the input generation unit 12 searches for the held data using the keywords "work procedure manual" and "creation". As a result, "work instruction manual_No.xxx" is detected as existing data, and "work instruction manual_No.xxx" is set as the data file of the input data set. The original request content is set in the prompt. The transmission / reception unit 13 transmits the input data set generated by the input generation unit 12 in this way to the artificial intelligence 4. Assume that such artificial intelligence 4 is capable of inputting and outputting data files. The transmission / reception unit 13 receives a new work procedure manual, which is the output of the artificial intelligence 4 for such input. In this way, the information processing system obtains, as the first response, a new work procedure manual in which the desired change points are changed with the desired change contents.
[0159] The response generation unit 14 generates a second response by changing the name of the file obtained as the first response to "work instruction manual_No.xxx-1". The response presentation unit 15 performs operations such as displaying the file, notifying the completion of file creation, or displaying the storage location of the file. As a result, a series of responses to the request by the information processing system is completed.
[0160] Next, an example of outputting a data file by the information processing system according to Embodiment 1 will be described. Here, a case will be described in which a setting parameter file, which is a file summarizing setting parameters, is output as the data file.
[0161] As a case where the output of the setting parameter file is desired, a case of saving the current operating environment of the machine tool as a backup during the maintenance of the machine tool can be considered. In that case, all setting parameters may be subject to saving, but there may also be a case where only specific setting parameters are desired to be saved. At the request reception unit 11, requests such as "save all current setting parameters", "save parameters related to acceleration / deceleration settings", or "save parameters of the X-axis" are input according to the user's request. In response to such a request, at the request reception unit 11, "save" is determined as verb information, and "(setting) parameters of xxx" is detected as object language information. Here, "xxx" is information related to the setting parameters for which saving is requested, such as "acceleration / deceleration setting relationship", and is information that changes depending on the input request.
[0162] The input generation unit 12 detects all the setting parameters. The input generation unit 12 converts the detected setting parameters into data in a data format that can be handled by the artificial intelligence 4, for example, text data. The input generation unit 12 sets the setting parameter file composed of the converted setting parameters as the data file of the input data set. Also, the input generation unit 12 searches for information corresponding to the above "xxx" by referring to the specification DB. For example, when "xxx" is "acceleration / deceleration setting relationship", keywords such as acceleration / deceleration or acceleration / deceleration time constant are detected. Information for specifying specific parameters corresponding to the detected keywords, for example, parameter numbers or parameter names, is included in the prompt constituting the input data set. Thereby, the output by the artificial intelligence 4 can be limited to only the setting parameters shown in the prompt among the setting parameter files set as the data files of the input data set.
[0163] In addition, the data structure of the setting parameter file often adopts a table format in which each parameter is a row and the setting target of the parameter, such as the X-axis or Y-axis, is a column, and the setting value of the parameter is stored at the position where the row and column intersect. Therefore, for example, by including a keyword such as "X-axis" in the prompt, it can be expected to tell the artificial intelligence 4 which row value in the setting parameter file should be extracted. Further, in order to improve the accuracy of the output of the artificial intelligence 4, the input generation unit 12 may clearly specify the data structure of the setting parameter in the prompt.
[0164] The transmission / reception unit 13 transmits the input data set created by the above processing by the input generation unit 12 to the artificial intelligence 4. The transmission / reception unit 13 receives the setting parameter file which is the first answer output from the artificial intelligence 4. Thereby, the information processing system can obtain the setting parameter file desired by the user.
[0165] The answer generation unit 14 generates a second answer by attaching a file name to the setting parameter file which is the first answer. The answer generation unit 14 may attach, as the file name, "X-axis setting parameter" which is a name created based on the content of "xxx". Or, the answer generation unit 14 may attach the date and time at the time of request execution as the file name in order to distinguish each of the plurality of setting parameter files.
[0166] Finally, the information processing system performs, by the answer presentation unit 15, display of the file name of the saved setting parameter file, notification that the saving of the setting parameter file is completed, or notification of the saving location of the setting parameter file, etc. Thereby, the information processing system completes the response to the request.
[0167] <Effect> According to Embodiment 1, the information processing system includes a request reception unit 11 that receives requests regarding operations performed when using a machine tool, a specification DB, setting parameters, and an input generation unit 12 that generates an input data set corresponding to the request by referring to at least one of the held data held in a storage area accessible to the information processing system, and a response presentation unit 15 that presents a response to the request, which is created based on the output by the artificial intelligence 4 into which the transmitted input data set is input. Compared with the case where the request is directly input to the artificial intelligence 4, the information processing system can improve the stability and reproducibility of the output with respect to the input, and improve the accuracy of the output from the artificial intelligence 4. The information processing system can achieve general-purpose usability by using natural language. As a result, the information processing system has a first effect of suppressing variations in output quality while providing general-purpose usability in a dialogue response using natural language that utilizes the artificial intelligence 4.
[0168] Further, the response presentation unit 15 presents the second response generated by the response generation unit 14. The requests received by the request reception unit 11 include at least one of creation of a machining program, creation of a ladder program, creation or output of a data file related to the machine tool or an operation using the machine tool, and response to a question related to the machine tool or an operation using the machine tool. The information processing system does not directly present the output obtained from the artificial intelligence 4 as a response, but in the response generation unit 14, at least one of verification of basic rules, verification of functional specifications, verification of operations, and conversion of the response format to the second response is executed. As a result, the information processing system has a second effect of being able to present a response with higher accuracy to the user.
[0169] The above-described first effect is brought about by having the input generation unit 12, and the above-described second effect is brought about by having the response generation unit 14. These two effects are obtained independently of each other. That is, even when the information processing system does not have one of the input generation unit 12 and the response generation unit 14, it can obtain without problems the effect brought about by the other of the input generation unit 12 and the response generation unit 14 by having the other. Further, when having both the input generation unit 12 and the response generation unit 14, the effects brought about by each of the input generation unit 12 and the response generation unit 14 are not reduced at all. In this case, the effects brought about by each of the input generation unit 12 and the response generation unit 14 are multiplied, and it becomes possible to present a more accurate response to the user.
[0170] Further, the setting parameters shall include one or more of the type of the machine tool, information indicating the manufacturer of the machine tool, and information indicating the manufacturer of the control device of the machine tool. In the information processing system 1A, the specification DB to be referred to is switched according to the set value of the setting parameters. Thereby, in the information processing system 1A, the range for referring to the specification DB and the range for searching the specification DB are limited, and the efficiency of the processing can be improved. Further, by referring to more appropriate specification information, the accuracy of the output of the artificial intelligence 4 can be improved.
[0171] Further, the data file includes one or more of a machining program, a ladder program, setting parameters, a work procedure manual of the machine tool, shape data of each of the tools and jigs attached to the machine tool, and shape data of the object to be machined by the machine tool. Thereby, by including one or more of the machining program, the ladder program, the setting parameters, the work procedure manual, the shape data of each of the tools and jigs, and the shape data of the object to be machined in the input to the artificial intelligence 4, the accuracy of the output from the artificial intelligence 4 can be further improved.
[0172] In addition, the conversion to the response format indicating the second response includes conversion that enables discrimination of the part created by the artificial intelligence 4. As a result, the information processing system can explicitly show the user the part created by the artificial intelligence 4 among the responses presented to the user.
[0173] Note that in the above, the artificial intelligence 4 is assumed to be a device external to the information processing systems 1A, 1B, and 1C. In Embodiment 1, the artificial intelligence 4 may be a device incorporated in the information processing systems 1A, 1B, and 1C. Even in and after Embodiment 2, the artificial intelligence 4, which was assumed to be provided outside the information processing system, may be provided inside the information processing system instead of outside the information processing system.
[0174] Embodiment 2. FIG. 21 is a diagram showing a first configuration example of the information processing system according to Embodiment 2. FIG. 21 shows an information processing system 1D which is a first configuration example of the information processing system according to Embodiment 2. The information processing system 1D is configured in a terminal device 2D. FIG. 21 shows the terminal device 2D and the artificial intelligence 4 outside the information processing system 1D. In Embodiment 2, the same reference numerals are given to the same components as those in Embodiment 1 above, and the configuration different from that of Embodiment 1 will be mainly described.
[0175] The terminal device 2D has the same configuration as the terminal device 2A shown in FIG. 1. Further, the terminal device 2D includes a notification information creation unit 21 and an information notification unit 22. The notification information creation unit 21 creates notification information including one or more pieces of information among the content of the process by the input generation unit 12, the content of the process by the response generation unit 14, the input data set, and the first response. The information notification unit 22 notifies the user of the notification information. The terminal device 2D can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2.
[0176] In the information processing system 1D shown in FIG. 21, the components of the information processing system 1D are provided in the terminal device 2D which is one device. The information processing system according to Embodiment 2 is not limited to the case where the components of the information processing system are provided in one device. The components of the information processing system may be distributed among two or more devices that can cooperate functionally.
[0177] FIG. 22 is a diagram showing a second configuration example of the information processing system according to Embodiment 2. FIG. 22 shows an information processing system 1E which is a second configuration example of the information processing system. The information processing system 1E is composed of a terminal device 2E and a backend device 3E. That is, in the information processing system 1E, the components of the information processing system 1E are distributed between the terminal device 2E and the backend device 3E.
[0178] The terminal device 2E includes the same configuration as the terminal device 2B shown in FIG. 3 and an information notification unit 22. The backend device 3E includes the same configuration as the backend device 3B shown in FIG. 3 and a notification information creation unit 21. The terminal device 2E can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2. The backend device 3E can be realized by a configuration similar to the configuration of the hardware configuration shown in FIG. 2 excluding the input device 54 and the display device 55. Note that the mode of distributing the components of the information processing system is not limited to the mode shown in FIG. 22 and is arbitrary.
[0179] Next, each component of the information processing system according to Embodiment 2 will be described. Hereinafter, taking the information processing system 1D shown in FIG. 21 as an example, each component of the information processing system 1D will be described. The description of each component of the information processing system 1D shall also apply to the information processing system 1E shown in FIG. 22. Here, the description of the same content as in Embodiment 1 will be omitted.
[0180] <Notification information creation unit 21> The notification information creation unit 21 creates notification information including one or more pieces of information among the content of the processing by the input generation unit 12, the content of the processing by the response generation unit 14, the input data set, and the first response.
[0181] As described in Embodiment 1, the input generation unit 12 generates a prompt to be included in the input data set by processes such as adding an additional sentence for improving accuracy to the request information, adding an explanation about the situation set with reference to the setting parameters, and adding a specific example related to the request with reference to the specification DB. Also, the input generation unit 12 selects a data file to be included in the input data set from the held data.
[0182] The notification information creation unit 21 includes the content of such processing by the input generation unit 12 in the notification information as an implementation item. The notification information creation unit 21 may include detailed information on the specific implementation content in the notification information as detailed information of the implementation item. As a method of expressing the content or detailed information of the processing in the notification information, the content as it is implemented may be described in detail, or it may be described in an abstracted manner to be easy to understand or to hide technical know-how.
[0183] For example, as described in Embodiment 1, in order to clarify the position of the artificial intelligence 4, it is assumed that content such as "You are a skilled operator of a machine tool." is added to the prompt. In this case, the notification information may include information indicating the implementation item, "Clarification of the role based on basic prompt techniques", and information that is the detailed information of the implementation item, "Adding the sentence 'You are a skilled operator of a machine tool.'" When making an abstracted description of the implemented content, the notification information may include information indicating the implementation item, "Sentence addition", and information indicating the detailed information of the implementation item, "Adding a sentence for the artificial intelligence to recognize the role."
[0184] FIG. 23 is a first diagram showing an example of notification information created by a notification information creation unit 21 included in the information processing system according to Embodiment 2. In FIG. 23, an example of notification information notified by an information notification unit 22 regarding the content of processing by an input generation unit 12 is shown. In the notification information shown in FIG. 23, implementation items and detailed information are associated with each other. In the example shown in FIG. 23, confirmation buttons for displaying more specific content of the notification information are displayed for each implementation item. When a confirmation button is pressed, an additional sentence indicating the specific content regarding the implementation item is displayed.
[0185] Notification information indicating the content of processing by a response generation unit 14 is also created in the same manner as the notification information indicating the content of processing by the input generation unit 12. The processing by the response generation unit 14 includes three verifications: verification of basic rules, verification of functional specifications, and verification of operations, and a process of conversion to a response format when showing a second response. The notification information includes information indicating the content of verification when the verification is performed, information indicating the details of the content of verification, and the result of verification. Further, when the conversion of the response format is performed, the notification information includes information indicating the format before conversion and information indicating the format after conversion.
[0186] For example, assuming that "basic grammar check of a machining program" is performed as verification of basic rules, information such as "check of line feed code" or "check of character types", which indicates the details of the verification content, is included in the notification information. The notification information may include information indicating the details of the verification result. For example, information indicating a portion of the machining program that is determined to be inappropriate by the verification may be included in the notification information as information indicating the details of the verification result.
[0187] FIG. 24 is a second diagram showing an example of notification information created by the notification information creation unit 21 included in the information processing system according to Embodiment 2. In FIG. 24, an example of notification information notified by the information notification unit 22 regarding the content of the process by the answer generation unit 14 is shown. In the notification information shown in FIG. 24, the implemented process items and the implementation status are associated with each other. The implementation status is represented by information indicating, for example, simply whether it has been implemented or not. Alternatively, as shown in FIG. 24, the information indicating the implementation status may be the progress status expressed as a percentage. Also, verification results are associated with the process items regarding verification. In the example shown in FIG. 24, confirmation buttons for displaying more specific content of the notification information are displayed for each process item. When a confirmation button is pressed, an additional sentence indicating the specific content regarding the process item is displayed. The specific content regarding the process item is, for example, information indicating a location determined to be inappropriate by verification, etc.
[0188] Regarding each of the input data set and the first answer, the input data set or the first answer may be included in the notification information as it is. Alternatively, only schematic information may be included in the notification information by summarizing or compressing the input data set or the first answer.
[0189] FIG. 25 is a third diagram showing an example of notification information created by the notification information creation unit 21 included in the information processing system according to Embodiment 2. FIG. 26 is a fourth diagram showing an example of notification information created by the notification information creation unit 21 included in the information processing system according to Embodiment 2. FIG. 27 is a fifth diagram showing an example of notification information created by the notification information creation unit 21 included in the information processing system according to Embodiment 2. FIG. 28 is a sixth diagram showing an example of notification information created by the notification information creation unit 21 included in the information processing system according to Embodiment 2.
[0190] The button "Instruction to AI" shown in Fig. 25 is a button for displaying the prompt in the input data set. When the button "Instruction to AI" is pressed, a prompt as shown in Fig. 26 is displayed. Thereby, the user can check the content of the prompt included in the input data set.
[0191] The button "Input Data to AI" shown in Fig. 25 is a button for displaying the data file in the input data set. When the button "Input Data to AI" is pressed, as shown in Fig. 27, an overview of the data files included in the input data set is displayed. In the example shown in Fig. 27, as the overview of the data file, the type of the data file and the file name of the data file are displayed. Thereby, the user can check the overview of the data files included in the input data set.
[0192] The button "Raw Output Data from AI" shown in Fig. 25 is a button for displaying the first answer. When the button "Raw Output Data from AI" is pressed, the first answer as shown in Fig. 28 is displayed. Thereby, the user can check the content of the first answer output by the AI 4.
[0193] As described above, each content of the information included in the notification information has been explained. However, the notification information may include only one type of information or two or more types of information among the above information. The notification information may include all the above types of information.
[0194] <Information Notification Unit 22> The information notification unit 22 receives the notification information created by the notification information creation unit 21 and notifies the user of the notification information. The information notification unit 22 notifies the user of the notification information, for example, by displaying the notification information in a pop-up window displayed on the screen.
[0195] It is assumed that there are no particular restrictions on the method of notification by the information notification unit 22. The information notification unit 22 may perform a notification each time notification information is created by the notification information creation unit 21, or may perform a notification at a predetermined timing in the flow of answer generation. In the case of the first case where a notification is performed each time notification information is created, as the processing of the input generation unit 12 progresses, notification information corresponding to the completed processing content is created and a notification is performed. In this case, the user can grasp the content of the processing being performed in the information processing system while waiting for the processing of creating an answer to the request. Or, in the case of the second case where a notification is performed at a predetermined timing in the flow of answer generation, the user can know the result of the verification each time the verification processing in the answer generation unit 14 is completed.
[0196] The information notification unit 22 displays the pop-up shown in FIG. 23 at the timing when the process of adding a sentence is performed in the input generation unit 12, and displays the implementation item of "adding a sentence" in the pop-up. Further, the information notification unit 22 displays the implementation item of "changing a sentence" in the pop-up at the timing when the process of further changing a sentence is performed in the input generation unit 12. These are examples of the first case described above where the information notification unit 22 notifies the notification information each time the notification information is created.
[0197] Also, the information notification unit 22 displays the pop-up shown in FIG. 24 at the timing when the verification of the basic rules in the answer generation unit 14 is completed, and displays the processing item of "basic rules" in the pop-up. Further, the information notification unit 22 displays the processing item of "functional specifications" in the pop-up at the timing when the verification of the functional specifications is further completed in the answer generation unit 14. These are also examples of the first case described above where the information notification unit 22 notifies the notification information each time the notification information is created.
[0198] Also, in the case of the second case, the information notification unit 22 notifies, for example, the processing content of the input generation unit 12 and information regarding the input data set at the timing when the processing of the input generation unit 12 is completed and the input data set is generated. Thereby, the user can check the progress. In the second case, a pop-up shown in FIG. 23 or FIG. 25 is displayed at the timing when the processing of the input generation unit 12 is completed and the input data set is created.
[0199] <Effect> According to Embodiment 2, the information processing system includes a notification information creation unit 21 that creates notification information including one or more pieces of information among the processing content by the input generation unit 12, the processing content by the answer generation unit 14, the input data set, and the first answer, and an information notification unit 22 that notifies the notification information. Thereby, the information processing system can present to the user the basis of the answer or the process until the answer is obtained, and can make the user recognize the correctness of the answer and the support for the answer. Therefore, the information processing system can improve the user's acceptance of the presented answer and can improve the reliability of the information processing system.
[0200] Embodiment 3. FIG. 29 is a diagram showing a first configuration example of the information processing system according to Embodiment 3. FIG. 29 shows an information processing system 1F which is a first configuration example of the information processing system according to Embodiment 3. The information processing system 1F is configured in a terminal device 2F. FIG. 29 shows the terminal device 2F and an artificial intelligence 4 outside the information processing system 1F. In Embodiment 3, the same components as those in Embodiment 1 or 2 described above are denoted by the same reference numerals, and the configuration different from that in Embodiment 1 or 2 will be mainly described.
[0201] The terminal device 2F has the same configuration as the terminal device 2A shown in FIG. 1. Further, the terminal device 2F includes a request determination unit 31, a partial request generation unit 32, a database selection unit 33, an order determination unit 34, an information completion unit 35, and a request management unit 36. The information completion unit 35 is provided in the input generation unit 12. Hereinafter, the database selection unit will be referred to as the "DB selection unit". The terminal device 2F can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2.
[0202] In the information processing system 1F shown in FIG. 29, the components of the information processing system 1F are provided in a terminal device 2F which is one device. The information processing system according to Embodiment 3 is not limited to the case where the components of the information processing system are provided in one device. The components of the information processing system may be distributed among two or more devices that can cooperate functionally.
[0203] FIG. 30 is a diagram showing a second configuration example of the information processing system according to Embodiment 3. FIG. 30 shows an information processing system 1G which is a second configuration example of the information processing system. The information processing system 1G is composed of a terminal device 2G and a backend device 3G. That is, in the information processing system 1G, the components of the information processing system 1G are distributed between the terminal device 2G and the backend device 3G.
[0204] The terminal device 2G has the same configuration as the terminal device 2B shown in FIG. 3. The backend device 3G has the same configuration as the backend device 3B shown in FIG. 3, and includes a request determination unit 31, a partial request generation unit 32, a DB selection unit 33, an order determination unit 34, an information completion unit 35, and a request management unit 36. The terminal device 2G can be realized by a hardware configuration similar to the hardware configuration shown in FIG. 2. The backend device 3G can be realized by a configuration similar to the configuration of the hardware configuration shown in FIG. 2 excluding the input device 54 and the display device 55. Note that the mode of distributing the components of the information processing system is not limited to the mode shown in FIG. 30 and is arbitrary.
[0205] Next, an overview of each component of the information processing system according to Embodiment 3 will be described. Hereinafter, each component of the information processing system 1F shown in FIG. 29 will be described as an example. The description of each component of the information processing system 1F shall also apply to the information processing system 1G shown in FIG. 30. Here, the description of the same content as in Embodiment 1 or 2 will be omitted.
[0206] The request determination unit 31 determines the request category included in the request information and creates request category information. The request category information is referred to by each of the input generation unit 12 and the request management unit 36. The information processing system 1F switches the processing at the time of generating the input data set according to the request category. Thereby, further improvement in accuracy can be expected.
[0207] The partial request generation unit 32 generates one or more partial requests based on the request. The partial request generation unit 32 may generate partial requests based only on the request information, but by using the request category information for generating the partial requests, a set of partial requests in a single category can be generated from requests spanning multiple categories. By converting the request into a partial request, it becomes possible to generate an input data set for each partial request in the input generation unit 12. Thereby, the content of the request to the artificial intelligence 4 can be made simpler, and it is expected to prevent deterioration of the accuracy of the output of the artificial intelligence 4. In the following, converting a request into a plurality of partial requests shall mean generating a plurality of partial requests based on the request.
[0208] The partial requirement generation unit 32 converts a requirement into a plurality of sub-requirements based on the form of decomposing the original requirement. Alternatively, the partial requirement generation unit 32 may convert a requirement into a plurality of sub-requirements by searching for the information to be referred to by the input generation unit 12 from the information included in the specification DB. The sub-requirements in this case can be said to request the artificial intelligence 4 to search for and extract information suitable for creating an input data set corresponding to the requirement input by the user from the specification DB. Hereinafter, the sub-requirements generated by such information search are referred to as knowledge exploration sub-requirements.
[0209] Furthermore, the partial requirement generation unit 32 may convert a requirement into a plurality of sub-requirements by including the information obtained as a result of the search in the input data set. In other words, this can be said to create an input data set corresponding to the original requirement and the sub-requirements obtained by decomposing the original requirement using the answer to the knowledge exploration sub-requirement. Note that such a concept is known as RAG (Retrieval-Augmented Generation).
[0210] Next, among the processing contents in the input generation unit 12, the points different from those in the first embodiment will be outlined. In the third embodiment, the general processing content of generating an input data set based on requirement information is the same as that in the first embodiment. In the third embodiment, the processing in the DB selection unit 33 and the information completion unit 35, which are the configurations related to the processing in the input generation unit 12, and the above-mentioned requirement determination unit 31 and partial requirement generation unit 32 are added.
[0211] The DB selection unit 33 selects the specification DB to be referred to according to the set parameters. Thereby, the range of referring to the specification DB and the range of searching the specification DB are limited, and the processing efficiency can be improved. Also, by referring to more appropriate specification information, an improvement in the accuracy of the output of the artificial intelligence 4 is expected. In the case of utilizing the above RAG, the DB selection unit 33 may select the specification DB using the answer to the knowledge exploration sub-requirement.
[0212] The information completion unit 35 completes the information lacking in the request. The information completion unit 35 may add a new sub-request. The information completion unit 35 uses the specification DB selected by the DB selection unit 33 to determine the lacking information or extract the additional information. Thereby, it becomes possible to supplement the information overlooked by the user in the request. Or, it becomes possible to supplement the information that is tacitly assumed by the user but is unknown to the artificial intelligence 4. Thereby, an improvement in the accuracy of the output of the artificial intelligence 4 is expected.
[0213] The order determination unit 34 determines the order of the entire sub-request including the request added by the information completion unit 35. The order determination unit 34 generates sub-request order information which is information indicating the determined order. By associating the input data set corresponding to each sub-request with the sub-request order information corresponding to each sub-request, the sub-request order information may not be included in the input data set. That is, the sub-request order information may be managed as information separate from the input data set.
[0214] The information processing system 1F includes the sub-request generation unit 32, the order determination unit 34, and the information completion unit 35, thereby generating a plurality of sub-requests based on the request, determining the order of the plurality of sub-requests, and completing the information lacking in the request. Note that the information processing system 1F is not limited to performing all of generating a plurality of sub-requests based on the request, determining the order of the plurality of sub-requests, and completing the information lacking in the request. The information processing system 1F may perform one or more of generating a plurality of sub-requests based on the request, determining the order of the plurality of sub-requests, and completing the information lacking in the request.
[0215] The above is the explanation of the additional configuration related to the input generation unit 12. Next, the content of the process added in the input generation unit 12 will be explained.
[0216] When the request determination unit 31 outputs request category information, as described above, the input generation unit 12 switches the generation process of the input data set according to the request category indicated by the request category information. Specifically, for example, when the request category information indicates that the request is a "request related to a processing program", the input generation unit 12 refers to the specification DB related to the processing program and performs processing such as adding a specific example related to the program format to the prompt. Thereby, an improvement in the accuracy of the output of the artificial intelligence 4 is expected.
[0217] When a plurality of sub-requests are generated, the input generation unit 12 generates an input data set for each sub-request. In addition, the input generation unit 12 sets the destination artificial intelligence 4 or external process (such as any software or web application) for each input data set. It is not necessary for this destination to be one. A plurality of destinations may be set. For example, even if the contents of the sub-requests are the same, by setting a plurality of artificial intelligences 4 with different models as destinations, the input generation unit 12 can select a more suitable output result as an answer by comparing the output results of the plurality of artificial intelligences 4. Or, by a majority vote of a plurality of output results, the input generation unit 12 can select an output with higher accuracy as an answer.
[0218] The prompt may include at least one or more instruction information. Furthermore, the prompt may include exemplary information or context information. These information may be included in the prompt without being explicitly stated by embedding them in a series of sentences. By structurally configuring the prompt, these information are explicitly described, and an improvement in the accuracy of the output of the artificial intelligence 4 is expected.
[0219] When there are multiple input data sets, the request management unit 36 manages the processing of the input data sets in cooperation with the transmission / reception unit 13. The request management unit 36 manages the processing of the input data sets such that the input data sets for each sub-request are processed in the order indicated by the sub-request order information. At that time, the request management unit 36 controls the transmission / reception unit 13 so that the input data sets are transmitted to the transmission destinations set for each input data set.
[0220] For example, in one input data set, there may be a need for an answer regarding a sub-request that is processed in the order before the sub-request corresponding to the input data set. Such a constraint is hereinafter referred to as an "order constraint". When there is an order constraint, the request management unit 36 waits for the reception of an answer regarding the sub-request processed in the previous order, and after attaching information indicating the answer to the input data set, starts the transmission process of the transmission / reception unit 13.
[0221] When there is no such order constraint and the transmission destinations are different for each sub-request, the request management unit 36 may control the transmission / reception unit 13 to start the transmission of the next sub-request without waiting for the reception of an answer regarding the sub-request processed in the previous order. Thereby, the information processing system 1F can proceed with the processing for each sub-request in parallel, enabling efficient processing.
[0222] The first answers (hereinafter referred to as "first partial answers") for each obtained sub-request may be integrated with each other after the reception of all the first partial answers is completed and output to the answer generation unit 14 as the first answer. By doing so, it is possible to avoid being determined inappropriate in various verification processes in the answer generation unit 14 for the first partial answers.
[0223] Also, when each of the first partial responses is a response to a partial claim of a different claim category, the first partial responses are independent of each other, and the verification processes in the response generation unit 14 may also be independent. In such a case, the first partial responses may be directly output to the response generation unit 14, and after the verification processes for the first partial responses are performed by the response generation unit 14, the first partial responses may be integrated by converting the response format in the response generation unit 14 to obtain a second response. By doing so, the information processing system 1F can proceed with the processing of the transmission / reception unit 13 and the processing of the response generation unit 14 in advance from the part where the response by the artificial intelligence 4 in the first response is completed, enabling efficient processing.
[0224] In the above manner, the second response in the third embodiment is generated. Next, the details of each of the above components will be described. Note that descriptions of content overlapping with the first or second embodiment will be omitted.
[0225] <Claim determination unit 31> The claim determination unit 31 extracts the features of the claim from the information included in the claim. The claim determination unit 31 calculates the degree of fitness for the category type based on the extracted features. The claim determination unit 31 determines the claim category based on the calculated degree of fitness. Thereby, the claim determination unit 31 determines the category of the claim and creates claim category information.
[0226] Here, the claim category is a classification of claims distinguished by one or both of the type of reference information required to satisfy the claim and the type of output from the artificial intelligence 4. The reference information required to satisfy the claim is a concept that collectively represents the above specification DB, setting parameters, and held data. The type of output from the artificial intelligence 4 refers to the type of data such as character data, image data, or 3D data.
[0227] Specific examples of the request category include creation of a machining program, creation of a ladder program, creation or output of a data file related to a machine tool or work using a machine tool, or response to a question related to a machine tool or work using a machine tool. Further, the creation or output of a data file can be further subdivided according to the type of the target data file. Similarly, responses to questions can also be subdivided according to the type of question. For example, it is conceivable that questions can be divided into general questions and specialized questions. Since the information to be referred to differs between specialized information related to machine tools and other general information, the information processing system 1F can more appropriately respond to requests by subdividing responses according to the type of question.
[0228] Examples of the information included in the request are character string information in natural language or information indicating the result of an operation on a screen or a button. Examples of the features extracted from the information included in the request are the presence or absence of a specific keyword, the application frequency of a certain word, or a combination of specific word-verbs. For keywords, a keyword list may be prepared in advance for each category type, and it may be made possible to detect by referring to the keyword list. Also, for information indicating the result of an operation on a screen or a button, information indicating the object on which the operation was performed is the feature. For example, when a screen operation as shown in FIG. 11 is performed, information such as "create" and "machining program" is regarded as a feature.
[0229] The degree of fitness for a category type is an evaluation value calculated based on the above features of the information included in the request and the determination criteria for the category type. For example, it may be good to add 1 to the evaluation value when a specific keyword is included, or the appearance frequency of a specific word may be used as the evaluation value. The degree of fitness may be the cosine similarity calculated by vectorizing the text information included in the information included in the request and using a word vector serving as a determination criterion for the category type or a text vector expressed as a linear combination thereof.
[0230] When information indicating the result of screen operation or button operation is included in the request, a fitness degree may be calculated according to whether the information indicating the object on which the operation was performed matches an operation or button that is a pre-designed key. For example, when the buttons are operated in the order shown in FIG. 12, and assuming that the button for selecting the machining program is pressed last, the category of the request is likely to be the creation and output of the machining program, or the creation or output of the machining program. In this case, the request determination unit 31 may calculate a high fitness degree for the request category of the creation or output of the machining program.
[0231] Also, the request determination unit 31 may determine a plurality of request categories for one request based on the result of the determination of the request category. For example, when the determination result in the request determination unit 31 does not determine a single request category, one request category with the maximum fitness degree may be used as the determination result, or all request categories with a fitness degree exceeding a certain threshold may be used as the determination result.
[0232] However, when a plurality of request categories are used as the determination result, it is desirable that a plurality of sub-requests be generated by a sub-request generation unit 32 described later. Also, in this case, the request determination unit 31 may determine the request category for each of the plurality of sub-requests. By repeating the processing in the request determination unit 31 in this way, one request category can be associated with one sub-request.
[0233] The information processing system 1F can generate an input data set corresponding to the request category by determining the request category by the request determination unit 31. Thereby, the information processing system 1F can suppress the inclusion of information that is less related to the request category in the input data set, and can improve the accuracy of the output by the artificial intelligence 4.
[0234] <Sub-request generation unit 32> The more complex the content included in the request information is, there is a possibility that part of the request may be ignored in the artificial intelligence 4. This may cause a deterioration in accuracy such as not obtaining an appropriate answer. Also, when the request includes content that spans multiple request categories, if the request is directly input into the artificial intelligence 4 as it is, in this case too, there is a possibility that part of the request may be ignored in the artificial intelligence 4. Therefore, the information processing system 1F according to Embodiment 3 performs a process of converting a request into a plurality of sub-requests by the sub-request generation unit 32. Hereinafter, the case where the process of converting a request into a plurality of sub-requests in the sub-request generation unit 32 is a process of dividing a request into a plurality of sub-requests will be mainly described. The sub-request generation unit 32 may perform a conversion to add a knowledge search sub-request by the above-described RAG method.
[0235] Whether to generate a plurality of sub-requests by the sub-request generation unit 32 is determined based on the characteristics of the information included in the request. Specific examples of the characteristics include that the request includes a sentence having a plurality of verbs, that the request includes information indicating a plurality of request categories, or that the sentence includes a plurality of keywords, and the like.
[0236] The case where the request includes a sentence having a plurality of verbs is, for example, the case where a sentence such as "create a processing program for xxx and output it to yyy" is included in the request. In this case, since the sentence includes two verbs, "create" and "output", the sub-request generation unit 32 determines that the request is a request that can be decomposed. Based on the request, the sub-request generation unit 32 generates a sub-request of "create a processing program for xxx" and a sub-request of "output the created processing program to yyy".
[0237] In addition, each of the two words "processing program" and "output" included in the above sentence can be keywords. "Processing program" is a keyword suggesting requirements regarding the creation of a processing program. "Output" is a keyword suggesting requirements regarding the output of some file. From this, the partial requirement generation unit 32 can generate two partial requirements by searching for the breaks in the sentence before and after these two keywords, similar to the above case where the focus is on verbs.
[0238] The generation of partial requirements by the partial requirement generation unit 32 is not limited to once. For example, if the partial requirement obtained by the first generation is regarded as the first partial requirement, the partial requirement generation unit 32 can determine whether it is possible to generate a partial requirement from the first partial requirement. When the partial requirement generation unit 32 determines that it is possible to generate a partial requirement from the first partial requirement, it may obtain, from the first partial requirement, a second partial requirement that is a partial requirement by the second generation. The partial requirement generation unit 32 repeats the partial requirement generation process until it is determined that further generation of partial requirements is unnecessary for all partial requirements, and ends the generation of partial requirements when it is determined that further generation of partial requirements is unnecessary for all partial requirements.
[0239] Note that the information processing system 1F may also cause the artificial intelligence 4 to perform the partial requirement generation process that was assumed to be realized by the partial requirement generation unit 32 above. Such a process is realized, similar to the above case, by including, in the partial requirement, a higher-level requirement to generate a partial requirement based on the original requirement when it is determined that generation of a partial requirement is possible. Also, by preparing a partial requirement to refer to the output result of the higher-level requirement, an answer to the original requirement can be generated in a series of processing flows.
[0240] <DB Selection Unit 33> The DB selection unit 33 selects the specification DB to be referred to by the input generation unit 12 according to the set parameters. For example, for G-codes and M-codes, which are function commands of machining programs, there are various differences in size depending on conditions such as the type of machine tool, the manufacturer of the machine tool, or the manufacturer of the numerical control device that controls the machine tool. Even if all these conditions are the same, there may be set parameters that can change the command method. Therefore, the DB selection unit 33 can more accurately grasp the function specifications by switching the specification DB to be selected according to the set parameters.
[0241] Also, even for machine tools with all the above conditions being the same, there may be cases where the peripheral devices provided with the machine tools are different from each other, or the spare parts provided on the machine tools are different from each other. In such cases, by referring to the set parameters, the configuration information of the target machine tool can be obtained. By making the necessary specification DB the target of reference and excluding the information of the unnecessary specification DB from the target of reference, it is possible to prevent referring to incorrect information. For example, depending on the presence or absence of an external transfer device such as a gantry loader, a pallet changer, or a pallet pool system, switching whether the device information or M-code for controlling them is included in the target of reference is one specific example.
[0242] By including the DB selection unit 33, the information processing system 1F can select the specification DB according to the information of each of the machine tool, numerical control device, or artificial intelligence 4 that the user assumes to be the target of the request. The information processing system 1F can select the specification DB that is more suitable for the usage environment of the machine tool, numerical control device, or artificial intelligence 4 as the specification DB to be referred to when generating the input data set, and improve the accuracy of the information or data included in the input data set. Thereby, the information processing system 1F can improve the accuracy of the output from the artificial intelligence 4.
[0243] <Input generation unit 12> Here, the features of the input generation unit 12 in Embodiment 3 will be described. Note that, since the general role of creating an input data set composed of a prompt and a data file in response to a request is the same as in Embodiment 1, the description thereof will be omitted.
[0244] Based on the request category information, the input generation unit 12 changes the generation process of the input data by switching one or more of the content of the specification DB, setting parameters, and held data to be referred to.
[0245] <Input data set> One of the features of the input data set in Embodiment 3 is that the prompt includes instruction information, exemplification information, or context information. Also, the fact that the data file is any one of a processing program, a ladder program, setting parameters, a work procedure manual, 3D model data of a tool, and 3D model data of an object to be processed is also one of the features of the input data set in Embodiment 3. Here, the definition of the information included in the prompt will be described.
[0246] <Instruction information> Instruction information is information indicating the content of the instruction included in the request. As described above, the request is converted into request information by the request reception unit 11. The request information is defined as data that enables at least the content of the request to be used by the input generation unit 12, and includes data containing one or more verb information and one or more object information paired with the verb. Therefore, the instruction information is also defined as data including one or more verb information and one or more object information paired with the verb information. As can be seen from such a definition, basically, the request information converted from the request input by the user corresponds to the instruction information. However, when the request is converted into a plurality of sub-requests, or when a request is added, the verb information and object information included in the additional request correspond to the instruction information.
[0247] <Exemplification information> The illustrative information is information in which inputs and outputs are paired, and includes information on desirable output formats, specific examples, and specific examples related to requirements. Here, the inputs and outputs refer to the input to the artificial intelligence 4 and the output expected for the input. Taking the requirements for the processing program as an example, when the input is information including a keyword such as "tool tip point command", it is expected that the output includes the keyword "G43.5". The desirable output format and specific examples are pairs of inputs and outputs similar to the requirement content, and by adding this pair of information to the input to the artificial intelligence 4, it is given to the prompt to induce the output pattern.
[0248] For answers to questions or in the case of creating a processing program or a ladder program, an output described in a character string is required. In the case of creating a data file, an output in the file format of each data file or in the format of each data file is required. Also, even if it is an output described in a character string, in the case of an answer to a question, an output in a conversational sentence format is required. In the case of creating a processing program, an explanatory text is not necessary, and an output described in the format specified in the processing program is required. In the case of creating a ladder program, an output described in a dedicated format is required.
[0249] In the case of the artificial intelligence 4 using a language model, if not otherwise specified, there is a high possibility that the answer will be output in a conversational format. For example, in the case of a requirement for creating a processing program, one block of the processing program command is extracted from the specification DB and used as a specific example of the processing program. Also, in the case of a requirement for creating a ladder program, a single-function function example is extracted from the specification DB and used as a specific example of the ladder program. Thereby, the information processing system 1F can induce the output from the artificial intelligence 4 into an output format along with the specific example. In the case of a requirement for creating a processing program, a specific program example in accordance with the format of the processing program corresponds to the illustrative information.
[0250] A specific example related to the content related to a claim is a pair of input and expected output when information related to the claim, such as keywords, etc., is used as the input. For example, when the keywords included in the claim contain words such as "tool change" and "home return", the pair of "tool change" and "M6", and the pair of "home return" and "G28" are regarded as specific examples related to the content related to the claim. This can be said to be teaching the artificial intelligence 4 the information that is the necessary parts to satisfy the claim.
[0251] <Context information> Context information is information that includes the background, prerequisite knowledge, or limiting factors that are the premise of an instruction. The background and prerequisite knowledge that are the premise of an instruction refer to information that it is desirable to have in order to accurately understand and execute the content indicated by the instruction. For example, technical terms, know-how, and tacit knowledge are applicable. Since language models are generally trained using existing language information, they are generally learned for commonly known information and can be expected to be accurately grasped. On the other hand, compared to the entire body of existing language information, the amount of specialized information related to a specific field such as machine tools is small, and there is a possibility that it has not been sufficiently learned. Therefore, for technical terms characteristic of the field, or terms that have a characteristic meaning in the field even though they are the same terms, it is expected that by explaining their definitions and meanings as context information, the content indicated by the instruction can be accurately grasped.
[0252] For example, since the word "program" is generally likely to be interpreted as referring to a program in a computer programming language such as C or Python, an explanation such as "A machining program is a set of instructions for specifying the shape, dimensions, and machining method of a workpiece. The program is described in a specific format called G-code and M-code." can be added to the prompt as context information indicating prerequisite knowledge as a specific example.
[0253] In addition, in the context of a machining program for a machine tool, the term "block" refers to a word that means one line. However, in a general context, it may be regarded as a physical block. Therefore, as a specific example, it can be cited that an explanation such as "In a machining program, a block refers to one line of the program." is added to the prompt as context information indicating prerequisite knowledge.
[0254] For example, information indicating whether the machine tool is a cutting machine, a laser processing machine, or an electric discharge machining machine, or, in the case where the machine tool is a cutting machine, information indicating whether the cutting machine is a machining center or a lathe corresponds to the background or prerequisite knowledge that is the premise of the instruction in the context information.
[0255] In addition, a restrictive item is information that should be observed when creating an answer to a request, and includes information corresponding to either a compliance item that must be satisfied or a prohibited item that must never be implemented. To explain more clearly, the information included in the restrictive item can be said to be information corresponding to the basic rules or functional specifications verified by the answer generation unit 14. For example, in the example of a machining program, the information "Append '%' at the beginning and end of the program." is a restrictive item and corresponds to a compliance item among the restrictive items. Also, for example, the information "Specific G-codes should not be described in the same block." is a restrictive item and corresponds to a prohibited item among the restrictive items. By including such restrictive items in the prompt in advance, it can be expected to reduce the possibility that an answer contrary to the basic rules or functional specifications is output by the artificial intelligence 4.
[0256] The exemplary information and the context information can be selected by keyword search from only the keywords included in the request information. When there is request category information, it becomes possible to select the exemplary information or the context information more efficiently and with higher accuracy. For example, the specification DB may be divided for each request category, or correspondence information of the request category may be attached to the information included in the specification DB like a label. Thereby, it is possible to narrow down the search for the exemplary information or the context information to the specification DB corresponding to the request category.
[0257] As described above, in the third embodiment, by including information such as instruction information, exemplary information, or context information in the prompt of the input data set, when the artificial intelligence 4 creates an answer to the request, the artificial intelligence 4 can accurately grasp the content indicated by the request. Thereby, an improvement in the output accuracy from the artificial intelligence 4 can be expected.
[0258] Information such as instruction information, exemplary information, or context information may be included in the request when the user inputs the request carefully. However, what makes the third embodiment more effective is the point of clearly associating these information with headings, tags, etc., and the point of structuring these information so that the artificial intelligence 4 can accurately grasp them, specify them, or associate them.
[0259] Note that it is sufficient that the input data set includes one or more of instruction information, context information, and exemplary information. The information processing system 1F can improve the accuracy of the information or data input to the artificial intelligence 4 and the accuracy of the output from the artificial intelligence 4 by including in the input data set a structurally configured prompt with one or more of instruction information, context information, and exemplary information made explicit.
[0260] FIG. 31 is a first diagram showing an example of a prompt included in an input data set in the information processing system according to Embodiment 3. FIG. 31 shows an example in which information such as instruction information, exemplification information, or context information is simply included in the prompt as a series of sentences. Even when information such as instruction information, exemplification information, or context information is simply included in the prompt as a series of sentences, an improvement in the output accuracy from the artificial intelligence 4 can be expected. However, it is a feature in Embodiment 3 that further improvement in accuracy can be expected when these pieces of information are explicitly described in the prompt as a structural description.
[0261] FIG. 32 is a second diagram showing an example of a prompt included in an input data set in the information processing system according to Embodiment 3. In the example shown in FIG. 32, context information is described following the tag “Instruction”. Also, exemplification information is described following the tag “Example”. Also, instruction information is described following the tag “Question”. This makes it clear which part of the sentence information included in the prompt corresponds to which role.
[0262] Furthermore, by describing “Please answer according to the format of Example.” in the context information, it is possible to impose a constraint condition on the output format using the exemplification information described with the Example tag. In this way, making each piece of information described in association with an identifier such as a tag and having a structural prompt that clarifies relationships such as references and dependencies between the pieces of information is one of the features in the processing by the input generation unit 12 of Embodiment 3. Note that the notation shown in FIG. 32 is merely an example, and any notation can be used as long as it is structured so that the correspondence between the roles of the instruction information, exemplification information, and context information and the sentences is clear, and the notation can be variously modified.
[0263] <Information Completion Unit 35> The information completion unit 35 determines whether there is insufficient information in the request based on the content of the request information or the partial request. When the information completion unit 35 determines that there is insufficient information in the request, it completes the insufficient information. Through such processing, it is expected that the necessary information in the input data set will be completed, and the output from the artificial intelligence 4 will be made closer to satisfying the user's request.
[0264] The information completion unit 35 detects the insufficient information by comparing the content of the request information or the partial request with the knowledge master. The knowledge master is a set of data (knowledge data) of standard operation procedures assumed for each request, and is a database configured so that the corresponding knowledge data can be retrieved using the information and elements included in the request as search keys. There is no particular limitation on the form of the database that is the knowledge master. The form of the database may be a simple table-form data structure, or may be configured with database software such as SQL (Structured Query Language). The knowledge data is preferably created and accumulated by being subdivided for each request, but may also be created and accumulated with a larger granularity, for example, for each request category.
[0265] When insufficient information is detected, the insufficient information is identified from the difference with the corresponding knowledge data in the knowledge master. The identified insufficient information is added to an arbitrary input data set in the input generation unit 12 according to its type. More specifically, the identified insufficient information is added as an additional request before or after the original request information or the partial request, or is added to the input data set corresponding to the original request information or the partial request. Even more specifically, the identified insufficient information is added to one or more of the instruction information, exemplary information, and context information in the input data set. The above is the function of the information completion unit 35, and a specific example will be given to further explain the information completion unit 35.
[0266] When creating a machining program, when creating a command block for a certain line (one block), it is necessary to consider not only that one command block but also the content of the commands in the program before that command block. There are two types of commands in the machining program: commands whose state is saved even after the commanded block (modal commands) and commands whose state is not saved (non-modal commands). This is because there are functions that cannot be used depending on the command status of modal commands and functions whose operations change. If such circumstances are not considered, a warning (alarm) may be issued by the system when the command block is executed, and the machining program may not be executable. Or, an operation different from the expected one may be executed when the machining program is executed.
[0267] The above is an example of knowledge data. When making a comparison, the information complementing unit 35 searches for blocks before the location of the machining program to be created according to the request, grasps the modal state, and collates information lacking in the original request content. The search keys in the collation of this request with the knowledge master are "machining program creation", "addition to the existing program", and "one block creation". As a result, the knowledge master can be configured so that the above knowledge data is searched.
[0268] As a result of the comparison, if information is lacking, it is determined that information complementation is necessary. In this case, the information complementing unit 35 extracts the information that needs to be complemented from the knowledge data and adds a partial request corresponding to the extracted information. Or, the information complementing unit 35 adds command information, exemplary information, or context information, which is information corresponding to the extracted information.
[0269] A specific example will be given and explained for the information supplemented by the information supplementing unit 35. There is a command (for example, G188 / G189) to switch the program format. In a lathe type machine tool, after G188 is commanded, the program format in a machining center type machine tool is adopted. Therefore, for example, in the above example, if this command exists before the place where the machining program is created, context information such as "create with a machining center type command at the creation location" is added.
[0270] As another example, a function called constant peripheral speed control is known. Since this function is to increase the spindle rotation speed so that the peripheral speed becomes constant according to the machining position (radius from the spindle center), there is a risk that the spindle rotation speed will increase too much near the spindle center. Therefore, when this function is used, it is recommended to use a command to clamp the maximum rotation speed of the spindle in advance. Therefore, for the requirement of "creating a machining program for constant peripheral speed control", if there is no speed setting command for clamping the spindle before the place where the machining program is created, the content of "creating a machining program for spindle clamping speed setting command" may be added as the command content, or may be added as a sub-requirement.
[0271] <Destination information> The input generation unit 12 sets the destination information for each input data set corresponding to each of the plurality of sub-requirements according to the characteristics of the plurality of sub-requirements. The destination information can include, in addition to the artificial intelligence 4, an artificial intelligence 4 different from the artificial intelligence 4, or a software function providing unit other than the artificial intelligence 4.
[0272] The destination information only needs to include information that can identify the destination according to the communication method in the transmitting and receiving unit 13. Here, the destination not only refers to a subject that provides resources for operating artificial intelligence 4 or software, such as simply a computer, a server, or the cloud, but also includes applications operating on these subjects. For example, when the destination exists on an IP (Internet Protocol) network, it is sufficient that the destination information includes information such as an IP address or a port number. In this case, the IP address corresponds to the information for identifying the subject, and the port number corresponds to the information for identifying the application.
[0273] The destination information may be uniquely determined for each input data set. Alternatively, a plurality of destination information candidates may be configured in a list-like structure so that one piece of destination information in the list can be identified by an identifier such as a label. Further, such an identifier may be set in the input data set.
[0274] Also, a plurality of destinations may be set for one input data set, and a plurality of the above-mentioned identifiers may be set for one input data set. In the above list, a group identifier combining a plurality of pieces of destination information may be further associated, and the group identifier may be set in the input data set so that a plurality of pieces of destination information may be set in the input data set.
[0275] As described above, when a plurality of sub-claims regarding the contents of different claim categories are generated, even if the sub-claims originally originated from one claim, a case is conceivable where the characteristics of the artificial intelligence 4 that are optimal for corresponding thereto are different for each sub-claim. In this case, it is required that different artificial intelligences 4 be selected as destinations according to the characteristics of the sub-claims.
[0276] Here, the different artificial intelligences 4 as destinations include, for example, an artificial intelligence 4 that takes natural language as input and generates a response conversation sentence, and an artificial intelligence 4 that takes natural language as input but can also input data such as images, and generates an image, 3D model, or video, etc. That is, from the perspective of the differences in the input / output systems of the artificial intelligence 4, different artificial intelligences 4 are included in different artificial intelligences 4 respectively.
[0277] The different artificial intelligences 4 as destinations are not limited to the above. For example, even for artificial intelligences 4 in the same text generation system, artificial intelligences 4 with different forms of the underlying language model, or artificial intelligences 4 with different numbers of parameters or versions even with the same language model, are included in different artificial intelligences 4 respectively. Artificial intelligences 4 with different forms of the underlying language model are, for example, GPT, BERT, and ELMo (Embeddings from Language Models), etc. Furthermore, even if they are exactly the same artificial intelligence 4, if they are composed of different operating resources (such as servers, computers, or the allocated numbers of CPUs or GPUs, etc.), they are included in different artificial intelligences 4 respectively.
[0278] Also, among the partial requests, there may be cases where it is not necessarily optimal to seek an answer from the artificial intelligence 4. For example, when creating a machining program and using a CAD (Computer-Aided Design) model as input to create a machining program for machining the shape shown in the CAD model, it is more reasonable to use CAM (Computer Aided Manufacturing) software. In such a case, it is required to set a software function providing unit such as software or a web application other than the artificial intelligence 4 as the destination of the partial request.
[0279] Note that these artificial intelligence 4 or applications to be the destinations may be provided not only outside the information processing system but also inside the information processing system. FIG. 33 is a diagram showing a configuration example when the destination is provided inside the information processing system in Embodiment 3.
[0280] The information processing system 1H shown in FIG. 33 includes a terminal device 2H and a backend device 3H. The terminal device 2H has the same configuration as the terminal device 2G shown in FIG. 30. The backend device 3H has the same configuration as the backend device 3G shown in FIG. 30. Further, the backend device 3H includes an artificial intelligence 42 and software 51. Each of the artificial intelligence 42 and the software 51 is a destination provided inside the information processing system 1H. The transmission / reception unit 13 of the backend device 3H is connected to each of the artificial intelligence 41, the artificial intelligence 43, the software 52, and the web application 6. In FIG. 33, the web application is denoted as "Web App.". Each of the artificial intelligence 41, the artificial intelligence 43, the software 52, and the web application 6 is a destination provided outside the information processing system 1H. Each of the software 51, the software 52, and the web application 6 functions as a software function providing unit.
[0281] When the information processing system 1H is linked to an artificial intelligence 4 or an information retrieval system specialized in expertise, or an artificial intelligence 4 or an information retrieval system using internal information that is not appropriate to be publicly disclosed, etc., it is desirable that the artificial intelligence 4 or the information retrieval system be provided inside the information processing system 1H like the artificial intelligence 42 and the software 51. Thereby, risks such as information leakage can be reduced.
[0282] As described above, in the input generation unit 12, for each input data set corresponding to the partial request, transmission according to its characteristics is set.
[0283] Next, specific examples of destinations will be described. For example, as destinations for programming, if it is a general programming language such as C or Python, artificial intelligence 4 including LLM can be cited as a specific example. It can be expected that ladder programs written in ST language can also be supported as destinations. On the other hand, in the case of a machining program, if the machining program is generated from a CAD model, CAM software can be cited as a specific example of the destination. If the machining program is generated from text, artificial intelligence 4 including LLM, similar to the programming case, can be cited as a specific example of the destination.
[0284] Next, when performing information retrieval, general information can be handled by artificial intelligence 4 including LLM, but it is not suitable for retrieving niche and highly specialized information. In such cases, artificial intelligence 4 based on a "small-scale language model" that has learned only knowledge in a specific field or RAG configured to be able to access a database of specialized knowledge can be considered as options for the destination. Also, database software or applications constructed using SQL or the like to build a database of specialized knowledge and made searchable can be an option for the destination.
[0285] As can be seen from the above description, the destination can be selected according to the task, that is, the type of requirement. For example, if the above identifier groups are assigned to programming, information retrieval, or data creation systems, etc., it becomes possible to select a destination corresponding to each requirement category.
[0286] <Order Determination Unit 34> When there are multiple sub-requirements, the Order Determination Unit 34 determines the order of the multiple sub-requirements. When there are no sub-requirements and the requirement is a single requirement, the processing by the Order Determination Unit 34 is unnecessary.
[0287] The sequence determination unit 34 basically determines the order of the sub-requests in the order of the original requests. For example, for the sub-requests added by the information completion unit 35, it is necessary to determine the order again. In that case, depending on whether the completed information complements the prerequisite information and conditions for the sub-requests to be complemented, or adds information and conditions to the results obtained for the sub-requests, it is determined whether it will be in the order before or after the target sub-requests. The order information determined in this way is output as sub-request order information.
[0288] <Request management unit 36> The request management unit 36 controls the transmission of the input data set to the artificial intelligence 4 for each input data set corresponding to each of the plurality of sub-requests. Specifically, the request management unit 36 controls the order of processing the plurality of sub-requests, and the control of the progress management of the processing, etc. Also, for the first partial response received by the transmission / reception unit 13 for each sub-request, it also controls the output to the response generation unit 14 by the transmission / reception unit 13.
[0289] The request management unit 36 controls the order of processing the plurality of sub-requests so that the input data set corresponding to the sub-requests is processed in the order according to the sub-request order information. At that time, the request management unit 36 controls the transmission / reception unit 13 to transmit the input data set to the transmission destination set for each input data set. When there are order constraints, the request management unit 36 waits to receive the response of the sub-request, adds the response information to the input data set, and then starts the transmission process by the transmission / reception unit 13.
[0290] Without such order constraints, and when the destinations of partial requests are different from each other, the request management unit 36 may control the transmission and reception unit 13 to start transmitting the next partial request without waiting for the reception of the response for the partial request processed in the previous order. As a result, the information processing system 1F can proceed with the processing for each partial request in parallel, enabling efficient processing. All the first partial responses may be integrated with each other and output to the response generation unit 14 as the first response after the reception of all the first partial responses is completed. By doing so, it is possible to avoid the situation where the first partial responses are determined to be inappropriate in various verification processes in the response generation unit 14.
[0291] Also, when each of the first partial responses is a response to a partial request of a different request category, the first partial responses may be independent of each other, and the verification processes in the response generation unit 14 may also be independent. In such a case, the first partial responses may be directly output to the response generation unit 14, and after the verification processes for each of the first partial responses are performed in the response generation unit 14, the first partial responses may be integrated as the second response by converting the response format in the response generation unit 14. By doing so, the information processing system 1F can proceed with the processing of the transmission and reception unit 13 and the processing of the response generation unit 14 in advance from the part where the response by the artificial intelligence 4 in the first response is completed, enabling efficient processing.
[0292] By having the request management unit 36, the information processing system 1F can perform transmission and reception taking into account the order constraints between partial requests, and can also perform transmission and reception in parallel when there are no order constraints. As a result, the information processing system 1F can generate a more advanced response and can shorten the time required for response generation.
[0293] <Response Generation Unit 14> The response generation unit 14 changes the processing in one or more of the verification of basic rules, the verification of functional specifications, the verification of operations, and the conversion of the response format to the second response based on the request category information.
[0294] <Specific Example> A series of operations of the information processing system 1F described above will be described using a specific example. For example, there may be a case where it is desired to change the ladder program according to the situation. For a machine tool that has already been introduced and is operating in a factory, changes such as adding an axis or removing an axis may be made, or changes may be made to the connected peripheral devices, such as measuring instruments and a measurement system interlocked therewith, conveyors such as gantry loaders, pallet changers, and pallet pools, or conveyor systems. In such cases, not only changes to the hardware side but also changes to the system and software are necessary. From the perspective of the ladder program, these devices will not operate normally unless the contact information corresponding to the change point and the function blocks that operate according to the contact information are also changed.
[0295] In such a situation, for example, assume that a request such as "want to delete the XXX function block of the existing ladder program and replace it with the YYY function block" is input. First, the request reception unit 11 detects "delete" and "replace" as verb information, and detects "XXX function block" and "YYY function block" as object information for the verb information.
[0296] Next, the partial request generation unit 32 generates a first partial request "delete the XXX function block of the existing ladder program" from "delete" and a second partial request "want to replace it with the YYY function block". Also, the request determination unit 31 sets the creation of the ladder program as the request category information from the keyword "ladder program". The DB selection unit 33 selects a specification DB related to the ladder program.
[0297] The input generation unit 12 extracts information indicating the processing content of the YYY function block from the selected specification DB. Also, the input generation unit 12 selects an existing ladder program from the held data as a data file. In the first input data set corresponding to the first partial request, information such as "delete the XXX function block of the existing ladder program" is included in the prompt, and the existing ladder program is included as a data file. Note that other information and sentences are included in the prompt, but the description is omitted here.
[0298] In the second input data set corresponding to the second partial request, information such as "replacement with the YYY function block" is included as a prompt. Also, in the second input data set, the first partial response to the first input data set is included as a data file. Actually, the first partial response is included as a reference destination rather than as a data file. Here, including the first partial response as a data file means that the first partial response is included as a reference destination. Furthermore, the same artificial intelligence 4 is set for the transmission destination of the first input data set and the transmission destination of the second input data set.
[0299] The request management unit 36 stops the transmission of the second input data set until the transmission and reception unit 13 receives the first partial response to the first input data set, based on the dependency relationship between the first input data set and the second input data set. After the first partial response is received, the request management unit 36 starts the transmission of the second input data set in which the first partial response is included as a data file.
[0300] When the second partial response to the second input data set is received, the response generation unit 14 performs a function check process corresponding to the YYY function on the target ladder program. If there is no problem in the result of the function check process, the information processing system 1F presents the second partial response as the second response by the response presentation unit 15.
[0301] In addition to ladder programs, there are cases where changes to the control device of a machine tool are desired using executable software modules described in a high-level language such as C language and compiled by a compiler or the like as needed. For example, among commercially available control devices for machine tools, some have open functions and areas that can be customized for users of the control device including the machine tool manufacturer. Even when utilizing such customization functions, the information processing system 1F according to Embodiment 3 can be utilized. Since the general flow is the same as in the case of the above ladder program, the description thereof will be omitted, and the characteristic parts of this specific example will be described.
[0302] The requirements in this case are, for example, of the content such as "create the processing of XXX in C language, compile the source, and add the resulting object file to the control device". When the requirements are converted into a plurality of sub-requirements in the same flow as in the case of the above ladder program, the requirements are divided into three sub-requirements. The three sub-requirements are the first sub-requirement of "create the processing of XXX in C language", the second sub-requirement of "compile the source", and the third sub-requirement of "add the object file to the control device".
[0303] Regarding the first sub-requirement, although there is a difference between a ladder program and the C language, from the perspective of programming by the artificial intelligence 4, it can be said to be almost the same as in the case of the above ladder program, so the description will be omitted. Regarding the second sub-requirement, from the keyword "compile", the software function providing unit, specifically the compiler software, is set as the transmission destination instead of the artificial intelligence 4. Regarding the third sub-requirement, from the keyword "add-on", the above customization function is set as the software function providing unit of the transmission destination.
[0304] Note that by defining in advance keywords associated with specific functions, such as "add-on", the processing content in the information processing system 1F, for example, the setting of the transmission destination, etc., may be performed with the content defined in advance.
[0305] For each of the first partial answers created in the above process, as verification in, for example, the answer generation unit 14, static analysis of the C language source code, error checking of the compilation result, or error checking when loading may be performed. Also, as verification in the answer generation unit 14, operation verification may be performed by virtually executing the process.
[0306] Next, an example of the operation of the information processing system 1F in the case where a request as a question is input to the request reception unit 11 will be described. For example, assume that questions such as "What is the M code for spindle forward rotation?" or "What is the M code for coolant stop?" are input to the request reception unit 11 as requests. First, the request reception unit 11 determines with "is (what)?" as the verb and detects "the M code for spindle forward rotation" or "the M code for coolant stop" as the object.
[0307] Next, the input generation unit 12 refers to the specifications regarding the M code from the specification DB and includes the M code for spindle forward rotation or the M code for coolant stop as exemplification information in the prompt. Also, at this time, the input generation unit 12 may switch each of the specification DB to be referred to and the specification of the M code based on the type of the machine tool, information indicating the manufacturer of the machine tool, or information indicating the manufacturer of the control device of the machine tool by referring to the setting parameters. Thereby, the input generation unit 12 can include more accurate exemplification information in the prompt.
[0308] Here, the description of the subsequent operations in this case will be omitted. It is expected that the information processing system 1F can significantly reduce the possibility that an incorrect answer is output by the artificial intelligence 4 by generating the input data set by including the correct information in the specification DB in the prompt.
[0309] Next, an example of the operation of the information processing system 1F in the case where creating shape data is input to the request reception unit 11 as a request will be described.
[0310] One of the things to note when using a machine tool is mechanical interference. Mechanical interference occurs when mechanical structures operating in a machine tool come into contact with each other, or when the mechanical structure of a machine tool comes into contact with the mechanical structure of another device. For example, the spindle holding the tool may come into contact with the table of the machine tool or the attached measuring device. In this case, the contacted part may be damaged, or damage may be caused to the drive system such as the motor, feed mechanism, or guide mechanism of the machine tool.
[0311] To prevent mechanical interference, many numerical control devices have an interference check function. There are various methods used for the interference check function. As one of the interference check functions, for example, there is a known method of holding 3D models of a machine tool, a tool, or a workpiece, and checking for the presence or absence of interference by simulating the movement of the 3D models. The 3D models of the workpiece, jig, or tool are elements required when performing such simulations.
[0312] For example, assume that requests such as "generate the shape data of the jig", "create the shape data of the workpiece", or "create the shape data of the tool" are input to the request receiving unit 11. Since the processing in the request receiving unit 11 is easy, the description of the processing in the request receiving unit 11 is omitted here.
[0313] Here, a case where the shape data to be created is the shape data of the jig will be described. For the jig, there is, for example, a case where it has been designed in advance by the user using CAD or the like. Here, it is assumed that the drawing data of the jig, which is the object for which the shape data is to be created, exists in the held data. Note that the drawing data existing in the held data may be either two-dimensional data (hereinafter referred to as "2D data") or 3D data.
[0314] For example, when the request input to the request reception unit 11 includes information for specifying drawing data, such as "fixture of drawing No. xxx", the input generation unit 12 refers to the held data and includes the drawing data specified by the information in the input data set.
[0315] In addition, the input generation unit 12 selects the transmission destination of the input data set according to the format of the drawing data. For example, when the drawing data is CAD data, software for converting the CAD data into STL (Stereolithography) data may be selected as the transmission destination. Or, when the drawing data is 2D data, software with a 3D conversion function, such as CAD software, having may be selected as the transmission destination.
[0316] The response generation unit 14 converts the shape data obtained as the first response into data in a format that can be used in the information processing system 1F. For example, when the first response is STL data, the response generation unit 14 converts the STL data into data in a format defined as the shape data handled by the information processing system 1F, such as wireframe, surface, or solid, by analyzing the structure shown in the STL data. In this way, the response generation unit 14 obtains the second response by converting the shape data that is the first response.
[0317] Next, a case where the shape data to be created is the shape data of the workpiece will be described. Since the workpiece often has a simple shape, it is conceivable that an image of the workpiece taken by a camera is used as the shape data. Here, it is assumed that the workpiece has been photographed by the user in advance and the image data of the workpiece is stored as the held data.
[0318] For example, assume that a request such as "create the shape data of the workpiece from image xxx and image yyy" is input to the request reception unit 11. Here, each of "image xxx" and "image yyy" is the name given to the image. In this case, since the information for identifying the image is included in the request, the input generation unit 12 refers to the held data and includes the image data identified by the information in the input data set.
[0319] Alternatively, when the request category of generating the shape data of the workpiece is determined by the request determination unit 31, the information processing system 1F may request the user to specify an image of the workpiece for which the shape data is to be created. For example, assuming that the information processing system 1F is provided with the information notification unit 22 described in the second embodiment, the request management unit 36 or the input generation unit 12 requests the user to specify an image through the information notification unit 22. In this case, the input generation unit 12 includes the image data of the image specified by the user in the input data set.
[0320] As the transmission destination of the input data set, various web services or software for generating three-dimensional shape data from images can be considered. The format of the shape data obtained as the first response varies depending on the transmission destination. Therefore, similar to the case of the jig, the response generation unit 14 converts the shape data obtained as the first response into data in a format that can be used in the information processing system 1F. In this way, the response generation unit 14 obtains the second response by converting the shape data that is the first response.
[0321] Next, a case where the shape data to be created is the shape data of a tool will be described. In many cases, the data indicating the three-dimensional shape of the tool is provided by the tool manufacturer. Therefore, the information processing system 1F may, for example, add a partial request to the information complementing unit 35 regarding downloading the shape data of the tool from the website of the tool manufacturer. In this case, information indicating the tool manufacturer and the tool model number are required. Also, in the held data, tool data, which is data about the tool, may be set to some extent. Even if the request input to the request receiving unit 11 does not include the tool manufacturer and the tool model number, it is sufficient if the request includes information that can be used to specify the tool from the held data in which the tool data is set.
[0322] The input generation unit 12 refers to the held data and acquires information about the specified tool. Thereby, the input generation unit 12 can include information about the specified tool in the input data set corresponding to the partial request added by the information complementing unit 35. The destination of such a partial request is the website or web server of the tool manufacturer. The first partial response to such a partial request is the 3D data of the tool provided by the tool manufacturer. The subsequent operations in this case are the same as those in the case of the jig or the workpiece, and thus the description is omitted.
[0323] As described above, the user can obtain the shape data of a desired object by inputting a request to the information processing system 1F.
[0324] <Effect> According to Embodiment 3, the information processing system performs one or more of generation of a plurality of sub-requests based on a request, determination of the order of the plurality of sub-requests, and supplementation of information lacking in the request. By generating a plurality of sub-requests based on the request, the information processing system can avoid problems such as some content being ignored by the artificial intelligence 4 when a complex request is input or when a request containing a large amount of information is input. By determining the order of the plurality of sub-requests, the information processing system can input the plurality of sub-requests into the artificial intelligence 4 in the correct order. By supplementing the information lacking in the request, the information processing system can prevent a decrease in the accuracy of the answer due to lack of information. As a result, the information processing system can present a more accurate answer to the request from the user.
[0325] Further, the input data set includes one or more of instruction information indicating the content of the instruction included in the request, context information including the premise information of the instruction or the limitation items of the instruction, and exemplary information indicating examples of pairs of input to the artificial intelligence 4 and output from the artificial intelligence 4. By inputting such an input data set into the artificial intelligence 4, when the artificial intelligence 4 creates an answer to the request, the artificial intelligence 4 can accurately grasp the content indicated by the request. As a result, the information processing system can further improve the accuracy of the output from the artificial intelligence 4.
[0326] Further, the information processing system includes a request determination unit 31. The input generation unit 12 changes the generation process of the input data by switching one or more of the specification DB to be referred to, the setting parameters, and the held data based on the request classification information. The answer generation unit 14 changes the process in one or more of verification of the basic rules, verification of the functional specifications, verification of the operations, and conversion of the answer format to the second answer based on the request category information. As a result, the information processing system can present a more accurate answer to the request from the user by changing the processes by the input generation unit 12 and the answer generation unit 14 according to the content of the request.
[0327] Further, the information processing system includes a request management unit 36. By having the request management unit 36, the information processing system can perform transmission and reception taking into account the order constraints between sub-requests, and can also perform transmission and reception in parallel when there are no order constraints. As a result, the information processing system can generate a more advanced response and can shorten the time required for response generation.
[0328] Also, the input generation unit 12 sets transmission destination information for each input data set corresponding to each of the plurality of sub-requests according to the characteristics of the plurality of sub-requests. The transmission destination information can include, in addition to the artificial intelligence 4, an artificial intelligence 4 different from the artificial intelligence 4, or a software function providing unit other than the artificial intelligence 4. Thereby, the information processing system can reduce risks such as information leakage.
[0329] Each of the effects described in Embodiment 3 is independently exhibited. Needless to say, even when all the configurations for obtaining each effect are provided, each individual effect is exhibited. Furthermore, additional effects can be obtained by combining the configurations.
[0330] The information processing system according to Embodiment 3 may include the notification information creation unit 21 and the information notification unit 22 described in Embodiment 2. In this case, the information processing system can refine the notification information about the content of the processing by the input generation unit 12, which is the notification information shown in FIGS. 23 to 28, into the processing content described in Embodiment 3. Also, the information processing system can refine the content of the input data set as described in Embodiment 3. The information processing system can notify the user of at least one of instruction information, exemplary information, and context information included in the input data set by the information notification unit 22. The information processing system may structure and display the generated sub-requests and the requests by associating the sub-requests with the original requests.
[0331] The information processing system may further cause the notification information creation unit 21 and the information notification unit 22 to cooperate with the request management unit 36, and control the operation of the request management unit 36 according to the information display by the information notification unit 22 and the operation result of the user with respect to the display. With such a configuration, the user can confirm the first answer and make a judgment as to whether the answer is appropriate or inappropriate at the time when the first answer is obtained. In addition, the information processing system can reflect the judgment content by the user on the request management unit 36.
[0332] Also, for each sub-request or each first partial answer, the operation of the request management unit 36 may be controllable according to the information display by the information notification unit 22 and the operation result of the user with respect to the display. With such a configuration, the user can individually make a judgment as to whether each of the subdivided sub-requests or the subdivided first partial answers is appropriate or inappropriate. In addition, the information processing system can reflect the judgment content by the user on the request management unit 36.
[0333] When it is determined that the answer is inappropriate at the time when the first answer is obtained, the processing after that point becomes unnecessary. Therefore, the information processing system may output the first answer at that point, or interrupt or end the processing at that point. Also, when only a specific first partial answer is determined to be inappropriate, the information processing system can remove unnecessary information in advance by causing the answer generation unit 14 to process only the first partial answers other than the corresponding part.
[0334] When it is determined that the answer is appropriate at the time when the first answer is obtained, the user can confirm the content of the answer at the time when the first answer is obtained. Therefore, the transparency of the processing until the answer is obtained can be improved, and the reliability of the user with respect to the information processing system utilizing the artificial intelligence 4 is improved.
[0335] The information processing system can further transmit, by making an additional request, such as additional content desired to be included in the input data set, to the input generation unit 12 via the request reception unit 11. When an additional request is input, the information processing system may change or regenerate the input data set.
[0336] Embodiment 4. FIG. 34 is a diagram showing a first configuration example of the information processing system according to Embodiment 4. FIG. 34 shows an information processing system 1I which is a first configuration example of the information processing system according to Embodiment 4. The information processing system 1I is configured in a terminal device 2I. FIG. 34 shows the terminal device 2I and an artificial intelligence 4 outside the information processing system 1I. In Embodiment 4, the same components as those in Embodiments 1 to 3 are denoted by the same reference numerals, and the configurations different from those in Embodiments 1 to 3 will be mainly described.
[0337] The terminal device 2I has the same configuration as the terminal device 2A shown in FIG. 1. Further, the terminal device 2I includes a request management unit 36, a correction reception unit 41, and a correction detection unit 42. The terminal device 2I can be realized by the same hardware configuration as the hardware configuration shown in FIG. 2.
[0338] In the information processing system 1I shown in FIG. 34, the components of the information processing system 1I are provided in a terminal device 2I which is one device. The information processing system according to Embodiment 4 is not limited to the case where the components of the information processing system are provided in one device. The components of the information processing system may be distributed among two or more devices that can cooperate functionally.
[0339] FIG. 35 is a diagram showing a second configuration example of the information processing system according to Embodiment 4. FIG. 35 shows an information processing system 1J which is a second configuration example of the information processing system. The information processing system 1J is configured by a terminal device 2J and a backend device 3J. That is, in the information processing system 1J, the components of the information processing system 1J are distributed between the terminal device 2J and the backend device 3J.
[0340] The terminal device 2J includes the same configuration as the terminal device 2B shown in FIG. 3 and a correction detection unit 42. The backend device 3J includes the same configuration as the backend device 3B shown in FIG. 3, a request management unit 36, and a correction reception unit 41. The terminal device 2J can be realized by the same hardware configuration as the hardware configuration shown in FIG. 2. The backend device 3J can be realized by the same configuration as the configuration obtained by removing the input device 54 and the display device 55 from the hardware configuration shown in FIG. 2. Note that the mode of distributing the components of the information processing system is not limited to the mode shown in FIG. 35 and is arbitrary.
[0341] Next, an overview of each component of the information processing system according to Embodiment 4 will be described. Hereinafter, each component of the information processing system 1I shown in FIG. 34 will be described as an example. The description of each component of the information processing system 1I is assumed to be the same for the information processing system 1J shown in FIG. 35. Here, the description of the same content as in Embodiments 1 to 3 will be omitted.
[0342] In a configuration having the answer generation unit 14, various verification processes in the answer generation unit 14 are performed as described above, and the verification results are input to the correction reception unit 41 and the request management unit 36. When the information processing system 1I obtains a verification result indicating that it is inappropriate by the answer generation unit 14, it determines whether to re-perform the process in the input generation unit 12. Such determination may be automatically performed by the request management unit 36. The information processing system 1I may inquire of the user whether to re-perform the process together with the determination result through the answer presentation unit 15, and perform such determination by the request management unit 36 based on the answer result. In the case of an information processing system provided with the information notification unit 22 shown in FIG. 21 or FIG. 22, the information processing system may inquire of the user whether to re-perform the process together with the determination result through the information notification unit 22, and perform such determination by the request management unit 36 based on the answer result.
[0343] The correction detection unit 42 functions after an answer (either the first answer or the second answer) is presented, regardless of the presence or absence of the answer generation unit 14. Although details will be described later, the correction detection unit 42 detects whether the user has changed the content of the answer presented by the answer presentation unit 15, that is, the presence or absence of correction and the content of the change. The correction detection unit 42 outputs detection information, which is information indicating the presence or absence of correction and the content of the change, to the correction reception unit 41.
[0344] Based on the verification result in the answer generation unit 14 or the detection information from the correction detection unit 42, the correction reception unit 41 changes the generation process of the input data set in the input generation unit 12 and various information or data referred to during the generation process. When it is determined in the request management unit 36 that the process in the input generation unit 12 needs to be redone, after the correction reception unit 41 makes changes based on the detection information, the process in the input generation unit 12 is restarted.
[0345] The above is the general operation flow of the information processing system 1I in the fourth embodiment. Next, the details of each of the above components will be described. Note that descriptions of content overlapping with those in the first to third embodiments are omitted.
[0346] <The correction detection unit 42> The correction detection unit 42 detects a correction operation on the second answer presented by the answer presentation unit 15.
[0347] Ideally, all operations performed by the user are logged, and by analyzing the content of the operations, it is desirable to grasp specifically how each part has been corrected. In this case, the information processing system 1I can perform advanced and detailed correction detection. However, even if such advanced and detailed correction detection is not performed, it is still possible to grasp the correction content. For example, the information processing system 1I detects a triggering operation that is presumed to be when the user finally utilizes the answer result, records the implementation content at that time as the final answer state, and compares the originally presented second answer with the recorded implementation content to grasp the correction content.
[0348] The correction detection unit 42 determines the presence or absence of a correction based on the comparison result between the final response state and the originally presented second response. The correction detection unit 42 transmits, as correction detection information, the determination result of the presence or absence of a correction and information indicating the difference between the final response state and the originally presented second response to the correction reception unit 41.
[0349] For example, when the request input to the information processing system 1I is a request for creating a processing program, the execution operation of the processing program or the editing end operation can be the operation that can serve as the above trigger, and the content of the processing program at that time becomes the final response state. Then, the correction detection unit 42 compares the final response state with the processing program created with the original second response, and determines that there is no correction if there is no difference. The correction detection unit 42 determines that there is a correction if there is a difference. Further, the correction detection unit 42 determines that a correction has been made to the difference portion.
[0350] <Answer generation unit 14> When the answer generation unit 14 determines that a correction is necessary based on the verification result, it notifies the correction reception unit 41 of the content of the correction, and when it determines that a correction is not necessary, it creates a second answer.
[0351] When an inappropriate verification result is obtained in various verification processes in the answer generation unit 14, the answer generation unit 14 transmits the verification result indicating that it is inappropriate to the correction reception unit 41. In the answer generation unit 14, verification of basic rules, functional specifications, or operations is performed. Therefore, in the answer generation unit 14, information indicating which part is determined to be inappropriate for what reason is acquired. Such verification result information corresponds to the information regarding the processing result in the answer generation unit 14 included in the notification information described in Embodiment 2. Therefore, the answer generation unit 14 transmits the verification result information to the correction reception unit 41. The verification result information transmitted to the correction reception unit 41 includes information indicating the part determined to be inappropriate and information regarding the content or reason for the determination. The answer generation unit 14 also transmits the verification result information to the request management unit 36.
[0352] <Request Management Unit 36> When a verification result indicating inappropriateness is obtained in various verification processes in the response generation unit 14, the request management unit 36 determines whether to re - execute the process in the input generation unit 12. Such determination may be automatically made by the request management unit 36. The information processing system 1I may inquire of the user whether to re - execute in conjunction with the determination result through the response presentation unit 15 or the information notification unit 22 shown in FIG. 21 or FIG. 22, and make such determination by the request management unit 36 based on the response result.
[0353] If it is determined to re - execute the process in the input generation unit 12, the request management unit 36 notifies the input generation unit 12 to re - execute the process. The input generation unit 12 can create an input data set reflecting the verification result by waiting for the change process in the correction reception unit 41 described later to be completed and starting the regeneration of the input data set.
[0354] Note that the above inquiry to the user and the re - execution of the process in the input generation unit 12 based on the response result may be performed for each partial request or for each first partial response. In this case, the information processing system 1I can regenerate the input data set for each problematic part of the request instead of the entire request, and can efficiently generate a response that satisfies the request.
[0355] <Correction Reception Unit 41> The correction reception unit 41 accepts the correction from the content of the correction operation detected by the correction detection unit 42. The correction reception unit 41 changes the processing content in the input generation unit 12 based on at least one of the correction detection information and the verification result information. That is, the correction reception unit 41 may make the change based on one of the correction detection information and the verification result information, or may make the change based on both the correction detection information and the verification result information. Each of the correction detection information and the verification result information may include a plurality of pieces of information.
[0356] When the correction reception unit 41 changes the processing content in the input generation unit 12 based on the correction detection information, it updates the exemplification information or context information used when generating the input data set for the original request, using the information on the location where a difference has occurred from the original second answer in the final answer state. For example, using the keywords included in the request, the exem reports or When the context information was retrieved from a table or database and output, as an update process, the correction reception unit 41 replaces the information in the table or database corresponding to the keyword with the information on the location where the difference has occurred. Alternatively, as an update process, the correction reception unit 41 may add the information in the table or database corresponding to the keyword. That is, by including the final answer state as an example of the required correct answer in the input data set, it is expected to improve the accuracy of the output by the artificial intelligence 4 when the same or similar requests as this time are input in the future.
[0357] Here, taking the tool tip point control function required in a machine tool having a rotating axis, such as a five-axis machining center, as an example, the case of changing the processing content in the input generation unit 12 will be described. Usually, the offset from the base of the tool to the tool tip point where actual machining is performed is represented by a one-dimensional vector. In this case, the offset vector is a one-dimensional vector. In a machine tool having a rotating axis, the posture of the tool changes according to the angle of the rotating axis, and the offset vector changes three-dimensionally. This tool tip point control function is a function that controls the offset vector so that the user of the machine tool is not aware of it, and the user only needs to command the coordinates of the tool tip point.
[0358] This tool tip control function has two formats according to the command method of the tool posture. The two formats are the G43.4 command for commanding the angle of the rotation axis and the G43.5 command for commanding the tool posture with a vector. For example, when the requirement "create a machining program for tool tip commands" is input and it is assumed that the answer created by the G43.4 command is presented. Then, assuming that the G43.4 command is changed to the G43.5 command as the final answer state, in the user's environment, it is considered more appropriate to prioritize the G43.5 command over the G43.4 command for tool tip control. For this reason, for example, it is conceivable to change the information in the specification DB on which of the G43.4 command and the G43.5 command to preferentially select for tool tip control.
[0359] When the correction reception unit 41 changes the processing content in the input generation unit 12 based on the verification result information, it updates the exemplified information or context information used when generating the input data set for the original request, using the inappropriate part determined and the information on the determination content or reason. In particular, when making such a change based on the verification result information, by updating the restrictions in the context information, it can be expected that when the same or similar requests as this time are input after the next time, an answer that is not determined to be inappropriate will be generated by the answer generation unit 14.
[0360] More specifically, as an update process, the correction reception unit 41 adds, as data in a table or database, the content obtained by inverting the determination reason of the verification result information, corresponding to, for example, the keyword included in the request, as context information, particularly as a restriction. For example, if the determination reason of the verification result information is that "there are two-byte characters outside the comment area of the machining program (the area sandwiched between '(' and ')')", the inverted content is that "the two-byte characters are sandwiched in the comment area" or "no two-byte characters are placed outside the comment area". These matters become restrictions.
[0361] <Effect> According to Embodiment 4, the information processing system includes a correction detection unit 42 and a correction reception unit 41. When the answer generation unit 14 determines that correction is necessary based on the verification result, it notifies the correction reception unit 41 of the content of the correction. When it determines that correction is unnecessary, it creates a second answer. When it is determined based on the verification result that correction is necessary, the information processing system can improve the accuracy of the output by the artificial intelligence 4 by updating the processing in the input generation unit 12. The information processing system can update the processing with reference to the content of the answer ultimately required by the user by updating the processing based on the detection result of the correction content by the correction detection unit 42. The information processing system can perform an update with reference to the content determined to be inappropriate in the previous answer by updating the processing based on the verification result in the answer generation unit 14. Furthermore, the information processing system can perform input generation with the updated processing content without redoing the input generation process from the input of the request by determining to redo the input generation process in the request management unit 36.
[0362] Here, a supplement regarding the relationship between the information processing system according to Embodiments 1 to 4 and the machine tool that is the object of information processing by the information processing system will be described. Here, the overall function for controlling the machine tool is referred to as a numerical control function. This numerical control function includes, in addition to the function for controlling machine tools such as a cutting machine, a grinding machine, an electric discharge machine, a laser processing machine, or an AM processing machine, which are the objects of a general numerical control device, the function for controlling a press machine, an injection molding machine, an industrial robot, and the like.
[0363] The information processing system according to Embodiments 1 to 4 may include a numerical control function known to those skilled in the art. Here, the numerical control function known to those skilled in the art is, for example, a function of analyzing a machining program and creating time-series command information for realizing relative rotation or movement between a tool and a workpiece described in the machining program for various motors or amplifiers. That is, such a case is an example of a form in which the terminal device of the information processing system is constituted by a numerical control device.
[0364] Further, the information processing system may be configured to be able to cooperate and communicate with an external device such as a numerical control device that does not have a numerical control function known to those skilled in the art and has a numerical control function. Being configured to be able to cooperate and communicate does not only mean being directly connected to an external device having a numerical control function, but also includes being able to connect to a storage area storing information and data handled by them.
[0365] In addition, when the information processing system does not have a numerical control function and the information processing system cannot cooperate and communicate with an external device having a numerical control function, the information processing system will not be able to perform operations using data (such as coordinate values or variable values) created or updated by the numerical control function among the held data. However, the information processing system can exhibit all of the effects described in Embodiments 1 to 4 except for the operations that cannot be performed.
[0366] The configurations shown in the above embodiments are examples of the content of the present disclosure. The configurations of each embodiment can be combined with other known technologies. The configurations of each embodiment may be appropriately combined with each other. It is possible to omit or change a part of the configuration of each embodiment without departing from the gist of the present disclosure.
Description of Reference Numerals
[0367] 1A, 1B, 1C, 1D, 1E, 1F, 1G, 1H, 1I, 1J Information processing system, 2A, 2B, 2C1, 2C2, 2D, 2E, 2F, 2G, 2H, 2I, 2J Terminal device, 3B, 3C, 3E, 3G, 3H, 3J Back-end device, 4, 41, 42, 43 Artificial intelligence, 51, 52 Software, 6 Web application, 11 Request reception unit, 12 Input generation unit, 13 Transmission / reception unit, 14 Response generation unit, 15 Response presentation unit, 21 Notification information creation unit, 22 Information notification unit, 31 Request determination unit, 32 Sub-request generation unit, 33 DB selection unit, 34 Order determination unit, 35 Information completion unit, 36 Request management unit, 41 Modification reception unit, 42 Modification detection unit, 50 Processing circuit, 51 Communication device, 52 Processor, 53 Memory, 54 Input device, 55 Display device.
Claims
1. a request receiving unit that receives a request for an operation to be performed when using the machine tool; an answer generation unit that generates a second answer that is an answer to the request using a first answer that is an output by an artificial intelligence to which an input data set corresponding to the request has been input; an answer presentation unit that presents the generated second answer; The request received by the request receiving unit includes at least one of creating a machining program, creating a ladder program, creating or outputting a data file related to the machine tool or an operation using the machine tool, and responding to a question related to the machine tool or an operation using the machine tool, The answer generation unit performs at least one of a basic rule verification, a functional specification verification, an operation verification, and an answer format conversion to the second answer on the first answer. An information processing system comprising:
2. and an input generation unit that generates the input data set by referring to a specification database in which information representing the specifications of the information processing system or at least one of the specifications of the machine tool, the artificial intelligence, the transport device, and the control device of the machine tool, which are devices external to the information processing system, is stored, and at least one of setting parameters related to the settings of the information processing system or the settings of devices external to the information processing system, and retained data retained in a storage area accessible by the information processing system.
2. The information processing system according to claim 1 .
3. a notification information creation unit that creates notification information including one or more pieces of information among the content of the processing by the input generation unit, the content of the processing by the answer generation unit, the input data set, and the first answer; an information notifying unit that notifies the notification information; 3. The information processing system according to claim 2.
4. performing one or more of generating a plurality of partial requests based on the request, determining an order for the plurality of partial requests, and completing missing information in the request.
3. The information processing system according to claim 2.
5. The plurality of partial requests generated based on the request include a partial request for searching, based on the request, information included in the specification database to be referred to by the input generating unit, and a partial request for including, in the input data set, information obtained by the search based on the request.
5. The information processing system according to claim 4.
6. The input data set includes one or more of instruction information indicating the contents of the instructions included in the request, context information including premise information of the instruction or restrictions of the instruction, and example information indicating examples of pairs of inputs to the artificial intelligence and outputs from the artificial intelligence.
6. The information processing system according to claim 4, wherein:
7. The setting parameters include one or more of the type of the machine tool, information indicating a manufacturer of the machine tool, and information indicating a manufacturer of a control device for the machine tool, and the specification database to be referred to is switched depending on the set value of the setting parameters.
7. The information processing system according to claim 6.
8. The data file includes one or more of the machining program, the ladder program, setting parameters related to settings of the information processing system or settings of a device external to the information processing system, an operating procedure manual for the machine tool, shape data of each of the tools and jigs attached to the machine tool, and shape data of an object to be machined by the machine tool.
4. The information processing system according to claim 1, wherein the information processing system further comprises:
9. a request determination unit that determines a category of the request and creates request category information; the input generation unit changes a generation process of the input data set by switching one or more contents of the specification database, the setting parameters, and the retained data to be referenced based on the request category information; The answer generation unit changes, based on the request category information, processing in one or more of the verification of the basic rules, the verification of the functional specifications, the verification of the operation, and the conversion of the answer format to the second answer.
4. The information processing system according to claim 3.
10. a correction detection unit that detects a correction operation on the presented second answer; a correction receiving unit that receives a correction based on the detected content of the correction operation; If the answer generation unit determines that a correction is necessary based on the result of the verification, the answer generation unit notifies the correction acceptance unit of the content of the correction, and if the answer generation unit determines that a correction is not necessary, the answer generation unit creates the second answer.
4. The information processing system according to claim 3.
11. the input generation unit sets destination information for each of the input data sets corresponding to each of the plurality of partial requests in accordance with characteristics of the plurality of partial requests; The destination information may include, in addition to the artificial intelligence, an artificial intelligence different from the artificial intelligence, or a software function providing unit other than the artificial intelligence.
6. The information processing system according to claim 4, wherein:
12. and a request management unit that controls, for each of the input data sets corresponding to each of the plurality of partial requests, transmission of the input data set to the artificial intelligence.
12. The information processing system according to claim 11.
13. The conversion into an answer format showing the second answer includes a conversion that makes the portion created by the artificial intelligence distinguishable.
3. The information processing system according to claim 1, wherein the information processing system is a data processing system.
14. When the portion created by the artificial intelligence contains a numerical value, the conversion to the answer format showing the second answer includes replacing the numerical value with a specific symbol or a specific character, or deleting the numerical value.
14. The information processing system according to claim 13.
15. a request receiving unit that receives a request for an operation to be performed when using the machine tool; an input generation unit that generates an input data set according to the request by referring to a specification database in which information representing the specifications of an information processing system or at least one of the specifications of the machine tool, the artificial intelligence, the conveying device, and the control device of the machine tool, which are devices external to the information processing system, and at least one of setting parameters related to the settings of the information processing system or the settings of devices external to the information processing system, and retained data retained in a storage area accessible by the information processing system; an answer presentation unit that presents an answer to the request, the answer being created based on an output by the artificial intelligence to which the transmitted input data set has been input; The input data set includes one or more pieces of instruction information indicating the contents of the instructions included in the request, and further includes one or more of context information including premise information of the instruction or restrictions of the instruction, and example information indicating examples of pairs of inputs to the artificial intelligence and outputs from the artificial intelligence. An information processing system comprising:
16. The request received by the request receiving unit includes at least one of creating a machining program, creating a ladder program, creating or outputting a data file related to the machine tool or an operation using the machine tool, and responding to a question related to the machine tool or an operation using the machine tool, The data file includes one or more of the machining program, the ladder program, setting parameters related to settings of the information processing system or settings of a device external to the information processing system, an operating procedure manual for the machine tool, shape data of a tool attached to the machine tool, and shape data of a workpiece to be machined by the machine tool.
16. The information processing system according to claim 15.
17. A first answer output by the artificial intelligence is converted into a second answer in response to the request; The conversion into an answer format showing the second answer includes a conversion that makes the portion created by the artificial intelligence distinguishable.
16. The information processing system according to claim 15.
18. When the portion created by the artificial intelligence contains a numerical value, the conversion to the answer format showing the second answer includes replacing the numerical value with a specific symbol or a specific character, or deleting the numerical value.
18. The information processing system according to claim 17.
19. a notification information creation unit that creates notification information including one or more pieces of information among the content of the processing by the input generation unit, the input data set, and a first answer that is an output by the artificial intelligence; an information notifying unit that notifies the notification information; 16. The information processing system according to claim 15.
20. On the computer, receiving a request for an operation to be performed using the machine tool; generating an input data set according to the request by referring to a specification database in which information representing the specifications of an information processing system or at least one of the specifications of the machine tool, the artificial intelligence, the conveying device, and the control device of the machine tool, which are devices external to the information processing system, is stored, setting parameters relating to the settings of the information processing system or the settings of devices external to the information processing system, and retained data retained in a storage area accessible by the information processing system; providing an answer to the request, the answer being generated based on the output of the artificial intelligence to which the transmitted input data set was input; The input data set includes one or more pieces of instruction information indicating the contents of the instructions included in the request, and further includes one or more of context information including premise information of the instruction or restrictions of the instruction, and example information indicating examples of pairs of inputs to the artificial intelligence and outputs from the artificial intelligence.
2. An information processing program comprising:
Citation Information
Patent Citations
Machine learning device for learning set value of processing program in machine tool and processing system
JP2018065211A
Information management system, server, information management method and program
JP2018120562A
Management system, answer display method and program
JP2021015864A
Information processing device and information processing program
JP2022057864A
Machining proposal table creation device and machining proposal table creation program
WO2024095402A1
Cited By
Information processing system, information processing method and program
JP7776190B1
Circuit design method, and a system and program for said method.
JP7886505B1