Cointime

扫码下载App
iOS & Android

The Graph Indexer线上会议 #189

项目方

TL;DR: Yaniv介绍了 GRC-20,这是一种新的知识图谱标准,可在各种应用程序中使用。Christophe分享当前的实现情况,包括三个主要组件:一个使用 Substreams 读取链上事件的接收器、用于存储实体的 Neo4j 以及用于向消费应用程序公开数据的 GraphQL API 服务器。索引器将能够选择他们想要索引的空间,而不是索引整个全球图谱,未来计划实现人工智能功能。

大家好,欢迎阅览 Indexer Office Hours 会议纪要,第 189 场!

视频链接:https://youtu.be/zjPciPYxFWc


在由两部分组成的系列中捕捉 2024 年所有剧集的亮点:

  • 2024 年最佳(第 1 部分)(第 151 至 175 集)
  • 2024 年最佳(第 2 部分)(第 176 至 200 集)

重要存储库的最新更新

  • Erigon新版本 v2.61.0 :
  • 日期:2025-01-06 15:58:36 UTC
  • 该版本包括用于实施 Pectra 网络分叉规范的更新,以及 Dockerfile 中升级的 Golang 版本。操作员应查看这些更改,以了解合规性和性能改进。
  • 紧急指标:黄色
  • 紧急原因:重要更新,但不是立即关键更新。
  • Reth新版本 v1.1.5 :
  • 日期:2025-01-07 13:50:34 UTC
  • 在版本 1.1.5 中,传统引擎实现不再是默认的,并且已完全放弃对它的支持。此版本包括重大的性能改进、错误修复和重大 API 更改,这些更改可能会影响现有应用程序和工作流。
  • 紧急指标:红
  • 紧急原因:删除旧版支持需要用户立即操作。
  • Nethermind:新版本 v1.30.3 :
  • 日期:2025-01-04 12:43:40 UTC
  • 由于全新硬分叉,此版本要求 OP 主网和 Base 主网上的所有节点在 2025 年 1 月 9 日之前升级到 Nethermind v1.30.3 和 op-node v1.10.2。升级失败将导致节点功能不正确。
  • 紧急指标:红
  • 紧急原因:需要强制性硬分叉才能实现正确的功能。
  • Avalanche:新版本 v1.12.1 :
  • 日期:2024-12-17 23:21:23 UTC
  • 该版本修复了 P 链内存池验证问题,以防止交易超出链容量,确保网络完整性。它还为 PebbleDB 引入了一个可配置的选项,并包括各种增强和更正,主要集中在优化和文档方面。
  • 紧急指标:黄色
  • 紧急原因:重要修复和增强功能。
  • Arbitrum-nitro新版本 v3.3.1 :
  • 日期:2025-01-06 18:54:45 UTC
  • 版本 3.3.1 修复了 v3.2.1 的跟踪回归,增强了区块链操作的可靠性。用户应根据其验证程序设置使用正确的 Docker 镜像。
  • 紧急指标:黄色
  • 紧急原因:跟踪回归的重要修复。

聊天室:

Matthew Darwin |Pinax:昨天发布了这么多 Nitro。Offchain Labs 团队建议升级到 Nitro 3.3.0 或更高版本。

Vincent |Data Nexus:我看到了,哈哈。不确定我在看到这些版本的频率后是否要立即升级。

Matthew Darwin |Pinax:我们不得不修补早期的 Nitro 版本以避免它崩溃。

有关不同客户端的信息

  • Teku:新版本 24.12.1 :
  • 日期:2024-12-18 11:04:40 UTC
  • 版本 24.12.1 包括对 gas 检查、API 响应和 libp2p 消息大小的关键错误修复,从而确保更好的操作稳定性。Operator 应注意,即将推出的版本 25.1.0 将在指标名称中引入重大更改。
  • 紧急指标:黄色
  • 紧急原因:修复了重要的错误,为即将到来的更改做好准备。

索引器服务和点击代理(RS):新版本发布:

  • indexer-tap-agent-v1.7.4 :
  • 日期:2024-12-18 22:55:11 UTC
  • 包括错误修复,这些修复通过添加收据超时配置、在数据库连接丢失时关闭 tap-agent 以及确保在初始化后正确启动消息侦听来增强稳定性。
  • 紧急指标:黄色
  • 紧急原因:重要的稳定性修复,而不是立即严重修复。
  • indexer-service-v1.4.0 中:
  • 日期:2024-12-18 22:55:10 UTC
  • 向子图查询响应添加图形索引标头,并改进请求状态指标。它还包括中间件路由错误和状态代码更新的修复。总体而言,这些更新增强了功能,但不会影响关键操作。
  • 紧急指标:黄色
  • 紧急原因:改进和修复,不是立即关键的。

GraphOps 在测试网和主网上运行此版本,并遇到了一个与在未分配子图时使用免费身份验证令牌直接向索引器服务提供查询相关的错误(500 内部服务器错误),但不要让它阻止您升级。

协议重要变更的最新更新

  • 有关争议 #GDR-22 的信息请求
  • 有关争议的信息请求 #GDR-24
  • 关于这个问题的一些有趣的技术讨论。
  • GRC-20: 知识图谱
  • 添加了更多更新。
  • chore: 为 SubgraphService 添加委托测试 #1082(open)
  • 修复:closeStaleAllocation 新增 whenNotPaused #1081(open)

Yaniv 和 Christophe 在这里讨论 GRC-20 标准。

Yaniv:The Graph 的使命一直是让 web3 成为现实。我们一直在努力工作,我认为我们真的可以说我们今年做到了。今天,我想向大家介绍 GRC-20,然后确保你们都了解我们发布的内容、它对 The Graph 的意义以及它对索引员的意义。

我想先快速回顾一下我去年年中发表的这篇文章,知识图谱是 web3,从一些背景开始总是好的。如果你看看 The Graph 今天主要用于什么,作为一个大部分牵引力所在的行业,它确实是在 DeFi 中。我们拥有的大多数子图都是基于 DeFi 的,我们在以下问题之间摇摆不定:

  • 所有这些去中心化技术都只对 DeFi 有好处吗?
  • DeFi 是唯一的杀手级应用吗?
  • 整个 web3 的想法是真的吗?

我们确实相信 web3,但我们认为我们需要确切地了解它应该是什么,作为 The Graph我们真的希望启用这个全新的平台。Web3 是一个去中心化应用的新平台,该平台的核心属性是可验证性、开放性和可组合性。

我们相信,我们应该能够重新构建各种类型的应用程序,使其具有可验证、开放和可组合性,我们不希望这些应用程序存在于孤岛中或由公司控制。

然而,如果我们环顾四周,我们会想,所有的 web3 应用程序都在哪里?我们每天使用的 web3 应用程序是什么,我们的朋友和家人,甚至不属于加密行业的人,每天都在使用哪些 web3 应用程序?显然,我们还没有跨越那个鸿沟。

这篇博文(知识图谱是 web3)的主张是缺少的是可组合性。我们有相当好的可验证性和开放性版本;您可以使用加密签名签署交易,我们拥有像 The Graph Network 这样的去中心化网络,一切都是开放的,人们可以进来提供服务。但我们真正没有的是可组合性。

子图的大多数使用者是构建底层协议的开发人员。有很多这样的垂直化应用程序。也许开发人员构建了一个借贷协议,然后是一个借贷子图,然后是一个借贷应用程序,这是一种垂直的东西,但它并不是一个真正的超可组合的东西,而且大多数用例本质上都是金融的。我们相信,可验证性、开放性和可组合性等特性对各种类型的应用程序都非常有用。

你可以考虑任何通用信息,你希望能够访问公共知识和信息,你希望能够在你的应用程序中使用它,你希望能够为它做出贡献,这就是我们想要实现的。我们相信知识图谱是解决这个问题的方法。

在文章的最后,我们谈到了 Semantic Web,这是 Web 的原始架构师构建这种全局去中心化知识图谱的原始愿景。Tim Berners-Lee 一直希望它是一个数据图,或者他称之为数据网络而不是页面网络,然后在这个全球数据网络之上,你可以构建任何类型的应用程序。

第一次没有奏效有几个原因,我在帖子中列出了三个:

  1. 由 Web 的原始架构师 RDF 和 SPARQL 创建的主要标准存在一些阻碍其采用的问题。
  2. 如果您希望拥有基于共享架构和共享数据构建的不同应用程序,则需要非常强大的治理流程或标准。你需要有办法让这些人进行协调,但没有好的解决方案。
  3. 没有运行基础设施的激励措施。中心化平台在竞争中胜出,因为它们可以更好地获利,然后将其投资于更好的基础设施和用户界面。

这就是为什么我认为这种开放、去中心化的 Web 愿景失败了,事情重新集中了。我认为我们终于有了解决方案。

第一个问题基本上是关于知识图谱数据和查询的标准,这就是 GRC-20 的用武之地。

我们发布了这篇博文,并发布了一个名为 GRC-20 的知识图谱新标准。

该博客文章介绍了一些使用案例。我将向您简要介绍为什么我们需要新标准,为什么不使用 RDF?我给你三个理由(实际上有很多原因,但以下是我最大的三个理由):

  1. 如果你真正看一下 RDF 标准,它相当复杂和学术性。要实际实现该标准,有很多我称之为附带复杂性的东西,这使得人们不想使用它。
  2. RDF 不支持属性Graph模型。当我们查看Graphs时,我们有节点和边;我们称它们为实体和关系。使用属性Graph模型,边本身可以具有属性,这对于能够描述有关事物之间联系的事实非常强大。它允许您创建更强大的Graph。RDF 不支持这一点,而这是现代Graph数据库支持的一个重要功能,这就是我们在 GRC-20 中提供它的原因。
  3. RDF 中实体的 ID 基本上是资源定位器,通常它们的作用是指向服务器。他们会告诉你是否需要有关此实体的信息,请转到此服务器,然后你可以从那里获取信息;它会把数据还给你。从本质上讲,这是一种可变的、特定于服务器的数据获取方式。这就像 HTTP 和 IPFS 之间的区别。在我们的例子中,我们不做内容寻址,但我们不想去找一个基本上是事实来源的服务器运营商 — 他们给你的任何东西就是答案。这不是 web3 看待事物的方式。我们希望 ID 与任何服务器运营商解耦。

RDF 已经有 20 多年的历史了,它主要是小众的,但Graph本身是巨大的,我认为越来越多的人正在理解Graph的力量。尤其是在 AI 时代,像 Neo4j 这样的知识图谱和Graph数据库正变得非常流行,因为它们是用于 LLM 等内容的完美工具。

对于 The Graph 来说,这一直是愿景,没有多少人知道这一点,但 Graph Node 的第一个版本实际上是一个 triple store,所以我们知道这个想法是有道理的,但我们一开始并没有所有的碎片。

然后 DeFi 起飞,我们开始真正针对 DeFi 用例进行优化,但现在我们认为现在是回头完成构建并真正启用 web3 的好时机。

我想传达的一件事是 Geo 和 The Graph 之间的区别。

归根结底,我们认为知识是重要的一流事物,我们希望每个人都能理解信息和知识之间的区别。

我们认为知识是需要原生存在于 The Graph 上的东西。这个想法是让 Geo 只是一个应用程序。我们希望 Geo 成为一种通用浏览器,一种通用应用程序,但实际上我们希望使开发人员能够构建任何类型的应用程序,这些应用程序使用知识图谱中的知识,并且可以为知识图谱贡献知识。

  • Geo 是一个允许您与全球去中心化知识图谱交互的应用程序。
  • GRC-20 是可跨应用程序使用的知识图谱标准。

第一类概念是实体和关系,因此一切都可以描述为实体。任何人、地点、事物、想法或概念都可以表示为一个实体,然后这些实体之间有关系。

例如,如果你有一个包含许多课程的内容营销课程,则每节课都是它自己的实体,并且课程和课程之间存在关系;也许有不同的主题。所以,使它成为图形的原因是你有这些节点和它们之间的这些边。

---Yaniv 演示文稿中的屏幕截图显示了实体和关系的示例。


GRC-20 中知识图谱中数据的原子单位是triple。triple是实体、属性、值。

有一些像 Obsidian 这样的应用程序非常图形化和酷炫,但这些应用程序允许你定义局部图谱,而我们正在努力做的是构建一个去中心化的全局知识图谱。所有知识都是相互关联的,对吧?事物之间真的没有人为的界限。有了信息,你总是希望更进一步,因为一切都是相互关联的,我们希望拥有这个全球知识图谱。

---Yaniv 的演示文稿中的屏幕截图显示了triple的示例。


每个实体都有一个全局唯一 ID,这非常强大。如果我想引用旧金山市,并且每个应用程序使用不同的 ID 来引用旧金山,我们应该如何理解它?特别是因为不同的词在不同的上下文中可能表示不同的事物,因此具有全局唯一 ID,您知道我们是否在谈论同一事物。以及所有不同的应用程序,他们对这个特定的东西有什么说法,然后这可以让你聚合东西并真正实现可组合性。这就是我们需要能够做到的。

不仅实体具有全局唯一 ID,属性也是如此。因此,无论何时我们谈论生日,例如,这可能是 birthday 属性的属性 ID,因此我们可以谈论 Albert Einstein 的生日,但我们也可以谈论例如宠物的生日。阿尔伯特·爱因斯坦是一个人,但也许宠物也有生日。您可以拥有本身与实体不同的属性。

那么你就有了一个值。

这是三重;它是一个数据点:

实体 — > Albert Einstein

属性 - > 生日

价值 — 1879 年 3 月 14 日>

GRC-20 的原则之一是我们希望应用程序能够产生知识,您可以将知识视为Triple和关系的集合。所以你产生知识,比如这里有一堆关于我关心的事情的事实。我可以描述这些事实,然后我可以发布它们,然后这些知识是可互操作的,因此任何应用程序都可以解释和理解其他应用程序产生的知识。

我们有这些原生类型:

  • 发短信
  • 复选框
  • 网址
  • 时间

然后我们允许你做的是定义这些更高级别的类型。你们都熟悉 PostgreSQL,它就像一个关系数据库,所以你有这些表,这些表有点像类型,它们是关系性的,所以它们之间有关系。但是关系数据库非常严格,您必须预先了解其结构。您必须知道这些是表上的列,如果要修改这些列,这可能是一个复杂的迁移过程。如果有人想要向数据库和表中添加数据,但与表中的确切列不一致,则会出现错误。

如果你想在数千个不同的应用程序之间实现互操作性,那么数据永远不会看起来与你拥有的那张表完全相同,因此你将不断处理这些不匹配,并试图弄清楚如何获得这种可组合性和互操作性。

---Yaniv 演示文稿中的屏幕截图显示了类型和属性的示例。


GRC-20 接近类型,因此它是一种提供结构的方式。数据和信息之间的区别在于,信息为数据添加了结构。例如,如果我们谈论一个地点,并且一个地点具有以下属性:地址、营业时间、电话号码。所以这是一个结构,我们知道地方可能有这些字段,但它们不必有。这有点像一个提示,但我们不会强制执行这些结构。

使用 GRC-20,实体可以有多种类型。Golden Gate 可以是 place 和 park,因此 place 可以定义与地点相关的字段,而 park 可以定义与公园相关的字段。这为我们提供了一种灵活的方式,可以在不限制和破坏可组合性的情况下为信息添加结构,从而使你真正拥有许多不同的应用程序来生产和使用这些东西。

在视频 28:56 中了解有关关系和属性图强度的更多信息。

一些与你们所有人相关的事情。

我们使用 Protobufs 进行编码。我们指定如何对数据进行编码、解码,以及如何定义关系等内容。类型系统就在那里,所有的东西都被定义好了。

我们有一个活跃的论坛帖子供讨论和反馈。

我们将其作为第一步发布。一切都取决于序列,因为在它被冻结之前,我们无法获得关于知识图谱的任何知识。我们希望这是一个开放标准,因此我们首先这样做了。

我们很快就会发布一个公告,我们将更多地介绍治理。

更多有用的知识和信息,更有条理

  • Web3 开始可用于各个行业、学术领域和社会部分。
  • 新闻等使用案例:
  • 当你看新闻时,很难知道该相信什么。
  • 记者有偏见吗?
  • 假新闻?
  • 任何可以帮助我们更好地构建和理解世界上正在发生的事情的东西,都是如此嘈杂。
  • 教育等使用案例:
  • 有些人们对大学失去了很多信心,并希望想出方法来创建新型的教育系统和课程。
  • 改变我们组织和策划课程的方式,并作为社区决定什么是好的教育以及我们想要拥有什么样的认证。
  • 供人们组成小组以组织对他们有用的知识的工具。

这将是指示 The Graph Network 的运行状况和效用的 North Star 指标之一。

启用可互操作的使用者应用程序

  • 在这个全球知识和信息图谱之上,我们希望支持许多不同的消费者应用程序。
  • 开发人员应该能够构建这些应用程序,并且它们应该具有互操作性。

我们将发布一个框架,供开发人员在 The Graph 上构建这些消费者应用程序,这对于改变人们可以构建的应用程序类型来说将非常令人兴奋,我认为它将以重大方式重新定义 web3 空间。

如果你想拥有一个全球去中心化的知识图谱,拥有公共知识和信息,谁来决定什么是真实的,我们可以构建什么样的人们可以信任的系统?

这篇最新的博客文章解决了当我开始谈论这些东西时人们可能遇到的所有问题。这甚至可行吗?这是可取的吗?

我从关于知识的一系列主张开始:

  • 有客观真理这样的东西。
  • 没有个人或组织可以声称自己绝对知道真相是什么。
  • 知识分布不均。有些人比其他人拥有更多。
  • 获取知识是一个具有挑战性的过程,需要决心、好奇心、谦逊、智慧和努力工作。

(请参阅帖子中的完整列表)

你从这些主张开始,然后你理解设计目标,然后我们从个人空间(它们是开放的,任何人都可以创建一个)到公共空间(应该有公共治理)来构建它。这些空间如何相互关联。我们如何构建知识和多元主义、策展——这些都是真正的核心概念。请阅读这篇文章,了解缺失的部分:治理。

Christophe (stopher |Playgrounds on Discord):我主要在研究索引器,大概你们会用它来索引知识图谱中的数据,然后将其提供给消费者应用程序。

让我们深入了解 GRC-20 当前如何实现的技术方面。此图解释了 GRC-20 当前的工作原理以及索引器在整体中的位置。

---Christophe 演示文稿中的屏幕截图显示了 GRC-20 当前的工作原理。


正如 Yaniv 所提到的,知识被划分为特定的空间。空间可以是个人的或公共的;在公共空间中,有一个治理流程来决定将哪些知识提交到空间。

对空间所做的所有编辑,无论是创建triple、编辑triple、删除triple、创建关系等,都会上传到 IPFS,然后它们将与编辑的 IPFS 哈希一起提交链上以供批准。一旦编辑获得批准,并且编辑包含的任何内容都成为该空间的规范知识,那么索引器就有责任从 IPFS 中获取这些编辑,然后将它们应用于他们自己的知识图谱表示。

索引器堆栈有三个主要部分。sink 使用 Substreams 读取与不同空间相关的链上事件,sink 还负责从 IPFS 中获取数据。然后sink 会将编辑应用于存储在 Neo4j 中的该空间的实体。另一个重要组件是 GraphQL API 服务器,它将 Neo4j 中的数据公开给消费者应用程序。

如果您想查看并使用它,这是代码库:GRC20 Neo4j Indexer repo

  • 它目前隶属于 Playgrounds 组织,但我们可能会在未来几周内将其移至 The Graph 协议。
  • 在该存储库中,您将找到一个 Docker Compose 文件,您可以使用它来轻松启动我刚才谈到的三个组件。您必须使用 Substreams 提供商。我们一直在使用 Pinpoint 托管的 Cookie。非常感谢Pinax。但是,一旦你有了它,你就可以在本地运行整个堆栈,并且你可以使用 Neo4j 实例和将公开 Neo4j 数据的 GraphQL API。

Matthew Darwin |Pinax 发布:欢迎任何人连接到 Pinax Substreams API 进行测试。

Christophe:现在,我将介绍数据库和 API。对于不熟悉 Neo4j 的人来说,它是一个专为高度链接数据构建的 NoSQL 无模式数据库。这意味着关系是 Neo4j 中的一等公民。没有架构;数据库中的所有实体都基于文档,您可以使用模式匹配来查询它们。

观看视频 41:41 处的查询示例。

您不必执行联接来遍历实体之间的关系,而是实际上在关系本身上进行模式匹配。

观看我们如何在视频 44:18 的 Neo4j 中实际表示 GRC-20 数据。

Yaniv:这个知识图谱数据服务还在进行中。我们想让大家了解 GRC-20 的概况,并向您展示事情的发展情况。这种原样尚未准备好使用;在我们仍在开发中时,您将获得早期预览版。

这是一种非常图形化的 API,然后我们将在其上构建一个 SDK,它对于每个应用程序来说看起来都更加类型化。如果我正在构建一个教育应用程序,我可能想要为我的应用程序定义架构,并且我应该能够根据需要定义它。然后,我有一个 API,它看起来完全符合我的应用程序想要的方式。如果我要定义课程和教程,这就是我将与之交互的方式。我还会有非常棒的打字功能,所以如果我在 TypeScript 中构建,我会有自动完成和所有类似的东西,所以它会感觉非常自然、非常直观,对开发人员来说是一种很棒的体验。

Christophe:就将其投入生产所需的剩余工作而言,我们仍然需要在 Protobuf 模型中实施一些更改。我们还希望拥有更好的可观察性,因此我知道作为索引器,您喜欢将所有内容都连接到 Prometheus,并拥有指标和日志 — 这仍然有待完成。至于 Yaniv 谈到的 AI 功能,您可能熟悉 ragging 的概念,更具体地说,是 GraphRAG。幸运的是,Neo4j 作为一等公民可以通过嵌入进行语义搜索,因此为知识图谱中的所有节点生成嵌入的想法已经摆在桌面上。我们对此感到非常兴奋,因为它将支持一些非常疯狂的 AI 应用程序。

Yaniv:是的,这真的很大。事实证明,LLM 确实是很棒的接口,但如果你想得到准确的答案,你需要让 LLM 找到某种事实来源,从中返回答案给你。图形是表示复杂关系和事物状态的最佳方式,它是 LLM 的完美补充。你问它一个问题,它会从Graph中找出正确的查询是什么,它可以获得一堆相关信息,然后它可以为你综合一个准确的回答。这成为一个基础,它以基于事实和去中心化的方式启用 AI,因此不是一家公司决定什么是真相,而是 AI 可以使用的去中心化Graph。

Christophe:一些未解决的问题和我们仍在解决的问题包括如何对系统进行分片,以便索引器不必为所有空间编制索引。它们可以选择性地索引不同的空间。然后还有一个问题,即我们是否要将治理分离到单独的数据服务中。

Yaniv:我们想把这个交到您手中。使它与众不同的一件事是 Neo4j 的使用,所以知道是否有任何索引器想玩弄 Neo4j 并帮助那里的一些 Op 东西会很有趣。至于索引如何更改索引,我们希望迁移到一个模型,其中索引器可以选择要索引的空格,然后你选择要索引的全局图的子集。如果您想为与您的城市或国家/地区相关的所有内容编制索引,如果这是您希望选择图表部分的方式,那么也许您可以在每个行业中执行此操作。然后,您将更有效地回答基于地理位置的查询。

接下来的两个月将大规模推出这些东西, web3 应用程序框架,让第三方开发人员在这些东西上构建应用程序,并希望你们所有人都能运行基础设施。

stake-machine.eth:它与 IPLD 相比如何?

Yaniv:有趣的问题。IPLD 是链接数据,但它实际上更像是不可变的链接数据。这是一件有趣的事情。IPFS 真的是针对不可变的东西的。内容寻址功能只能有效,但事实是,事情的状态总是在变化。例如,假设我想知道旧金山市的人口或该市今天发生了哪些事件。有人可能在一分钟前添加了一个事件,该事件的内容地址和链接是什么?该模型实际上不适用于动态应用程序。查询更多,好的,我有旧金山市的 ID,我想知道事件,这就是我想要的信息。使用知识图谱,您拥有实体、关系或其他实体的 ID,而不是这些内容地址链接。

chris.eth |GraphOps:信息和知识有什么区别?

Yaniv:知识是指您链接和标记信息以实现更高层次的理解。你可以把子图看作基本上就像信息一样。从本质上讲,有一个由架构定义的结构,然后你获取这些原始区块链数据,然后你开始索引,你给它一个结构,这就是到信息的转换。但是,您的数据库中可能拥有所有这些信息,但您缺少上下文:您有这些用户,您有这些交易,其中一笔交易是由于黑客攻击而发生的吗?这些用户之一是否是此协议的高级用户?还是第一次使用?你可以把这些看作是标签,丰富事物。然后是事物之间的相互联系。想想当你学习东西时,你自己的大脑是如何运作的。你自己脑子里的知识是什么?你在事物之间建立联系:哦,这有点像那样;哦,等等,这与我听到的另一件事相矛盾。例如,假设你有一个在会议上发表的演讲视频,你可以转录它,所以已经将转录链接到视频,这就是一个连接,然后你有所有单个句子的转录,所以这些是你可以连接的单独事物。然后对于每一个,你可以说,“嘿,这个东西准确与否?这里到底发生了什么?在这个视频中,有人宣布了一个新产品。所以,这些都是相互关联的信息,如果你能把所有这些东西连接在一起,形成更高层次的理解,那才是真正的知识。

chris.eth |GraphOps:为什么图形结构更适合查找 LLM 上下文,而不是向量存储或关系存储(考虑到训练数据中的所有 SQL)?

Yaniv:问得好。当然,你也需要向量嵌入,所以它适用于问题的不同部分。所以 Neo4j 支持嵌入,LLM 也需要它,但原因是你真的想要一种方法来精确地获取最相关的知识,并且你希望这些知识是最新的,而图查询是最好的方法。关系模型的问题在于,它意味着您预先了解事物的结构,而现实情况是,当您构建应用程序时,即使在单个应用程序中,架构也经常在不断发展。您意识到您需要另一个字段来支持这个新的用例,或者实际上,这个东西与那个东西有关,所以我们需要添加它。这是在单个应用程序中,但想象一下,您有一千个涉及相同课程和课程的应用程序,因为您希望通过所有这些不同的方式构建定制的教育应用程序或其他任何内容。事物的结构在不断发展,因此关系数据库永远无法解释事物不断发展的动态性,这就是图形强大的原因。

chris.eth |GraphOps:公共和私人(例如,门控机构)知识如何在知识图谱上互操作?

Yaniv:这是我们作为框架的一部分构建的东西。我对此感到非常兴奋。我认为这将改变游戏规则。我们第一次研究如何支持私有、共享和公共知识和信息,因为我认为,如果您正在构建应用程序,那么应用程序只处理公共信息实际上很少见。也许我们可以说,在 DeFi 中,到目前为止,很多东西都是公开的,都在链上,但对于通用应用程序,也许有一个发布步骤或一个公开点:这是一个视频,这是一个帖子。但很多时候,您是在私下工作,或者与团队或家庭一起工作。因此,为了实现 web3,您实际上需要能够构建跨越这些界限的应用程序。你赋予用户权力,他们正在执行一些操作,也许是利用私人知识和信息,或者他们与团队分享,然后他们有选择地发布其中的一些内容。知识图谱结构可以包含所有这些内容,因为空间可以引用不同空间中的知识和实体。这只是空间是公共空间还是私有空间的问题,如果它是私有的,您可以对其进行加密并使其真正私有,将其保存在用户的本地设备上。当人们谈论 web3 时,他们谈论的是这种东西,我认为这个愿景还没有实现,我认为我们将成为实现它的人。

chris.eth |GraphOps:知识图谱如何防止 GUID 冲突?kg-node 索引器先到先得 + 后续权限执行?

Yaniv:在早期,我花了一段时间来理解这个问题。基本上,这归结为治理。您可以拥有不受信任的个人和私人空间,并且可以将您想要的任何类型的垃圾发布到您自己的个人空间,因此可能包括可怕的知识和信息、淫秽内容或 ID 冲突。公共空间不必将您作为其公共空间的一部分,因此,如果您因为恶意 UI 或用户或类似内容而发生 ID 冲突,则由公共空间的管理部门来过滤掉这些内容并执行质量。任何没有恶意行为的客户端都应该能够避免冲突,然后由公共管理来包含行为正常的 Space。

chris.eth |GraphOps:您如何看待属性的发现和采用过程?采用者采用现有属性的新障碍是什么(例如,通过治理编写 perms)?如何防止每个新用户进行属性碎片化?(例如,My birthday 属性与 Your birthday 属性)

Yaniv:好问题。当你考虑我们将如何构建这些 web3 应用程序时,这就是真正有趣的事情出现的地方。这无疑是其核心,也是我们想要做的部分工作,也是知识图谱特别适合做的事情,是在完全的自由和定制与重用和可组合性之间取得平衡。在某些方面,你可以说这些东西是一种意图,因为如果每个人都只做自己的事情,那么你实际上不会得到太多的重用或可组合性。所以你想让重用和共享的东西变得容易,但是如果有正当的理由让人们觉得,不,我正在做的事情是不同的,我们给他们自由地定制和改变他们想要的不同的东西,这样他们仍然能获得最大的可组合性和可重用性。 但他们可以按照自己想要的方式进行调整。这在很大程度上归结为开发人员工具,所以你可以想象我将要构建一个新闻应用程序,并且已经有一个新闻故事,已经有这些基本类型,所以你想让发现这些类型变得容易:这里有公共空间和人们正在构建的其他东西。您的第一步是选择最接近我想要的现有内容,然后我会重用它们。知识图谱类型系统与传统类型系统不同的一点是,属性与类型解耦的方式。因此,我可以使用现有类型并向其添加自己的属性;这不是全有或全无。使用适当的工具,应该很容易实现最大化的重用。

stake-machine.eth:谁负责内容审核?我们可以用它构建一个 web3 维基百科吗?

Yaniv:很好的问题。对于适度,它归结为空间。我会阅读 governing public knowledge 帖子,因为它解决了这个问题。我称之为概念限制,也许有一些限制应该在整个全局图中强制执行,这是一个有趣的问题,但最终每个空间都可以定义自己的价值和原则。从哲学层面来看,这是我们稍微介绍一下的东西,因为很难知道 web3:我们在做什么是个人主义的工具,也是协调的工具?您希望在两者之间取得平衡。你可以自由地创建自己的空间,你可以做任何你想做的事,别人不能告诉你该怎么做。我认为这很重要,我们希望支持这一点。显然,不同的司法管辖区都有法律,如果您在您所在的国家/地区触犯了法律,执法部门可能会出现在您家门口,我们不会阻止这种情况。归根结底,这些都是有趣的问题,我们想做的是让社区能够......协调的一部分是能够定义自己的价值观、信仰、原则和政策,然后在您的空间内,您应该能够执行这些。这样,具有相同信仰的人就可以一起工作。我们正在为社区提供工具来做到这一点。

你可以在此基础上建立一个维基百科;有时人们看着 Geo,他们认为它有点像维基百科。我认为它不仅仅是维基百科。维基百科是一个起点,但它主要是客观信息,而且大部分是静态的。最有趣的信息,很多是主观的,而且是动态的。大多数 X 帖子都没有出现在维基百科上,但它们都应该成为知识图谱的一部分。每当有人发布内容时,它都应该成为知识图谱的一部分。Reddit,同样的事情,正在发生的评论和对话也应该是知识图谱的一部分。市场、产品和服务,基本上每个应用程序都应该是知识图谱的一部分,所以它比维基百科大得多,但你可以把它作为一个起点。

JIM |Wavefive:不过,Yaniv,真理在哪里,因为你刚才描述的有点像无限现实的形式化或结晶化,这就是我们今天所处的位置,几乎没有真理这样的东西。

Yaniv:是的,这是一个非常深刻的话题,这也是这篇文章的主题,所以请大家一定要阅读这篇管理公共知识的文章。它为理解这个问题奠定了基础,我认为这是我们这个时代最大的问题。我认为有些人几乎不敢解决这个问题,因为这是一个如此大的问题,但我实际上认为这是当今人类面临的最大问题,也是我们这个时代最大的问题,如果 The Graph 解决了这个问题......如果你解决了当时最大的问题,我认为你构建了最有价值的东西,我真的认为 The Graph 可以成为最有价值的东西。这就是我把我的一生都献给它的原因。你需要有正确的基础,这篇文章将对此进行介绍。它从你如何构建知识和信息开始。你不能只代表事实,然后每个人都说,是的,这是事实,不,那不是事实,然后你们就互相尖叫。因此,即使存在分歧,也必须以正确的方式构建信息。如果你有像主张这样的东西,有人可以提出一个主张,这并不意味着它是真的,然后你可以构建支持论点和反对论点之类的东西,你可以观察谁支持哪些主张。所以你有这些空间,每个空间都应该能够自行达成共识,现在再说一次,如果你强迫每个人在所有事情上都达成一致,你甚至不应该有一个空间来达成共识,但如果你以足够灵活的方式构建事物,那么你可以让一群有共同信仰的人就世界状况达成一致,并同意我们如何做到这一点。那么问题就变成了你能否将这些空间组织成越来越大的配置,这些配置本质上代表了全球共识。现在,全球共识并不意味着真理。共识往往是错误的。但你想要的是让团队有能力尽其所能地代表知识,然后将其互连到越来越大的社区中。您希望拥有一个趋向于真理的系统。

从本质上讲这就是它,它是一个广义的系统,如果你构建一个系统,并不意味着这个系统总是正确的,但如果系统的设计是正确的,那么你就会知道根据定义,这是你能做的最好的,人们可以信任这个系统,你可以相信它会随着时间的推移而自我修复和改进。我认为这就是我们可以在这里建立的。

我们已经为此工作了很长时间,现在已经准备好了,我们将分几个不同的阶段推出它。我希望看到的是参与者之间、核心开发人员之间的协作,我认为这在某些方面看起来会与我们以前所做的有所不同,但我认为机会要大得多。

我们不想把自己看作是一个纯粹的索引和查询协议,因为有数百种服务用于查询区块链数据,如果这就是我们的全部,那么我们是一百个服务中的一个,我们是一千个服务中的一个。我们可以稍微好一点,但我们谈论的是边际改进。索引是我们在这里讨论的核心部分,与 Google 所做的不仅仅是索引一样,但它们被视为索引。这是堆栈的重要组成部分,而且我们比其他任何人都做得更好的索引这一事实将带来巨大的竞争优势。但我们不想成为一种商品,因此,我们超越一种商品的方式是,我们解决我们这个时代最大的问题,我们做一些真正重要的事情,这些事情将改变社会,并将使用这些工具使世界变得更美好。

这就是 The Graph 从一开始就的想法。一切都是知识和信息,如果我们能够构建世界上所有公共知识和信息的全球图谱,并以去中心化的方式组织和服务,对我来说,这就是 The Graph,我相信这也是可以存在的最有价值的东西。

我们如何实现?让我们专注于这两个目标:1) 更有用的知识和信息,组织得更好,以及 2) 实现可互操作的消费者应用程序。如果我们在短期内专注于这些北极星,那么我们需要一点零到一刻的时间才能真正启动 web3 的事情,但这基本上就是我们在年初要做的事情。我希望有更多的人一起工作,让我们合作,让我们在这方面做得如此出色,以至于我们真的让 web3 变得不可思议,我们把它推向世界,我们发展得非常迅速,我们让世界成为我们想要的充满活力的去中心化地方。

(相关专业名词、注释、代码库、超链接等请关注博客查找)

#区块链数据索引 #Geo #TheGraph #web3

评论

所有评论

推荐阅读