大数跨境
0
0

《构建个人知识图谱》006:知识节点详情和图片预览

《构建个人知识图谱》006:知识节点详情和图片预览 数翼
2023-10-18
0
导读:今天为知识图谱添加详情和图片预览。这样在查看知识图谱的时候可以查看和编辑相关知识的详情。首先看下最后的界面预

今天为知识图谱添加详情和图片预览。这样在查看知识图谱的时候可以查看和编辑相关知识的详情。

首先看下最后的界面预览:

节点详情

之前一直忘了一件事情,就是知识节点上定义了很多东西但是在图谱上看不到。加一个点击节点显示详情的功能。

想详情显示一下主要的东西就行,大致如下:

详情设计

实现一下 UI,调整下样式:

显示节点内容

顺便实现下按着 Shift 多选的功能,:

Shift 多选节点显示内容

网页快照

相比于看摘要,有时候我更喜欢欣赏哪些设计精美的主页。当不想打开主页的时候如果能直接看到网页快照截图就好了。

我们使用 Selenium 这个自动化测试工具来进行页面截图,然后把图片存储在分布式存储服务 Minio 上, 程序访问的时候从 Minio 上获取图片内容展示。

图片保存和预览流程

使用 Selenium 截图很简单,如果要固定的大小可以使用 set_window_size 函数。

driver = webdriver.Chrome()
driver.get(url)
driver.set_window_size(width, height)
driver.save_screenshot(filepath)

然后把图片上传到 Minio 服务器:

client = Minio(
    endpoint,
    access_key="MyPlAfOBM",
    secret_key="4RLA4T1jz7cO1i",
    secure=False,
)
client.fput_object(bucket, object_name, file_path, )

我直接用知识节点的名字做 Minio 的文件夹名字,为了避免根目录文件夹太多,我用首字母先分了一层文件夹:

一级目录

第二级目录放了知识节点文件夹:

二级目录

最后放了两个分辨率的截图文件:

不同分辨率的文件

Minio 权限设置 最后不要忘记给 Minio 设置权限哦,因为是本地用所以我把桶设置成个公共读。 {
    "Version""2012-10-17",
    "Statement": [{
      "Action": [
        "s3:GetObject"
      ],
      "Effect""Allow",
      "Principal": {
        "AWS": ["*"]
      },
      "Resource": [
        "arn:aws:s3:::knowledge-graph/*"
      ],
      "Sid"""
    }]
}

如果知识节点维护了主页,那么把主页的截图保存然后显示在详情里面:

单个详情预览

多个知识节点带着图片的预览:

多个知识节点详情预览

编辑

同时还在详情标题的右边加了个编辑按钮,方便快速编辑:

点击弹窗可以进行快速的修改:

修改按钮

修改的弹窗和新增的表单一样:

点击节点快速编辑

更多布局

最后看到框架作者的 Example 里面有一个 tree 布局的,我们也跟着实现一下。

不过由于数据问题,显示出来比较杂乱。

树视图
树视图

换另外一组数据效果明显一些:

LLM Tree布局

在仅查看文本和仅查看节点的时候,有不同的视觉效果哦。

仅查看文本,:

仅查看节点

查看节点:

查看节点

最后看个布局切换的视频。


--- END ---


【声明】内容源于网络
0
0
数翼
专注 AIGC 人工智能知识传播和实践
内容 171
粉丝 0
数翼 专注 AIGC 人工智能知识传播和实践
总阅读0
粉丝0
内容171