Course recommendation method and system based on grade matching and linkage recommendation

CN122989251APending Publication Date: 2026-10-27CHENGDU SHUSHENG LANGLANG TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611163281.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-03
Publication Date
2026-10-27

AI Technical Summary

Technical Problem

[0005]有鉴于此,本发明实施例提供了基于年级匹配与联动推荐的课程推荐方法及系统,用以解决现有技术在缺乏用户主动学习行为数据的情况下,难以仅凭有限的静态用户属性信息,实现精准动态且用户可参与的个性化课程推荐的问题

Benefits of technology

在本发明中,通过构建多源年级信息的优先级链匹配机制,按照“最近领课年级>宝贝档案年级>后台默认年级”的优先级顺序依次取值,并在全部无效时自动启用兜底策略,解决了现有技术中因年级信息过时、缺失或冲突而导致的推荐错位或链路中断问题,实现了年级信息的高容错匹配,保证推荐链路在任何情况下均不中断,显著提升了系统的鲁棒性和可用性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122989251A_ABST
    Figure CN122989251A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of personalized recommendation, and particularly discloses a course recommendation method and system based on grade matching and linkage recommendation; including determining a current effective grade from multi-source grade information according to a preset priority chain in response to a course recommendation request; showing linkage options, including upgrade options and / or downgrade options, to a user; in response to a target option selected by the user, adjusting the current effective grade according to the type and preconfigured subject grade sequence relationship, and calculating a target recommended grade; and matching a target course SKU from a resource library according to the target recommended grade and pushing schedule data. The application can realize accurate, dynamic and user-participated personalized course recommendation only by using grade information in the case of lacking user learning behavior data, solves the technical problems of rigid grade information utilization, lack of active participation channel for users and interruption of recommendation links in the prior art, and improves the robustness and conversion efficiency of the course recommendation system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of personalized recommendation technology, and in particular to a course recommendation method and system based on grade matching and linkage recommendation. Background Technology

[0002] In the field of personalized recommendation technology in online education, personalized course recommendation systems typically rely on user learning behavior data (such as course completion rate, answer records, test scores, etc.) and user attribute data (such as age, grade, etc.) to achieve accurate recommendations. Among these, grade information, as one of the most distinctive attributes in educational recommendation scenarios, is widely used as a core condition for course selection. Existing technologies usually directly read the grade level filled in by the user during registration or the grade level corresponding to the most recent course enrollment, and combine it with algorithms such as collaborative filtering and deep factorization machine (DeepFM) to model the behavioral data in order to predict course content that the user may be interested in.

[0003] However, in practical applications, many users lack sufficient behavioral data due to reasons such as being new to the platform, only watching course videos without participating in practice tests, or not starting new learning after the course ends. This results in a sharp drop in recommendation accuracy or even the inability to provide recommendations. At the same time, because user grade information may not be updated in a timely manner as it naturally progresses over time, some users did not fill in the grade field when registering, and conflicting grade information is stored in different subsystems (such as personal profiles and course registration records), the existing matching mechanism based on grade information from a single source is prone to recommendation misalignment or link interruption due to outdated, missing, or conflicting information. Furthermore, the correspondence between subjects and grades is usually hard-coded into the program, lacking flexible configuration management capabilities, which further exacerbates the rigidity problem of the recommendation system.

[0004] Furthermore, when users perceive the currently recommended course content as "too difficult" or "too easy," existing recommendation systems lack a direct interactive entry point for users to actively express this subjective feeling and trigger recommendation adjustments. Instead, they rely on passive testing methods—pushing test questions to users, inferring their ability level based on their correct answer rate, and then adjusting the recommended grade level. This passive testing mechanism not only increases the user's operational burden and waiting time, but also results in unstable performance due to factors such as the user's on-the-spot state and fluctuations in question difficulty. Its applicability is particularly limited for younger users (such as kindergarten to lower elementary grades). Although some systems offer manual grade switching functions, these are usually deeply embedded in the personal settings page, disconnected from the recommendation cards. Users need to leave the current scene and perform multiple steps, resulting in high experience costs and significant conversion loss. Consequently, existing systems cannot achieve accurate, dynamic, and user-participatory personalized recommendations without behavioral data. Summary of the Invention

[0005] In view of this, embodiments of the present invention provide a course recommendation method and system based on grade matching and linkage recommendation, in order to solve the problem that in the absence of user active learning behavior data, it is difficult to achieve accurate, dynamic and user-participatory personalized course recommendations based solely on limited static user attribute information.

[0006] In a first aspect, embodiments of the present invention provide a course recommendation method based on grade matching and linked recommendation, comprising the following steps: Step S1: In response to the user's course recommendation request, obtain the user's multi-source grade information, and sequentially select values ​​from the multi-source grade information in descending order of priority according to a preset priority chain, and determine the first valid grade information obtained as the current valid grade; the multi-source grade information includes at least one of the first grade information, second grade information, and third grade information; Step S2: Show the user at least one linkage option, which includes an upgrade option and / or a downgrade option, and is used to receive the user's subjective feedback on the difficulty level of the currently recommended course content; Step S3: In response to the target option selected by the user from the linked options, adjust the current effective grade level accordingly based on the type of the target option and the pre-configured subject grade order relationship, and calculate the target recommended grade level; Specifically, when the target option is an upgrade option, the current valid grade level is adjusted upward by at least one grade unit in the subject grade order relationship; when the target option is a downgrade option, the current valid grade level is adjusted downward by at least one grade unit in the subject grade order relationship. Step S4: Based on the target recommended grade and the grade order of the subjects, match the corresponding target course SKU from the resource library; Step S5: Obtain timetable data based on the target course SKU and push the timetable data to the user.

[0007] Secondly, a course recommendation system based on grade matching and linked recommendation is provided, including: The grade acquisition module is used to respond to a user's course recommendation request, acquire the user's multi-source grade information, and determine the current valid grade from the multi-source grade information according to a preset priority chain; wherein, the multi-source grade information includes at least: the first grade information corresponding to the courses the user has obtained within a preset time period, the second grade information recorded in the user's profile, and the third grade information configured by the backend system; The linkage option display module is used to display at least one linkage option to the user, wherein the linkage option is used to represent the user's subjective feedback intention on the difficulty level of the currently recommended course content; The target grade calculation module is used to calculate the target recommended grade based on the type of the target option and the currently valid grade, in response to the target option selected by the user from the linked options. The course matching module is used to match the corresponding target course SKU from the resource library based on the target recommended grade and the pre-configured subject grade order relationship; The timetable push module is used to obtain timetable data based on the target course SKU and push the timetable data to the user.

[0008] The course recommendation method and system based on grade matching and linkage recommendation provided by this invention have the following beneficial effects: In this invention, a priority chain matching mechanism for multi-source grade information is constructed. Values ​​are selected sequentially according to the priority order of "most recently enrolled grade > child profile grade > default grade in the background". When all are invalid, a fallback strategy is automatically activated. This solves the problem of recommendation misalignment or link interruption caused by outdated, missing or conflicting grade information in the prior art. It achieves high fault tolerance matching of grade information, ensures that the recommendation link is not interrupted under any circumstances, and significantly improves the robustness and availability of the system.

[0009] Furthermore, by setting up upgrade and downgrade options as interactive entry points for user feedback, users can directly convert their subjective feelings of "the content is too difficult" or "the content is too easy" into dynamic adjustment instructions for the recommended grade with just one click, without having to complete additional test questions. This solves the technical problems of heavy operation burden, long waiting time, and poor applicability to young users caused by relying on passive testing to adjust recommendations in existing technologies. It realizes lightweight personalized recommendation adjustment that users can participate in in zero behavioral data scenarios, effectively reducing user feedback costs and conversion churn rate.

[0010] Furthermore, by leveraging pre-configured subject-grade order relationships, upgrade and downgrade operations are transformed into adjustments within a legal range based on order values. This supports visualized configuration, publishing, and traceability management in the backend, resolving the technical issues of long adjustment cycles and poor flexibility caused by hard-coding the correspondence between subjects and grade levels in existing technologies. This significantly improves the operational flexibility and business adaptability of the recommendation system. Simultaneously, through a complete technical chain of grade calculation driven by linked option types (upgrade / downgrade / custom) and SKU joint matching queries, it ensures accurate matching of recommended course resources after adjustments, providing reliable technical support for improving conversion efficiency in secondary course selection scenarios. Attached Figure Description To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the embodiments of the present invention will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort, and these are all within the protection scope of the present invention.

[0011] Figure 1 This is a flowchart of a course recommendation method based on grade matching and linked recommendations; Figure 2 This is a structural diagram of a course recommendation system based on grade matching and linked recommendations. Detailed Implementation To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. In the description of the present invention, it should be understood that the terms "center," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," and "outer," etc., indicate orientation or positional relationships based on the orientation or positional relationships shown in the accompanying drawings, and are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the referred device or element must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the present invention. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements, but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, the element defined by the phrase "comprising..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element. Where there is no conflict, embodiments of the present invention and the various features thereof can be combined with each other, all of which are within the scope of protection of the present invention.

[0012] Example 1 Please see Figure 1 This invention provides a course recommendation method based on grade matching and linkage recommendation, including the following steps: Step S1: In response to the user's course recommendation request, obtain the user's multi-source grade information, which includes at least one of the first grade information, second grade information, and third grade information; and take values ​​from the multi-source grade information in descending order of priority according to a preset priority chain, and determine the first valid grade information obtained as the current valid grade; The first grade information is the grade information corresponding to the courses the user received within a preset time period, the second grade information is the grade information recorded in the user's personal profile, and the third grade information is the default grade information configured by the backend system. When a user enters the learning page and triggers a course recommendation request (for example, after a user completes a stage of course learning, the system automatically pops up a second course recommendation card), the system responds to the request and initiates the grade information acquisition process. The user's multi-source grade information includes at least one or more of the following three sources: First grade information, which is the grade corresponding to the courses the user has acquired within a preset time period (preferably within the last 30 days), reflecting the user's recent active learning status and actual level; Second grade information, which is the grade recorded in the user's personal profile (such as "Child Profile"), which comes from static data filled in by the user or parents during registration or daily maintenance; Third grade information, which is the default grade configured by the backend system, used to provide a backup when no valid value can be obtained from all dynamic sources.

[0013] The system retrieves values ​​sequentially from high to low according to a preset priority chain. It first attempts to obtain first-grade information. If this information exists and is valid, it is directly designated as the current valid grade, and subsequent priority levels are not considered. If the first-grade information is invalid (empty or not a valid grade), the system attempts to obtain second-grade information. If the second-grade information is also invalid, the system attempts to obtain third-grade information. In this process, "valid" means that the grade information is not empty and falls within the system's configured valid grade range. When valid grade information is successfully obtained from any priority level, the system immediately stops retrieving values ​​and designates that information as the current valid grade. For example, if a user has claimed a "first-grade reading" course within the past 30 days, the system directly uses "first grade" as the current valid grade, without querying the user's profile or the default backend configuration. If the user has not claimed any courses within the past 30 days, the system queries the grade record in the user's profile; if the profile also does not contain a grade, the system uses the default grade configured for that card in the backend. Through this multi-source priority matching mechanism, the system can fully utilize grade information from different sources, maximizing the availability of usable grade values ​​under various data conditions.

[0014] Step S2: Show the user at least one linkage option, including upgrade option and / or downgrade option, to receive the user's subjective feedback on the difficulty level of the currently recommended course content, and to serve as a trigger instruction to drive subsequent grade adjustments; Specifically, after determining the current effective grade level, the system displays a recommendation card to the user containing at least one linked option. The linked option is used to receive subjective feedback from the user regarding the difficulty level of the currently recommended course content and serves as a trigger instruction for subsequent grade level adjustments. In this embodiment, the linked option includes at least one or both of an upgrade option and a downgrade option. The upgrade option expresses the user's preference for the currently recommended content being "too easy" (e.g., the option text could be configured as "The content is too easy"), while the downgrade option expresses the user's preference for the currently recommended content being "too difficult" (e.g., the option text could be configured as "The content is too difficult"). The system displays the linked options on the user interface as visual buttons or card options, each option accompanied by a corresponding icon (preferably 96×96 pixels, in png, jpeg, or jpg format) and text. Users only need to click on one of the options to provide active feedback on the difficulty level of the recommendation, without needing to complete additional quizzes or navigate to a personal settings page. Furthermore, the linked option may also include custom options to receive manually entered grade information or textual difficulty preferences from the user, to accommodate richer user expression needs.

[0015] Step S3: In response to the target option selected by the user from the linked options, adjust the current effective grade level accordingly based on the type of the target option and the pre-configured subject grade order relationship, and calculate the target recommended grade level; Specifically, when the target option is an upgrade option, the current valid grade level is adjusted upward by at least one grade unit in the subject grade order relationship; when the target option is a downgrade option, the current valid grade level is adjusted downward by at least one grade unit in the subject grade order relationship. Specifically, in response to the target option selected by the user from the linked options, the system adjusts the current effective grade level accordingly based on the type of the target option and the pre-configured subject-grade order relationship in the system, calculating the target recommended grade level. The subject-grade order relationship is a grade order mapping table pre-configured independently for each subject in the backend management system, which defines the legal order position of each grade under that subject. When the user selects an upgrade option, the system finds the current effective grade level's order position in the subject-grade order relationship and adjusts that position upwards by at least one grade unit (preferably one order unit), using the grade level corresponding to the adjusted position as the target recommended grade level. When the user selects a downgrade option, the system finds the current effective grade level's order position in the subject-grade order relationship and adjusts that position downwards by at least one grade unit (preferably one order unit), using the grade level corresponding to the adjusted position as the target recommended grade level. It should be noted that the upgrade / downgrade operation is based on the subject-grade order relationship, not simple numerical addition or subtraction (for example, "Grade 1" may correspond to order value 1 in the "Thinking" subject and order value 2 in the "English" subject; the grade order tables for different subjects are independent of each other). When the current valid grade has reached the highest grade (cannot be upgraded) or the lowest grade (cannot be downgraded) in the grade order of the subject, the system keeps the current valid grade unchanged and returns the corresponding prompt information to the user (such as "is already the lowest grade" or "is already the highest grade"). This allows the user's subjective feedback to be directly transformed into a precise grade adjustment instruction, realizing personalized recommendation adjustment under zero behavioral data conditions.

[0016] Step S4: Based on the target recommended grade and the grade order of the subjects, match the corresponding target course SKU from the resource library; Specifically, after calculating the target recommended grade level, the system uses this target recommended grade level as the core query condition, combined with the user's current subject and learning stage (e.g., "beginner stage," "basic stage," "advanced stage," etc.), to construct a joint query condition. It then retrieves a matching course SKU (StockKeeping Unit, used to uniquely identify a specific course product in this system) from the resource library. Specifically, the resource library stores the mapping relationship between course SKUs and their corresponding subjects, stages, and grades. The system uses "target recommended grade level + user's current subject + user's current stage" as a three-dimensional joint condition for precise matching. If a uniquely matching course SKU is found, it is returned as the target course SKU; if no matching SKU is found, an empty status message (e.g., "No suitable courses available") is returned to the user, while maintaining the integrity of the recommendation process without errors or crashes. This matching mechanism ensures that the recommended course resources are accurately located, and that the user's course selection process is never interrupted due to matching failures.

[0017] Step S5: Obtain timetable data based on the target course SKU and push the timetable data to the user.

[0018] Specifically, after obtaining the target course SKU, the system retrieves the corresponding detailed timetable data from the course platform, including the course title, course plan (learning arrangement organized by class hours), and supplementary text (such as "New class experience, learn with a learning consultant"). The system assembles the above timetable data into complete recommendation card content and pushes it to the user through the user interface. The user can view the timetable details and trigger the "Confirm and Activate" operation after confirmation. The system then calls the automatic order placement interface to complete the course claim, thus completing a complete secondary course claim recommendation process. If the currently valid grade is the default grade obtained through a fallback strategy, when the user clicks "Confirm and Activate," the system will additionally pop up a grade selection pop-up window for the user to manually confirm or correct the actual grade, further improving the accuracy of the recommendation.

[0019] In this process, the priority matching mechanism of multi-source grade information ensures that the system can obtain available grade values ​​under any data conditions (solving the problems of missing and interrupted information). The linkage option-driven promotion and demotion mechanism allows users to complete proactive feedback and recommendation adjustments with just one click (solving the problem of lack of user participation channels). The configurable management of the subject grade order relationship allows the promotion and demotion logic to flexibly adapt to the business differences of different subjects. The three core mechanisms work together to achieve accurate, dynamic, and user-participatory personalized course recommendations even in the absence of learning behavior data.

[0020] In practical implementation, steps S1 to S5 are preferably executed on the server side, while the client (App or Web front-end) is responsible for triggering requests and displaying results. For example, when a user swipes down on the learning page to trigger a card display, the client calls the server's course recommendation interface. The server sequentially completes steps S1 to S4—grade matching, option calculation, and SKU query—and returns the assembled timetable data to the client through the interface. The client then executes the display and interaction logic in step S5. This server-client separation implementation facilitates unified management and rapid iteration of business logic and allows for seamless integration with extended functions such as A / B testing configuration and event tracking data collection.

[0021] Further, the preset priority chain in step S1 is specifically as follows: Set the first grade information as the first priority, the second grade information as the second priority, and the third grade information as the third priority; Values ​​are selected sequentially according to the first priority, the second priority, and the third priority. When the grade information of a certain priority is not empty and is a valid grade that has been configured in the subject grade order relationship, the grade information is determined as valid grade information and the selection of values ​​is stopped. If the grade information of the current priority is empty or is not a valid grade configured in the subject grade order relationship, then the grade information of the next priority will be used for judgment.

[0022] Specifically, the system prioritizes the first grade (the grade corresponding to the courses the user has taken within the last 30 days), the second grade (the grade recorded in the user's profile), and the third grade (the default grade configured by the backend system). When retrieving values, the system strictly follows the order of first, second, and third priority. Only when the grade information of a previous priority is deemed invalid will the system proceed to retrieve the next lower priority grade information for evaluation.

[0023] The criteria for determining "valid grade information" are that both of the following conditions must be met simultaneously: (1) The grade information is not null (i.e., the field has actual content, rather than null or an empty string); (2) The grade information belongs to the legal grade that has been configured in the subject grade order relationship.

[0024] For example, if the system retrieves "Grade 1" as the first grade information, but "Grade 1" is not configured in the grade order of the current subject "English" (e.g., the English subject starts from "Preparatory Level"), then "Grade 1" is determined to be invalid, and the system continues to retrieve the second priority information. When the grade information of a certain priority meets both of the above conditions, the system determines that the information as valid grade information, immediately stops retrieving values, and outputs that grade as the current valid grade.

[0025] Furthermore, step S1 also includes a fallback processing step to address the extreme case where all priority sources are unable to obtain valid grade information; the fallback processing step includes: When the first grade information, the second grade information, and the third grade information are all invalid grade information, the default selected item configured by the backend for the current recommended card is obtained as the fallback grade, and the subsequent course recommendation process is continued with the fallback grade as the current valid grade, without interrupting the course recommendation.

[0026] Specifically, after the system retrieves values ​​sequentially according to the first, second, and third priority levels, if the first, second, and third grade information are all determined to be invalid (i.e., all three sources of grade information are empty, or although not empty, none belong to a valid grade already configured in the subject-grade order), the system triggers a fallback mechanism. In this case, the system retrieves the "default selected item" preset by the backend operations personnel in the current recommendation card configuration as the fallback grade. This "default selected item" is a fallback option manually specified by the operations personnel from the grade grouping when configuring cards on the B-side. Its purpose is to ensure that in any abnormal situation where grade information is missing or invalid, the recommendation process still has a reasonable grade value as a basis for continued execution.

[0027] After obtaining the fallback grade, the system will directly use it as the current valid grade and continue to execute subsequent processes such as displaying linked options, calculating grade promotion and demotion, matching SKUs, and pushing timetables. The entire process will not throw any exceptions or interrupt course recommendations due to missing grade information.

[0028] It should be noted that, in this embodiment, "uninterrupted course recommendation" means that the system will not return an error page or terminate the recommendation process due to failure to obtain grade level information. Instead, it will use a fallback grade level as a substitute input to complete the entire recommendation chain, ensuring that users can always see the recommended cards and receive actionable course selection guidance. Through the above fallback mechanism, the system achieves 100% coverage in the grade level information acquisition stage, fundamentally solving the problem of recommendation chain interruption caused by missing user grade level information in existing technologies, and significantly improving the robustness of the system and the continuity of user experience.

[0029] In practical applications, if the current valid grade is the default grade obtained through the above fallback strategy, the system will pop up an additional grade selection pop-up when the user clicks the "Confirm and Activate" button, allowing the user to manually confirm or correct the actual grade, in order to balance the continuity of the process and the accuracy of the recommendation results.

[0030] Furthermore, based on the aforementioned linked options, the linked options also include custom options to further expand the expressive dimensions of user-initiated recommendation adjustments. The custom options are used to receive grade information manually entered by the user or difficulty preference information in text form, and to match it with the grade information stored in the resource library, using the matched grade as the target recommended grade.

[0031] The custom option is used to receive grade information manually entered by the user or difficulty preference information in text form, and to match it based on the grade information stored in the resource library, and use the matched grade as the target recommended grade.

[0032] Specifically, in step S2, when the system displays the linkage options to the user, in addition to displaying upgrade and / or downgrade options, it also displays a custom option. This custom option is presented as an editable input box, where the user can freely enter text content. When the user selects a custom option and enters text, the system receives the input text and executes the corresponding matching logic based on the type of the input content: If the user inputs specific grade information (e.g., "second grade", "third grade" or "senior class"), the system will directly match the input grade information with the grade information stored in the resource library, use the matched grade as the target recommended grade, and skip the automatic upgrade / downgrade calculation based on the upgrade / downgrade option in step S3.

[0033] If the user inputs difficulty preference information in text form (e.g., "too easy", "a bit difficult", "want to challenge more difficult content", etc.), the system will perform keyword parsing on the input text: When the analysis result indicates a "too difficult" tendency, the system processes it according to the logic of the downgrade option, that is, adjusting the current valid grade down by one grade unit as the target recommended grade; when the analysis result indicates a "too easy" tendency, the system processes it according to the logic of the upgrade option, that is, adjusting the current valid grade up by one grade unit as the target recommended grade; when the analysis result cannot identify a clear difficulty tendency, the system keeps the current valid grade unchanged and returns a prompt message to the user, guiding the user to re-enter or use the standard option.

[0034] In this embodiment, by introducing custom options, users can not only provide one-click feedback through fixed options, but also express their personalized needs more subtly through natural language input, further reducing the user's operational threshold and improving the flexibility and inclusiveness of recommendation interaction.

[0035] Further, step S3, which calculates the target recommended grade based on the type of the target option and the pre-configured subject-grade order, specifically includes: When the target option is the upgrade option, obtain the current order position of the current effective grade in the subject grade order relationship, and take the grade corresponding to the current order position after adjusting it up by one order unit as the target recommended grade; When the target option is the downgrade option, obtain the current order position of the current effective grade in the subject grade order relationship, and take the grade corresponding to the current order position after adjusting it down by one order unit as the target recommended grade; When the currently valid grade level has reached the highest or lowest grade level in the subject grade order, the currently valid grade level remains unchanged, and a prompt message is returned to the user.

[0036] Specifically, the system first obtains the current position of the current valid grade level within the subject grade order relationship. The subject grade order relationship is a grade order mapping table maintained independently for each subject, where each grade level is assigned a unique order value, and adjacent grade levels form a "grade unit" with a rank increment / decrement step. For example, in the subject grade order relationship for the "Reading" subject, the order value for "Preparatory Grade" is 1, the order value for "Grade 1" is 2, the order value for "Grade 2" is 3, and so on.

[0037] When the user selects the upgrade option as the target, the system obtains the ordinal value corresponding to the currently valid grade level, adjusts this ordinal value upwards by one unit (i.e., ordinal value + 1), and then finds the grade corresponding to the adjusted ordinal value, using that grade as the target recommended grade. For example, if the user's currently valid grade is "Grade 1," its ordinal value in the subject grade order is 2. After upgrading by one unit, the ordinal value becomes 3, corresponding to the grade "Grade 2." The system will then use "Grade 2" as the target recommended grade.

[0038] When the user selects a downgrade option as the target, the system retrieves the ordinal value corresponding to the currently valid grade level, adjusts this ordinal value down by one ordinal unit (i.e., ordinal value - 1), and then finds the grade level corresponding to the adjusted ordinal value, selecting that grade level as the target recommended grade. For example, if the user's currently valid grade level is "Grade 2," its ordinal value in the subject grade order is 3. After downgrading by one ordinal unit, the ordinal value becomes 2, corresponding to "Grade 1." The system then selects "Grade 1" as the target recommended grade level.

[0039] It should be noted that the adjustment amount of "one sequential unit" mentioned above is the system default value. In other embodiments, it can also be configured to adjust multiple sequential units (such as upgrading two grades at once), and this invention does not limit this.

[0040] When the current valid grade level has reached the highest grade level (i.e., its grade value is the maximum and cannot be adjusted upwards) or the lowest grade level (i.e., its grade value is the minimum and cannot be adjusted downwards) in the grade order relationship of the subject, the system will keep the current valid grade level unchanged, will not perform any upgrade or downgrade operations, and will return the corresponding prompt information to the user.

[0041] For example, when a user's current valid grade level in the "Thinking" subject is "highest level" and they select the upgrade option, the system returns the message "You are already at the highest grade and cannot upgrade further" to the user; similarly, when a user's current valid grade level is "preparatory level" and they select the downgrade option, the system returns the message "You are already at the lowest grade and cannot downgrade further" to the user.

[0042] In this embodiment, by using the above-mentioned method for calculating the promotion and demotion of grades based on the order of subjects and grades, the system can accurately map the user's subjective feedback into adjustments to grades, and these adjustments are strictly limited to the legal range of grades for each subject. This avoids invalid matching caused by differences in grade systems across subjects or by exceeding boundaries, and ensures the accuracy and reliability of the subsequent SKU matching process.

[0043] This embodiment further elaborates on the method for calculating promotion and demotion based on the order of subjects and grades. By introducing a mathematical mapping model, it accurately describes the bidirectional conversion relationship between grade and order value and the mathematical constraints of promotion and demotion calculation.

[0044] Specifically, in this embodiment, the subject grade order relationship is defined as a set of bijective mappings (one-to-one correspondences), represented as: Let C be the set of all subjects currently supported by the system. For any subject c∈C, let denot the set of its corresponding grade level. The total number of students in the next grade for this subject is recorded as follows: =| The system establishes a set of grades for subject c. To the set of consecutive positive integers {1,2,…, bijective function ,Right now: ; such that for each grade level g∈ under this subject Each is assigned a unique and consecutive sequence value n= (g) and this function also has an inverse mapping ,Right now: It can convert any ordered value n∈{1,2,…, } uniquely maps back to the corresponding grade g= (n). For example, for the subject "Reading", its grade set can be configured as follows: ={Preparatory Grade, Grade 1, Grade 2, Grade 3} =4, then the system establishes a mapping relationship: (Preparatory level) = 1, (Grade 1) = 2 (Grade 2) = 3 (Grade 3) = 4; correspondingly, the inverse mapping is (1) = Preparatory level, (2) = Grade 1 (3) = Grade 2 (4) = Grade 3. For the subject "English", its grade set can be configured independently as follows: ={Preparatory Grade, Grade 1, Grade 2, Grade 3, Grade 4} =5, the mapping relationship is: (Preparatory level) = 1, (Grade 1) = 2 (Grade 2) = 3 (Grade 3) = 4 (Grade 4) = 5. The grade sets and total number of grades for different subjects are independent of each other. The system maintains an independent mapping relationship for each subject, so they do not interfere with each other.

[0045] Based on the above mapping definition, the promotion / demotion calculation in this embodiment is transformed into a problem of offsetting sequential values ​​over a continuous integer interval. Let the user's current valid grade be... If the current subject is c, the system first uses a mapping function. Get the ordinal value of the current grade = Then, the target order value is calculated based on the target option type selected by the user. Finally, through inverse mapping Will Switch back to target grade .

[0046] When the user selects the upgrade option, the system performs upgrade calculations: That is, the target order value is shifted upwards by one unit from the current order value, but must not exceed the highest order value for that subject. When the user selects the downgrade option, the system performs a downgrade calculation: That is, the target order value is shifted down by one unit from the current order value, but cannot be lower than the lowest order value of 1 for that subject. Subsequently, the system obtains the target recommended grade through inverse mapping: .

[0047] In the above calculations, the min and max functions are used for boundary constraints: when And when the user chooses to upgrade, The min function will Constraints ,therefore This means the current valid grade level remains unchanged, while the system returns a message to the user stating "You are already at the highest grade level for this subject and cannot continue to advance"; when And when the user chooses to downgrade, The max function will The constraint is 1, therefore If the current valid grade level remains unchanged, the system returns the message "You are already at the lowest grade level for this subject and cannot be downgraded further." Through these boundary constraints, grade upgrades and downgrades are always performed within the valid grade range for the subject, avoiding invalid recommendations due to exceeding the limits.

[0048] In another alternative implementation, the system supports adjusting multiple sequential units at once (i.e., "skipping levels"). Let the adjustment step size be k (where k is a positive integer), then the upgrade calculation formula expands to: The downgrade calculation formula is expanded to The default value for k is 1, but it can also be configured by operators in the backend or specified by users in the custom options. For example, when k=2, after a user selects the upgrade option, the grade order value shifts upward by two units at once, thus achieving a "skip-grade" recommendation.

[0049] Specifically, the upgrade / downgrade calculation logic of this invention is precisely defined as a boundary constraint offset problem based on a bijective mapping function. This differs from existing technologies based on simple numerical addition and subtraction (such as...). Compared to the previous implementation, this invention introduces a subject-independent mapping function. Its inverse mapping enables the promotion and demotion operations to evolve from "string operations on grade names" to "mathematical offsets of sequential values ​​over a continuous integer field," which not only solves the technical problem of differences in grade systems across subjects, but also provides a solid mathematical foundation for boundary conditions and extended configurations (such as the flexible setting of step size k).

[0050] This implementation establishes a subject-independent bijective mapping function, precisely defining the promotion / demotion operation as a boundary-constrained offset operation of the sequential value over a continuous integer domain. This ensures both the independence and flexibility of different subject-grade systems, and automatic boundary protection is implemented through min / max boundary functions. This makes the promotion / demotion calculation process logically clear, with well-defined boundaries and strong scalability. This mathematical mapping model not only simplifies system implementation but also fundamentally solves the recommendation error problem caused by differences in cross-subject-grade systems in existing technologies, significantly improving the accuracy and robustness of the recommendation system.

[0051] Furthermore, the subject-grade order relationship is a four-level mapping relationship, specifically including: subject field, stage field, grade field, and order field; The subject grade order relationship is used to assign a unique order value to each grade under different subjects to support the grade adjustment calculation of the upgrade option and downgrade option in step S3; The subject grade order relationship is configured, edited, and published through the backend management system, and operation logs are supported for recording and tracing.

[0052] Specifically, the subject-grade order relationship is configured, edited, and published through the backend management system. The backend management system provides a subject-grade order management module, through which operators can independently create a grade order mapping table for each subject. The subject field is an enumeration type, including at least selectable subjects such as "Reading," "English," "Writing," "Thinking," and "Art Education." Operators select the currently configured subject from a dropdown list. The stage field is linked to the subject field, dynamically displaying available stage options (such as "Beginner Stage," "Basic Stage," "Intermediate Stage," "Advanced Stage," etc.) based on the selected subject, allowing operators to make a single selection. The grade field is a multi-select dropdown, allowing operators to select one or more grades included in the selected stage. The order field is a single integer selection from 1 to 50, used to assign a unique order value to the selected grade under that subject.

[0053] For example, in the configuration of the "Reading" subject, operators can configure: subject as "Reading", stage as "Beginner Stage", grade as "Preparatory Level", and sequence value as 1; another configuration for the same subject can be: subject as "Reading", stage as "Basic Stage", grade as "First Grade", and sequence value as 2; and "Reading", "Basic Stage", "Second Grade", with sequence value as 3, and so on. The grade sequence relationships of different subjects are independent of each other; for example, "First Grade" of the "English" subject may correspond to sequence value 3, while "First Grade" of the "Reading" subject may correspond to sequence value 2, which is entirely flexibly configured by operators according to business needs. Through this four-level mapping relationship, the system can assign a unique sequence value to each grade under different subjects, so that the grade adjustment calculation of the upgrade option and downgrade option in step S3 can be accurately performed "up one unit" or "down one unit" operation based on the sequence value.

[0054] Furthermore, the backend management system supports full lifecycle management of subject-grade order relationships. Operators can view all configured mapping records in the management list, which displays fields such as sequence number, ID, subject, stage, grade, order, effective time, creation time, and modification time. The system supports viewing, editing, publishing, and deleting each record and includes a search bar with dropdown filtering by subject and keyword search. Notably, the system automatically logs operations for each configuration record. Operators can view the complete change history of the subject-stage-grade information through the "Operation Records" entry, including operation time, operator, and operation content (such as creation, publishing, and changes in corresponding relationships), thus achieving full traceability of configuration changes. When an operator edits or deletes a mapping record, the system supports publishing the changes to the online environment. After publishing, the new subject-grade order relationship takes effect immediately, and the promotion / demotion calculation in step S3 will be automatically performed based on the latest configuration, without requiring code modification or application release.

[0055] Furthermore, step S4, which involves matching the corresponding target course SKU from the resource library, specifically includes: Using the target recommended grade, the user's current subject, and the user's current stage as joint query conditions, search for matching course SKUs in the resource library; If a unique matching course SKU is found, that course SKU will be used as the target course SKU; otherwise, an empty status message will be returned.

[0056] Specifically, after calculating the target recommended grade, a precise matching query of course SKUs is performed in the resource library using the target recommended grade, the user's current subject, and the user's current stage as joint query conditions. Here, "the user's current subject" refers to the subject of the course the user is currently learning or has just completed (e.g., "reading," "English," "writing," "thinking," "aesthetics education," etc.), and "the user's current stage" refers to the user's learning stage within the current subject (e.g., "beginner stage," "basic stage," "intermediate stage," "advanced stage," etc.). In the resource library, each course SKU is pre-associated with its corresponding subject, stage, and grade attribute information, forming a four-dimensional mapping index of subject, stage, grade, and SKU.

[0057] The system constructs a triplet query condition based on the target recommended grade, the user's current subject, and the user's current stage. It then searches the resource library for course SKUs that match all three conditions. If only one course SKU in the query results perfectly matches all three conditions, the system designates that course SKU as the target course SKU and proceeds to the subsequent timetable data acquisition step. If multiple matching course SKUs exist in the query results (e.g., multiple different versions of the same subject, stage, or grade), the system selects one as the target course SKU according to a preset priority rule (e.g., by reverse order of course update time, by priority weight, etc.), or returns multiple matching results for the user to choose from. If the query result is empty, meaning there is no course SKU in the resource library that perfectly matches the target recommended grade, the user's current subject, and the user's current stage, the system returns an empty status prompt, such as displaying a friendly message like "No suitable courses available" or "No courses available for the current grade." When returning an empty status prompt, the system maintains the integrity of the recommendation process, without throwing exceptions or interrupting the user's course selection operation. The user can return to the previous step to reselect other linked options or modify their input.

[0058] Furthermore, in step S2, the number of the linked options displayed to the user does not exceed a preset upper limit, and each linked option is configured with a corresponding option icon and option text. The option icons have preset size specifications and format requirements, and the option text has preset character limits.

[0059] Specifically, in the B-end configuration interface, when operators configure linked option groups for the current recommended card, the total number of linked options under each card is limited to no more than 5. When operators attempt to add a sixth option, the system interface grays out the "Add" button and displays a message stating "The number of options has reached the limit (maximum 5)," preventing the limit from being exceeded at the configuration source. If the number of options retrieved by the C-end exceeds 5 due to historical data migration or other abnormal reasons, the system will only display the first 5 and record an alarm log in the background for operators to investigate.

[0060] Each linked option requires an option icon and text to be filled in during B-side configuration. The option icon is mandatory; operators must upload an image file with a size of 96×96 pixels and in PNG, JPEG, or JPG format. If the uploaded image size does not meet the 96×96 pixel requirement, the system will automatically trigger cropping or scaling to center the image to the target size. If the uploaded image format does not meet the PNG, JPEG, or JPG format requirements, the system will refuse the upload and prompt "Please upload an image in PNG, JPEG, or JPG format." The option text is mandatory and is displayed to the user on the C-side option button. Its character limit is 12 characters (one Chinese character counts as 1 character, one English letter or number counts as 0.5 characters, for a total display width not exceeding 12 characters). When the text entered by the operator exceeds 12 characters, the system will display the remaining number of characters below the input box in real time and will prevent saving and display the prompt "Option text must not exceed 12 characters."

[0061] In addition, for upgrade and downgrade options, the system provides a default text auto-fill function on the B-side: when the operator selects the option type "upgrade," the option text is automatically filled with "The content is too simple"; when the option type is selected "downgrade," the option text is automatically filled with "The content is too difficult." Operators can modify this, but the 12-character limit must still be adhered to. On the C-side, the option icon and text are presented in a "icon on top, text below" layout within the linked tab, with the icon centered and the text centered below the icon. If an option's icon fails to load due to network issues or an invalid resource address, the system displays a preset placeholder icon to ensure the card layout is not shifted or disordered due to image loading errors.

[0062] Furthermore, prior to step S1, an AB test grouping step is also included: Obtain the A / B test group identifier of the user; If the group identifier is the experimental group, then steps S1 to S5 are executed to display a recommended timetable card containing the linkage option to the user; If the group identifier is the control group, a preset course completion card will be displayed to the user, and the linked options will not be displayed.

[0063] Specifically, when a user triggers a course recommendation request, the system first obtains the user's A / B test group identifier. The group identifier is obtained as follows: the system calculates a traffic splitting value based on the user's unique identifier (such as user ID) using a hash modulo algorithm, and dynamically assigns the user to either the experimental or control group based on the traffic ratio set in the currently effective A / B test configuration (e.g., 50% experimental group, 50% control group). Alternatively, the system can directly query the current user's group identifier from the interface provided by the A / B test platform. Those skilled in the art can choose an appropriate traffic splitting method based on the actual deployment situation; this invention does not impose any limitations on this.

[0064] If the group identifier is the experimental group, the system executes the complete process of steps S1 to S5 above, displays a recommended timetable card containing the linkage options to the user—that is, displays upgrade options, downgrade options and / or custom options, and supports the user to trigger grade upgrade / downgrade adjustment by selecting linkage options, and finally pushes the matching timetable data, so that the user can complete the second course selection.

[0065] If the group identifier is the control group, the system will not execute steps S1 to S5, but will instead display a preset course completion card to the user. The course completion card is a traditional course end page card, containing a fixed completion message and general course recommendations (without linked options, and without dynamic grade adjustments based on user feedback). The user can directly view the completion information and complete the course selection process. In the control group, the system does not obtain multi-source grade information, does not display linked options, does not perform grade promotion / demotion calculations, and does not push timetable data driven by linked options.

[0066] In this embodiment, through the aforementioned A / B testing grouping mechanism, users in the experimental group and the control group see two different versions of recommendation cards within the same time period. The system can collect data indicators such as exposure, clicks, and course conversion rate of the two groups of users and conduct comparative analysis, thereby accurately quantifying the improvement effect of the linked option recommendation method proposed in this invention on the conversion efficiency of secondary course acquisition compared with the traditional course completion card (for example, the target is to increase the exposure conversion rate by 10%), providing data support for product decision-making and solution optimization.

[0067] Furthermore, before displaying the linkage options to the user in step S2, a linkage option optimization step is also included: Obtain historical data on the frequency of user selections of each linked option within the same subject and grade level; Calculate the group selection probability of each linked option based on the selection frequency data; The display order of the linked options is dynamically adjusted based on the group selection probability, placing the option with the highest selection probability first, or setting the option with the highest selection probability as the default selected item.

[0068] Specifically, the system pre-collects and stores historical user behavior data regarding their selection of linked options in course recommendation scenarios. Each selection behavior data entry includes at least: user ID, current subject, current grade level, selected linked option type (upgrade / downgrade / custom), and selection timestamp. When it needs to display linked options to the current user, the system first extracts the current user's current subject (e.g., "Reading") and current grade level (e.g., "Grade 2"). Using these two dimensions as query criteria, the system retrieves the selection frequency data for each linked option from the historical behavior database for all historical users with the same subject and grade level as this user. For example, the system finds that among historical users in the "Reading" subject and currently in "Grade 2," the "upgrade option" was selected 120 times, the "downgrade option" was selected 45 times, and the "custom option" was selected 35 times.

[0069] The system calculates the group selection probability of each linked option based on the selection frequency data mentioned above. Specifically, the selection frequency of each option is divided by the total selection frequency (i.e., the sum of the selection frequencies of all options) to obtain the group selection probability of each option. Taking the above data as an example, the total selection frequency is 120 + 45 + 35 = 200 times. Therefore, the group selection probability of the "upgrade option" is 120 / 200 = 60%, the group selection probability of the "downgrade option" is 45 / 200 = 22.5%, and the group selection probability of the "custom option" is 35 / 200 = 17.5%.

[0070] The system dynamically adjusts the display order of linked options or the default selected item in the current recommended card based on the calculated group selection probability.

[0071] A preferred implementation is as follows: The linked options are sorted in descending order of probability, with the option with the highest probability placed at the beginning of the option list (i.e., the leftmost or topmost), and the remaining options arranged in descending order of probability. Taking the above data as an example, the "upgrade option" is placed first due to its highest probability (60%), the "downgrade option" is placed second, and the "custom option" is placed third.

[0072] Another preferred implementation is to set the option with the highest group selection probability as the default selected option. That is, when a user enters the recommendation card page, this option is in a pre-selected state. If the user clicks the "Confirm" button without any further action, the system will use this default selected option as the user's choice for subsequent upgrade / downgrade calculations. Taking the above data as an example, "Upgrade Option" is set as the default selected option, and users will see that "Upgrade Option" is highlighted when they enter the page.

[0073] It should be noted that the calculation of the above group selection probability can be configured with different statistical time windows according to business needs (such as only counting historical data of the last 7 days or the last 30 days) to reflect the latest group behavior trends. At the same time, if the historical data sample is insufficient (such as less than the preset threshold, for example, less than 50 records), the system will pause this optimization logic and restore the default display order and default selected items configured by the operators on the B-end to avoid statistical bias caused by small sample data.

[0074] Furthermore, step S5 is followed by a confirmation and order placement step: In response to the user's confirmation of the timetable data, the automatic order placement interface is invoked to complete the course retrieval; Furthermore, when the currently valid grade is the fallback grade, a grade selection pop-up window will appear after the confirmation operation is triggered, allowing the user to reselect the grade.

[0075] Specifically, after the system pushes the timetable data to the user, it displays a complete timetable information card in the user interface, including the course title, course plan (learning arrangement organized by class hours), and supplementary text, with a "Confirm and Activate" button at the bottom of the card. Users can view the timetable details, and if they approve of the recommended timetable content, they click the "Confirm and Activate" button to trigger a confirmation operation. In response to this confirmation operation, the system calls the automatic order placement interface, transmitting information such as the current user identifier and the target course SKU to the order system. The order system then automates the course pickup process, including generating an order record, associating the user's permissions with the course, and sending a successful pickup notification, thus completing the full conversion chain for secondary course pickup.

[0076] In the above confirmation and order placement process, the system further determines whether the source of the currently valid grade is a backup grade.

[0077] Specifically, when the system determines the current valid grade in step S1, it simultaneously records the source identifier of that grade (such as "first priority source", "second priority source", "third priority source" or "fallback source"). When the user clicks the "Confirm and Activate" button to trigger the confirmation operation, the system reads this source identifier. If it determines that the current valid grade is the default grade obtained through the fallback strategy (i.e., the fallback value used after the first, second, and third grade information are all invalid), the system will pop up a grade selection pop-up window before calling the automatic order placement interface, allowing the user to reselect a grade. This pop-up window displays a list of all valid grades under the current subject for the user to choose from. The user can select their actual grade from this list, and the system will overwrite the current valid grade with the grade selected by the user, and then re-execute the SKU matching in step S4 and the timetable push in step S5. If the new timetable matched after the user reselects a grade is different from the previously pushed timetable, the system will update the timetable information in the card, and the user needs to confirm again before placing an order; if the user does not reselect and closes the pop-up window directly, the system will continue to execute the order process with the backup grade to ensure that the course acquisition process is never interrupted.

[0078] Example 2 Please see Figure 1 and Figure 2 This invention provides a course recommendation system based on grade matching and linkage recommendation, using the course recommendation method based on grade matching and linkage recommendation described in any of Embodiment 1.

[0079] In this embodiment, the course recommendation system adopts a modular architecture design and is deployed on the server side of the online education platform. It interacts with clients (such as mobile apps and web front-ends) through interfaces. The system includes a grade acquisition module, a linked option display module, a target grade calculation module, a course matching module, and a timetable push module. The modules communicate and collaborate with each other through data interfaces to complete the entire recommendation process from user-triggered request to final timetable push.

[0080] In this embodiment, the course recommendation system includes: The grade acquisition module is used to respond to a user's course recommendation request, acquire the user's multi-source grade information, and determine the current valid grade from the multi-source grade information according to a preset priority chain; wherein, the multi-source grade information includes at least: the first grade information corresponding to the courses the user has obtained within a preset time period, the second grade information recorded in the user's profile, and the third grade information configured by the backend system; The grade acquisition module is used to respond to a user's course recommendation request, acquire the user's multi-source grade information, and determine the currently valid grade from the multi-source grade information according to a preset priority chain. Specifically, when a user enters the learning page and triggers a course recommendation request, the grade acquisition module is activated. The module has a preset multi-source grade information acquisition strategy and priority chain configuration. This module acquires grade information from at least the following three data sources: first grade information, i.e., the grade corresponding to the courses the user has taken within a preset time period (preferably within the last 30 days), which is retrieved from the user's course taking record database; second grade information, i.e., the grade recorded in the user's personal profile (such as "baby profile"), which is read from the user data database; and third grade information, i.e., the default grade configured by the backend system, which is read from the Apollo Configuration Center or a similar configuration management service. The grade acquisition module retrieves values ​​sequentially according to the priority order of "first grade information > second grade information > third grade information," and determines the first valid grade information acquired as the currently valid grade. The criterion for "valid" is that the grade information is not empty and belongs to a legal grade that has been configured in the subject grade order relationship. When all three sources of grade information are invalid, the grade acquisition module retrieves the default selected item configured by the backend for the current recommended card as a fallback grade, and outputs this fallback grade as the current valid grade. This ensures that the module can return a usable grade value under any data conditions, and the recommendation process will not be interrupted due to missing grade information. After completing the value retrieval, the grade acquisition module passes the current valid grade and its source identifier to the linked option display module and the target grade calculation module.

[0081] The linkage option display module is used to display at least one linkage option to the user, wherein the linkage option is used to represent the user's subjective feedback intention on the difficulty level of the currently recommended course content; The linked option display module is used to show the user at least one linked option, which represents the user's subjective feedback intention regarding the difficulty level of the currently recommended course content. Specifically, the linked option display module receives the current valid grade and context information such as the user's current subject and stage from the grade acquisition module, and retrieves the linked option configuration data corresponding to the current recommended card from the backend configuration center. The configuration data includes option type (upgrade option, downgrade option, and / or custom option), option icon (96×96 pixels, png / jpeg / jpg format), option text (no more than 12 characters), and resource library association information corresponding to each option. This module renders the configuration data into a visual linked tab and displays it to the user through the client interface. In the tab, the upgrade option uses "The content is too easy" as the default text and is accompanied by an "upward arrow" style icon, the downgrade option uses "The content is too difficult" as the default text and is accompanied by a "downward arrow" style icon, and the custom option displays an editable input box for the user to freely input. The total number of all linked options does not exceed 5, and they are arranged sequentially from left to right or from top to bottom according to the backend configuration order. Users can click on any option to select one; the selected option will be highlighted, while unselected options will retain their default appearance. After the user completes their selection, the linked option display module will pass the user's selected target option type and associated configuration information to the target grade calculation module.

[0082] The target grade calculation module is used to calculate the target recommended grade based on the type of the target option and the currently valid grade, in response to the target option selected by the user from the linked options. The target grade calculation module is used to respond to the target option selected by the user from the linked options, and calculate the target recommended grade based on the type of the target option and the currently valid grade. Specifically, the target grade calculation module receives the target option type (upgrade option, downgrade option, or custom option) from the linked option display module and the currently valid grade from the grade acquisition module. When the target option is an upgrade option, the module reads the subject grade order relationship table corresponding to the current subject from the background, finds the order position of the currently valid grade in it, adjusts the order value upward by one order unit, and finds the grade corresponding to the adjusted order value as the target recommended grade; when the target option is a downgrade option, the same method is used but the order value is adjusted downward by one order unit; when the target option is a custom option, the module performs resource library matching based on the grade information or difficulty preference text entered by the user, and uses the matched grade as the target recommended grade. The target grade calculation module also performs boundary checks during the calculation process: if the currently valid grade has reached the highest or lowest grade in the subject grade order relationship, the module keeps the currently valid grade unchanged and returns a prompt message (such as "already the lowest grade") to the linked option display module, which displays the prompt message to the user. After the calculation is completed, the target grade calculation module will pass the target recommended grade to the course matching module.

[0083] The course matching module is used to match the corresponding target course SKU from the resource library based on the target recommended grade and the pre-configured subject grade order relationship; The course matching module is used to match the corresponding target course SKU from the resource library based on the target recommended grade and the pre-configured subject grade order. Specifically, the course matching module receives the target recommended grade from the target grade calculation module and performs an exact match query in the resource library (i.e., the course product database) using "target recommended grade + user's current subject + user's current stage" as the three-dimensional joint query condition. Each course SKU in the resource library is pre-associated with attribute data of its subject, stage, and grade, forming a four-dimensional index of subject, stage, grade, and SKU. The course matching module performs a fast retrieval using this index: if a unique matching course SKU is found, it is returned as the target course SKU; if multiple matching SKUs are found, the optimal one is selected according to a preset priority rule (such as by course weight or in reverse order of update time); if no matching SKU is found, an empty status message is returned, and an alarm log is recorded for operations personnel to investigate. After matching is completed, the course matching module passes the target course SKU and its associated basic course information to the timetable push module.

[0084] The timetable push module is used to obtain timetable data based on the target course SKU and push the timetable data to the user.

[0085] The timetable push module is used to obtain timetable data based on the target course SKU and push the timetable data to the user. Specifically, the timetable push module receives the target course SKU from the course matching module, uses the SKU as a query condition, calls the course platform interface or queries the course details database to obtain the corresponding complete timetable data. The timetable data includes at least: course title (taken from the course platform), course plan (a learning arrangement organized by class hours, regenerated according to the target recommended grade), and supplementary text (generally hardcoded as "New class experience, learn with the learning consultant"). The timetable push module assembles the above data into structured recommendation card data and returns it to the client through the API interface. The client renders the data into a visual timetable recommendation card and presents it to the user. The card includes a timetable details display area and a "Confirm and Activate" operation button. After viewing the timetable, the user can click the button to trigger the subsequent order process (see the confirmation and order steps in Example 11 for details). The timetable push module is also responsible for returning a friendly error message to the client when timetable data acquisition fails or the SKU is invalid, ensuring the stability of the push process.

[0086] In this embodiment, the above five modules are sequentially linked to form a complete course recommendation system: the grade acquisition module is responsible for fault-tolerant acquisition of input data; the linked option display module is responsible for presenting and receiving user interaction entry points; the target grade calculation module is responsible for executing the core promotion / demotion recommendation algorithm; the course matching module is responsible for accurate location of course resources; and the timetable push module is responsible for assembling and outputting the final recommendation results. The modules are decoupled through clearly defined interface contracts, allowing for independent development, testing, and iteration. The system is deployed on the server side, and the client calls the functions of each module through HTTP / HTTPS interfaces, achieving separation of business logic and interface display, facilitating unified reuse across multiple platforms (iOS App, Android App, Web). In actual operation, the system can achieve accurate, dynamic, and user-participatory personalized course recommendations without any user learning behavior data, relying solely on fault-tolerant matching of multi-source grade information and promotion / demotion calculation driven by linked options, effectively solving the technical problems described in the background section.

[0087] Furthermore, the preset priority chain in the grade acquisition module is specifically as follows: Set the first grade information as the first priority, the second grade information as the second priority, and the third grade information as the third priority; The grade acquisition module retrieves values ​​sequentially according to the first priority, the second priority, and the third priority until it obtains valid grade information, and then determines the valid grade information as the current valid grade. Furthermore, when the first grade information, the second grade information, and the third grade information are all empty or invalid, the grade acquisition module obtains the default selected item configured by the backend for the current recommended card as the fallback grade and continues to execute the subsequent course selection process.

[0088] Specifically, the module first calls the first value retriever to query the grade information corresponding to courses taken within the last 30 days from the user's recent course registration records. If the grade information returned by the first value retriever is a valid grade (i.e., not empty and belonging to a legal grade already configured in the subject grade order), the module immediately stops calling subsequent value retrievers, determines this grade information as the current valid grade, and records the source identifier as "first priority". If the grade information returned by the first value retriever is invalid (empty or not a valid grade), the module continues to call the second value retriever to read the recorded grade information from the user's personal profile and judges it according to the same validity standard. If the grade information returned by the second value retriever is valid, it is determined as the current valid grade, records the source identifier as "second priority", and stops further value retrieval. If the grade information returned by the second value retriever is still invalid, the module continues to call the third value retriever to read the default grade information from the backend system configuration and judges it according to the same standard. If the grade information returned by the third value retriever is valid, it is determined as the current valid grade, and records the source identifier as "third priority".

[0089] After the three value retrievers have executed sequentially, if the information for the first, second, and third grades is all empty or deemed invalid (i.e., none of the three sources can provide a valid grade value), the grade retrieval module triggers a fallback logic. The module retrieves the default selected item configured by the backend operations staff for the current recommended card as the fallback grade, outputs this fallback grade as the currently valid grade, and records the source identifier as "fallback source." Afterward, the module continues executing the subsequent course selection process (linked option display, grade upgrade / downgrade calculation, SKU matching, timetable push, and order confirmation), without interrupting the recommendation process or throwing an exception due to all grade information being invalid.

[0090] Furthermore, the linkage options displayed by the linkage option display module include at least upgrade options, downgrade options, and custom options; The upgrade option is used to indicate that the currently valid grade level should be adjusted up by one grade level. The downgrade option is used to indicate that the currently valid grade level will be adjusted down one grade level. The custom options are used to receive grade information or difficulty preference information manually entered by the user, and to match it based on the grade information stored in the resource library.

[0091] Specifically, the upgrade option is configured to indicate that the currently valid grade level will be adjusted upwards by one grade unit. In the interface, the upgrade option is presented as a button with the default text "The content is too simple," accompanied by an icon indicating "upwards" or "advanced" (such as an upward arrow icon). When the user clicks the upgrade option, the option is marked as selected (e.g., highlighted border or background color change). The linked option display module then passes the user's selection result (option type = upgrade) to the target grade calculation module, which accordingly adjusts the currently valid grade level upwards by one grade unit in the subject grade order relationship.

[0092] The "Downgrade" option is configured to indicate that the currently valid grade level will be adjusted down one grade level. In the interface, the downgrade option is presented as a button with the default text "The content is too difficult," accompanied by an icon indicating "downgrade" or "demotion" (such as a downward arrow). When the user clicks the downgrade option, it is marked as selected. The linked option display module then passes the user's selection (option type = downgrade) to the target grade calculation module, which then adjusts the currently valid grade level down one grade level in the subject grade order.

[0093] Custom options are configured to receive grade information manually entered by the user or difficulty preference information in text form, and match it based on grade information stored in the resource library. In terms of interface display, custom options differ from upgrade and downgrade options; they are displayed as an editable input box where users can freely enter text content (such as "Grade 3" or "This is too difficult"). After the user completes the input and clicks confirm, the linked option display module transmits the user's input text content and option type (custom) to the target grade calculation module. The target grade calculation module parses the input text and matches it with the corresponding target recommended grade. In a preferred embodiment, placeholder prompts (such as "Enter grade or difficulty feedback") can be displayed in the input box of custom options to guide the user's operation. The design of custom options compensates for the personalized expression needs that cannot be covered by the fixed upgrade / downgrade options, allowing users to participate in the recommendation adjustment process in a more flexible way.

[0094] In the layout of the linked options, the upgrade, downgrade, and custom options are arranged in the order configured in the backend. When all three options are displayed simultaneously, each option in the tab occupies an equal display area, and each option has a corresponding icon and text. The selected option is highlighted, while the unselected option is in its default state. Users can only select one target option from the three options and cannot select multiple options simultaneously to ensure the uniqueness and clarity of grade calculation.

[0095] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A course recommendation method based on grade matching and linked recommendation, characterized in that, Includes the following steps: Step S1: In response to the user's course recommendation request, obtain the user's multi-source grade information, and sequentially select values ​​from the multi-source grade information in descending order of priority according to a preset priority chain, and determine the first valid grade information obtained as the current valid grade; the multi-source grade information includes at least one of the first grade information, second grade information, and third grade information; Step S2: Show the user at least one linkage option, which includes an upgrade option and / or a downgrade option, and is used to receive the user's subjective feedback on the difficulty level of the currently recommended course content; Step S3: In response to the target option selected by the user from the linked options, adjust the current effective grade level accordingly based on the type of the target option and the pre-configured subject grade order relationship, and calculate the target recommended grade level; Specifically, when the target option is an upgrade option, the current valid grade level is adjusted upward by at least one grade unit in the subject grade order relationship; when the target option is a downgrade option, the current valid grade level is adjusted downward by at least one grade unit in the subject grade order relationship. Step S4: Based on the target recommended grade and the grade order of the subjects, match the corresponding target course SKU from the resource library; Step S5: Obtain timetable data based on the target course SKU and push the timetable data to the user.

2. The course recommendation method based on grade matching and linkage recommendation according to claim 1, characterized in that, The preset priority chain is specifically as follows: Set the first grade information as the first priority, the second grade information as the second priority, and the third grade information as the third priority; Values ​​are selected sequentially according to the first priority, the second priority, and the third priority. When the grade information of a certain priority is not empty and is a valid grade that has been configured in the subject grade order relationship, the grade information is determined as valid grade information and the selection of values ​​is stopped. If the grade information of the current priority is empty or is not a valid grade configured in the subject grade order relationship, then the grade information of the next priority will be used for judgment.

3. The course recommendation method based on grade matching and linkage recommendation according to claim 2, characterized in that, S1 further includes the following steps: When the first grade information, the second grade information, and the third grade information are all invalid grade information, the default selected item configured by the backend for the current recommended card is obtained as the fallback grade, and the subsequent course recommendation process is continued with the fallback grade as the current valid grade, without interrupting the course recommendation.

4. The course recommendation method based on grade matching and linkage recommendation according to claim 1, characterized in that, The linkage options also include custom options; The custom option is used to receive grade information manually entered by the user or difficulty preference information in text form, and to match it based on the grade information stored in the resource library, and use the matched grade as the target recommended grade.

5. The course recommendation method based on grade matching and linkage recommendation according to claim 1, characterized in that, The step involves adjusting the current effective grade level based on the type of the target option and the pre-configured subject grade order, and calculating the target recommended grade level, including: When the target option is the upgrade option, obtain the current order position of the current effective grade in the subject grade order relationship, and take the grade corresponding to the current order position after adjusting it up by one order unit as the target recommended grade; When the target option is the downgrade option, obtain the current order position of the current effective grade in the subject grade order relationship, and take the grade corresponding to the current order position after adjusting it down by one order unit as the target recommended grade; When the currently valid grade level has reached the highest or lowest grade level in the subject grade order, the currently valid grade level remains unchanged, and a prompt message is returned to the user.

6. The course recommendation method based on grade matching and linkage recommendation according to claim 1 or 5, characterized in that, The subject-grade order relationship is a four-level mapping relationship, specifically including: subject field, stage field, grade field, and order field; The subject grade order relationship is used to assign a unique order value to each grade under different subjects to support the grade adjustment calculation of the upgrade and downgrade options in S3; The subject grade order relationship is configured, edited, and published through the backend management system, and operation logs are supported for recording and tracing.

7. The course recommendation method and system based on grade matching and linkage recommendation according to claim 6, characterized in that, The matching of the corresponding target course SKU from the resource library specifically includes: Using the target recommended grade, the user's current subject, and the user's current stage as joint query conditions, search for matching course SKUs in the resource library; If a unique matching course SKU is found, then that course SKU will be used as the target course SKU. If no matching course SKU is found, an empty status message will be returned.

8. The course recommendation method based on grade matching and linkage recommendation according to claim 1, characterized in that, Prior to step S1, an AB test grouping step is also included: Obtain the A / B test group identifier of the user; If the group identifier is the experimental group, then steps S1 to S5 are executed to display a recommended timetable card containing the linkage option to the user; If the group identifier is the control group, a preset course completion card will be displayed to the user, and the linked options will not be displayed.

9. A course recommendation system based on grade matching and linkage recommendation, using the course recommendation method based on grade matching and linkage recommendation as described in any one of claims 1-8, characterized in that, include: The grade acquisition module is used to respond to a user's course recommendation request, acquire the user's multi-source grade information, and determine the current valid grade from the multi-source grade information according to a preset priority chain; wherein, the multi-source grade information includes at least: the first grade information corresponding to the courses the user has obtained within a preset time period, the second grade information recorded in the user's profile, and the third grade information configured by the backend system; The linkage option display module is used to display at least one linkage option to the user, wherein the linkage option is used to represent the user's subjective feedback intention on the difficulty level of the currently recommended course content; The target grade calculation module is used to calculate the target recommended grade based on the type of the target option and the currently valid grade, in response to the target option selected by the user from the linked options. The course matching module is used to match the corresponding target course SKU from the resource library based on the target recommended grade and the pre-configured subject grade order relationship; The timetable push module is used to obtain timetable data based on the target course SKU and push the timetable data to the user.

10. The course recommendation system based on grade matching and linkage recommendation according to claim 9, characterized in that, The preset priority chain in the grade acquisition module is specifically as follows: Set the first grade information as the first priority, the second grade information as the second priority, and the third grade information as the third priority; The grade acquisition module retrieves values ​​sequentially according to the first priority, the second priority, and the third priority until it obtains valid grade information, and then determines the valid grade information as the current valid grade. Furthermore, when the first grade information, the second grade information, and the third grade information are all empty or invalid, the grade acquisition module obtains the default selected item configured by the backend for the current recommended card as the fallback grade and continues to execute the subsequent course selection process.