Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Q] Private project, public run #3764

Open
EmilienDupont opened this issue Jun 9, 2022 · 9 comments
Open

[Q] Private project, public run #3764

EmilienDupont opened this issue Jun 9, 2022 · 9 comments
Labels
a:app Area: Frontend/Backend

Comments

@EmilienDupont
Copy link

Hi,

We used wandb for a research project and as part of publishing the paper we would like to make the runs we used in the paper public. However, from searching it seems like if we want to make a run public, we need to make the entire project public (including runs which are not relevant to the paper). Is this correct? Is there any way to make a single run within a private project public?

Thank you!

@ramit-wandb
Copy link
Contributor

Hey Emilien,

No, you can not make a single run public while keeping the project private. You can, however create a Report, add information to it and then share that report with users who do not have access to the project.

Thanks,
Ramit

@EmilienDupont
Copy link
Author

Hey Ramit,

Thank you for your reply! Is there any plan to add this feature?

In my experience, this workflow is super common in ML research (at least at universities):

  1. You work on a private wandb project for your research
  2. When you are ready to publish you want to share all the trained models from the paper, without having to share all the failed experiments with bugs or potential follow up experiments that are not yet public

So I think adding this feature would be very useful to a large number of PhD students :)

In the meantime, what is the best option for us? Can we copy runs to a new project (including trained model weights and artifacts) and then make this public? Or is the only option to make the private project public and delete all the unwanted runs?

Thank you again for your help!

@ramit-wandb
Copy link
Contributor

Hi Emilien,

Thank you for your response! I'm curious - did the report method not work for you? You should be able to select specific runs without exposing your whole private project. I would like to understand what did not work for you so that I can make a feature request that better resolves this problem.

Thanks,
Ramit

@EmilienDupont
Copy link
Author

Hi Ramit,

Thanks for getting back to me! The report option works well for sharing charts related to the runs which is definitely useful. However, we want to share saved model weights as well as artifacts saved during (or after) the run. Is there a way to expose these through a report? I tried to look through the documentation but could not find this.

Thank you!

@ramit-wandb
Copy link
Contributor

Hey Emilien,

Thanks for the context! Just wondering, if the concern is that you can not share artifacts, would it make more sense to have a method to download a predefined artifact through the report v/s exposing the whole run?

Thanks,
Ramit

@exalate-issue-sync
Copy link

Ramit Goolry commented:
Hi Emilien,

We wanted to follow up with you regarding your support request as we have not heard back from you. Please let us know if we can be of further assistance or if your issue has been resolved.

Best,
Weights & Biases

@EmilienDupont
Copy link
Author

Hi Ramit,

Thank you and sorry for the slow reply on my end! To give further context, our ideal use case is that, given a path to a wandb run, the user can programmatically download a model using e.g.

run = wandb.Api().run(wandb_run_path)
run.file("model.pt").download(root=local_dir, replace=True)

and download some artifact from that run using e.g.

run.file(f"wandb/{run_id}/{filename}").download(root=".", replace=True)

As an example from our codebase, this script requires us to load a trained model from a wandb run, as well as an artifact from that same run.

If we include a predefined artifact to be downloaded from a report, would we be able to run the above procedure? Or would we need to expose the whole run?

Thank you again for all your help, I really appreciate it :)

@ramit-wandb
Copy link
Contributor

Hi Emilien, apologies about the delay here.

I already created the feature request for this, for a UI method to download artifacts. These would be embeddable in a report, such that you can simply expose the Artifact and anyone viewing the report would be able to download it. Currently however, there is no way to expose just 1 run for its Artifacts and not the rest of the project.

Thanks,
Ramit

@EmilienDupont
Copy link
Author

Hi Ramit, thanks for this! I'm looking forward to the feature implementation :)

@kptkin kptkin added the a:app Area: Frontend/Backend label Mar 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a:app Area: Frontend/Backend
Projects
None yet
Development

No branches or pull requests

3 participants