Computer program, information processing apparatus, and information processing method
The computer program simplifies software development for complex databases by using a trained language model to process and output database code, addressing the challenge of requiring extensive SQL knowledge.
Patent Information
- Application Number
- JP2023184967
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-10-27
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2043-10-27
AI Technical Summary
The complexity of large databases and SQL statements makes software development challenging, especially for developers without extensive knowledge of databases and SQL.
A computer program that acquires existing database processing code, accepts function designations such as error checking, creates directives for a trained language model, and processes output to facilitate easier software development.
Enables more accessible and efficient software development related to databases, allowing developers to work with complex systems without needing extensive SQL knowledge.
Smart Images

Figure 2025073850000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a computer program, an information processing device, and an information processing method that can facilitate software development. [Background technology]
[0002] Various services have been proposed to support software development related to databases (Patent Document 1, etc.). Software development using SQL (Structured Query Language) for databases requires knowledge of SQL, such as grasping the contents of the database and understanding the definition of the database. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2012-113373 A Summary of the Invention [Problem to be solved by the invention]
[0004] Databases are becoming huge and SQL statements are becoming more complex. Software development and database management that includes SQL for databases are essential for many web-based services. There is a demand for an environment that allows development even if the user does not have much knowledge of large and complex databases and SQL.
[0005] An object of the present disclosure is to provide a computer program, an information processing device, and an information processing method that can more easily realize software development. [Means for solving the problem]
[0006] A computer program according to one embodiment of the present disclosure causes a computer to acquire code relating to previously written database processing, accept the specification of one of a number of functions including error checking, create an instruction statement for obtaining an answer relating to the code according to the specified function, send the acquired code and the created instruction statement to a trained language model, and execute a process of outputting data corresponding to the specified function based on the answer from the language model.
[0007] In the computer program of the present disclosure, the "code relating to database processing" is, for example, written SQL or a predefined structure for writing SQL. The "code relating to database processing" may be a part of a software program relating to SQL. Effect of the Invention
[0008] According to the present disclosure, database-related software development can be more easily realized. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a schematic diagram of an information processing system. [Diagram 2] FIG. 1 is a block diagram showing a configuration of an information processing device. [Diagram 3] FIG. 2 is a block diagram showing a configuration of a terminal device. [Figure 4] 1 is a flowchart showing an example of a processing procedure in a development process based on a development software program. [Diagram 5] 1 is a flowchart showing an example of a processing procedure in a development process based on a development software program. [Figure 6] 11 is a flowchart showing an example of a processing procedure in an information processing device. [Figure 7] 11 is a flowchart illustrating an example of an automatic generation process procedure in an information processing device. [Figure 8] 13 is a flowchart illustrating an example of an SQL formatting process procedure in the information processing device. [Figure 9] 11 is a flowchart illustrating an example of an error check processing procedure in the information processing device. [Figure 10] FIG. 2 is an explanatory diagram of the processing function. [Figure 11] FIG. 2 is an explanatory diagram of the processing function. [Figure 12] FIG. 2 is an explanatory diagram of the processing function. [Figure 13] FIG. 2 is an explanatory diagram of the processing function. [Figure 14] FIG. 2 is an explanatory diagram of the function of automatic generation processing. [Figure 15] FIG. 2 is an explanatory diagram of the function of automatic generation processing. [Figure 16] FIG. 2 is an explanatory diagram of the function of automatic generation processing. [Figure 17] FIG. 11 is an explanatory diagram of the function of SQL formatting processing. [Figure 18] FIG. 11 is an explanatory diagram of the function of SQL formatting processing. [Figure 19] FIG. 4 is an explanatory diagram of the function of an error check process. [Figure 20] FIG. 4 is an explanatory diagram of the function of an error check process. [Figure 21] FIG. 4 is an explanatory diagram of the function of an error check process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] The present disclosure will be specifically described with reference to the drawings showing the embodiments thereof.
[0011] 1 is a schematic diagram of an information processing system 100. The information processing system 100 in this embodiment includes an information processing device 1 and a terminal device 2. The information processing device 1 and the terminal device 2 can communicate with each other via a network N. The network N is a wired or wireless network including a public communication network, which is the so-called Internet, a carrier network, and the like. The information processing device 1 can transmit and receive data to and from the terminal device 2 by communication via the network N, and can transmit and receive data to and from other server devices that provide external services (for example, large-scale language models (LLMs)) via the network N.
[0012] The information processing device 1 is operated by a business that provides a software program development support service. The information processing device 1 provides a software program development support platform related to SQL for a database.
[0013] The terminal device 2 is used by a development engineer developing a database software program. The terminal device 2 is capable of communicating with a database DB that the terminal device 2 has the authority to access and read / write, and enables a service using the database DB to be provided by a software program developed by the terminal device 2.
[0014] A development engineer using the terminal device 2 edits, corrects, and tests SQL-related code on a software program development support platform provided by the information processing device 1. The information processing system 100 disclosed herein provides a function of suggesting code corrections and a function of automatically creating code on the software program development support platform. The configuration and processing for realizing the function of suggesting code corrections and the function of automatically creating code will be described below.
[0015] 2 is a block diagram showing the configuration of the information processing device 1. The information processing device 1 is a server computer. In the following description, the information processing device 1 will be described as a single server computer, but may be configured as multiple computers with processing content, function, or the like distributed.
[0016] The information processing device 1 includes a processing unit 10, a storage unit 11, and a communication unit 12. The processing unit 10 is a processor using a CPU (Central Processing Unit) and / or a GPU (Graphics Processing Unit). The processing unit 10 uses built-in memories such as a ROM (Read Only Memory) and a RAM (Random Access Memory) to control each component and execute processing. The processing unit 10 may be configured as a single piece of hardware (SoC: System On a Chip) that integrates a processor, memory, communication devices, and the like. The processing unit 10 communicates with the terminal device 2 to receive code based on an information processing program (program product) P1 stored in the storage unit 11, and outputs suggestions for error checking, processing, creating, and shaping the code to the terminal device 2.
[0017] The storage unit 11 uses a non-volatile storage medium such as a solid state drive (SSD) or a hard disk, and stores programs and data referenced by the processing unit 10. The storage unit 11 stores an information processing program P1. The information processing program P1 stored in the storage unit 11 may be an information processing program P9 stored in the storage medium 9 that the processing unit 10 reads out, replicates, and installs. The information processing program P1 may be an information processing program downloaded by the processing unit 10 from a program server (not shown), stored in the storage unit 11, and installed.
[0018] The information processing program P1 stored in the memory unit 11 accepts an HTTPS communication connection or an HTTP communication connection from the terminal device 2, and accepts request input and executes processing as described below via a development software program P2 that displays an interface in a web browser launched on the terminal device 2.
[0019] The communication unit 12 is a communication device that realizes communication with the terminal device 2 via the network N. The communication unit 12 uses a network card for wired communication, a wireless communication device for carrier communication, or a wireless LAN device. The processing unit 10 can be communicatively connected to the terminal device 2 via the network N by the communication unit 12.
[0020] Based on the information processing program P1, as described below, the processing unit 10 accepts requests regarding the development target program on the development software program P2, and outputs proposal information for the development target program based on the accepted request via the development software program P2.
[0021] 3 is a block diagram showing the configuration of the terminal device 2. The terminal device 2 is a laptop or desktop personal computer used by a software development engineer. The terminal device 2 may be a smartphone or a tablet terminal.
[0022] The terminal device 2 includes a processing unit 20, a storage unit 21, a communication unit 22, a display unit 23, and an operation unit 24.
[0023] The processing unit 20 is a processor using a CPU and / or a GPU. The processing unit 20 uses built-in memories such as ROM and RAM to control each component and execute processing. The processing unit 20 may be configured as a single piece of hardware (SoC) that integrates a processor, memory, and a communication unit 22 described below. The processing unit 20 transmits and receives data to and from the information processing device 1 based on a development software program P2 stored in the storage unit 21, and accepts operations from a development engineer. Details will be described later.
[0024] The storage unit 21 uses a non-volatile memory such as a hard disk, a flash memory, or an SSD. The storage unit 21 stores programs and data referenced by the processing unit 20. The storage unit 21 stores a development software program (program product) P2. The development software program P2 includes a GUI that accepts code creation and editing operations. The development software program P2 can use various functions provided by a software program development support platform provided by the information processing device 1 during code creation or editing operations. The development software program P2 stored in the storage unit 21 may be a program that the processing unit 20 reads out, copies, and installs the development software program P8 stored in the storage medium 8. The development software program P2 may be a program that the terminal device 2 downloads from a program server (not shown), stores in the storage unit 21, and installs.
[0025] The communication unit 22 is a communication device that realizes communication via the network N. The communication unit 22 is, for example, a network card compatible with the network N. The communication unit 22 may realize wireless communication. The processing unit 20 can transmit and receive data between the information processing device 1 and the database DB via the communication unit 22.
[0026] The display unit 23 is a display such as a liquid crystal display, an organic EL (Electro Luminescence) display, etc. The display unit 23 displays a GUI (Graphical User Interface) based on the development software program P2. For information output, an audio output unit including a speaker may be used.
[0027] The operation unit 24 is a user interface such as a keyboard and a mouse capable of inputting and outputting data to and from the processing unit 20. The operation unit 24 may be a touch panel built into the display unit 23. The operation unit 24 may be a physical button, or the operation unit 24 may be an audio input / output unit including a microphone.
[0028] In the information processing system 100 thus configured, a process of using the functions of the software program development support platform during development of a development target program relating to SQL for the database DB to be developed using the development software program P2 will be described.
[0029] 4 and 5 are flowcharts showing an example of a processing procedure in a development process based on the development software program P2. When a development engineer starts up the development software program P2 and opens an editing screen (page, window) for the program to be developed, the following processing procedure is executed based on the operation received by the terminal device 2.
[0030] The processing unit 20 of the terminal device 2 displays an interface for calling up a number of functions including an error check on an editing screen for code relating to the displayed SQL based on the development software program P2 (step S201).
[0031] The processing unit 20 judges whether or not an interface of any of the functions has been designated from the interfaces for calling the functions displayed in step S201 (step S202).
[0032] When it is determined that the interface of any of the functions is not specified (S202: NO), the processing unit 20 returns the process to step S202 and continues accepting edits of the code.
[0033] When it is determined that an interface of any function has been specified (S202: YES), the processing unit 20 identifies the specified function (step S203). The processing unit 20 transmits the code already entered on the editing screen and data indicating the specified function to the information processing device 1 (step S204).
[0034] If the specified function identified in step S203 is automatic generation, the processing unit 20 acquires the definition of the target database (part) set on the editing screen and the purpose of creation in step S204 and transmits them to the information processing device 1.
[0035] The processing unit 10 of the information processing device 1 receives the code being edited and data indicating the designated function inputted at the terminal device 2 (step S101). The processing unit 10 determines whether the designated function is a processing instruction or not (step S102).
[0036] In step S102, when it is determined that the specified function is a processing instruction (S102: YES), the processing unit 10 executes the processing (step S103), and transmits the processed code to the terminal device 2 (step S104).
[0037] If it is determined that the specified function is not a processing instruction (S102: NO), the processing unit 10 determines whether the specified function is automatic generation (step S105). If it is determined that the specified function is automatic generation (S105: YES), the processing unit 10 executes automatic generation processing (step S106) and transmits the processed code to the terminal device 2 (S104).
[0038] If it is determined that the specified function is not automatically generated (S105: NO), the processing unit 10 determines whether the specified function is SQL formatting (step S107). If it is determined that the specified function is SQL formatting (S107: YES), the processing unit 10 executes the SQL formatting process (step S108) and transmits the processed code to the terminal device 2 (S104).
[0039] If it is determined that the specified function is not SQL formatting (S104: NO), the processing unit 10 executes an error check process, which is one of the remaining functions, (step S109), and transmits the processed code to the terminal device 2 (S104).
[0040] The processing unit 20 of the terminal device 2 receives the code transmitted from the information processing device 1 according to the function (step S205), displays the content of the received code on the editing screen (step S206), and ends the process.
[0041] 6 is a flowchart showing an example of a processing procedure in the information processing device 1. The processing procedure shown in FIG 6 corresponds to details of the process of step S103 in the processing procedures shown in FIG 4 and FIG 5.
[0042] The processing unit 10 of the information processing device 1 creates a directive requesting the large-scale language model to propose code to be added (modified) regarding the code acquired (received) in step S101 (step S301).
[0043] In step S301, the processing unit 10 assigns a role to the large-scale language model, such as "SQL code development engineer," and creates a prompt that includes the text of the code obtained in step S101, such as "Please output the results of processing this SQL statement in a way that is appropriate for the following purpose" or "The purpose is ****."
[0044] The processing unit 10 provides the created instruction sentence to a large-scale language model (LLM) provided by an external service or a large-scale language model trained within the information processing device 1 (step S302). The processing unit 10 acquires text output from the large-scale language model, i.e., the processed code (step S303).
[0045] The processing unit 10 sets the acquired processed code as the processed code (step S304), ends the processing, and returns the process to step S104 in the flowchart of FIG.
[0046] 7 is a flowchart showing an example of an automatic generation processing procedure in the information processing device 1. The processing procedure shown in FIG 7 corresponds to details of the process of step S105 in the processing procedures shown in FIG 4 and FIG 5.
[0047] The processing unit 10 of the information processing device 1 creates a directive requesting the large-scale language model to generate an SQL statement, using the definition related to the database acquired (received) in step S101 and the purpose of automatic generation (step S501).
[0048] In step S501, the processing unit 10 assigns a role to the large-scale language model, such as "SQL code development engineer," and creates a prompt that includes the definition of the database acquired in step S101 and the purpose of automatic generation, and includes text such as "For this definition, please output an SQL statement (code) that satisfies the following purpose" and "The purpose is *****."
[0049] The processing unit 10 provides the created instruction sentence to a large-scale language model provided by an external service or a large-scale language model trained within the information processing device 1 (step S502). The processing unit 10 acquires text output from the large-scale language model, i.e., an SQL sentence (step S503).
[0050] The processing unit 10 sets the acquired SQL statement as the processed code (step S504), ends the automatic generation process, and returns the process to step S104 in the flowchart of FIG.
[0051] 8 is a flowchart showing an example of the SQL formatting processing procedure in the information processing device 1. The processing procedure shown in FIG 8 corresponds to details of the process of step S108 in the processing procedures shown in FIG 4 and FIG 5.
[0052] The processing unit 10 of the information processing device 1 creates a directive for requesting the large-scale language model to format the code acquired (received) in step S101 (step S801).
[0053] In step S801, the processing unit 10 assigns a role to the large-scale language model, such as "SQL code development engineer," and creates a prompt that includes the text of the code obtained in step S101, such as "Please format this SQL statement according to the following rules."
[0054] The processing unit 10 provides the created instruction sentence to a large-scale language model (LLM) provided by an external service or a large-scale language model trained within the information processing device 1 (step S802). The processing unit 10 acquires text output from the large-scale language model, i.e., the formatted SQL sentence (step S803).
[0055] The processing unit 10 sets the acquired formatted SQL sentence as the processed code (step S804), ends the SQL formatting process, and returns the process to step S104 in the flowchart of FIG.
[0056] 9 is a flowchart showing an example of an error check processing procedure in the information processing device 1. The processing procedure shown in FIG 9 corresponds to details of the process of step S109 in the processing procedures shown in FIG 4 and FIG 5.
[0057] The processing unit 10 of the information processing device 1 creates a directive requesting the large-scale language model to perform an error check on the code acquired (received) in step S101 (step S901).
[0058] In step S901, the processing unit 10 assigns a role to the large-scale language model, such as "SQL code development engineer," and creates a prompt that includes the text of the code obtained in step S101, such as "Please correct this SQL statement based on the results of error checking using the following rules."
[0059] The processing unit 10 provides the created instruction sentence to a large-scale language model (LLM) provided by an external service or a large-scale language model trained within the information processing device 1 (step S902). The processing unit 10 acquires text output from the large-scale language model, i.e., an error check result and a correction proposal for the SQL (step S903).
[0060] The processing unit 10 sets the acquired error check result and suggested correction for the SQL as the processed code (step S904), ends the error check process, and returns the process to step S104 in the flowchart of FIG.
[0061] 10 to 13 are explanatory diagrams of the processing function. FIG. 10 shows an example of an editing screen 230 in the development software program P2. The editing screen 230 includes buttons (interfaces) 231 for selecting various menus (functions). The editing screen 230 includes an editing area 232 for accepting input of SQL code by operation using the keyboard of the operation unit 24. The editing screen 230 in FIG. 10 uses buttons 231 for calling functions to be used during editing in the editing area 232, and allows editing operations such as switching of the editing target, copy, paste, UNDO, and REDO. In the editing screen 230 in FIG. 10, a draft of an SQL statement has already been input in the editing area 232. The button 231 may not be displayed, and may be displayed as a menu by right-clicking the mouse of the operation unit 24 or pressing a specific key on the keyboard during editing in the editing area 232.
[0062] Fig. 11 shows an example of a display when the "Edit" button 231 is selected from among the buttons 231 for each function on the editing screen 230 shown in Fig. 10. On the editing screen 230 in Fig. 11, when the development engineer selects the "Edit" button 231, an input field 233 in which the purpose of the editing can be input in natural language and a button 234 for requesting the editing are displayed in an area next to the editing area 232. In the example of Fig. 11, a request that "reserved words be converted to uppercase and other words to lowercase" is input in the input field 233 as the purpose of the editing.
[0063] When the development engineer selects button 234, the terminal device 2 transmits to the information processing device 1 the SQL code displayed in the editing area 232, the purpose of the processing entered in the input field 233, and data indicating the function of "processing" (S204).
[0064] The information processing device 1 assigns the role "SQL code development engineer" to the large-scale language model. Next, based on the SQL code and processing purpose sent from the terminal device 2, the information processing device 1 creates instruction statements such as "Please output the results of processing this SQL statement that is suited to the following purpose" and "The purpose is to convert reserved words to uppercase and others to lowercase," and assigns these to the large-scale language model (S302).
[0065] Fig. 12 shows an example of a display when a button 234 for requesting processing is selected on the editing screen 230 shown in Fig. 11. The editing screen 230 in Fig. 12 displays processed code that corresponds to the processing purpose "reserved words are converted to upper case, others to lower case" that is input for the SQL code being edited in the editing area 232 in Fig. 11. In the SQL statement shown on the editing screen 230 in Fig. 12, the reserved words "SELECT", "CASE", "WHEN", "THEN", "ELSE", "END", "FROM", and "WHERE" are converted to upper case, and other variables, defined items, etc. are all converted to lower case.
[0066] 12, an interface 235 is displayed next to the editing area 232, which allows the developer to choose whether to reflect (save) the code that has been processed using the large-scale language model or to cancel it. If the development engineer selects the interface 235 to reflect, the processed code in the editing area 232 is saved as the SQL statement being edited.
[0067] The interface 235 for reflecting (saving) the code processed using the large-scale language model or canceling it may be replaced by a confirmation screen 241 that accepts confirmation of whether to reflect or not. FIG. 13 shows an example of the confirmation screen 241 superimposed on the editing screen 230 shown in FIG. 11. The confirmation screen 241 shown in FIG. 13 is superimposed on the editing screen 230 when the button 234 for requesting processing is selected on the editing screen 230 shown in FIG. 11. The confirmation screen 241 includes a display field 242 for the code processed using the large-scale language model and a button 243 for selecting whether to reflect (save) the processed code or cancel it. When the button 243 to reflect is selected, the terminal device 2 reflects the code processed using the large-scale language model displayed in the display field 242 in the editing area 232, and when the button 243 to cancel is selected, it is discarded. In this way, by displaying the confirmation screen 241, it is possible to avoid unintended correction or processing, and to compare the SQL statement proposed from the large-scale language model with the SQL statement before processing.
[0068] 12 and confirmation screen 241 are not essential, and when button 234 for requesting processing is selected on the editing screen shown in Fig. 11, the change may be reflected in editing area 232 without confirmation. In this case, it is preferable to be able to restore the original state or re-reflect the change by performing an editing operation such as UNDO in the editing menu.
[0069] Figures 14 to 16 are explanatory diagrams of the function of the automatic generation process. Figure 14 includes a button 231 and an editing area 232, similar to the editing screen 230 shown in Figure 10. The editing area 232 of the editing screen 230 in Figure 14 is blank, but a database (Sales_YYMM) that is the target of the development target program being edited is specified. The button 231 may be displayed as a menu by right-clicking or pressing a specific key.
[0070] Fig. 15 shows a display example when the "automatic generation" button 231 is selected from among the buttons 231 for each function on the editing screen 230 shown in Fig. 14. On the editing screen 230 in Fig. 15, when the development engineer selects the "automatic generation" button 231, an input field 236 in which the purpose of automatic generation can be input in natural language and a button 237 for requesting automatic generation are displayed in an area next to the editing area 232. In the example of Fig. 15, a purpose of "I want to know the top 5 sales" is input from the target database in the input field 236 as the purpose of automatic generation.
[0071] When the development engineer selects button 237, the terminal device 2 transmits the code of the defined table, the purpose of automatic generation entered in input field 236, and data indicating the “automatic generation” function to the information processing device 1 (S204).
[0072] The information processing device 1 assigns the role "SQL code development engineer" to the large-scale language model. Next, based on the table code and the purpose of automatic generation transmitted from the terminal device 2, the information processing device 1 creates instruction statements such as "For the definition of the following table, please output an SQL statement (code) that satisfies the following purpose" and "The purpose is to know the top 5 sales," and assigns them to the large-scale language model (S502). The definitions are, for example, a product table "PRODUCT_MST" including "product name" and "product category," and a table "ORDER_TRN" of an order list including "ORDER NO." and "ORDER DATE."
[0073] Fig. 16 shows an example of the display when button 237 for requesting automatic generation is selected on edit screen 230 shown in Fig. 15. Edit screen 230 in Fig. 16 displays a code output by a large-scale language model in response to the purpose of automatic generation "I want to know the top 5 sales" entered in input field 236 in Fig. 15.
[0074] 16, an interface 238 is displayed next to the editing area 232, which allows the developer to choose whether to reflect (save) the code that was automatically generated using the large-scale language model or to cancel (revert to previous state). If the development engineer selects the interface 238 to reflect, the processed code in the editing area 232 is saved as the SQL statement being edited.
[0075] Figures 17 and 18 are explanatory diagrams of the SQL formatting processing function. Figure 17 includes a button 231 and an editing area 232, similar to the editing screen 230 shown in Figure 10. In the editing screen 230 of Figure 17, a draft of an SQL statement has already been input in the editing area 232. The button 231 may be displayed as a menu by right-clicking or by pressing a specific key.
[0076] When the development engineer selects the "format" button 231, the terminal device 2 transmits the code of the SQL being edited displayed in the editing area 232 and data indicating the "SQL format" function to the information processing device 1 (S204). The terminal device 2 transmits options (indent setting, line break setting, comma position, uppercase or lowercase conversion of reserved words, uppercase or lowercase conversion of database items, right or left alignment, etc.) that are set in advance for the "SQL format" function as conditions, together with the data indicating the "SQL format" function.
[0077] The information processing device 1 assigns the role "SQL code development engineer" to the large-scale language model. Next, based on the SQL draft and formatting conditions sent from the terminal device 2, the information processing device 1 creates instruction statements such as "I would like to format the SQL statement according to the following rules. The indentation is 4. Please start a new line after each comma. The comma should be at the beginning of the line..." and "Please format the following SQL statement according to the above rules," and assigns these to the large-scale language model (S802).
[0078] Fig. 18 shows a display example when the "format" button 231 is selected from among the buttons 231 for each function on the edit screen 230 shown in Fig. 17. On the edit screen 230 in Fig. 18, the draft of the SQL statement that has been input in the edit area 232 in Fig. 17 has been formatted by processing of a large-scale language model according to the set options.
[0079] Figures 19 to 21 are explanatory diagrams of the error check processing function. Figure 19 includes a button 231 and an editing area 232, similar to the editing screen 230 shown in Figure 10. In the editing screen 230 of Figure 19, a draft of an SQL statement has already been input in the editing area. The button 231 may be displayed as a menu by right-clicking or by pressing a specific key.
[0080] When the development engineer selects the "Check" button 231 corresponding to "Error Check," the terminal device 2 transmits to the information processing device 1 the code of the SQL being edited displayed in the editing area 232 and data indicating the "Error Check" function (S204).
[0081] The information processing device 1 assigns the role "SQL code development engineer" to the large-scale language model. Next, the information processing device 1 creates an instruction statement based on the SQL code sent from the terminal device 2, saying "Is there an error in the following SQL? If there is an error, please output 'the erroneous part' and 'the corrected SQL'. If there are multiple errors, please output the 'error part' in bullet points. If there are no errors, please output 'There are no errors in this SQL'. (SQL code)" and assigns it to the large-scale language model (S902).
[0082] Fig. 20 shows an example of a display when a button 231 for requesting an error check is selected on the editing screen 230 shown in Fig. 19. A confirmation screen 245 showing the error check results output from the large-scale language model for the SQL code being edited in the editing area 232 of Fig. 19 is superimposed on the editing screen 230 of Fig. 20. The confirmation screen 245 of Fig. 20 includes a result area 246 showing the presence or absence of errors as the error check result, and a revision proposal area 247 showing a revision proposal for the SQL.
[0083] In the confirmation screen 245 shown in Fig. 20, the result area 246 lists multiple errors in bullet points. The proposed revisions output from the large-scale language model are displayed in the revision proposal area 247. The confirmation screen 245 in Fig. 20 includes a button 248 for selecting whether to reflect (save) the processed code or to cancel it. When the reflect button 248 is selected, the terminal device 2 reflects the proposed revisions output from the large-scale language model displayed in the revision proposal area 247 in the edit area 232, and when the cancel button 248 is selected, the proposed revisions are discarded.
[0084] 21 shows edit screen 230 when button 248 to reflect proposed revision is selected on confirmation screen 245. The SQL statement displayed in edit area 232 of edit screen 230 in FIG. 21 has been revised from the SQL statement already entered in edit area 232 of edit screen 230 shown in FIG.
[0085] By using the terminal device 2 using the development software program P2, development engineers can more easily realize database-related software development regardless of their level of expertise. The large-scale language model can propose optimal code combinations based on the vast SQL development history. The information processing device 1 of the information processing system 100 can create instruction statements in the backyard so that appropriate output is obtained from the large-scale language model, and propose appropriate support.
[0086] The embodiments disclosed above are illustrative in all respects and are not restrictive. The scope of the present invention is defined by the claims, and includes all modifications within the meaning and scope of the claims. [Explanation of symbols]
[0087] 100 Information Processing Systems 1. Information processing device 10 Processing section 11 Storage section 12 Communications Department 2 Terminal Equipment 20 Processing section 21 Memory section P2 Development Software Program 23 Display section 230 Editing screen 241,245 Confirmation screen
Claims
1. On the computer, Get the code for database processing that has already been written, It accepts the specification of one of several functions, including error checking, Create instructions for obtaining answers regarding said code according to the specified functions; The obtained code and the created instruction are sent to the trained language model, Based on the answer from the language model, output data corresponding to the specified function. A computer program that executes a process.
2. The function includes a processing instruction for the code, The computer includes: When the processing instruction is accepted, a text is created as the instruction text, requesting a suggestion of a code to be added regarding SQL.
2. The computer program product of claim 1.
3. the functionality includes automatic generation of further code based on the code; The computer includes: When the designation of the automatic generation is accepted, a text is generated as the instruction statement, which includes the acquired code, definitions, and conditions, and requests the generation of further code necessary for database processing.
2. The computer program product of claim 1.
4. The functionality includes automatic formatting of the code; The computer includes: When the designation of the automatic formatting is accepted, a text requesting a proposal for formatting the SQL is created as the instruction.
2. The computer program product of claim 1.
5. The computer includes: Upon receiving an answer from the language model, comparing the answer with the obtained code and displaying it; outputting a screen for accepting confirmation as to whether or not the correction code or additional code included in the response should be reflected in the acquired code; When it is confirmed that the correction code is reflected on the screen, the acquired code is rewritten with the correction code, or the additional code is added to the acquired code and output.
2. The computer program product of claim 1.
6. Get the code for database processing that has already been written, It accepts the specification of one of several functions, including error checking, Create instructions for obtaining answers regarding said code according to the specified functions; The obtained code and the created instruction are sent to the trained language model, Based on the answer from the language model, output data corresponding to the specified function. An information processing device including a processing unit that executes processing.
7. The computer Get the code for database processing that has already been written, It accepts the specification of one of several functions, including error checking, Create instructions for obtaining answers regarding said code according to the specified functions; The obtained code and the created instruction are sent to the trained language model, Based on the answer from the language model, output data corresponding to the specified function. Information processing methods.
Citation Information
Patent Citations
Information processor and program
JP2022044446A
Program development support system and data utilization system
JP2012113373A
Cited By
Programs, information processing devices, methods, and systems
JP7870511B1