DKG Edge node architecture
Last updated
Last updated
The V8 DKG Edge node is intended for customisability and extensibility, enabling builders to take it's official code as a project "boilerplate" and extend it to fit their needs.
It is based on a SoA architecture, providing multiple services designed for separation of concerns. See below block scheme for a high level overview of the architecture
The following table describes each of the services and links to their respective repositories:
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 Runtime (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