Skip to content

v0.0.5

Choose a tag to compare

@github-actions github-actions released this 18 Feb 05:52
· 19 commits to main since this release
  • added new repeatable --override-config "inference.batch_size=2" in CLI for quick experimentation of config changes
  • in cases where you only want one stem (e.g. piano-only in bs_roformer-fruit-sw), use the config inference.requested_stems=["piano"]. in this case, the unrelated mask estimators in the state dict are surgically removed so it never ends up inferencing unrelated stems. as a fallback, models that do not implement a StemSelectionPlan will use index_select effectively "delete" unused stems
  • By default, audio read/chunking/stitching/normalisation runs on the GPU. To reduce memory pressure, you can force the non-model components on your host device (CPU) with inference.io_device="cpu". This breaks bit-for-bit equivalence in the final output, but has virtually zero difference.
  • the --cpu flag in splifft run is removed, and replaced with inference.model_device="cpu"

🔪 Breaking Changes:

  • InferenceEngine now also supports construction with a Python dictionary so it was renamed to config:
    engine = InferenceEngine.from_pretrained(
    -   config_path="/path/to/config.json",
    +   config="/path/to/config.json",  # or a python dict containing the config
        checkpoint_path="/path/to/checkpoint.pt",
    )
  • On Windows the list of models is now %LOCALAPPDATA%\splifft\Cache\{model_id}\config.json
  • Config has been updated. Run splifft pull {{model_id}} --force-overwrite-config for the following:
    • bs_roformer-fruit-sw: default batch_size from 4 to 8 and force_weights_dtype to float16
    • mdx23c-aufr33-drumsep: default batch_size from 1 to 8

Full Changelog: v0.0.4...v0.0.5