arangoml / fastgraphml

Given an input graph (ArangoDB or PyG) it generates graph embeddings using Low-Code framework built on top of PyG.
66 stars 7 forks source link

Modular dependency setup #4

Closed geenen124 closed 1 year ago

geenen124 commented 1 year ago

Depending on a user's use case, they may not need to install all of the currently required packages such as FAISS and/or matplotlib.

These dependencies can be split out into optional dependencies using setuptools: https://setuptools.pypa.io/en/latest/userguide/dependency_management.html#optional-dependencies

geenen124 commented 1 year ago

The Utils class will likely need to be split out into a module to support this - IMO it feels like a bit of a god class right now: https://github.com/arangoml/fastgraphml/blob/001fa791b8a29860b433e259df6767eb9017ee1d/graph_embeddings/utils.py

sachinsharma9780 commented 1 year ago

@geenen124 I split the Utils.py file into downstream_tasks folder where there is a separate py file for each downstream task. You can have a look.

Thanks for the suggestion :)

geenen124 commented 1 year ago

@sachinsharma9780 Is there a PR so that we can review the changes? :)

cw00dw0rd commented 1 year ago

With our current dependency setup is the issue resolved? @geenen124

geenen124 commented 1 year ago

Yup, this is fixed!