New in 0.12.0 (2021-07-15)#

This release adds features for tighter integration with Pyro for model development, fixes for SOLO, and other enhancements. Users of SOLO are strongly encouraged to upgrade as previous bugs will affect performance.



  • Update minimum Python version to 3.7.2 (#1082).

  • Slight interface changes to PyroTrainingPlan. "elbo_train" and "elbo_test" are now the average over minibatches as ELBO should be on scale of full data and optim_kwargs can be set on initialization of training plan (#1059, #1101).

  • Use pandas read pickle function for pbmc dataset metadata loading (#1099).

  • Adds n_samples_overall parameter to functions for denoised expression/accesibility/etc. This is used in during differential expression (#1090).

  • Ignore configure optimizers warning when training Pyro-based models (#1064).

Bug fixes#

  • Fix scale of library size for simulated doublets and expression in SOLO when using observed library size to train original SCVI model (#1078, #1085). Currently, library sizes in this case are not appropriately put on the log scale.

  • Fix issue where anndata setup with a layer led to errors in SOLO (#1098).

  • Fix adata parameter of scvi.external.SOLO.from_scvi_model(), which previously did nothing (#1078).

  • Fix default max_epochs of SCANVI when initializing using pre-trained model of SCVI (#1079).

  • Fix bug in predict() function of SCANVI, which only occurred for soft predictions (#1100).

Breaking changes#