kglab

Welcome to graph data science: https://derwen.ai/docs/kgl/

The kglab library provides a simple abstraction layer in Python 3.7+ for building knowledge graphs.

SPECIAL REQUEST:
Which features would you like in an open source Python library for building knowledge graphs?
Please add your suggestions through this survey:
https://forms.gle/FMHgtmxHYWocprMn6
This will help us prioritize the kglab roadmap.

Reviews

@kaaloo:

"Feels like it's a Hugging Face for graphs!"

Getting Started

See the "Getting Started" section of the online documentation.

To install from PyPi:

python3 -m pip install kglab

If you work directly from this Git repo, be sure to install the dependencies as well:

python3 -m pip install -r requirements.txt

Alternatively, to install dependencies using conda:

conda env create -f environment.yml
conda activate kglab

Then to run some simple uses of this library:

import kglab # create a KnowledgeGraph objectkg = kglab.KnowledgeGraph() # load RDF from a URLkg.load_rdf("http://bigasterisk.com/foaf.rdf", format="xml") # measure the graphmeasure = kglab.Measure() measure.measure_graph(kg) print("edges: {}\n".format(measure.get_edge_count())) print("nodes: {}\n".format(measure.get_node_count())) # serialize as a string in "Turtle" TTL formatttl = kg.save_rdf_text() print(ttl)

See the tutorial notebooks in the examples subdirectory for sample code and patterns to use in integrating kglab with other graph libraries in Python: https://derwen.ai/docs/kgl/tutorial/

WARNING when installing in an existing environment:
Installing a new package in an existing environment may reveal
or create version conflicts. See the kglab requirements
in requirements.txt before you do. For example, there are
known version conflicts regarding NumPy (>= 1.19.4) and TensorFlow 2+ (~-1.19.2)

Contributing CodeBuild InstructionsSemantic Versioning

illustration of a knowledge graph, plus laboratory glassware

Source code for kglab plus its logo, documentation, and examples have an MIT license which is succinct and simplifies use in commercial applications.

All materials herein are Copyright © 2020-2021 Derwen, Inc.

Attribution

Please use the following BibTeX entry for citing kglab if you use it in your research or software. Citations are helpful for the continued development and maintenance of this library.

@software{kglab, author = {Paco Nathan}, title = {{kglab: a simple abstraction layer in Python for building knowledge graphs}}, year = 2020, publisher = {Derwen}, doi = {10.5281/zenodo.4717287}, url = {https://github.com/DerwenAI/kglab}}

Kudos

Many thanks to our open source sponsors; and to our contributors: @ceteri, @dvsrepo, @Ankush-Chander, @louisguitton, @tomaarsen, @Mec-iS, @fils, @gauravjaglan, @pebbie, @CatChenal, @jake-aft, @dmoore247, plus general support from Derwen, Inc.; the Knowledge Graph Conference and Connected Data World; plus an even larger scope of use cases represented by their communities; Kubuntu Focus, the RAPIDS team @ NVIDIA, Gradient Flow, and Manning Publications.

GitHub - DerwenAI/kglab: Graph Data Science: an abstraction layer in Python for building knowledge graphs, integrated with popular graph libraries – atop Pandas, RDFlib, pySHACL, RAPIDS, NetworkX, iGraph, PyVis, pslpython, pyarrow, etc.
Graph Data Science: an abstraction layer in Python for building knowledge graphs, integrated with popular graph libraries – atop Pandas, RDFlib, pySHACL, RAPIDS, NetworkX, iGraph, PyVis, pslpython,...