知识图谱构建工具

Snack2Graph是一款解析非结构化文本并使用FalkorDB构建知识图谱的工具,适用于知识探索和关系挖掘。

  • by NatashaKSS
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 natashakss/mcp-knowledge-graph

使用说明

Snack2Graph

探索知识图谱

一个使用FalkorDB解析非结构化文本并构建具有丰富相互连接关系网络的知识图谱的应用程序。

本质上,这个工具会吃东西,并输出一个关于它吃了什么的知识图。

这纯粹是出于探索目的。

设置

安装 uv (参见 doc网站),我们选择的Python包管理器。这是一个 快速入门指南 属于的 uv 它包含一些基本特征。

通过运行以下命令验证您的设置。

uv run python src/main.py --help

提示: 每当运行此命令时, uv 自动将所需的软件包从锁文件安装到您的 .venv 项目环境,如果还没有创建,甚至可以创建它(参见 关于“项目环境”的文档网站 更多信息)。

运行CLI

该项目包括一个用于处理文本文件的CLI。使用显示所有可用命令 help.

uv run python src/main.py --help

一次成功的跑步应该是这样的:

Usage: main.py [OPTIONS] COMMAND [ARGS]...

Snack2Graph parses unstructured text and constructs a Knowledge Graph with a rich web of inter-connected relationships using FalkorDB.

╭─ Options ───────────────────────────────────────────────────────╮
│ --help          Show this message and exit.                     │
╰─────────────────────────────────────────────────────────────────╯
╭─ Commands ──────────────────────────────────────────────────────╮
│ construct Create a knowledge graph with the given text file.    │
│ version   Show the current version of the CLI tool.             │
╰─────────────────────────────────────────────────────────────────╯

发展

代码格式化

ruff 是为这个项目选择的linter&formatter。

使用配置的lint规则检查项目中所有文件的lint违规情况:

uv run ruff check

使用配置的格式规则更新项目中的所有文件:

uv run ruff format

推荐的VS代码扩展

您还可以在自己的IDE中安装支持以下功能的扩展 ruff 以帮助您在开发过程中运行这些linting和格式化检查。此项目的推荐插件是 Ruff 靠近 Astral Software,这是一个可以在中使用的JSON示例 settings.json 自动整理和格式化代码并组织导入。

"[python]": {
  "editor.formatOnSave": true,
  "editor.defaultFormatter": "charliermarsh.ruff",
  "editor.codeActionsOnSave": {
    "source.fixAll": "explicit",
    "source.organizeImports": "explicit"
  }
}