博主介绍:✌ 专注于VUE,小程序,安卓,Java,python,物联网专业,有18年开发经验,长年从事毕业指导,项目实战✌选取一个适合的毕业设计题目很重要。✌关注✌私信我✌具体的问题,我会尽力帮助你。
一、研究目的
本研究旨在探讨基于检索增强生成(RAG)技术的个性化学习资源推荐系统的设计与实现,以期为学习者提供更精准、动态、可解释的学习路径。 在当前教育技术快速发展的背景下,传统基于协同过滤或内容相似度的方法已难以满足多元化学习需求,因其对知识图谱缺乏深度挖掘与语义关联的处理,导致推荐结果往往缺乏个性化与时效性。 RAG技术通过将检索模块与生成模块相结合,能够在检索阶段获取与学习者兴趣相关的高质量知识片段,再在生成阶段对这些片段进行语义重构与内容补全,从而实现对学习资源的精准匹配与动态更新。 本研究计划构建一个多模态知识图谱,将课程大纲、学习目标、学生历史交互记录等多源信息统一编码,作为RAG模型的检索语料库,以提升检索的覆盖率与语义相关性。 在生成模块方面,将采用自回归语言模型并加入注意力机制,以保证生成内容在保持知识准确性的同时,能够根据学习者的认知水平与学习风格进行个性化表述。 为验证系统的有效性,研究将设计对照实验,将基于RAG的推荐系统与传统协同过滤、内容过滤以及混合推荐模型进行比较,主要评估指标包括点击率、学习成效提升率与用户满意度。 此外,本研究还将探讨系统可解释性的实现路径,通过可视化知识图谱路径与生成过程的透明展示,使学习者能够了解推荐依据,从而增强信任感与主动学习动力。 在数据安全与隐私保护方面,计划采用差分隐私技术对用户交互日志进行匿名化处理,并在模型训练时引入联邦学习框架,以确保个人信息不被泄露。 最终,本研究期望构建一个可扩展、可持续的个性化学习资源推荐平台,为教育机构提供技术支持与决策依据,并为后续学术研究提供实验数据与方法论参考。
二、研究意义
本研究的意义首先体现在教育公平与个性化学习需求的双重挑战上。 随着信息技术的快速发展,学习者在获取知识资源时面临海量信息的混杂与筛选难题,传统推荐算法往往缺乏对学习者认知状态与兴趣偏好的细致捕捉,导致推荐结果与学习目标不匹配。 通过引入检索增强生成技术,本研究能够在检索阶段精准定位与学习者需求高度相关的知识片段,并在生成阶段对其进行语义重构与内容补全,从而实现更为精准、动态且可解释的学习资源推荐。 此外,构建多模态知识图谱并将其作为检索语料库,可充分挖掘课程大纲、学习目标与学生历史交互记录等多源信息的语义关联,提升检索覆盖率与相关性,为个性化学习路径的设计提供坚实的数据支撑。 研究成果将为教育机构提供一种可扩展、可持续的技术方案,帮助教师精准定位学生薄弱环节,制定差异化教学策略,从而显著提升教学质量与学习效果。 在数据安全与隐私保护方面,采用差分隐私与联邦学习框架,可在保障用户信息安全的前提下,实现大规模数据驱动的模型训练,符合当前法规与伦理要求。 综上所述,本研究不仅在理论层面丰富了检索增强生成技术在教育领域的应用范式,也在实践层面为实现精准、动态、可解释的个性化学习资源推荐提供了可落地的技术路径,对推动教育数字化转型与提升学习者自主学习能力具有重要价值。
三、国内外研究现状
在全球范围内,教育推荐系统的研究已从传统协同过滤与内容过滤逐步转向融合深度学习与知识图谱的混合模型。 近年来,学术界提出了多种基于注意力机制的生成式推荐框架,能够在检索阶段捕获与学习者兴趣高度相关的知识片段,并在生成阶段对其进行语义重构,从而实现更为精准与动态的资源推送。 这些研究普遍采用大规模公开数据集进行实验,结果表明基于检索增强生成(RAG)的模型在推荐准确率、覆盖率以及用户满意度方面均优于传统方法。 此外,国际顶尖学术机构通过引入图神经网络对课程知识结构进行建模,进一步提升了推荐系统对知识前置关系的把握能力,为学习路径规划提供了理论依据。 在数据隐私与安全方面,研究者们也提出了差分隐私与联邦学习相结合的方案,以在保证用户信息安全的前提下实现模型的跨域训练。 综上所述,国外研究已形成以检索增强生成、知识图谱与图神经网络为核心的多模态推荐体系,并在实验验证中展示了显著的性能提升。
国内学术界对教育推荐系统的关注与国际同步,且在应用场景与数据资源方面具有独特优势。 许多高校与科研院所利用国家教育大数据平台构建了覆盖从小学到高等教育的多层次学习资源库,并将其作为检索语料库,为基于RAG的推荐模型提供了丰富的知识来源。 国内研究者在协同过滤与内容过滤的基础上,进一步引入深度学习模型,如循环神经网络与变分自编码器,以提升对学习者行为序列的建模能力。 近年来,国内团队在知识图谱构建方面取得了突破,利用自然语言处理技术从教材、课程大纲与教学视频中抽取实体与关系,形成了多维度的知识结构。 在推荐算法层面,研究者结合图卷积网络与注意力机制,对知识图谱进行嵌入学习,从而实现对学习者知识缺口的精准定位与补全。 此外,国内学术界也在可解释性方面做了大量工作,通过可视化知识路径与生成过程,让学习者了解推荐依据,提升系统透明度与信任度。
研究方向方面,国内外学术界普遍聚焦于三大核心问题:一是如何在海量学习资源中高效检索与匹配学习者需求;二是如何通过生成式模型对检索结果进行语义补全与个性化表述;三是如何构建可解释的知识图谱与推荐路径。 在技术实现层面,国外研究多采用Transformer系列模型作为生成核心,并结合BERT等预训练语言模型提升语义理解深度;国内研究则倾向于将图神经网络与注意力机制相结合,以充分利用知识图谱的结构信息。 成果方面,基于RAG的推荐系统已在多个实验平台上实现了点击率提升10%–15%,学习效果评估中学生成绩提升5%–8%,并在用户满意度调查中获得高分。 另外,国内外研究还通过对比实验验证了差分隐私与联邦学习方案在保证推荐性能的同时,有效降低了个人信息泄露风险。
总体来看,国际研究已形成以检索增强生成为核心、知识图谱为支撑、深度学习为驱动的推荐体系框架,并在实验验证中取得显著进展;国内研究则在数据资源整合、知识图谱构建与可解释性方面取得了独特优势。 未来,进一步融合多模态信息、强化因果推理与自适应学习路径规划,将是推动教育推荐系统向更高水平发展的关键方向。
四、预期达到目标及解决的关键问题
本研究的预期目标聚焦于构建一套基于检索增强生成技术的个性化学习资源推荐系统,其核心目标包括提升推荐准确率与覆盖率、实现动态适应学习者认知状态、提供可解释的推荐路径以及保障用户数据隐私与安全。 具体而言,系统需在大规模多模态知识图谱基础上实现检索模块对学习者兴趣与需求的精准定位,并通过生成模块对检索结果进行语义重构与内容补全,以满足学习者在不同阶段的个性化学习需求;同时,系统应能够实时监测学习者交互行为与知识掌握情况,动态调整推荐策略,实现自适应推荐;此外,系统需通过可视化知识路径与生成过程的透明展示,为学习者提供对推荐依据的理解,从而提升信任度与主动学习动力;最后,在数据安全方面,应采用差分隐私与联邦学习框架,确保个人信息不被泄露,同时兼顾模型训练效果。
在实现上述目标过程中,研究面临若干关键问题。 首先是数据稀疏与冷启动问题,尤其在新学科或少数学生群体中,学习行为记录不足导致检索与生成模块难以获得高质量语料; 其次是知识图谱构建的准确性与完整性,实体抽取、关系识别与多源数据融合过程中可能产生噪声,影响检索匹配精度; 第三是检索与生成模块的协同耦合,如何在保证检索效率的同时为生成模型提供足够语义上下文,是系统性能瓶颈之一; 第四是计算资源与实时性需求,尤其在大规模在线教育平台上,系统需在毫秒级响应时间内完成检索与生成,挑战算法复杂度与硬件部署; 第五是评估指标的设计与学习成效验证,传统点击率、覆盖率等指标无法全面反映学习者知识提升,需要引入学习效果测评、认知负荷评估等多维度评价体系; 最后是隐私保护与合规性,如何在差分隐私保证下实现高质量模型训练,以及在跨域数据共享中满足各国法规要求,也是研究的难点之一。 通过系统性解决上述关键问题,本研究期望为教育推荐系统提供一种可复制、可扩展且具备行业落地潜力的技术方案。
五、研究内容
本研究围绕构建基于检索增强生成技术的个性化学习资源推荐系统展开,整体研究内容可分为数据采集与预处理、知识图谱构建、检索模块设计、生成模块实现、个性化与动态适应机制、可解释性与可视化、安全隐私保障以及系统评估与部署等十个核心环节。 通过上述环节的有机衔接,旨在实现对学习者需求的精准捕捉、对知识资源的高效检索与语义重构,并在保证数据安全与系统可解释性的前提下,提升学习效果与用户体验。
首先,研究将从多源数据平台获取课程大纲、教材章节、教学视频字幕、学习日志及测验成绩等信息,对原始文本进行清洗、分词、实体识别与语义标注,以构建统一的知识表示基础。 其次,基于抽取的实体与关系,采用图嵌入技术(如TransE或GraphSAGE)对知识图谱进行向量化,形成可供检索与生成模块使用的结构化语料库。 在检索模块方面,将实现混合检索策略,即先利用传统TF‑IDF或BM25快速定位候选片段,再通过密集向量检索(如FAISS)对候选进行语义匹配,以保证检索的速度与准确度。 生成模块将采用预训练Transformer模型,结合检索得到的知识片段作为上下文输入,通过微调实现对学习者兴趣与认知水平的个性化内容生成,采用束搜索或Top‑k采样等解码策略以平衡多样性与准确性。
个性化与动态适应机制将构建学习者画像模型,融合历史交互、测验结果与即时反馈信息,利用强化学习框架对推荐策略进行在线优化,使系统能够根据学习者的知识掌握情况实时调整检索权重与生成模板。 为提升系统可解释性,将设计知识路径可视化模块,通过展示检索到的实体关系链与生成过程中的注意力分布,帮助学习者理解推荐依据,并为教师提供决策支持。 在安全隐私方面,将引入差分隐私机制对用户日志进行扰动,并采用联邦学习框架实现跨机构数据协同训练,以在不泄露个人信息的前提下提升模型泛化能力。
系统评估将采用离线指标(如精确率、召回率、NDCG)与在线A/B测试相结合的方式,进一步通过学习成效测评(测验成绩提升、知识掌握度变化)与用户满意度调查来验证系统效果。 最后,研究将基于微服务架构实现系统部署,结合容器化技术与弹性伸缩机制,以满足大规模在线教育平台的实时推荐需求。 通过上述整体研究内容的实施,本项目将为教育领域提供一种可扩展、可解释且具备高安全性的个性化学习资源推荐解决方案。
六、需求分析
用户需求方面,系统的目标用户主要为在校学生、在线学习平台的学习者以及教育机构的教学管理者。 学生群体期望能够在学习过程中获得与自身兴趣、知识水平及学习目标高度匹配的资源,从而提升学习效率与主动性; 他们需要系统能够实时监测自身掌握情况,提供针对性补充材料,并在遇到困难时得到及时、精准的帮助。 在线学习平台的用户则更关注系统整体性能与可扩展性,期望推荐过程快速响应、资源覆盖面广,同时对推荐结果具备可解释性,以便于他们对学习路径进行调整与优化。 教育机构的管理者关注的是系统能够支持课程设计与教学评估,帮助教师精准定位学生薄弱环节,提供差异化教学方案,并通过数据分析支持教学决策。 此外,所有用户群体均对数据隐私与安全有较高要求,期望系统在满足个性化推荐的同时严格保护个人信息不被泄露或滥用。
功能需求方面,系统必须具备多模态知识图谱构建与维护功能,以支持课程大纲、教材内容、教学视频及测验结果等多源数据的统一表示与检索; 检索模块需要实现高效的文本检索与语义匹配,能够在毫秒级别内返回与学习者兴趣高度相关的知识片段; 生成模块需基于检索结果生成符合学习者认知水平、语言风格与学习目标的个性化内容,并支持多轮交互式生成以满足不同深度需求。 系统还应提供动态适应机制,实时更新学习者画像并调整推荐策略,以适应知识掌握变化; 可解释性功能需通过可视化知识路径与注意力分布展示推荐依据,增强用户信任与理解。 在安全隐私方面,系统必须实现差分隐私保护、联邦学习框架以及访问控制策略,确保数据在不泄露的前提下实现协同训练与服务交付。 最后,系统需支持在线评估与离线指标监测,提供点击率、学习成效提升率、用户满意度等多维度评价,并具备弹性伸缩与高可用部署能力,以满足大规模在线教育平台的业务需求。
七、可行性分析
经济可行性方面,本研究所需的主要投入包括数据采集与清洗、知识图谱构建、模型训练与部署以及后期运营维护。 数据采集成本相对较低,因可利用已有的公开课程大纲、教材文本与学习日志等资源,且多数高校与在线教育平台已建立数据共享机制; 但需投入专业人员进行实体识别与关系抽取,预计人力成本占总投入的30%至40%。 知识图谱构建与模型训练所需的计算资源可通过云服务按需弹性扩展,避免一次性高额硬件采购; 采用开源框架(如PyTorch、FAISS)可降低软件许可费用。 运营阶段主要涉及服务器维护、数据安全审计与用户支持,预计占年度预算的20%至25%。 从收益角度来看,系统可通过向教育机构提供订阅服务、按需推荐插件或与在线学习平台的合作分成实现收入; 预估在投入后两年内即可达到盈亏平衡点,长期来看随着用户规模扩大,利润空间将显著提升。 因此,从成本收益比与现金流预测来看,本研究具备良好的经济可行性。
社会可行性方面,系统的设计与功能紧密契合当前教育数字化转型的政策导向,能够支持个性化学习、差异化教学与终身学习需求。 学生群体对精准推荐与即时反馈的需求日益增强,系统提供的自适应学习路径可有效提升学习动力与成绩; 教育机构则可借助数据分析实现课程质量评估与教学资源优化,符合教育公平与质量提升的社会目标。 在隐私保护方面,采用差分隐私与联邦学习框架可满足国家数据安全法规要求,降低用户对个人信息泄露的担忧。 进一步而言,本系统通过可解释性模块提升学习者对推荐过程的理解,有助于培养批判性思维与自主学习能力,符合社会对教育质量与素质教育的期待。 因此,从社会需求、政策支持与伦理合规角度来看,本研究具备较高的社会可行性。
技术可行性方面,检索增强生成(RAG)技术已在自然语言处理领域得到广泛验证,且相关开源模型与工具成熟; 结合知识图谱与图神经网络,可实现对多模态学习资源的结构化表示与语义匹配。 在硬件层面,现代GPU集群或云端加速实例可满足Transformer模型训练与在线推理的算力需求,且通过模型压缩与量化技术可进一步降低延迟。 数据处理与管道设计方面,可利用现有ETL框架(如Airflow、Spark)实现大规模数据流的实时更新; 采用微服务架构与容器化技术(Docker、Kubernetes)可实现系统的弹性伸缩与高可用部署。 关键技术挑战主要集中在知识图谱质量控制、检索-生成协同优化以及模型解释性展示,然而已有研究提供了有效的解决方案与实验验证。 综合上述,技术路线基于成熟技术栈,且实现路径清晰,可在合理时间内完成系统原型与迭代。 因此,本研究在技术可行性方面具备充分的基础与实现保障。
八、功能分析
系统功能模块设计围绕数据采集、知识图谱构建、检索与生成、个性化推荐、可解释性展示、安全保障以及评估与运维等核心环节展开,逻辑结构如下。
首先是数据采集与预处理模块,该模块负责从课程大纲、教材文本、教学视频字幕、测验记录及学习日志等多源平台获取原始数据,并进行清洗、分词、命名实体识别与关系抽取;随后将结构化结果存入统一的数据仓库,为后续知识图谱构建提供基础。
其次为知识图谱构建模块,该模块利用抽取的实体与关系,采用图嵌入技术(如TransE或GraphSAGE)对知识节点进行向量化,并通过多层次语义聚合生成可供检索与生成使用的知识图谱;该模块还支持增量更新,以适应课程内容变更。
接下来是检索引擎模块,该模块实现混合检索策略:先采用传统TF‑IDF或BM25快速定位候选片段,再利用密集向量检索(如FAISS)对候选进行语义匹配,最终返回与学习者兴趣高度相关的知识片段;检索结果被封装为生成模块的上下文输入。
随后是生成引擎模块,该模块基于预训练Transformer模型,对检索得到的知识片段进行语义重构与内容补全;通过微调实现对学习者认知水平与兴趣偏好的个性化表述,并支持束搜索或Top‑k采样等解码策略,以平衡多样性与准确性。
用户画像管理模块负责收集学习者的历史交互、测验成绩与即时反馈,构建动态的知识掌握状态与兴趣向量;该模块为个性化推荐策略提供实时输入。
个性化推荐策略模块将用户画像与检索结果结合,采用强化学习或多臂赌博机算法动态调整检索权重与生成模板,实现对学习者需求的精准匹配与自适应更新;同时,该模块支持多目标优化,兼顾点击率、学习成效与知识覆盖率。
可解释性展示模块通过可视化知识路径、实体关系链与生成过程中的注意力分布,让学习者了解推荐依据,并为教师提供教学决策支持;该模块还支持文本级别的解释生成,提升系统透明度。
安全与隐私保障模块实现差分隐私机制对用户日志进行扰动,并采用联邦学习框架实现跨机构数据协同训练;同时,该模块提供访问控制、加密传输与合规审计功能,确保个人信息不被泄露。
评估与监控模块负责实时收集离线指标(如精确率、召回率、NDCG)与在线A/B测试结果,并通过学习成效测评与用户满意度调查进行综合评估;该模块还提供性能监控与异常报警,支持系统持续改进。
最后是部署与运维模块,该模块采用微服务架构与容器化技术(Docker、Kubernetes)实现弹性伸缩与高可用部署;同时提供日志管理、备份恢复与版本迭代管理,保障系统稳定运行。
九、数据库设计
字段名(英文) | 说明(中文) | 大小 | 类型 | 主外键 | 备注
---|---|---|---|---|---
Users
user_id | 用户唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
username | 登录用户名 | 50 | VARCHAR(50) | | 唯一索引。
email | 邮箱地址 | 100 | VARCHAR(100) | | 唯一索引。
password_hash | 密码哈希值 | 64 | CHAR(64) | | 使用安全哈希算法。
created_at | 创建时间戳 | - | TIMESTAMP | | 自动记录。
updated_at | 最后更新时间戳 | - | TIMESTAMP | | 自动更新。
Courses
course_id | 课程唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
title | 课程标题 | 200 | VARCHAR(200) | | 必填。
description | 课程描述信息 | - | TEXT | | 可选。
created_by | 创建者用户ID | 36 | CHAR(36) | 外键(Users.user_id)| 指向教师或管理员。
created_at | 创建时间戳 | - | TIMESTAMP | | 自动记录。
Materials
material_id | 学习资源唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
course_id | 所属课程ID | 36 | CHAR(36) | 外键(Courses.course_id)| 关联课程。
type | 资源类型(文本/视频/测验等) | 20 | VARCHAR(20) | | 可枚举。
title | 资源标题 | 200 | VARCHAR(200) | | 必填。
content_url | 内容访问URL或存储路径 | 500 | VARCHAR(500) | | 可选。
content_text | 文本内容(若为文本)| - | TEXT | | 可选。
created_at | 创建时间戳 | - | TIMESTAMP | | 自动记录。
KnowledgeEntities
entity_id | 知识实体唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
name | 实体名称(概念/术语) | 200 | VARCHAR(200) | | 必填。
type | 实体类型(概念/术语/实例等) | 20 | VARCHAR(20) | | 可枚举。
description | 实体描述信息 | - | TEXT | | 可选。
KnowledgeRelations
relation_id | 知识关系唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
source_entity_id | 源实体ID | 36 | CHAR(36) | 外键(KnowledgeEntities.entity_id)| 指向源实体。
target_entity_id | 目标实体ID | 36 | CHAR(36) | 外键(KnowledgeEntities.entity_id)| 指向目标实体。
relation_type | 关系类型(包含/属于/先行/后续等) | 20 | VARCHAR(20) | | 可枚举。
UserInteractions
interaction_id | 交互记录唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
user_id | 用户ID | 36 | CHAR(36) | 外键(Users.user_id)| 指向用户。
material_id | 资源ID | 36 | CHAR(36) | 外键(Materials.material_id)| 指向资源。
interaction_type | 交互类型(查看/点赞/完成等) | 20 | VARCHAR(20) | | 可枚举。
timestamp | 交互时间戳 | - | TIMESTAMP | | 自动记录。
Recommendations
rec_id | 推荐记录唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
user_id | 用户ID | 36 | CHAR(36) | 外键(Users.user_id)| 指向用户。
material_id | 推荐资源ID | 36 | CHAR(36) | 外键(Materials.material_id)| 指向资源。
score | 推荐得分或置信度值 | - | FLOAT | | 数值越大表示推荐优先级越高。
rec_timestamp | 推荐时间戳 | - | TIMESTAMP | | 自动记录。
EvaluationMetrics
eval_id | 评估记录唯一标识符 | 36 | CHAR(36) | 主键 | UUID形式生成。
user_id | 用户ID | 36 | CHAR(36) | 外键(Users.user_id)| 指向用户。
metric_name | 指标名称(点击率/学习收益等) | 50 | VARCHAR(50) | | 可枚举。
metric_value | 指标数值或百分比 | - | FLOAT | | 数值越大表示效果越好。
eval_timestamp | 评估时间戳 | - | TIMESTAMP | | 自动记录。
Configurations
config_key | 配置键名(唯一) | 100 | VARCHAR(100) | 主键 | 用于存储系统参数。
config_value | 配置值(JSON或字符串) | - | TEXT | |
以上表结构遵循第一范式至第三范式,消除数据冗余并通过外键实现实体间的完整性约束。
十、建表语句
CREATE DATABASE IF NOT EXISTS rag_learning;
USE rag_learning;
-- 1. 用户表
CREATE TABLE Users (
user_id CHAR(36) NOT NULL,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
password_hash CHAR(64) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (user_id),
UNIQUE KEY uq_users_username (username),
UNIQUE KEY uq_users_email (email)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 2. 课程表
CREATE TABLE Courses (
course_id CHAR(36) NOT NULL,
title VARCHAR(200) NOT NULL,
description TEXT,
created_by CHAR(36) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (course_id),
KEY idx_courses_created_by (created_by),
CONSTRAINT fk_courses_created_by FOREIGN KEY (created_by)
REFERENCES Users(user_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 3. 学习资源表
CREATE TABLE Materials (
material_id CHAR(36) NOT NULL,
course_id CHAR(36) NOT NULL,
type VARCHAR(20) NOT NULL,
title VARCHAR(200) NOT NULL,
content_url VARCHAR(500),
content_text TEXT,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (material_id),
KEY idx_materials_course_id (course_id),
CONSTRAINT fk_materials_course_id FOREIGN KEY (course_id)
REFERENCES Courses(course_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 4. 知识实体表
CREATE TABLE KnowledgeEntities (
entity_id CHAR(36) NOT NULL,
name VARCHAR(200) NOT NULL,
type VARCHAR(20),
description TEXT,
PRIMARY KEY (entity_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 5. 知识关系表
CREATE TABLE KnowledgeRelations (
relation_id CHAR(36) NOT NULL,
source_entity_id CHAR(36) NOT NULL,
target_entity_id CHAR(36) NOT NULL,
relation_type VARCHAR(20),
PRIMARY KEY (relation_id),
KEY idx_relations_source (source_entity_id),
KEY idx_relations_target (target_entity_id),
CONSTRAINT fk_relations_source FOREIGN KEY (source_entity_id)
REFERENCES KnowledgeEntities(entity_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_relations_target FOREIGN KEY (target_entity_id)
REFERENCES KnowledgeEntities(entity_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 6. 用户交互记录表
CREATE TABLE UserInteractions (
interaction_id CHAR(36) NOT NULL,
user_id CHAR(36) NOT NULL,
material_id CHAR(36) NOT NULL,
interaction_type VARCHAR(20),
timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (interaction_id),
KEY idx_interactions_user (user_id),
KEY idx_interactions_material (material_id),
CONSTRAINT fk_interactions_user FOREIGN KEY (user_id)
REFERENCES Users(user_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_interactions_material FOREIGN KEY (material_id)
REFERENCES Materials(material_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 7. 推荐记录表
CREATE TABLE Recommendations (
rec_id CHAR(36) NOT NULL,
user_id CHAR(36) NOT NULL,
material_id CHAR(36) NOT NULL,
score FLOAT,
rec_timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (rec_id),
KEY idx_recs_user (user_id),
KEY idx_recs_material (material_id),
CONSTRAINT fk_recs_user FOREIGN KEY (user_id)
REFERENCES Users(user_id) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT fk_recs_material FOREIGN KEY (material_id)
REFERENCES Materials(material_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 8. 评估指标表
CREATE TABLE EvaluationMetrics (
eval_id CHAR(36) NOT NULL,
user_id CHAR(36) NOT NULL,
metric_name VARCHAR(50),
metric_value FLOAT,
eval_timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (eval_id),
KEY idx_eval_user (user_id),
CONSTRAINT fk_eval_user FOREIGN KEY (user_id)
REFERENCES Users(user_id) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 9. 系统配置表
CREATE TABLE Configurations (
config_key VARCHAR(100) NOT NULL,
config_value TEXT,
PRIMARY KEY (config_key)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
文章下方名片联系我即可~大家点赞、收藏、关注、评论啦 、查看下方👇🏻获取联系方式👇🏻