Teaching system combined with large language model
By combining the teaching system of ChatGPT and LLaMA large language model, the problems of teaching interaction and practice evaluation in online teaching are solved, efficient customized learning and practice are achieved throughout the process, personalized course recommendations and code evaluation are provided, and the comprehensive effectiveness of the teaching system is improved.
Patent Information
- Application Number
- CN202410080111.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-19
- Publication Date
- 2025-07-22
AI Technical Summary
The existing online teaching platform cannot effectively solve the problems of teaching interaction, course practice and user code quality assessment, and cannot achieve the integration of teaching, learning, testing and evaluation.
Combining ChatGPT and LLaMA large language models, user management, course customization, environmental integration and learning evaluation modules are built to achieve efficient and customized learning and practice throughout the process, and support teaching interaction, personalized course recommendation, practical environment integration and learning evaluation.
It realizes efficient interaction between the teaching system and students, provides personalized course recommendations, simplifies the practical environment, evaluates the quality of user code, achieves the integrated effect of teaching, learning, testing and evaluation, and improves learning efficiency and effect.
Smart Images

Figure CN120356367A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technology in the field of neural network applications, specifically a teaching system combined with large language models. Background Art
[0002] In order to solve the problem of the obvious boundary between teaching and learning in traditional higher education, the teaching system developed in the past two decades has the computer system taking on the main responsibility of human education. There are already many platforms abroad that can provide teaching services, such as the Knewton and Fast AI course platforms. However, the above platforms cannot solve the problems of the lack of teaching interaction and question answering in online courses, cannot assist students in course practice, and cannot conduct quality assessment on the practice results of students. Summary of the Invention
[0003] In view of the above deficiencies of the prior art, the present invention proposes a teaching system combined with large language models. By integrating two large language models, ChatGPT and LLaMA, a one-stop teaching platform is proposed, which can achieve highly efficient customized learning and practice throughout the process, can interact with students in teaching, can assist in teaching practice, and can evaluate the quality of user code, achieving the effect of integrating teaching, learning, testing, and evaluation.
[0004] The present invention is realized through the following technical solutions: The present invention relates to a teaching system combined with large language models, including: a user management module, a course customization module, an environment integration module, and a learning evaluation module. Among them: the user management module stores personal information, matches user roles, and queries access interface permissions according to the information during user registration, and obtains results such as user personal information, learning materials, and role permissions; the course customization module conducts course association analysis and collaborative filtering processing according to the created course classification and label information, as well as the learning interests and behavior data of registered users, and obtains user personalized course recommendation results; the environment integration module packages data and software and schedules tasks according to the files and practice resource information in the course chapters, and obtains an online coding environment result that can be started with one key; the learning evaluation module conducts learning assistance, learning progress, and ability evaluation processing according to the user's learning courses, chapter learning progress, homework, and coding score information, and obtains the user's learning progress and achievement evaluation report results.
[0005] The described user management module includes: a user registration and login unit, a personal information management unit, and a multi-role management unit. Among them: The user registration and login unit is developed based on the Flask-CAS framework of the Python language. By customizing login, logout, and verification functions, it realizes user registration and single sign-on functions. By docking with the Mariadb database, it realizes the storage and management of information such as usernames, passwords, and email addresses. The personal information management unit realizes the functions of adding, deleting, modifying, and querying personal information using the Python Flask framework by defining a user information model, allowing users to manage personal information, including personal profiles, learning preferences, etc. Users can edit and update personal information, such as adding personal photos and filling in personal profiles; personalized setting options can be added, such as selecting learning languages, theme colors, etc. The multi-role management unit pre-defines 3 roles in the user role table of the Mariadb database: teacher, student, and administrator. Users and roles are associated through a user-role mapping table, and each user can set one role. In each API interface of each module, user role permission verification is performed through the method of decorators to ensure that the behaviors and access permissions of users on the platform are compliant. Teachers have the permission to create courses and publish assignments, students have the permission to participate in courses and submit assignments, and administrators have the permission to review users and courses. By default, registered users in the system are students. To apply for the teacher role, professional certification is required, and information such as profession, school, department, and professional certificate needs to be provided to the background for administrator review.
[0006] The described course customization module includes: a course management unit, a course personalized recommendation unit, a learning plan formulation unit, and a learning progress tracking unit. Among them: The course management unit performs interface authentication, database storage, status definition, and interface development processing based on user role mapping information and course information to obtain the results of adding, deleting, modifying, and querying courses and course chapters; The course personalized recommendation unit performs classification matching, hot recommendation, and collaborative filtering processing based on user tags and historical behavior information to obtain personalized learning course recommendation results for users; The learning plan formulation unit performs automatic plan generation processing based on the user's learning goals and time arrangement information to obtain the results of the user's learning schedule; The learning progress tracking unit performs progress status definition and message notification processing based on the user's periodic learning progress information to obtain learning progress determination and reminder results.
[0007] The described course management unit defines a course model and a course chapter model. The course model includes information fields such as course ID, course name, description, direction, tags, course requirements, and course objectives. The course chapter model includes fields such as course ID, chapter name, description, and files. The course and course chapters are designed using a one-to-many model, where multiple course chapter entries correspond to one course. Then, based on Flask, the functions of adding, deleting, modifying, and querying courses and chapters are developed. By using an enumeration type to predefine the course status (published, pending review, on the shelf) field, the course management unit is finally implemented. The course management unit provides functions for creating, editing, publishing, and reviewing courses and their chapters. Teachers can create and manage courses. First, they provide course information to create a course, and then set chapters for the created course and upload courseware in formats such as PPT, PDF, or video. The created course can be applied for publication and wait for the administrator to review. After passing the review, the course is put on the shelf and made public to all users.
[0008] The described course personalized recommendation unit recommends relevant courses according to the user's interests and learning goals, providing a more personalized learning experience. When creating a course, tags and attributes such as course direction, difficulty level, and teaching language are added to each course. When a new user registers, they are required to fill in information such as their area of interest and academic background. Based on this information, relevant courses are recommended to the new user through association analysis. The popularity of courses is judged according to indicators such as the number of views, ratings, and student participation of the courses, and popular courses are recommended to users. Based on the user's learning preferences and historical behavior data, such as browsing records, collection records, and rating records, courses are recommended to target users through collaborative filtering.
[0009] The described learning plan formulation unit, according to the user's learning goals and time arrangements, provides users with a repeat cycle configuration through an online page, uses the Python Apscheduler module to implement the addition and setting of timed and periodic tasks, and accesses redis to provide persistent storage of tasks. The generated personalized and periodic learning plans can help users reasonably arrange their learning time. Users can adjust their learning plans according to their learning progress and needs.
[0010] The described learning progress tracking unit records and tracks the user's course learning progress, and provides a visual display of the learning journey based on the user-course learning model, including completed courses, courses being studied, and the time distribution of learning, etc. The platform provides a learning progress reminder function. By comparing the learning plan with the learning progress model, learning reminders are sent to users via email, text message, etc. in case of progress delays to help them maintain their learning motivation or adjust their learning plans in a timely manner.
[0011] The described environment integration module includes: a practical environment integration unit, a data set and resource management unit, and a virtual laboratory unit. Among them: The practical environment integration unit performs computing node scheduling and coding environment integration processing according to the course practical environment information to obtain a practical environment result that can be coded online; The data set and resource management unit performs data download, storage, archiving, and query processing according to the course practical data information to obtain a data set visualization management result; The virtual laboratory unit performs unified environment and data encapsulation processing according to the practical data and practical environment information to obtain an experimental simulation environment result of one-stop data collection, analysis, and online programming that can be imported with one key.
[0012] The described practical environment integration unit integrates the integrated development environment (IDE) or online programming environment required for students' practice and provides a coding environment for students to practice. The platform binds a practical environment startup script to each practical course. This script can start the Jupyter Notebook or VSCode process and provide a visual practical environment for students to use through the Nginx reverse proxy method. The script can load programming examples and allow students to imitate the examples for code writing, debugging, and running. The practical environment does not require users to deploy the development environment additionally, which can greatly simplify the operation process of students and improve learning efficiency.
[0013] The described data set and resource management unit provides a data set and resource query function required for learning, which is convenient for students to carry out practice and project development. For each data set, annotations of the data set are formed by describing in the __meta__ file, and fuzzy query functions for global data are provided through regular matching and recursive use of the glob function of the pathlib module. Students can download the relevant data sets and learning materials queried to better carry out learning and practice.
[0014] The described virtual laboratory unit simulates a real laboratory environment by integrating data and practical environment, providing students with the opportunity to conduct virtual experiments. Students can collect data, analyze data, and draw and display experimental results in the virtual laboratory. The virtual laboratory provides a variety of experimental scenarios and simulators, covering the experimental needs of different disciplines. For some practices that can be completed online, the project environment will be installed and deployed with one key and the project data will be imported with one key in the form of a project system. The implementation principle is to integrate the project environment through Docker and Singularity image methods, start the project environment in a container manner, and import project data through path mapping. The platform supports the operation of data and environment of each practical project by docking the computing and storage resources of the high-performance computing system, and uses the Slurm job scheduling system for dynamic resource scheduling of computing resources.
[0015] The learning evaluation module described above includes: a question answering and teaching interaction unit, a homework quiz and code evaluation unit, a learning outcome evaluation unit, and a learning data analysis unit. Among them: The question answering and teaching interaction unit processes the question information input by the user by invoking the ChatGPT and LLaMA large language models, and obtains the question response and answer results; The homework quiz and code evaluation unit processes the file content extraction, Prompt instruction matching, model question input, and evaluation result extraction based on the user's quiz file or code file information, and obtains the results of the user's homework quiz and code evaluation scores; The learning outcome evaluation unit processes the weighted average, learning report generation, and certificate production based on the student's learning duration and comprehensive homework quiz result information, and obtains the results of the student's learning outcome feedback; The learning data analysis unit processes the statistical analysis based on the learning behaviors and learning performance information of all students in the course, and obtains the evaluation results of the course teaching effectiveness.
[0016] The question answering and teaching interaction unit described above integrates two large language models, ChatGPT and LLaMA. By encapsulating the SDK to call the commercial ChatGPT interface and the self-built LLaMA interface, the student's questions are input and accurate answers or solutions are returned to achieve teaching interaction with the students. Through this module, students can instantly ask questions to the platform and obtain real-time feedback, achieving the effects of teaching interaction and instant question answering, and improving the learning effect of students.
[0017] The homework quiz and code evaluation unit described above provides online homework and quiz functions for each chapter of the course. Students can complete the homework and quiz online and submit their answers. The system imports the course question bank by parsing Word files and associates the specific course through the topic question bank model. During the quiz, the quiz questions are displayed by random sampling or Shuffle. The homework and quiz support multiple question types such as multiple-choice questions, fill-in-the-blank questions, short-answer questions, and programming questions to meet the learning needs of different disciplines. For multiple-choice questions and fill-in-the-blank questions, the answers are scored according to the standard answers; for short-answer questions and programming questions, the system calls the ChatGPT and LLaMA Q&A interfaces, sets appropriate Prompt instructions, and automatically evaluates the students' answers. The system finally generates scores and comments based on the homework and quiz results, and users can refer to the standard answers, scores, and comments for targeted review.
[0018] The learning outcome assessment unit comprehensively evaluates the quiz scores of each unit of the course and the scores of the final practical assignment of the course to assess the learning progress and abilities of students. The system collects the learning time, learning progress of each chapter of the course, the scores of the latest assignments of each chapter, and the course practice scores, and calculates the final course learning outcome score through weighted average according to predefined weights. Through the comprehensive information collected, the learning outcome assessment automatically generates a learning report in PDF format and a learning certificate in picture format to encourage students' learning motivation and sense of achievement. By providing assessment and feedback, it helps students understand their learning outcomes and progress.
[0019] The learning data analysis unit analyzes and mines the learning data of all students in the course, extracts students' learning behaviors and patterns, and is used to evaluate the teaching effect of the course. Through the unified collection, mining, and analysis of the course students' data, user portraits, behavior analysis, and performance statistics are carried out in graphical forms such as pie charts, line charts, and volcano plots. By analyzing students' learning behavior data, such as learning time, learning duration, and learning progress, the learning habits and learning performance of the students in this course can be understood. By analyzing students' learning performance data, such as assignment scores and practice scores, the learning progress and learning effect of the students in this course can be evaluated. Learning data analysis can help teachers understand the learning situation of the course students and the teaching effect of the course, and can help teachers improve the course design and teaching methods, and enhance the learning experience and effect of users. Description of the Drawings
[0020] Figure 1 It is a schematic diagram of the system of the present invention. ( Figure 1 It is the drawing of the abstract)
[0021] Figure 2 It is a schematic diagram of the implementation steps of the present invention.
[0022] Figure 3 It is a network topology diagram of the basic environment configuration of the present invention.
[0023] Figure 4 It is an architecture diagram of the server of the present invention.
[0024] Figure 5 It is a schematic diagram of the effect of the embodiment of the present invention.
Claims
1. A teaching system combined with a large language model, characterized in that, Including: A user management module, a course customization module, an environment integration module, and a learning assessment module. Among them: The user management module stores personal information, matches user roles, and queries and processes access interface permissions according to the information during user registration, and obtains results such as user personal information, learning materials, and role permissions; The course customization module performs course association analysis and collaborative filtering processing according to the created course classification and tag information, as well as the learning interests and behavior data of registered users, and obtains personalized course recommendation results for users; The environment integration module performs data and software encapsulation and job scheduling processing according to the files and practice resource information in the course chapters, and obtains an online coding environment result that can be started with one key; The learning assessment module performs learning assistance, learning progress, and ability assessment processing according to the information of users' learning courses, chapter learning progress, assignment and coding scores, and obtains a learning progress and achievement assessment report result for users.
2. The teaching system integrated with a large language model according to claim 1, characterized in that, The described user management module includes: a user registration and login unit, a personal information management unit, and a multi-role management unit. Among them: The user registration and login unit is developed based on the Flask-CAS framework of the Python language. By customizing login, logout, and verification functions, it realizes user registration and single sign-on functions. By docking with the Mariadb database, it realizes the storage and management of information such as usernames, passwords, and email addresses. The personal information management unit defines a user information model and uses the Python Flask framework to realize the functions of adding, deleting, modifying, and querying personal information, allowing users to manage personal information, including personal profiles, learning preferences, etc., and users can edit and update personal information. The multi-role management unit pre-defines 3 roles in the user role table of the Mariadb database: teacher, student, and administrator. Users and roles are associated through a user-role mapping table. Each user can set one role. In each API interface of each module, user role permission verification is performed through the method of decorators to ensure that the behaviors and access permissions of users on the platform are compliant. Teachers have the permission to create courses and publish assignments, students have the permission to participate in courses and submit assignments, and administrators have the permission to review users and courses. By default, registered users are all students. To apply for the teacher role, professional certification is required, and information such as profession, school, department, and professional certificate is provided to the background for administrator review.
3. The teaching system combined with the large language model according to claim 1, characterized in that, The described course customization module includes: a course management unit, a course personalized recommendation unit, a learning plan formulation unit, and a learning progress tracking unit. Among them: The course management unit performs interface authentication, database storage, status definition, and interface development processing based on user role mapping information and course information to obtain the results of adding, deleting, modifying, and querying courses and course chapters; The course personalized recommendation unit performs classification matching, hot recommendation, and collaborative filtering processing based on user tags and historical behavior information to obtain the results of personalized learning course recommendations for users; The learning plan formulation unit performs automatic plan generation processing based on the user's learning goals and time arrangement information to obtain the results of the user's learning schedule; The learning progress tracking unit performs progress status definition and message notification processing based on the user's periodic learning progress information to obtain the results of learning progress determination and reminder.
4. The teaching system combined with the large language model according to claim 3, characterized in that, The described course management unit defines a course model and a course chapter model. The course model includes information fields such as course ID, course name, description, direction, tags, course notes, and course objectives; The course chapter model includes fields such as course ID, chapter name, description, and files. The course and course chapters adopt a one-to-many model design, where multiple course chapter entries correspond to one course. Then, it develops the functions of adding, deleting, modifying, and querying courses and chapters based on Flask. By using the enumeration type to predefine the course status (published, pending review, on the shelf) fields, the course management unit is finally implemented. The course management unit provides the functions of creating, editing, publishing, and reviewing courses and their chapters. Teachers create and manage courses. First, they create a course by providing course information, then set chapters for the created course, upload courseware in formats such as PPT, PDF, or video. The created course can apply for publication and wait for the administrator to review. After the review is passed, the course is put on the shelf and made public to all users; The described course personalized recommendation unit recommends relevant courses according to the user's interests and learning goals, providing a more personalized learning experience. When creating a course, tags and attributes are added to each course. Based on this information, relevant courses are recommended to new users through association analysis according to their interests and backgrounds. The popularity of the course is judged according to indicators such as the number of views, ratings, and student participation of the course, and the popular courses are recommended to users. Based on the user's learning preferences and historical behavior data, courses are recommended to target users through collaborative filtering; The described learning plan formulation unit provides users with repeated cycle configuration through an online page according to the user's learning goals and time arrangement. It uses the Python Apscheduler module to implement the addition and setting of timed and periodic tasks, and accesses redis to provide persistent storage of tasks. The generated personalized and periodic learning plan can help users reasonably arrange their learning time, and users can adjust the learning plan according to their own learning progress and needs; The described learning progress tracking unit records and tracks the user's course learning progress, and provides a visual display of the learning process based on the user-course learning model, including completed courses, courses in progress, and the time distribution of learning, etc. The platform provides a learning progress reminder function. By comparing the learning plan with the learning progress model, learning reminders are sent to users via email, text message, etc. in case of progress delays to help them maintain learning motivation or adjust their learning plans in a timely manner.
5. The teaching system combined with a large language model according to claim 1, characterized in that, The described environment integration module includes: a practical environment integration unit, a dataset and resource management unit, and a virtual laboratory unit. Among them: The practical environment integration unit performs computing node scheduling and coding environment integration processing according to the course practical environment information to obtain the practical environment result that can be coded online; The dataset and resource management unit performs data download, storage, archiving, and query processing according to the course practical data information to obtain the dataset visualization management result; The virtual laboratory unit performs unified environment and data encapsulation processing according to the practical data and practical environment information to obtain the experimental simulation environment result of one-stop data collection, analysis, and online programming that can be imported with one key.
6. The teaching system combined with a large language model according to claim 5, characterized in that, The described practical environment integration unit integrates the integrated development environment (IDE) or online programming environment required for students' practice, provides a coding environment for students to practice, and the platform binds a practical environment startup script to each practical course. This script can start the Jupyter Notebook or VSCode process, and through the Nginx reverse proxy method, provides a visual practical environment for students to use. The script can load programming examples, allowing students to imitate the examples for code writing, debugging, and running. The practical environment does not require users to deploy a development environment additionally, which can greatly simplify the operation process of students and improve learning efficiency; The described dataset and resource management unit provides the function of querying datasets and resources required for learning, facilitating students to conduct practice and project development. For each dataset, annotations of the dataset are formed by describing in the __meta__ file, and through regular matching and using the glob function of the pathlib module recursively, a fuzzy query function for global data is provided. Students can download the relevant datasets and learning materials queried to better conduct learning and practice; The virtual laboratory unit integrates data and practical environments to simulate a real laboratory environment, providing students with the opportunity to conduct virtual experiments. Students collect data, analyze data, and draw and display experimental results in the virtual laboratory. The virtual laboratory provides a variety of experimental scenarios and simulators to cover the experimental needs of different disciplinary fields. For some practices that can be completed online, the project environment will be installed and deployed with one click and project data will be imported with one click in the form of a project system. The implementation principle is to integrate the project environment through Docker and Singularity image methods, start the project environment in a container manner, and import project data through path mapping. The platform supports the operation of data and environment for each practice project by docking the computing and storage resources of the high-performance computing system, and uses the Slurm job scheduling system for dynamic resource scheduling of computing resources.
7. The teaching system combined with a large language model according to claim 1, characterized in that, The learning evaluation module includes: a question answering and teaching interaction unit, a homework quiz and code evaluation unit, a learning outcome evaluation unit, and a learning data analysis unit. Among them: The question answering and teaching interaction unit processes the question information input by the user by calling the ChatGPT and LLaMA large language models to obtain question responses and answering results; The homework quiz and code evaluation unit processes the file content extraction, Prompt instruction matching, model question input, and evaluation result extraction according to the user's quiz file or code file information to obtain the results of the user's homework quiz and code evaluation scores; The learning outcome evaluation unit processes weighted averaging, learning report generation, and certificate production according to the student's learning duration and comprehensive homework quiz result information to obtain the results of the student's learning outcome feedback; The learning data analysis unit processes statistical analysis according to the learning behaviors and learning performance information of all students in the course to obtain the evaluation results of the teaching effectiveness of the course.
8. The teaching system combined with the large language model according to claim 7, characterized in that, The question answering and teaching interaction unit integrates two large language models, ChatGPT and LLaMA. By encapsulating the SDK to call the commercial ChatGPT interface and the self-built LLaMA interface, the student's questions are input and accurate answers or solutions are returned to achieve teaching interaction with the students. Through this module, students can immediately ask questions to the platform and obtain real-time feedback, achieving the effects of teaching interaction and instant answering questions, and improving the learning effect of students; The described homework quizzes and code evaluation unit provides online homework and quiz functions for each chapter of the course. Students complete the homework and quizzes online and submit their answers. The system imports the course question bank by parsing Word files, associates specific courses through the topic question bank model, and displays quiz questions in a random sampling or Shuffle manner during quizzes. The homework and quizzes support multiple question types such as multiple-choice questions, fill-in-the-blank questions, short-answer questions, and programming questions to meet the learning needs of different disciplines. For multiple-choice and fill-in-the-blank questions, the answers are graded with reference to the standard answers; for short-answer and programming questions, the system calls the ChatGPT and LLaMA question-and-answer interfaces, sets appropriate Prompt instructions, and automatically evaluates the students' answers. The system finally generates scores and comments based on the results of the homework and quizzes, and users can refer to the standard answers, scores, and comments for targeted review; The described learning outcome evaluation unit comprehensively evaluates the students' learning progress and abilities based on the quiz scores of each unit of the course and the final practical homework scores of the course. The system collects the learning time, learning progress of each chapter of the course, the latest homework scores of each chapter, and the course practice scores, and calculates the final course learning outcome score through weighted averaging according to predefined weights. The learning outcome evaluation automatically generates a PDF-format learning report and a picture-format learning certificate based on the collected comprehensive information to encourage the students' learning motivation and sense of achievement, and helps students understand their learning outcomes and progress by providing evaluation and feedback; The described learning data analysis unit analyzes and mines the learning data of all students in the course, extracts the students' learning behaviors and patterns, and is used to evaluate the teaching effect of the course. Through the unified collection, mining, and analysis of the course students' data, user portraits, behavior analysis, and performance statistics are carried out in graphical forms such as pie charts, line charts, and volcano plots. By analyzing the students' learning behavior data, the learning habits and learning performance of the students in this course are understood. By analyzing the students' learning performance data, the learning progress and learning effect of the students in this course are evaluated. The learning data analysis helps teachers understand the learning situation of the course students and the teaching effect of the course, and can help teachers improve the course design and teaching methods, and enhance the users' learning experience and effect.