Skip to content

chore(deps): bump peft from 0.20.0 to 0.21.0 - #123

Merged
imran-siddique merged 1 commit into
mainfrom
dependabot/pip/peft-0.21.0
Sep 22, 2026
Merged

imran-siddique merged 1 commit into
mainfrom
dependabot/pip/peft-0.21.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 21, 2026

Copy link
Copy Markdown
Contributor

Bumps peft from 0.20.0 to 0.21.0.

Release notes

Sourced from peft's releases.

v0.21.0

Highlights

New methods

Riemannian-preconditional LoRA optimizer

Riemannian-preconditioned LoRA optimizer (#3382), contributed by @​smellslikeml, is a new LoRA-specific optimizer similar to LoRA-FA or LoRA+ that applies a Riemannian pre-conditioning on the gradients to improve feature learning and avoiding separate tuning of learning rates for LoRA's A and B matrices.

LoRA variant: Knowledge-Aware Singular-Value Adaption (KaSA)

KaSA aims at identifying knowledge aware singular values from the base weight. It then removes noisy knowledge from those weights and specifically trains the singular values most relevant to the task. Implemented in #3446 by @​robbiebusinessacc and @​iambogeumkim.

Super-Tuning (#3518)

Super-Tuning uses calibration-free magnitude scoring to allocate a sparse tuning budget. With BottomK selection, Super adapts low-magnitude weights, motivated by the idea that they provide degrees of freedom for learning a new task while leaving larger-magnitude pretrained weights untouched. Supra adds LoRA on top of this sparse update. It is a good fit for exploring sparsity alongside higher-rank adaptation, particularly on reasoning-heavy fine-tuning tasks. Thanks to @​smellslikeml.

ShadowPEFT (#3354)

ShadowPEFT runs a small shadow network alongside the frozen base model. That shadow state gets updated at every decoder layer, so adaptation is shared across the stack instead of a separate low-rank update on each targeted linear layer (like LoRA). It’s a good choice when you care about downstream or OOD performance and want to stay in the same trainable-parameter range as LoRA, or when you want the small shadow on the edge and the frozen base in the cloud. This works best if the shadow model starts from a small, pretrained model. Contributed by @​SeanLee97.

Enhancements

  • Speed up MoE target parameter computation (#3577): For the common use case of one active adapter, weight and MoE LoRA delta computation is folded into a single baddbmm operation. Expect slight numerical differences in this case.

  • Support torchao v0.18.0 by supporting the newer Int8Tensor, Float8Tensor, etc. tensor subclasses.

  • Orthogonal Subspace Fine-tuning received a significant update in #3524 reducing the memory footprint by 22% and the training time by 46% according to the MetaMathQA benchmark while keeping task accuracy and forgetting stable. Expect slight numerical differences, especially in fp16, bf16.

  • huggingface/peft#3639: Thanks to @​amogh-nagri-11, prompt learning methods now allow to delete an adapter. For adaption prompt, adding or loading a second adapter no longer automatically activates it, in line with how other PEFT methods handle this.

Changes

Refactored state dict handling (#3490)

An internal change moved state dict loading/saving method-specific code paths to the respective tuners. This should be transparent to the end-user and was extensively tested and should work exactly the same as previously, but if you suspect that the model behaves differently, let us know.

Preserved adapter trainablity during injection (#3495)

Previously, when loading or adding a second, third etc. adapter, this could affect the requires_grad of the existing adapter (or base model), depending on the value of is_trainable. This should no longer be the case thanks to @​DaoyuanLi2816.

Bug fixes for LoRA adapter combining (#3111)

Combining LoRA adapters using add_weighted_adapter had a bug in the SVD path which led to the LoRA scaling being applied twice. This is now fixed.

OFT uses generic quantization backend (#3355)

... (truncated)

Commits
  • 9dc6fa2 Release: 0.21.0 (#3748)
  • 20feaa7 FIX Loading scalar adapter state entries (#3699)
  • c9185a3 ENH Warn about unused rank / alpha pattern keys (#3588)
  • 578142b DOC Fix multiple typos, wrong arguments and links (#3687)
  • 6aa4944 Method comparison: Add UniLoRA benchmark to image-gen (#3740)
  • b3d183f Mixed model: Delete every auxiliary adapter and resolve the remaining active ...
  • e99fdd2 FIX Forward autocast_adapter_dtype on all PeftModel subclasses (#3668)
  • a5e4c58 ENH Reject MiSS and PSOFT invalid ranks (#3708)
  • 0e8d0ae Update UniLoRA MetaMathQA benchmark configs with tuned hyperparameters (#3552)
  • 78bce7c Fail loud on save_pretrained() for unsharded LoRA tensors (#3251)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [peft](https://github.com/huggingface/peft) from 0.20.0 to 0.21.0.
- [Release notes](https://github.com/huggingface/peft/releases)
- [Commits](huggingface/peft@v0.20.0...v0.21.0)

---
updated-dependencies:
- dependency-name: peft
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Sep 21, 2026
@dependabot
dependabot Bot requested review from a team and carloshvp as code owners September 21, 2026 10:55
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Sep 21, 2026

@imran-siddique imran-siddique left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested the exact upgraded dependency with a locally generated tiny Llama model: actual LoRA training, adapter save/reload, inference, and encrypted custody round trip passed. The five custody unit tests also pass. Repeated the probe with PEFT 0.21.0 and huggingface-hub 1.32.0 together; it passes. Hosted technical checks pass. This covers the LoRA path that regular CI skips; no remote model or hardware attestation was used.

@imran-siddique
imran-siddique merged commit 2489851 into main Sep 22, 2026
20 of 21 checks passed
@imran-siddique
imran-siddique deleted the dependabot/pip/peft-0.21.0 branch September 22, 2026 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant