🕸️

Web3時代のナレッジグラフ? – Geoを触ってみた

2023/12/16に公開

はじめに

この記事はナレッジグラフ Advent Calendar 2023の15日目の記事です。

ちょうど一週間前の12月8–9日に開催されたIJCKG2023のローカル委員としての感想および併設ワークショップのKGR4XAIのOCとしての記事を書こうかと思いましたが、後処理が終わっていないのと息抜きをしたくなったので全く違う記事を書きます。
私自身Geoを完全に理解しているわけではなく、遊んでみたというレベルです。
Web3とかブロックチェーンとか暗号資産とかワードが出てきますがお金儲けの話ではありません。怪しくないです(多分)


Geoとは

地理情報でも某中古ゲーム屋でもありません。一年ほど前にWeb3版のナレッジグラフ(?)のGeoという興味深いプロジェクトの初期バージョンがローンチされまして、ナレッジグラフの研究者としては一応ウォッチしておかないとなと思い、ちょくちょく様子見をしてました。
https://twitter.com/reali_ze/status/1605981382798606337

The Graph

The GraphはWeb3におけるGoogle的立ち位置を表明しており、ブロックチェーンデータに手軽にアクセスするためのインデックスとクエリ機能を提供する分散型プロトコルです。
The Graphのエコシステムはデベロッパー、インデクサー、キュレーター、デリゲーターという役割の異なる4種類の作業者で構成されています。ブロックチェーンデータにクエリ可能な環境を積極的に提供してもらうために、The Graphが発行するGRTトークンがインセンティブとなっており、各作業者は作業量に応じてGRTを得られるようです。
インデックスされたブロックチェーンデータへのクエリ方法はGraphQLです。
Googleのような中央集権型ではなく、非中央集権の分散型ネットワークの仕組みで、ブロックチェーンにアクセスし易い環境を提供することを目指しているようです。

Geo

GeoはこのThe Graphの仕組みの上で機能するアプリケーションで、オープンかつ検証可能な分散型ナレッジグラフアプリを提供します。その他、技術的にはInterPlanetary File System (IPFS)Polygonが使用されているようです。ちなみにGeoとThe Graphの創業者は同じ人物です。
Geo、Geo Browser、Geo Genesisと表記が統一されておらず理解が難しいですが、GeoはWeb3データのブラウザとナレッジグラフアプリ(アプリとは?)の2つの要素があるとのことです。
現在公開されているGeo Genesisに関してはLinked Dataで言うところのHuman Readableページに相当する気がしますが、それだけでなくWikidataのように編集が可能です。

Space

Geo Genesissでは既に作成されたコミュニティ(Space)を確認することができます。一年前は「San Francisco」と「Health」だけで、それぞれ情報もかなり少なかったのですが、2023年12月時点ではSpaceは30個に増えています。

Spaces

AIのSpaceを見てみると馴染み深い単語が多いのですが、まだ情報が少なく偏りがあることも確認できます。

ウォレットを接続する

ウォレットを接続するとSpaceを編集できるようなので接続してみます。
MetaMask、Coinbase Wallet、Other Walletsとありますが、私はMetaMaskを使用しました。
当然ですが事前にウォレットを作成しておく必要があります。

ウォレットの接続がうまくいくと個人用のSpaceを作成するために名前の入力を求められたと思います(キャプチャを取るのを忘れました)
ウォレットのネットワーク選択でPolygonを指定します。
ここで、Polygonの暗号資産のMATICの残高が無いと処理が完了しなかったため、仕方なく課金しました。
正常にアカウントが作成されると下図のように個人のSpaceが用意されます。

「1 member」と表示されているボタンをクリックして表示される自分のアカウント名をクリックすると、自分のエンティティを確認できます。

Spaceを編集する

Geoは一年前に初期バージョン(Geo Genesis)がローンチされたばかりで、まだすべての機能が公になっているわけではありません。
公開済みのSpaceの編集に加わるためにはそのSpaceのエディターないしメンバーとしてJoinする必要があるのですが、この「Join」ボタンを押しても現時点で承認プロセスは自動化されていないとのことです。
個別に連絡してみたところ、現時点では個人のSpaceを編集することしかできず、その情報がレビュープロセスを経て別のパブリックスペースに追加されるという仕組みのようです。(近いうちにチュートリアルが出るそうなので、私が今書いているこの記事は用済みになることを期待しています。)

ということで、とりあえず個人のSpaceをいじって遊んでみることにしました。

右上の編集ボタンをONにすることで編集可能です。

「+」ボタンで新しい「attribute」と「value」を追加できます。

何か文字を入力すると既存のattributeを検索してきます。
意図するものがなければ新しくattributeを作ることも可能です。
例えば次のようにField of Expertiseというattributeを作成してKnowledge Graphをvalueにしてみました。

ここで、右のアイコンをクリックしてvalueのタイプを「Text」「Relation」「Image」「Date」「Web URL」から選択することができます。
Textはナレッジグラフ的にはリテラルです。Relationを選択すると新しいエンティティ(RDF的にはリソース)を作成できます。
編集すると画面下部に「Review edit」というボタンが出現しますので、クリックして編集を確認します。

Proposal nameを入力してから右上の「Publish」をクリックするとMATICのコントラクトインタラクションが始まります。金額は0 MATICです。
「確認」を押して問題なければ編集が反映されます。
個人のSpaceを編集する際に作成した新規attributeやvalueは、個人のSpace内でのみ再利用可能となります。

例えば私はこんな感じで作成しましたhttps://www.geobrowser.io/space/0x5b2f99061e3a79e46eb7ee3c358268e1432e0586/0xcb3915C60de8d81EE1954DDb1D2f9FA812b8f493%E2%80%9391

個人のSpaceの編集により新たに作成されたエンティティのページも編集可能です。
Knowledge Graph

所感

分散型ナレッジグラフということで期待していましたが、残念ながら今のところデータとしての使い道は無く、あくまでもブロックチェーンデータのブラウザだと感じました。ナレッジグラフではなくナレッジグラフアプリ(Knowledge Graph App)と名付けているのもわかります。
現状だとデータの読み書きをする方法がGeo Genesisのサイト経由しかないため、分散型のメリットを感じることができずWikidataの劣化版の印象が拭えないのが残念です。
まだまだプロトタイプの段階ですが、気になる技術ではあるため引き続き様子見をしていきたいと思います。


参考
Yaniv Tal, Introducing Geo Genesis https://www.geobrowser.io/blog/post/introducing-geo-genesis, October 26, 2022

Discussion