Skip to content

Releases: neo4j/graph-data-science-client

Graph Data Science Python Client 1.8

10 Oct 11:02
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.8! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.8/

Highlights:

  • New methods that support inference of KGE models (TransE and DistMult).
  • New method gds.graph.cypher.project to project a graph using Cypher projection.
  • Added new LastFM dataset through gds.graph.load_lastfm().
  • Expose bookmarks to synchronize queries in a Neo4j cluster.
  • Dropped support for Python 3.7 which is now EOL.
  • Improved endpoint returning graphs to be used in with clauses. The expression with gds.graph.project(...)[0] as G can now be simplified to with gds.graph.project(...) AS G.
  • Make gds.graph.construct more robust by ignoring empty dataframes inside. This makes it less error-prone to construct nodes only graphs.
  • Improved error messages and deprecation warnings.

The release can be pip installed with pip install graphdatascience==1.8.

Graph Data Science Python client 1.7

15 Jun 12:09
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.7! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.7/

Highlights:
New features:

  • Add a new method GraphDataScience.server_version which returns the version of the server not as a str but as a ServerVersion. This allows easier inspection of the major, minor and patch version.
  • Implement context management protocol for Graph. This allows usage as part of the with statements, where the graph is dropped at the end.
  • Added possibility to load datasets from the Open Graph Benchmark via the new methods:
  • gds.graph.ogbn.load for node property prediction datasets, and
  • gds.graph.ogbl.load for link property prediction datasets.
  • Added possibility to load NetworkX graphs via the new method gds.graph.networkx.load.
  • Added new sphinx API reference documentation for all procedures.
  • Promoted gds.alpha.graph.construct to gds.graph.construct.

Improvements:

  • When an almost correct method is called, raise an error with a message that suggests the most probable correct method name that was intended.
  • Improved IDE auto-completion support to give significantly fewer false positive suggestions.
  • Failing to log progress of a call will no longer fail the call itself, but just warn that logging was unsuccessful.
  • Underlying connections to a Neo4j DBMS is now being verified and retried automatically up to a timeout of 10 minutes.
  • The GraphDataScience.from_neo4j_driver factory method now additionally takes the same Arrow related keyword parameters as the GraphDataScience constructor.
  • Added an example for community detection thanks to community contributor @kedarghule.

The release can be pip installed with pip install graphdatascience==1.7.

Graph Data Science Python Client 1.7a1

24 May 12:22
Compare
Choose a tag to compare
Pre-release

We are happy to announce the first alpha release of graphdatascience, the GDS Python client, version 1.7! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.7-preview/

It contains the following changes:

New features

  • Add a new method GraphDataScience.server_version which returns the version of the server not as a str but as a ServerVersion. This allows easier inspection of the major, minor and patch version.
  • Implement context managment protocol for Graph. This allows usage as part of the with statements, where the graph is dropped at the end.
  • Added possibility to load datasets from the Open Graph Benchmark via the new methods:
    • gds.graph.ogbn.load for node property prediction datasets, and
    • gds.graph.ogbl.load for link property prediction datasets.
  • Added possibility to load NetworkX graphs via the new method gds.graph.networkx.load.

Improvements

  • When an almost correct method is called, raise an error with a message that suggests the most probable correct method name that was intended.
  • Improved IDE auto-completion support to give significantly fewer false positive suggestions.
  • Failing to log progress of a call will no longer fail the call itself, but just warn that logging was unsuccessful.
  • Underlying connections to a Neo4j DBMS is now being verified and retried automatically up to a timeout of 10 minutes.
  • The GraphDataScience.from_neo4j_driver factory method now additionally takes the same Arrow related keyword parameters as the GraphDataScience constructor.

Additionally, there is now reference documentation for the library which can be found here.

The release can be pip installed with pip install graphdatascience==1.7a1.

Graph Data Science Python client 1.6

31 Jan 10:10
32f88c9
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.6! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.6/

It contains the following changes:

New features

  • Added a new parameter undirected_relationship_types to gds.alpha.graph.construct which allows constructing undirected graphs, when using GDS >= 2.3.0.
  • Added a new parameter undirected to gds.load_cora to load the dataset undirected.
  • Added new method gds.alpha.graph.nodeLabel.write to write back node labels to Neo4j database.
  • Added new convenience methods to the Model object:
    • model_info to get model metadata obtained during training.
    • classes to list all classes used during training (only for Node Classification models).
    • best_parameters which returns a pandas Series containing the parameters of the model candidate winning the model selection training.
    • feature_properties (only for Node Property models)
    • link_features (only for LP models)
    • node_property_steps
  • Added new convenience factory methods to create pipeline objects.
  • gds.graph.construct now renders a progress bar if Arrow support is enabled.
  • Added a new method gds.graph.relationships.to_undirected to turn a directed relationship type to an undirected, when using GDS >= 2.3.0
  • Added new common datasets:
    • gds.graph.load_karate_club
    • gds.graph.load_imdb
  • Added new optional parameter db_node_properties to gds.graph.nodeProperties.stream that can stream DB-only node properties that are not on the in-memory graph.
  • Added new method gds.alpha.graph.nodeLabel.mutate to mutate the in-memory graph with new node labels.

Improvements

  • Improved Model.metrics() method for pipeline models (e.g. LP, NC, NR) to return custom type.
  • Improved gds.graph.construct() to support multiple dataframes for nodes and relationships without arrow.

Additionally, there are new example notebooks available.

The release can be pip installed with pip install graphdatascience==1.6.

Graph Data Science Python client 1.6rc1

13 Jan 16:06
Compare
Choose a tag to compare
Pre-release

We are happy to announce the first release candidate of graphdatascience, the GDS Python client, version 1.6rc1! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.6/

This release candidate is feature complete for the release of 1.6. It contains the following changes:

New features

  • Added a new parameter undirected_relationship_types to gds.alpha.graph.construct which allows constructing undirected graphs, when using GDS >= 2.3.0.
  • Added a new parameter undirected to gds.load_cora to load the dataset undirected.
  • Added new method gds.alpha.graph.nodeLabel.write to write back node labels to Neo4j database.
  • Added new convenience methods to the Model object:
    • model_info to get model metadata obtained during training.
    • classes to list all classes used during training (only for Node Classification models).
    • best_parameters which returns a pandas Series containing the parameters of the model candidate winning the model selection training.
    • feature_properties (only for Node Property models)
    • link_features (only for LP models)
    • node_property_steps
  • Added new convenience factory methods to create pipeline objects.
  • gds.graph.construct now renders a progress bar if Arrow support is enabled.
  • Added a new method gds.graph.relationships.to_undirected to turn a directed relationship type to an undirected, when using GDS >= 2.3.0
  • Added new common datasets:
    • gds.graph.load_karate_club
    • gds.graph.load_imdb
  • Added new optional parameter db_node_properties to gds.graph.nodeProperties.stream that can stream DB-only node properties that are not on the in-memory graph.
  • Added new method gds.alpha.graph.nodeLabel.mutate to mutate the in-memory graph with new node labels.

Improvements

  • Improved Model.metrics() method for pipeline models (e.g. LP, NC, NR) to return custom type.
  • Improved gds.graph.construct() to support multiple dataframes for nodes and relationships without arrow.

Additionally, there are new example notebooks available.

The release can be pip installed with pip install graphdatascience==1.6rc1.

Graph Data Science Client 1.5

02 Nov 14:06
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.5! It is published to PyPI!

Changes:

  • Fixed a bug where the client could not connect to the server when the default db was set in the GraphDataScience constructor.
  • For GDS admin users, gds.graph.get is now able to resolve graph names into Graph objects of other users graph projections.
  • Add support for gds.alpha.triangles.
  • Support calling gds.alpha.userLog to access hints and warnings for the recently run operations.
  • Add support for gds.alpha.backup and gds.alpha.restore.
  • Add support for gds.alpha.config.defaults.set and gds.alpha.config.defaults.list.

The release can be pip installed with pip install graphdatascience==1.5.

Graph Data Science Client 1.4

30 Sep 12:20
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.4! It is published to PyPI!

Highlights:

  • The DataFrame returned by gds.beta.graph.relationships.stream now has a convenience method called by_rel_type.
  • Added a new optional string parameter database to GraphDataScience.run_cypher for overriding which database to target.
  • Added new method gds.graph.load_cora to load the CORA dataset into GDS.
  • Added a new optional string parameter database to the GraphDataScience constructor for specifying the targeted database.
  • Fix resolving Node regression pipelines created via gds.alpha.pipeline.nodeRegression.create.
  • Fix resolving Node regression models created via gds.alpha.pipeline.nodeRegression.train.
  • Fix an issue where run_cypher did not execute Cypher correctly in some edge cases.

A full list of changes can be found in the changelog.

The release can be pip installed with pip install graphdatascience==1.4.

Graph Data Science client 1.3

23 Aug 12:22
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.3! It is published to PyPI!

Highlights:

  • New versioning scheme using only two numbers
  • Add MLP training method addMLP to link prediction and node classification pipelines.
  • Add support for new graph catalog API endpoints in GDS >= 2.2.0.
  • Add support for random walk with restarts sampling procedure.
  • Add support for graph property endpoints in GDS >= 2.2.0.
  • Add Arrow Flight specific parameters to the GraphDataScience constructor:
    • arrow_tls_root_certs
    • arrow_disable_server_verification
  • Add support for new stream graph relationships endpoint.
  • Dropped support for Python 3.6.

A full list of changes can be found in the changelog.

The release can be pip installed with pip install graphdatascience==1.3.

Graph Data Science Client 1.3.0 Alpha 1

11 Aug 09:28
Compare
Choose a tag to compare
Pre-release

The first alpha release of version 1.3.0 of graphdatascience, the GDS Python client, has been published to PyPI!

Highlights:

  • Add MLP training method addMLP to link prediction and node classification pipelines.
  • Add support for new graph catalog API endpoints in GDS >= 2.2.0.
  • Add support for random walk with restarts sampling procedure.
  • Add support for graph property endpoints in GDS >= 2.2.0.
  • Add Arrow Flight specific parameters to the GraphDataScience constructor:
    • arrow_tls_root_certs
    • arrow_disable_server_verification
  • Add support for new stream graph relationships endpoint.
  • Dropped support for Python 3.6.

A full list of changes can be found in the changelog.

The release can be pip installed with pip install graphdatascience==1.3.0a1.

Graph Data Science client 1.2.0

05 Jul 14:22
Compare
Choose a tag to compare

Version 1.2.0 of graphdatascience, the GDS Python client, has been published to PyPI!

Included are bug fixes for:

  • The separate_property_columns=True option of gds.graph.streamNodeProperties did not handle list node properties correctly.
  • An irrelevant warning was shown when creating a GraphDataScience object targeting an AuraDS instance with GDS server version >= 2.1.0.
  • Calling gds.alpha.graph.construct targeting an AuraDS instance would raise an exception.

The release can be pip installed with pip install graphdatascience==1.2.0.