Skip to content

kNowlEdge grAph Transformer (NEAT)#

release Documentation Status Github PyPI Downloads GitHub Code style: black Ruff mypy

There was no easy way to make knowledge graphs, especially data models, and onboard them to Cognite Data Fusion, so we have built NEAT!

NEAT is great for data model development, validation and deployment. It comes with an evergrowing library of validators, which will assure that your data model adheres to the best practices and that is performant. Unlike other solutions, which require you to be a technical wizard or modeling expert, NEAT provides you a guiding data modeling experience.

We offer various interfaces on how you can develop your data model, where majority of our users prefer a combination of Jupyter Notebooks, leveraging NEAT features through so called NeatSession, with a Spreadsheet data model template.

Only Data modeling? There was more before!? True, NEAT v0.x (legacy) offered a complete knowledge graph tooling. Do not worry though, all the legacy features are still available and will be gradually ported to NEAT v1.x according to the roadmap.

Usage#

The user interface for NEAT features is through NeatSession, which is typically instantiated in a notebook-based environment due to simplified interactivity with NEAT and navigation of the session content. Once you have set up your notebook environment, and installed neat via:

pip install cognite-neat

you start by creating a CogniteClient and instantiate a NeatSession object:

from cognite.neat import NeatSession, get_cognite_client

client = get_cognite_client(".env")

neat = NeatSession(client)

neat.physical_data_model.read.cdf("cdf_cdm", "CogniteCore", "v1")