Computer system and method for generating educational materials
By utilizing a computer system connected to a text generation system with a large language model, the challenge of efficiently generating educational materials that illustrate the source code generation process in programming education is addressed, resulting in enhanced knowledge acquisition.
Patent Information
- Application Number
- JP2023213196
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-18
- Publication Date
- 2025-06-30
AI Technical Summary
Existing methods for generating educational materials in programming education struggle to efficiently present the process of generating source code, as they are either too time-consuming or rely on incomplete change histories.
A computer system connected to a text generation system with a large language model is used to input programming knowledge and educational source code, generating a prompt template to efficiently produce educational materials that illustrate the source code generation process.
This approach allows for the efficient generation of educational materials that clearly present the source code generation process, enhancing knowledge acquisition in programming education.
Smart Images

Figure 2025097103000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for generating educational materials used in programming education.
Background Art
[0002] In programming education, an instructor presents source code and explains programming knowledge. At this time, when presenting the final source code, users aiming at knowledge acquisition have difficulty understanding the knowledge because they cannot grasp the process leading to such source code. Therefore, it is desirable to present the generation process of the source code.
[0003] In order to present the generation process of the source code, a method of recording the generation process of the source code as an image and cutting out necessary images can be considered. This method is very time-consuming.
[0004] A method of generating information for presenting the generation process of the source code using the change history of a version control system can be considered. However, change histories for educational purposes are not always saved, and there may be cases where no change history remains.
[0005] Patent Document 1 describes that "temporary correction application information, which is information regarding corrections applied to software based on the version number information of the software operating in the system, included in the operation history of the software operating in the system to be managed, is created, and based on the temporary correction application information, after restoring the software to the state before the application of the correction, the correction is reapplied to the restored software, and based on the execution process or execution result of the restoration of the software with respect to the correction and the reapplication of the correction, the validity of the temporary correction application information is determined." The technique of Patent Document 1 is a technique for the purpose of restoring software, and it is difficult to use it for presenting the generation process of the source code.
Prior Art Documents
Patent Documents
[0006]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0007] In the prior art, it is difficult to efficiently generate educational materials. The present invention provides a technique for efficiently generating educational materials for programming.
Means for Solving the Problems
[0008] A typical example of the invention disclosed in the present application is as follows. That is, a computer system for generating educational materials for presenting the process of generating source code, which is used for programming education, is connected to a text generation system having a large language model, and programming knowledge and educational source code used to acquire the knowledge are input to the text generation system to generate a prompt template, which is text for generating the prompt. The computer system holds prompt template information that stores data associated with the prompt template, and executes a first process for receiving an input of a plurality of ordered knowledge and a starting source code, a second process for generating the prompt for each of the plurality of knowledge, transmitting the prompt to the text generation system, and acquiring the educational source code, and a third process for generating the educational materials by determining the presentation order of the plurality of educational source codes based on the order of the plurality of knowledge.
Effects of the Invention
[0009] According to the present invention, educational materials for programming can be efficiently generated. Problems, configurations, and effects other than those described above will be clarified by the description of the following embodiments.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Modes for Carrying Out the Invention
[0011] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not to be construed as being limited to the description of the embodiments shown below. Those skilled in the art will readily understand that the specific configuration can be changed without departing from the spirit or gist of the present invention.
[0012] In the configuration of the invention described below, the same or similar configurations or functions are denoted by the same reference numerals, and redundant descriptions are omitted.
[0013] Expressions such as "first", "second", "third", etc. in this specification and the like are attached for identifying components, and do not necessarily limit the number or order.
[0014] In the drawings and the like, the positions, sizes, shapes, and ranges of the respective components shown may not represent the actual positions, sizes, shapes, and ranges in order to facilitate the understanding of the invention. Therefore, the present invention is not limited to the positions, sizes, shapes, and ranges disclosed in the drawings and the like.
Example
[0015] FIG. 1 is a diagram showing an example of the configuration of the system of Example 1. FIG. 2 is a diagram showing an example of the hardware configuration of the computer that constitutes the educational material generation support system 100 of Example 1.
[0016] The system of Example 1 is composed of an educational material generation support system 100, a text generation system 101, and a terminal 102. The educational material generation support system 100, the text generation system 101, and the terminal 102 are connected to each other via a network 103 such as a LAN (Local Area Network).
[0017] The terminal 102 is a terminal operated by a user (for example, an instructor) who uses the educational material generation support system 100. The text generation system 101 generates text using a large language model according to a prompt. In this example, the text generation system 101 is caused to generate source code. In the following description, the source code generated by the text generation system 101 is referred to as educational source code.
[0018] The educational material generation support system 100 generates educational materials for acquiring programming knowledge. In this example, educational materials for presenting the process of generating source code are generated. The educational material generation support system 100 is composed of a computer 200 as shown in FIG. 2. The computer 200 has a processor 201, a network interface 202, a main memory device 203, and a secondary storage device 204. Each hardware element is connected to each other via a bus 205.
[0019] The educational material generation support system 100 includes a prompt generation unit 110, an educational material generation unit 111, and a display unit 112. Each functional unit is realized by a processor 201 executing a program stored in a main storage device 203. Note that the functional units included in the educational material generation support system 100 may be combined into one functional unit, or one functional unit may be divided into a plurality of functional units for each function.
[0020] The educational material generation support system 100 holds prompt template information 120. The prompt template information 120 is stored in the main storage device 203 or the auxiliary storage device 204.
[0021] The prompt template information 120 is information for managing templates of prompts. The prompt generation unit 110 generates a prompt and transmits it to the text generation system 101. The educational material generation unit 111 generates educational materials using the educational source code generated by the text generation system 101. The display unit 112 presents a user interface for operating the educational material generation support system 100 and also displays the educational materials.
[0022] FIG. 3 is a diagram showing an example of the data structure of the prompt template information 120 of Example 1.
[0023] The prompt template information 120 stores entries including a knowledge type 301 and a template 302. In this embodiment, there is one entry for one knowledge type.
[0024] The knowledge type 301 is a field for storing the type of knowledge aimed at acquisition in programming education. The template 302 is a field for storing a template of a prompt for generating educational source code.
[0025] FIG. 4 is a flowchart for explaining an example of the process executed by the educational material generation support system 100 of Example 1. FIG. 5 is a diagram showing an example of the user interface presented by the educational material generation support system 100 of Example 1.
[0026] When the educational material generation support system 100 receives access from the terminal 102, it starts the process described below.
[0027] The display unit 112 of the educational material generation support system 100 presents the user interface 500 and accepts the input of generation condition information (step S101).
[0028] Here, the user interface 500 will be described with reference to FIG. 5. The user interface 500 includes input fields 501, 502, 503, and an operation button 504.
[0029] The input field 501 is a field for inputting the source code serving as the starting point (starting source code). The starting source code is a completed source code. The user inputs the file or path in which the starting source code is stored into the input field 501. The input field 502 is a field for inputting the type of knowledge. In the input field 502 of FIG. 5, knowledge is displayed in a list format and is in an input format for selecting knowledge. The input field 503 is a field for inputting information specifying the time series of the source code generation process. In this embodiment, it is in an input format for setting the order of the selected knowledge.
[0030] Via the user interface 500, the starting source code, knowledge, and the order of knowledge are input as generation condition information.
[0031] The educational material generation support system 100 executes a source code generation process using the generation condition information (step S102). In the source code generation process, an educational source code is generated. The details of the source code generation process will be described later.
[0032] The educational material generation unit 111 of the educational material generation support system 100 generates educational materials by determining the presentation order of educational source code based on the order of knowledge (step S103). Here, the educational source code is ordered in the reverse order of the order of knowledge. For example, a video or slide image that displays the educational source code in the determined order is generated as educational materials.
[0033] The display unit 112 of the educational material generation support system 100 displays the educational materials on the terminal 102 (step S104). Note that the educational material generation support system 100 may only transmit the educational materials to the terminal 102.
[0034] FIG. 6 is a flowchart for explaining an example of the source code generation process executed by the educational material generation support system 100 of Example 1.
[0035] The prompt generation unit 110 acquires the starting source code (step S201).
[0036] The prompt generation unit 110 selects one piece of knowledge from the knowledge specified by the user (step S202). Here, the knowledge is selected according to the order of knowledge.
[0037] The prompt generation unit 110 refers to the prompt template information 120 based on the selected knowledge and acquires the template (step S203).
[0038] The prompt generation unit 110 generates a prompt using the template and transmits it to the text generation system 101 (step S204). The prompt is text input to the large language model and includes at least one of the starting source code and the educational source code, and an instruction for generating the source code. Note that the prompt may include generation conditions and examples of the source code.
[0039] When generating a prompt for the first time, the prompt generation unit 110 generates a prompt using the starting source code and the template. In the case of the second time and later, the prompt generation unit 110 generates a prompt using the previously generated educational source code and the template.
[0040] Note that there is a limit to the number of tokens in the prompt. Therefore, when the number of characters included in the starting source code or the educational source code is large, the starting source code or the educational source code itself cannot be included in the prompt. In this case, the prompt generation unit 110 identifies the input location of the starting source code or the educational source code based on the type of knowledge, and includes the input location in the prompt instead of the starting source code or the educational source code.
[0041] The prompt generation unit 110 acquires the educational source code from the text generation system 101 and saves the educational source code (step S205).
[0042] The prompt generation unit 110 determines whether the processing for all the knowledge specified by the user has been completed (step S206).
[0043] If the processing for all the knowledge specified by the user has not been completed, the prompt generation unit 110 returns to step S202 and executes the same processing.
[0044] If the processing for all the knowledge specified by the user has been completed, the prompt generation unit 110 ends the source code generation process.
[0045] FIG. 7 is a diagram showing a specific example of the educational material of Example 1.
[0046] The education material generation support system 100 generates educational source code 701 for acquiring knowledge about "function splitting" using the starting source code 700, and generates educational source code 702 for acquiring knowledge about "naming rule: Camaelcase" using the educational source code 701. The education material generation support system 100 sets the presentation order "1" for the educational source code 702 and sets the presentation order "2" for the educational source code 701. In this case, an educational material is generated in which the educational source code 701 is presented after the educational source code 702. Note that an educational material presenting the starting source code 700 at the end may also be generated.
[0047] According to Example 1, a user can generate educational materials for presenting the source code generation process by inputting the completed source code and specifying the type and order of knowledge.
Example
[0048] In Example 2, the method of inputting generation condition information is different from that in Example 1. Hereinafter, Example 2 will be described centering on the differences from Example 1.
[0049] The configuration of the system in Example 2 is the same as that in Example 1. In Example 2, the software configuration of the education material generation support system 100 is partially different.
[0050] FIG. 8 is a diagram showing an example of the software configuration of the education material generation support system 100 in Example 2. The education material generation support system 100 in Example 2 holds knowledge pattern information 121. The knowledge pattern information 121 is information for managing knowledge patterns that are sets of ordered knowledge. Note that a set consisting of one piece of knowledge is also treated as a knowledge pattern.
[0051] FIG. 9 is a diagram showing an example of the data structure of the knowledge pattern information 121 in Example 2.
[0052] The knowledge pattern information 121 stores entries including the granularity type 901 and the knowledge pattern 902. There is one entry for one granularity.
[0053] The granularity type 901 is a field that stores the type of granularity of knowledge to be included in educational materials. The knowledge pattern 902 is a field that stores the knowledge pattern.
[0054] The process executed by the educational material generation support system 100 when receiving access from the terminal 102 is the same as that in the first embodiment. However, in the second embodiment, the user interface 500 is different.
[0055] FIG. 10 is a diagram showing an example of the user interface presented by the educational material generation support system 100 of the second embodiment.
[0056] The user interface 500 of the second embodiment includes an input field 510 instead of the input fields 502 and 503. The input field 510 is a field for inputting the granularity type. In the input field 510 of FIG. 5, the granularity types are displayed in a list format and are in an input format for selecting the granularity type.
[0057] The source code generation process of the second embodiment is the same as that of the first embodiment.
[0058] According to the second embodiment, the user can generate educational materials by inputting the completed source code and specifying the granularity of knowledge. In the second embodiment, educational materials can be generated more easily than in the first embodiment.
[0059] It should be noted that the present invention is not limited to the above-described embodiments and includes various modifications. Also, for example, the above-described embodiments are those in which the configuration is described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Also, for a part of the configuration of each embodiment, it is possible to add, delete, or replace with other configurations.
[0060] Further, some or all of the above-described configurations, functions, processing units, processing means, etc. may be implemented in hardware by designing them, for example, in an integrated circuit. Further, the present invention can also be implemented by a program code of software that realizes the functions of the embodiments. In this case, a storage medium recording the program code is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code itself and the storage medium storing the same constitute the present invention. As a storage medium for supplying such a program code, for example, a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, etc. are used.
[0061] Further, the program code for realizing the functions described in this embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C++, perl, Shell, PHP, Python, Java (registered trademark), etc.
[0062] Furthermore, by distributing the program code of the software that realizes the functions of the embodiments via a network, it can be stored in a storage means such as a hard disk or memory of a computer or a storage medium such as a CD-RW or CD-R, and a processor included in the computer reads and executes the program code stored in the storage means or the storage medium.
[0063] In the above-described embodiments, the control lines and information lines show those considered necessary for explanation, and not necessarily all the control lines and information lines are shown on the product. All the configurations may be interconnected.
Description of Reference Numerals
[0064] 100 Educational Material Generation Support System 101 Text generation system 102 Terminal 103 Network 110 Prompt generation unit 111 Educational material generation unit 112 Display unit 120 Prompt template information 121 Knowledge pattern information 200 Computer 201 Processor 202 Network interface 203 Main memory device 204 Auxiliary memory device 205 Bus 500 User interface 700 Starting source code 701, 702 Educational source code
Claims
1. A computer system for generating educational materials for presenting the process of generating source code, which is used for programming education, connected to a text generation system having a large language model, holds prompt template information storing data associating the types of programming knowledge with a template of a prompt, which is text for inputting to the text generation system to generate the educational source code used to acquire the knowledge, performs a first process of receiving an input of a plurality of ordered types of knowledge and a starting source code, a second process of, for each of the plurality of types of knowledge, generating the prompt, transmitting the prompt to the text generation system, and acquiring the educational source code, and a third process of generating the educational materials by determining the presentation order of the plurality of educational source codes based on the order of the plurality of types of knowledge, and is characterized by a computer system that executes the above.
2. The computer system according to claim 1, wherein the second process includes a fourth process of selecting one type of knowledge according to the order of the plurality of types of knowledge, a fifth process of acquiring the template corresponding to the selected type of knowledge from the prompt template information, a sixth process of generating the prompt using the starting source code and the template when the first type of knowledge is selected, and a seventh process of generating the prompt using the educational source code corresponding to the knowledge whose order is one before that of the type of knowledge selected when the second and subsequent types of knowledge are selected, and is characterized by a computer system that includes the above.
3. The computer system according to claim 2, wherein when the starting source code cannot be included in the prompt in the sixth process, the input location of the starting source code to be included in the prompt is specified based on the type of knowledge, and the process of generating the prompt based on the input location of the starting source code and the template is included. When the seventh process cannot include the educational source code in the prompt, the seventh process specifies an input location of the educational source code to be included in the prompt based on the type of knowledge, and includes a process of generating the prompt based on the input location of the educational source code and the template. A computer system characterized by this.
4. The computer system according to claim 2, A computer system characterized by presenting a user interface for inputting the starting source code, selecting the type of knowledge, and setting the order of the selected types of knowledge.
5. The computer system according to claim 2, associates the granularity of knowledge in the educational material with a knowledge pattern that is a set of the ordered types of knowledge, and holds knowledge pattern information, presents a user interface for inputting the starting source code and selecting the granularity of knowledge in the educational material, the second process includes a process of specifying the knowledge pattern by referring to the knowledge pattern information based on the granularity of knowledge in the educational material selected via the user interface, the third process includes a process of generating the educational material by ordering a plurality of the educational source codes according to the order of the types of knowledge in the knowledge pattern, the fourth process includes a process of selecting one type of knowledge from the types of knowledge included in the knowledge pattern according to the order of the types of knowledge in the knowledge pattern. A computer system characterized by this.
6. A method for generating educational materials for presenting the generation process of source code, which is used for programming education and is executed by a computer system, the computer system, is connected to a text generation system having a large language model, holds prompt template information that stores data associating the types of programming knowledge with a template of a prompt that is text to be input to cause the text generation system to generate an educational source code used to acquire the knowledge, the method for generating the educational materials, a first step in which the computer system receives an input of a plurality of ordered types of knowledge and a starting source code, a second step in which the computer system generates the prompt, transmits the prompt to the text generation system, and obtains the educational source code for each of the plurality of types of knowledge; a third step in which the computer system generates the educational material by determining the presentation order of the plurality of educational source codes based on the order of the plurality of types of knowledge, characterized in that the method for generating educational material includes these steps.
7. The method for generating educational material according to claim 6, wherein the second step includes a fourth step in which the computer system selects one type of knowledge according to the order of the plurality of types of knowledge; a fifth step in which the computer system obtains the template corresponding to the selected type of knowledge from the prompt template information; a sixth step in which, when the first type of knowledge is selected, the computer system generates the prompt using the starting source code and the template; a seventh step in which, when the second and subsequent types of knowledge are selected, the computer system generates the prompt using the educational source code corresponding to the knowledge whose order is one before that of the type of knowledge and the template, characterized in that the method for generating educational material includes these steps.
8. The method for generating educational material according to claim 7, wherein the sixth step includes a step in which, when the starting source code cannot be included in the prompt, the computer system specifies the input location of the starting source code to be included in the prompt based on the type of knowledge, and generates the prompt based on the input location of the starting source code and the template; the seventh step includes a step in which, when the educational source code cannot be included in the prompt, the computer system specifies the input location of the educational source code to be included in the prompt based on the type of knowledge, and generates the prompt based on the input location of the educational source code and the template, characterized in that the method for generating educational material includes these steps.
9. The method for generating educational material according to claim 7, The method for generating educational materials is characterized by including the step of presenting, by the computer system, a user interface for inputting the starting source code, selecting the type of knowledge, and setting the order of the selected type of knowledge.
10. The method for generating educational materials according to Claim 7, wherein the computer system holds knowledge pattern information by associating the knowledge granularity of the educational materials with a knowledge pattern that is a set of the ordered types of knowledge, the method for generating educational materials includes the step of presenting, by the computer system, a user interface for inputting the starting source code and selecting the knowledge granularity of the educational materials, the second step includes the step of specifying the knowledge pattern by referring to the knowledge pattern information based on the knowledge granularity of the educational materials selected via the user interface by the computer system, the third step includes the step of generating the educational materials by ordering a plurality of the educational source codes according to the order of the types of knowledge in the knowledge pattern by the computer system, the fourth step includes the step of selecting one type of knowledge from the types of knowledge included in the knowledge pattern according to the order of the types of knowledge in the knowledge pattern in the method for generating educational materials.
Citation Information
Patent Citations
Correction application information generation program, correction application information generation apparatus, and correction application information generation method
JP2016212496A