DKG Edge Node architecture

The DKG Edge Node is intended for customisability and extensibility. Its official code is available as a project "boilerplate," and builders can extend it to fit their needs.

The DKG Edge Node is based on a SoA architecture, providing multiple services designed for the separation of concerns. See the block scheme below for a high-level overview of the architecture

The following table describes each of the services and links to their respective repositories:

Service
Description
Github repo

Knowledge Mining API

Performs knowledge mining via knowledge mining pipelines, taking in various input formats to ultimately produce serialized outputs (JSON-LD), intended to then be published via the Publishing Service

dRAG API

dRAG (Decentralized Retrieval-Augmented Generation) is a service for building decentralized RAGs using data from the Decentralized Knowledge Graph (DKG). It enables querying and processing data with tools like SPARQL, LLMs, and vector databases, delivering answers from decentralized, verifiable sources.

Edge Node User Interface

The UI for accessing and utilizing all Edge Node functionalities.

Edge Node API

The Edge Node backend serves as the orchestrator, coordinating operations and interactions between various services.

Knowledge Graph DB Instance

An instance of an RDF enabled triple store, such as Amazon Neptune, Ontotext Graph DB, Blazegraph, Apache Jena or others.

Respective project repos

LLM services

Large Language Model services used by the Edge Node and chosen by the developer, enabling utilizing either local or external LLM based services (e.g. Ollama, OpenAI, Claude etc)

Respective project repos

Publishing Service

Responsible for creating Knowledge Assets on the DKG, intended to take inputs from the Knowledge Mining API

Part of Edge Node API repo

Authentication Service

Acts as the authentication hub for all Edge Node services and serves as the central source for global configuration and custom parameters.

Blockchain interface

The Edge Node communicates with the blockchain through an array of RPC endpoints configurable by the user.

No specific repo, please consult the documentation on setting up nodes and RPC endpoints

DKG V8 Network Engine (ot-node)

Network runtime service, responsible for communicating with other DKG nodes

Operational DBs

Various small databases used for operational purposes

Deployed with respective services

Last updated

Was this helpful?