vanderschaarlab / synthcity

A library for generating and evaluating synthetic tabular data for privacy, fairness and data augmentation.
https://www.vanderschaar-lab.com/
Apache License 2.0
433 stars 57 forks source link

GOGGLE doesn't exist #272

Closed Aduboahen closed 5 months ago

Aduboahen commented 5 months ago

Description

Installed synthcity with pip install "synthcity[all]" when I run Plugin().get("goggle") I get

Plugin goggle doesn't exist.

The GOGGLE plugin is also not in the output of Plugins().list()

System Information

robsdavis commented 5 months ago

Hi @Aduboahen, Hmm, that is interesting. The tests passed for google on the main branch yesterday and at the last release. What happens if you pip install synthcity[goggle]?

Aduboahen commented 5 months ago

Installs without error (all requirements satisfied)

synthcity[goggle]) (0.16.0)

robsdavis commented 5 months ago

Ah, that's it. The error is due to your version of synthcity. Goggle was added in v0.2.5, so v0.16.0 does not contain the plugin. If you want to use goggle, you will need to update your version of synthcity to v0.2.5 or later. This can be done with something like: pip install --upgrade synthcity[all]

I will close this issue now, but please reply if your issue is not resolved and I will reopen it.

Aduboahen commented 5 months ago

synthcity is up to date v0.2.10

robsdavis commented 5 months ago

My apologies, your message above made it look like you had v0.16.0. If you have checked and your version is 0.2.10 and you still get the error Plugin goggle doesn't exist., then there is something else going on. Could you send the code you are running so I can recreate this error?

Aduboahen commented 5 months ago

Plugins().get("goggle")

Error: [2024-04-16T11:52:55.035249+0000][206109][CRITICAL] load failed: module 'synthcity.plugins.generic.plugin_goggle' has no attribute 'plugin' [2024-04-16T11:52:55.036693+0000][206109][CRITICAL] load failed: module 'synthcity.plugins.generic.plugin_goggle' has no attribute 'plugin' [2024-04-16T11:52:55.036982+0000][206109][CRITICAL] module plugin_goggle load failed Traceback (most recent call last): File "", line 1, in File "pydantic/decorator.py", line 40, in pydantic.decorator.validate_arguments.validate.wrapper_function File "pydantic/decorator.py", line 134, in pydantic.decorator.ValidatedFunction.call File "pydantic/decorator.py", line 206, in pydantic.decorator.ValidatedFunction.execute File "/home/james/repos/github/synthcity/env/lib/python3.10/site-packages/synthcity/plugins/core/plugin.py", line 702, in get raise ValueError(f"Plugin {name} doesn't exist.") ValueError: Plugin goggle doesn't exist.

Plugins().list()

[2024-04-16T12:11:07.437780+0000][206109][CRITICAL] load failed: module 'synthcity.plugins.generic.plugin_goggle' has no attribute 'plugin' [2024-04-16T12:11:07.438776+0000][206109][CRITICAL] load failed: module 'synthcity.plugins.generic.plugin_goggle' has no attribute 'plugin' [2024-04-16T12:11:07.439107+0000][206109][CRITICAL] module plugin_goggle load failed ['bayesian_network', 'great', 'survival_nflow', 'decaf', 'adsgan', 'marginal_distributions', 'timegan', 'privbayes', 'survival_ctgan', 'uniform_sampler', 'ddpm', 'dpgan', 'radialgan', 'timevae', 'ctgan', 'pategan', 'image_cgan', 'rtvae', 'fflows', 'aim', 'arf', 'image_adsgan', 'survival_gan', 'dummy_sampler', 'nflow', 'tvae', 'survae']

robsdavis commented 5 months ago

Can I ask, what does the following command return? pip freeze | grep -e dgl -e torch-geometric -e torch-sparse -e torch-scatter

Aduboahen commented 5 months ago

dgl==2.1.0 torch-scatter==2.1.2 torch-sparse==0.6.18

robsdavis commented 5 months ago

no result for torch-geometric? If not, try pip install torch-geometric and then re-try

Aduboahen commented 5 months ago

pip install torch-geometric finishes with all Requirements satisfied but pip freeze | grep torch-geometric returns empty

robsdavis commented 5 months ago

That is odd that it isn't returned by the pip freeze. Could you double check it is installed with: python -c "import torch_geometric; print(torch_geometric.__version__)"?

Aduboahen commented 5 months ago

Yeah it's installed, Returns '2.5.0'

robsdavis commented 5 months ago

OK, think I have found the potential issue. Can you try this: pip uninstall dgl pip install dgl==2.0.0 -f https://data.dgl.ai/wheels/repo.html Then try again?

I think it could be an issue with dgl support for pytorch 1.13.1.

Aduboahen commented 5 months ago

Yes! This worked! Thank you.