博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久,选择我们就是选择放心、选择安心毕业✌
> 🍅想要获取完整文章或者源码,或者代做,拉到文章底部即可与我联系了。🍅点击查看作者主页,了解更多项目!
🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助同学们顺利毕业 。🍅
1、毕业设计:2026年计算机专业毕业设计选题汇总(建议收藏)✅
2、大数据毕业设计:2026年选题大全 深度学习 python语言 JAVA语言 hadoop和spark(建议收藏)✅
1、项目介绍
技术栈
Python、Django/Flask、Neo4j图数据库、深度学习模型(如BERT)、ECharts数据可视化、Py2neo驱动。
功能模块
· 系统首页模块(数据统计与折线图可视化)
· Neo4j知识图谱可视化模块
· 智能问答聊天模块(对话式交互)
· 问答记录管理模块(列表展示、搜索、分页、删除)
· 用户个人信息模块
· 登录与注册模块
· 后台运维管理模块(问答与用户数据管理)
整个项目介绍
该系统基于知识图谱与深度学习技术,构建医疗智能问答平台。后端利用Neo4j存储疾病、药品、症状等实体及其关联关系,并通过前端图形化界面直观展示知识结构。用户可在对话窗口输入问题,系统返回知识图谱支撑的专业解答。平台提供问答记录管理、用户信息查看及后台数据运维功能,同时以折线图展示每日问答量等核心统计指标,实现医疗知识交互、数据可视化与全流程管理。
2、项目界面
基于知识图谱的医疗问答系统首页
该页面展示系统核心统计数据,以折线图可视化呈现每日问答数量变化趋势,帮助管理员直观了解系统用户活跃度与问答业务的运行情况。
基于知识图谱的医疗问答系统数据库可视化界面
该界面为Neo4j数据库管理页面,通过节点与关系图谱直观展示医疗知识图谱中的实体及关联,支持Cypher查询,可可视化查看疾病、症状、药物等实体及其相互关系,辅助医疗知识的构建与分析。
基于知识图谱的医疗问答系统医疗问答界面
该界面提供对话式交互窗口,用户可在输入框中提交医疗问题,通过发送按钮与系统进行问答,系统会返回基于知识图谱的专业解答,实现医疗知识的智能交互查询。
基于知识图谱的医疗问答系统问答管理界面
该界面以列表形式展示用户的医疗问答记录,包含问题、回答、提问人及创建时间,支持搜索、分页和删除操作,方便管理员查看与管理系统中的历史问答数据。
基于知识图谱的医疗问答系统医疗问答界面
该界面为对话式交互窗口,用户可在输入框中提交医疗问题,系统会返回基于知识图谱的专业解答,支持发送与清空操作,实现医疗知识的智能问答交互。
基于知识图谱的医疗问答系统个人信息界面
该界面以表格形式展示用户的个人信息,包含ID、姓名、联系方式、角色、创建时间及最后修改时间,用于用户查看与管理自身账号的基础信息。
用户登录界面
该界面为系统登录入口,提供账户、密码和验证码输入框,支持用户完成身份验证并登录系统,同时设有注册入口,方便新用户创建账号。
后台管理系统界面
该界面为系统后台管理中心,提供问答信息表、用户管理及认证和权限等模块,支持对相关数据进行增加和修改操作,方便管理员维护系统数据与用户权限。
基于知识图谱的医疗问答系统知识图谱可视化界面
该界面为Neo4j数据库可视化页面,以节点和关系图谱的形式直观展示医疗知识图谱中的实体及关联,可清晰呈现疾病、症状、药物等不同类型实体间的相互关系,辅助医疗知识的构建与分析。
3、项目说明
一、技术栈简要说明
本系统后端采用Python语言开发,结合Django或Flask框架构建Web服务。数据层使用Neo4j图数据库存储医疗实体及其关联关系,通过Py2neo驱动实现Python与数据库的交互。智能问答模块引入深度学习模型BERT进行语义理解与意图识别。前端使用ECharts实现数据可视化图表,知识图谱展示部分调用Neo4j自带的可视化组件。
二、功能模块详细介绍
· 系统首页模块(数据统计与折线图可视化)
该模块展示系统收录用户数、问答总数等核心统计数据,并通过折线图呈现每日问答量的变化趋势。管理员可以直观了解系统活跃度与问答业务运行情况,为运营决策提供数据支撑。
· Neo4j知识图谱可视化模块
该模块以节点和关系图谱形式展示医疗知识图谱中的实体及关联。疾病、药品、症状等不同类型实体以多色节点区分,支持Cypher查询,可清晰呈现感冒等疾病与药品、食物之间的相互关系,辅助医疗知识的构建与分析。
· 智能问答聊天模块(对话式交互)
该模块提供对话式交互窗口,用户可在输入框中提交医疗问题,支持发送和清空操作。系统接收问题后基于知识图谱返回专业解答,实现医疗知识的智能问答交互,提升用户咨询体验。
· 问答记录管理模块(列表展示、搜索、分页、删除)
该模块以列表形式展示用户的医疗问答记录,包含问题内容、系统回答、提问人及创建时间等信息。支持按关键词搜索历史记录、分页浏览以及单条或多条删除操作,方便管理员管理系统的历史问答数据。
· 用户个人信息模块
该模块以表格形式展示用户的个人信息,包括用户ID、姓名、联系方式、角色、创建时间及最后修改时间。用户可在此查看与管理自身账号的基础资料,保障个人信息的准确性与安全性。
· 登录与注册模块
该模块作为系统身份验证入口,提供账户、密码和验证码输入框,支持用户完成登录。同时设有注册入口,方便新用户创建账号,保障系统的访问安全与用户管理规范性。
· 后台运维管理模块(问答与用户数据管理)
该模块为后台管理系统核心,提供问答信息表和用户管理等功能入口。管理员可对问答内容进行修改、批量操作,对用户数据进行增删改查及权限配置,实现系统数据的全流程运维管理。
三、项目总结
本系统基于知识图谱与深度学习技术,构建了一套完整的医疗智能问答平台。后端利用Neo4j存储疾病、药品、症状等实体及其关联关系,通过前端图形化界面直观展示知识结构。用户可在对话窗口输入问题,系统调用BERT模型进行语义解析并返回知识图谱支撑的专业解答。平台提供问答记录管理、用户信息查看及后台数据运维功能,同时以折线图展示每日问答量等核心统计指标。系统涵盖登录注册、首页统计、知识图谱可视化、智能问答、问答管理、个人信息及后台运维等完整功能模块,实现了医疗知识智能交互、数据可视化与全流程管理,具备良好的实用性与可扩展性。
4、核心代码
importdatetimefromdjango.core.paginatorimportPaginatorfromdjango.httpimportHttpResponseRedirect,HttpResponse,HttpResponseForbidden,JsonResponsefromdjango.shortcutsimportrenderfromuser.modelsimportUserfrom.modelsimportMedicalfrom.knowledge.chatbot_graphimportmaindeflogin(req):""" 跳转登录 :param req: :return: """returnrender(req,'login.html')defday_get():d=datetime.datetime.now()# 通过for 循环得到天数,如果想得到两周的时间,只需要把8改成15就可以了。foriinrange(0,7):# 1,8oneday=datetime.timedelta(days=i)day=d-oneday date_to=datetime.datetime(day.year,day.month,day.day)yieldstr(date_to)[0:10]defget_recent_seven_day():""" 获取最近的七天日期 @return: """qq=day_get()day_list=[]forobjinqq:day_list.append(obj)list_week_day=day_list[::-1]returnlist_week_daydefregister(req):""" 跳转注册 :param req: :return: """returnrender(req,'register.html')defindex(req):""" 跳转首页 :param req: :return: """username=req.session['username']total_user=len(User.objects.all())total_wd=Medical.objects.count()date=datetime.datetime.today()month=date.month year=date.year seven_days=get_recent_seven_day()seven_data_dict=dict.fromkeys(seven_days,0)foriinseven_days:d=datetime.timedelta r=Medical.objects.filter(create_time=i).all()ifr:seven_data_dict[i]=r.count()seven_count_list=[seven_data_dict[x]forxinseven_days]returnrender(req,'index.html',locals())deflogin_out(req):""" 注销登录 :param req: :return: """delreq.session['username']returnHttpResponseRedirect('/')defpersonal(req):username=req.session['username']role_id=req.session['role']user=User.objects.filter(name=username).first()returnrender(req,'personal.html',locals())defwechat(req):username=req.session.get('username','admin')returnrender(req,'wechat.html',locals())defqa(request):text=request.POST.get('text')print(text)result=main(text)username=request.POST.get('username','admin')Medical.objects.create(question=text,answer=result,owner=username,create_time=str(datetime.datetime.now().strftime("%Y-%m-%d")))returnJsonResponse({'result':result})defwdgl(request):username=request.session.get('username','admin')returnrender(request,'wdgl.html',locals())defget_wd(request):""" 获取用户列表信息 | 模糊查询 :param request: :return: """keyword=request.GET.get('name')page=request.GET.get("page",'')limit=request.GET.get("limit",'')role_id=request.GET.get('position','')response_data={}response_data['code']=0response_data['msg']=''data=[]ifkeywordisNone:results_obj=Medical.objects.all()else:results_obj=Medical.objects.filter(question__contains=keyword).all()paginator=Paginator(results_obj,limit)results=paginator.page(page)ifresults:forresultinresults:record={"id":result.id,"question":result.question,"answer":result.answer,"owner":result.owner,'create_time':result.create_time,}data.append(record)response_data['count']=len(results_obj)response_data['data']=datareturnJsonResponse(response_data)defdelete_wd(request):""" 删除 """user_id=request.POST.get('id')result=Medical.objects.filter(id=user_id).first()try:ifnotresult:response_data={'error':'删除失败!','message':'找不到id为%s'%user_id}returnJsonResponse(response_data,status=403)result.delete()response_data={'message':'删除成功!'}returnJsonResponse(response_data,status=201)exceptExceptionase:response_data={'message':'删除失败!'}returnJsonResponse(response_data,status=403)5、项目列表
6、源码获取方式
🍅由于篇幅限制,获取完整文章或源码、代做项目的,查看我的【用户名】、【专栏名称】、【顶部选题链接】就可以找到我啦🍅
感兴趣的可以先收藏起来,点赞、关注不迷路,下方查看👇🏻获取联系方式👇🏻