项目简介
本项目基于Python框架构建,借助知识图谱和自然语言处理技术,使智能音箱能够自动回答通用知识问题。项目运用BERT模型完成序列标注、文本分类和相似度计算等任务,采用SPARQL查询处理汽车相关的知识图谱数据。
项目的主要特性和功能
- 知识图谱问答:可依托知识图谱(如汽车知识图谱)回答实体和关系相关问题。
- 命名实体识别:利用BERT模型识别文本中的实体(如品牌、车型等),并链接到知识库实体。
- 关系预测:借助BERT模型预测文本关系,并转化为知识图谱关系类型。
- 自然语言理解:识别用户输入的自然语言文本,根据内容选择问答策略或数据库查询。
- 自然语言生成:依据问答策略或查询结果,生成自然语言回答。
安装使用步骤
环境准备
数据和环境配置
- 启动jena:进入jena目录,执行
./fuseki-server
。 - 知识图谱导入:打开 http://localhost:3030/index.html,点击manage datasets,再点击add new dataset,选择TDB2保存数据到磁盘,输入知识图谱名字(如car),与代码中SPARQL Endpoint Server配置对应。点击creat dataset后到existing datasets,选择upload data,选择知识图谱数据文件car_data/kg/car.ttl后点击upload now。
- Python环境:在项目目录下执行
pip install -r requirements.txt
。
启动系统
- 交互式启动:执行
python3.5 chat.py
。 - API形式启动:执行
python3.5 server.py
,使用get方法请求API http://localhost:10000/chat,参数包含user_id
(用户id)和question
(问题),例如:http://localhost:10000/chat?user_id=2&question=中国的人口有多少 。
注意:实际安装和使用可能需根据具体代码和依赖项调整。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】