一行命令快速运行本地知识图谱,免费开源项目附代码。
有趣的开源项目视频地址:
https://www.youtube.com/watch?v=Bicjxl4EcJg&t=3s
https://github.com/chromalock/TI-32/
本地知识图谱:
项目简介
该应用程序使用本地 Llama 模型来回答查询、构建嵌入并创建知识图来探索相关问题和答案。
本地知识图是一个基于 Flask 的 Web 应用程序,它利用本地 Llama 语言模型来处理用户查询、生成逐步推理并将思维过程可视化为交互式知识图。它还根据语义相似性查找并显示相关问题和答案。
特征
用于提交查询的交互式网络界面
实时显示分步推理过程
推理步骤的动态知识图可视化
最强推理路径的计算与展示
基于语义相似度的相关问答
使用 Llama 语言模型进行本地处理
用法
确保您已安装所有必需的依赖项。
通过运行app.py启动 Flask 应用程序。
打开 Web 浏览器并导航到http://localhost:5100 (或适当的端口(如果已修改))。
在输入字段中输入您的查询,然后单击“提交”。
观察应用程序生成逐步推理过程,实时更新知识图。
回顾最终答案和最强推理路径。
探索主要回复下方显示的相关问题和答案。
要求
Python 3.7+
Flask
NumPy
scikit-learn
Annoy
NetworkX
在http://localhost:11434上运行的本地 Llama 语言模型(例如 llama3.1:8b)
安装
克隆此存储库。
使用requirements.txt 文件安装所需的Python 包:
pip install -r requirements.txt
-
确保您有本地 Llama 模型正在运行且可访问。
-
运行 Flask 应用程序:
python app.py
项目链接
https://github.com/punnerud/Local_Knowledge_Graph
以下是一些开源的知识图谱项目:
-
KG-Hub
- 简介:KG-Hub是一个平台,支持标准化构建、交换和重用知识图谱。它提供了一种简单、模块化的提取-转换-加载模式,用于生成符合Biolink Model标准的图谱。
- 优点:支持与Biolink Model合规的图谱;易于整合任何OBO(Open Biological and Biomedical Ontologies)本体;提供云基础设施上可浏览的图谱构件存储。
- 访问链接:KG-Hub
-
Wikidata
- 简介:Wikidata是一个自由、协作的多语言知识库,旨在收集结构化数据,并为维基百科和其他项目提供支持。
- 优点:数据量庞大,支持多种语言;社区活跃,持续更新。
- 访问链接:Wikidata
-
DBpedia
- 简介:DBpedia是一个从Wikipedia派生出的结构化知识库,包含多种语言和丰富的数据。
- 优点:信息丰富,易于查询;支持多种语言。
- 访问链接:DBpedia
-
YAGO
- 简介:YAGO(Yet Another Great Ontology)是一个大规模的语义知识库,结合了Wikipedia、WordNet和其他来源的数据。
- 优点:数据来源多样,信息量大。
- 访问链接:YAGO
-
NELL (Never-Ending Language Learning)
- 简介:NELL是一个自动化的知识发现系统,从互联网上学习和整合知识,以构建一个不断增长的知识库。
- 优点:自我学习和更新的知识库。
- 访问链接:Carnegie Mellon University - NELL
-
ConceptNet
- 简介:ConceptNet是一个语义网络,它将自然语言中的词语和短语连接起来,表示人们的知识。
- 优点:易于理解和导航;支持多种语言。
- 访问链接:ConceptNet
-
SNOMED CT
- 简介:SNOMED CT(Systematized Nomenclature of Medicine - Clinical Terms)是一个全面的临床术语系统,广泛用于电子健康记录。
- 优点:医学术语全面,适用于医疗信息交换。
- 访问链接:SNOMED CT
-
UMLS (Unified Medical Language System)
- 简介:UMLS是一个综合性的生物医学词汇资源,旨在促进生物医学信息的整合。
- 优点:标准化的医学术语,适用于医疗、研究和教育。
- 访问链接:UMLS
-
Schema.org
- 简介:Schema.org是一个由主要搜索引擎支持的协作项目,旨在创建和支持一个共享的词汇表,用于结构化数据的标记。
- 优点:搜索引擎友好,易于网站数据的索引。
- 访问链接:Schema.org
-
OpenCyc
- 简介:OpenCyc是基于Cyc知识库的一个开源版本,包含了大量的常识知识。
- 优点:包含丰富的常识知识,适用于多种应用。
- 访问链接:OpenCyc
以下是一些开源知识图谱项目及其在实际应用中的优势和局限性,以及一些案例:
-
Wikidata
- 简介:Wikidata是一个自由、协作的多语言知识库,旨在收集结构化数据,并为维基百科和其他项目提供支持。
- 优势:数据量庞大,支持多种语言,社区活跃,持续更新。
- 局限性:数据质量控制可能不如专业维护的知识库严格。
- 案例:Wikidata 作为知识库,其内容都是结构化的信息,它期望将维基百科、维基文库、维基导游等项目中结构化知识进行抽取、存储、关联 。
-
DBpedia
- 简介:DBpedia是一个从Wikipedia派生出的结构化知识库,包含多种语言和丰富的数据。
- 优势:信息丰富,易于查询,支持多种语言。
- 局限性:数据更新依赖于Wikipedia,可能存在延迟。
- 案例:DBpedia的数据挖掘与知识发现系统可以计算在英文Wikipedia中描述的两个事物之间的语义距离 。
-
UMLS (Unified Medical Language System)
- 简介:UMLS是由美国国立医学图书馆开发的,旨在通过整合各种生物医学术语系统来促进医学信息的统一检索和应用。
- 优势:提供全面、标准化的医学术语,支持自然语言处理。
- 局限性:需要专业知识才能有效使用。
- 案例:UMLS在医疗保健行业中辅助医生做出更准确的诊断,加速药物的研究与开发过程 。
-
OpenCyc
- 简介:OpenCyc是基于Cyc知识库的一个开源版本,包含了大量的常识知识。
- 优势:包含丰富的常识知识,适用于多种应用。
- 局限性:项目较老,可能需要更新以适应现代应用。
- 案例:OpenCyc的CycL语法用于表示个体、集合、关系和属性值 。
-
Schema.org
- 简介:Schema.org是一个由主要搜索引擎支持的协作项目,旨在创建和支持一个共享的词汇表,用于结构化数据的标记。
- 优势:搜索引擎友好,易于网站数据的索引。
- 局限性:主要用于互联网内容的标记,不涵盖所有知识领域。
-
NELL (Never-Ending Language Learning)
- 简介:NELL是一个自动化的知识发现系统,从互联网上学习和整合知识,以构建一个不断增长的知识库。
- 优势:自我学习和更新的知识库。
- 局限性:可能需要大量的计算资源。
-
ConceptNet
- 简介:ConceptNet是一个语义网络,它将自然语言中的词语和短语连接起来,表示人们的知识。
- 优势:易于理解和导航,支持多种语言。
- 局限性:数据来源可能包括用户提交的内容,准确性需要验证。
-
SNOMED CT
- 简介:SNOMED CT(Systematized Nomenclature of Medicine - Clinical Terms)是一个全面的临床术语系统,广泛用于电子健康记录。
- 优势:医学术语全面,适用于医疗信息交换。
- 局限性:专业术语可能需要专业知识才能理解。
-
YAGO
- 简介:YAGO(Yet Another Great Ontology)是一个大规模的语义知识库,结合了Wikipedia、WordNet和其他来源的数据。
- 优势:数据来源多样,信息量大。
- 局限性:数据更新可能不如实时数据源及时。
-
CN-DBpedia
- 简介:CN-DBpedia是中国版的DBpedia,专注于中文知识图谱的构建。
- 优势:专注于中文内容,适合中文用户。
- 局限性:主要覆盖中文数据,国际内容较少。
这些知识图谱项目在不同的领域和场景中都有广泛的应用,如医疗、金融、教育、智慧城市建设等,它们通过整合和分析大量数据,为各种智能应用提供支持。