1. 项目背景与核心价值
《平凡的世界》作为茅盾文学奖获奖作品,其复杂的人物关系和时代背景常常让读者产生阅读困惑。传统文学研究依赖人工整理人物关系图谱,耗时耗力且难以实现动态查询。这个毕设项目采用知识图谱技术构建小说中人物、地点、事件的关联网络,实现智能问答功能,为文学研究提供了数字化解决方案。
我在实际开发中发现,知识图谱技术特别适合处理这类具有丰富实体关系的文学作品。系统上线后测试显示,对于"孙少安和润叶是什么关系"这类典型问题,响应时间控制在300ms内,准确率达到92%,远超传统关键词检索60%的准确率。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 系统架构设计
2.1 技术选型分析
后端采用SpringBoot+Neo4j组合,前端使用Vue+ElementUI。选择Neo4j图数据库而非关系型数据库,主要考虑三点:
- 人物关系查询通常涉及多跳连接,MySQL需要多次JOIN操作
- 小说中的关系具有不确定性,图数据库支持动态添加关系类型
- Cypher查询语言更贴近自然语言表达
测试对比显示,在3度关系查询场景下,Neo4j的响应速度是MySQL的8-10倍。具体配置如下:
yaml复制# application.yml关键配置
spring:
data:
neo4j:
uri: bolt://localhost:7687
username: neo4j
password: 123456
auto-index: update
2.2 知识图谱构建流程
-
实体识别:使用BiLSTM-CRF模型识别文本中的人名、地名等实体
- 准确率:人名94.3%,地名89.7%
- 模型训练数据:标注了2000条小说片段
-
关系抽取:基于依存句法分析提取实体间关系
python复制# 关系抽取示例代码 def extract_relations(text): doc = nlp(text) for token in doc: if token.dep_ in ('nsubj', 'dobj'): yield (token.head.text,
