Make another probabilistic model in scvi-tools

Hi all!

Awesome work with this toolbox harmonizing the interfaces and user experience of single cell probabilistic models!
We are currently developing such a model, and have interest in implementing it in the scvi-tools framework, too. So in the ideal case, when the work would be published, it could be available through the super harmonized scvi-tools for users.
At the moment, we’d have a few naive questions regarding the involved scvi-tools contributing steps.

-Aside from coding standards, code documentation and testing, do you have other criteria on the content of such a model which decide if a pull request (PR) is rejected from scvi-tools integration?
-I did not yet completely understand the versioning of the scvi-tools package; is the general idea that this is updated roughly periodically, and the models with accepted PR in the meanwhile are then included in the following release?
-In the spirit of PRs and after glimpsing into the opened Issues and PRs in scvi-tools, would you typically expect external potential contributors such as us to to initiate this with an issue such as “implement model xyz”, and follow up with a pull request?
Best regards

1 Like

Thanks! And sorry for the delayed response.

This would be the general idea; however, we are yet to have a formal process yet since we have only had 1 or 2 external contributors of models.

While we are yet to have formal guidelines for model inclusion, if the model that you are developing is a novel model, we recommend deploying it in your own package. As an example, this simple-scvi package uses the scverse cookiecutter template

The models that we are interested in having in the main codebase are models that have a clear demand (via github issues/discourse/offline conversations), and particularly models that are somewhat cumbersome to use (from their original implementations).

Yes, but we can first agree about the model and the scope of the implementation before submitting a PR just so we are on the same page before anyone puts in substantial work.

I’m happy to continue this conversation. I would be happy to have external contributors of models, but so far it has been rare, possibly because:

  1. It’s easy to deploy your own package and doesn’t require weeks of PR review
  2. General lack of an incentive to reimplement other models
  3. Overhead of learning scvi-tools
1 Like

Thanks for the clarifying response!
atm this model development is on hold in our timely limited project.
Would come back to this in case it’d be picked up again