1
0
mirror of https://github.com/huggingface/diffusers.git synced 2026-10-23 09:09:01 +03:00

327 Commits

Author SHA1 Message Date
Dhruv Nair
5900dbf0da [CI] Fix build and test step in release workflow (#14543)
update build test to use tiny flux
2026-08-20 19:48:39 +05:30
Dhruv Nair
3681e65996 Restructure skill files and reference guides for CLI based installation. (#14454)
* restructure guides as skill references

* reorganize AGENTS.md and references

* clean up

* clean up

* clean up

* fix AGENTS.md references and add check_ai to Makefile

* clean up

* update paths

* clean up
2026-08-20 18:16:49 +05:30
Sayak Paul
0aa743c08d [tests] migrate lora tests for pipelines to use new mixins (#14268)
* start migrating lora tests.

* massive refactor.

* up

* remove planning doc

* address review: tighten lora bias tests

* move run_pipe()

* collapse.

* up

* done

* update

* only use diffusers api contract in tests.

* fix: pass tmp_path through AuraFlow test_lora_B_bias override

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-20 17:19:50 +05:30
Dhruv Nair
ac56fa2f25 [CI] Fix authentication on forked PRs (#14534)
fix auth for forked PRs
2026-08-19 17:41:04 +05:30
Dhruv Nair
aeda394db7 [CI] Allow single file tests to run as fast tests (#14324)
* update

* update

* update

* update

* [FA2] Use `kernels-community/aiter-flash-attn-ck` Hub kernel for ROCm FlashAttention (drop `aiter` dependency) (#14436)

Use  Hub kernel

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>

* add HF_TOKEN to pr workflow

* fix token

* clean up

* Apply suggestions from code review

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>

---------

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
Co-authored-by: BADAOUI Abdennacer <106801897+Abdennacer-Badaoui@users.noreply.github.com>
2026-08-19 10:32:03 +05:30
Sayak Paul
425b113c21 [tests] refactor pipeline-level quantization tests (#14435)
* fix(torchao): route root-level tensors around safetensors reconstruction

Models with parameters at the root of the module tree (e.g. Wan's
`scale_shift_table`) crashed torchao's `unflatten_tensor_state_dict`
when loading serialized checkpoints, since flattened tensor names are
assumed to carry a module prefix. Filter such tensors and their
metadata entries out of the reconstruction and merge them back
unchanged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* fix(bnb): defer 8-bit weights split from their SCB stats across shards

Sharded serialization can place an 8-bit weight and its `SCB`
statistics in different shard files, in which case the shard-by-shard
loader failed with "Missing quantization component `SCB`". Hold the
incomplete half of the pair back until its counterpart arrives with a
later shard, mirroring the torchao pending mechanism, and disable
parallel shard loading for prequantized 8-bit checkpoints.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* [tests] extend model-level quantization tester mixins

Migrate remaining model-level coverage from tests/quantization into the
tester mixins so it runs for every wired model:

- base: buffer-placement assertions in the device-map test, and an
  opt-in sharded-serialization test enabled by setting
  `sharded_serialization_config`
- bnb: serialization across all configs (sharded included), dtype
  assignment and adapter training for 8-bit, device moves preserving
  the memory footprint, corrupted-state-dict loading error, and a fixed
  modules-to-not-convert test (BitsAndBytesConfig only exposes
  llm_int8_skip_modules; the old test passed an unsupported kwarg and
  only survived by being skipped)
- torchao: custom device maps with cpu/disk offload, generalized from
  the Flux-specific test
- gguf: the diffusers-format single-file loading path, wired into the
  Flux model tests

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* [tests] fix model-level quantization test wiring

- SD3.5: the quantized testers reused the random-init dummy inputs
  (4 latent channels, fp32) while the tiny Hub checkpoint has
  in_channels=8 and the quantizers load the model in half precision;
  give them matching inputs and relax the 4-bit memory expectation for
  the tiny checkpoint.
- QwenImage / Flux2: the quantized testers had no Hub checkpoint wired
  at all, so every test errored; point them at
  hf-internal-testing/tiny-qwenimage-pipe and tiny-flux2 with matching
  inputs.
- NucleusMoE: no tiny checkpoint exists on the Hub yet; comment the
  testers out like the LTX ones.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* [tests] split tests/quantization into pipeline-level and backend-level tiers

Pipeline-level quantization tests (pipeline quality slices, cpu offload,
LoRA loading, compile, PipelineQuantizationConfig) move to
tests/pipelines/testing_utils/quantization.py, marked per backend so the
nightly CI can select them with `pytest -m`. tests/quantization keeps
only backend-level tests that fit neither tier: config validation,
utility warnings, and GGUF CUDA kernel correctness. Tests already
covered by the model-level mixins are dropped.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* [ci] select nightly quantization tests by marker across test tiers

Each backend job now runs `pytest -m <marker>` over tests/models,
tests/quantization, and tests/pipelines/testing_utils/quantization.py,
giving the model-level mixin tests a nightly home with the backend
dependencies installed. The torchao job additionally installs mslk.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: sayak@huggingface.co <sayak@ip-10-53-90-45.ec2.internal>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-18 20:53:32 +02:00
Sayak Paul
9284607295 ci: drop stale tokenizers<0.23.0 override (#14504)
transformers now hard-requires tokenizers>=0.23.1,<0.24.0 at import time,
so the override from #13767 breaks every job at the environment step
(ImportError: tokenizers>=0.23.1,<0.24.0 is required ... found 0.22.2).
The originally-problematic 0.23.0 is already excluded by transformers'
own lower bound, so the override can go entirely.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 13:09:05 +02:00
YiYi Xu
6f2010e8bb Auto-reply to new model requests with remote code guidance (#14343)
* Auto-reply to new model requests with Modular Diffusers guidance

Points new model/pipeline/scheduler requests at building a Hub-hosted
modular pipeline instead of waiting on a core PR, and asks requesters to
tag @asomoza when they have something to share.

Gates on the `### Model/Pipeline/Scheduler description` heading the issue
form renders rather than on a label: the label the template declares does
not exist in this repo, so GitHub never applies it, and template labels
land after issue creation anyway.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Apply suggestion from @yiyixuxu

* Tighten the new model request reply

Lead with starting on the Hub and frame what follows as a support
decision (work with the authors, upstream a community version, or point
people at the Hub one) rather than a soft no to PRs. Trims the message
by collapsing the author section and the resource list.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Link the Modular Pipelines collection in the reply

Community-built model pipelines belong in the Modular Pipelines
collection rather than Custom Blocks, so point the "we'll add the ones we
like" line there and keep both collections in the resource list.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Recommend starting on the Hub for new models

Adds a callout to the contribution guide asking model authors to get in
touch on a feature request, and community contributors to coordinate
there and start with a Hub repo at the same time.

Points agents the same way: default to publishing a modular pipeline as
remote code rather than opening a PR against src/diffusers.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Apply suggestion from @yiyixuxu

* Apply suggestion from @yiyixuxu

* Update .github/workflows/new_model_request_reply.yml

Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com>

* Consolidate the Hub-first guidance into one place

stevhliu noted the new callout in "Adding pipelines, models, schedulers"
overlapped the last two paragraphs of the AI-assisted contributions
section. Drop the community-contributor paragraph there — it is general
contribution policy rather than agent-specific guidance — and point the
model-author paragraph at the callout instead. Carry the custom models
link over so the non-modular Hub path stays covered.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com>
2026-08-03 06:40:38 -10:00
YiYi Xu
4d89a88748 [modular] detect stale auto docstrings in CI + regenerate current ones (#14241)
* Regenerate stale modular auto docstrings

Mechanical output of `python utils/modular_auto_docstring.py
src/diffusers/modular_pipelines --fix_and_overwrite` on current main.
These docstrings drifted because the CI check only verifies a docstring
exists, not that its content matches the current block declarations.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Make auto docstring check detect stale content, not just missing docstrings

Check mode now regenerates each # auto_docstring docstring the same way
--fix_and_overwrite does (generate -> insert -> ruff/doc-builder format,
on a temp copy) and compares with the checked-in file, reporting the
stale classes. Works like check_copies: forgetting to run the fixer now
fails CI on the PR that caused the drift, including when the causing
change is in another file (leaf block declarations, templates, specs).

The check now imports diffusers to evaluate doc properties, so the
check_auto_docs CI job moves to the torch container with the test job's
dependency install.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
2026-07-22 09:05:54 -10:00
Dhruv Nair
80bfe77b57 Remove JAX/Flax (#14169)
* Remove JAX/Flax support

Deletes all Flax models, schedulers, pipelines, and loading utilities,
the from_flax loading path, flax/jax packaging extras, Flax CI filters,
Flax training examples, and Flax content in translated docs.

Hub compatibility is preserved: Flax class names in old model_index.json
files are still stripped to their PyTorch equivalents, and *.msgpack
files in repos are still ignored during download.

* Drop Flax class-name remapping from model_index.json loading

Flax-saved checkpoint metadata is no longer recognized: class names like
FlaxStableDiffusionPipeline in model_index.json now fail to resolve
instead of being remapped to their PyTorch equivalents. *.msgpack files
in hub repos are still ignored during download.

* Restore Flax training examples

The example scripts are standalone and still work with diffusers<=0.39.x.
A warning note is added to each Flax README section pointing out the
version requirement now that the library itself no longer ships Flax.

* update

* Repoint scheduler default-config tests off the Flax fixture

* Repoint example training tests off the Flax fixture
2026-07-21 13:12:27 +05:30
YiYi Xu
485610972d update agent doc to cover more on tests + include it in review CI scope (#14197)
* Add agent-doc gotcha: build pipeline test components from real classes, not mocks

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Document modular pipeline tests; soften tiny-repo policy; move mock rule to skill only

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Split testing conventions into .ai/testing.md; include tests/ in review scope

Move the Testing section out of the model-integration skill into a
standalone .ai/testing.md so it loads in both the authoring and review
flows, add it to review-rules' reading list and the reference guides,
extend the mock rule to call-level doubles (monkeypatched component
methods), and widen the @claude CI reviewer's review scope to tests/
(edit/commit scope unchanged).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Document how to run modular pipelines/blocks; add callback_kwargs gotcha

- modular.md: new 'Running a modular pipeline' section — init_pipeline()/
  load_components()/output= usage, from_blocks_dict composition,
  update_components() for config values, and the anti-pattern of calling
  blocks directly with a hand-built PipelineState
- testing.md: modular block tests run through the pipeline API and assert
  on outputs; tiny repos must mirror the real checkpoint's shape (per-variant
  repos when configs differ); bespoke tests live on the tester class
- pipelines.md: callback_kwargs must be built with a loop — locals() inside
  a dict comprehension sees the comprehension's scope and always KeyErrors

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Apply suggestions from code review

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
2026-07-16 10:10:32 -10:00
Mishig
a7166cee37 Make doc builds faster (#14131)
* Update doc build workflow: light installs, drop custom container

* Update doc build workflow: light installs, drop custom container

* Keep the pin comment dependabot-compatible

* Keep the pin comment dependabot-compatible
2026-07-06 16:18:24 +02:00
Sayak Paul
eb0a900caa fix claude code review fix in PRs. (#14058) 2026-06-24 12:02:38 -07:00
Tarek Ziade
b596c83aef ci: use hosted runners (#13987)
hosted runners can now reach Serge directly without creating a tailscale session
2026-06-18 17:38:04 +02:00
Sayak Paul
9a72cd3ee9 ci: don't remind on prs from admins, etc. (#13965)
* ci: don't remind on prs from admins, etc.

* don't remind model authors about linking issues/.
2026-06-18 13:53:10 +05:30
Sayak Paul
fd823e825c fix untrusted fork secret mixing (#13970) 2026-06-16 13:27:23 +05:30
Sayak Paul
21e33389cd [CI] allow running tests as PR comments through a bot (#13873)
* start

* fix

* remove planning
2026-06-16 08:32:45 +05:30
Sayak Paul
f7f1f6304d [CI] implement a bot to remind prs to link issues if not. (#13744)
* implement a bot to remind prs to link issues if not.

* up

* remove auto-close and add contribution guide.

* restrict to one comment

* Apply suggestions from code review

Co-authored-by: sergereview[bot] <283583894+sergereview[bot]@users.noreply.github.com>

* put dodgy stuff in try-except

* limit to 2 days

* style.

---------

Co-authored-by: sergereview[bot] <283583894+sergereview[bot]@users.noreply.github.com>
2026-06-13 09:15:09 +05:30
Tarek Ziade
adbe0d8b43 switch to a webhook (#13884)
Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
2026-06-08 13:01:51 +02:00
Sayak Paul
6a43fb6e8a [ci] add hook tests to our CI. (#13848)
add hook tests to our CI.
2026-06-04 13:50:14 +05:30
Tarek Ziade
07de1f6fe8 moved to a webhook (#13836) 2026-06-01 12:11:06 +05:30
Sayak Paul
de6b049539 override torch stuff to prevent them from getting updated (#13831) 2026-05-29 11:44:45 +05:30
Sayak Paul
ff3b86b475 [ci] shorten serge name. (#13795)
* shorten serge name.

* change path
2026-05-27 21:43:56 +05:30
Sayak Paul
216e245c74 ci: use uv overrides to make sure tokenizers install from <=0.23.0 under subs (#13767)
* ci: use uv overrides to make sure tokenizers install from <=0.23.0 under subs

* up
2026-05-21 18:20:37 +05:30
Sayak Paul
f502538134 [WIP] chore: add utilities to check if call/forward methods are documented. (#13758)
* chore: add utilities to check if call/forward methods are documented.

* Fix missing forward/__call__ docstring entries (#13769)

add missing

* style.

---------

Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com>
Co-authored-by: YiYi Xu <yixu310@gmail.com>
2026-05-21 08:00:22 +05:30
YiYi Xu
fece08aa62 [CI] claude_review: target source PR's branch for follow-up PRs (#13774)
* [CI] claude_review: target source PR's branch for follow-up PRs

The follow-up PR was always cut from main, so once main moved on from the
PR's base the cherry-pick conflicted and the run failed (see run
26191835696). For non-fork PRs we now target the PR's own head branch
instead — Claude's edits apply cleanly regardless of how main has diverged,
and merging the follow-up folds them into the original PR. Fork PRs still
target the default branch since we can't push to a fork.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* [CI] claude_review: skip COMMIT THIS on fork PRs

Falling back to main as the base for fork PRs hits the same cherry-pick
conflict pattern the previous commit fixed for source PRs, and we can't
push to the fork's branch anyway. Bail early with a friendly comment
pointing users to apply Claude's suggestions manually or open an issue.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 13:21:51 -10:00
Dhruv Nair
9c4e201dd1 [CI] Replace print_env step in CI with diffusers-cli env (#13662)
update

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
2026-05-20 16:31:43 +05:30
Sayak Paul
776282c5d0 [ci] switch to a more unique name (#13738)
switch to a more unique name
2026-05-13 16:38:54 +09:00
Sayak Paul
8ad63fb1b5 Serge reviewer (#13735)
* add serge reviewer to enable claude for inline reviews.

* remove local settings

* up

* up

* switch the trigger word to goku
2026-05-13 16:34:07 +09:00
Sayak Paul
303f3a7061 Install transformers from main for doc and staging (#13723)
* Use Mistral3Model/Ministral3ForCausalLM

* [docs] add magcache to caching api listing (#13714)

add magcache to caching api listing

* install transformers from main

* up

* up

* up

* up[

* shorten deprecation cycle for flax.

* Revert "shorten deprecation cycle for flax."

This reverts commit 692d98db7b.

---------

Co-authored-by: Akshan Krithick <akshankrithick305@gmail.com>
Co-authored-by: YiYi Xu <yixu310@gmail.com>
2026-05-12 18:50:50 +09:00
Sayak Paul
6382a3db4d better usage of UV_PRERELEASE=allow (#13716) 2026-05-11 17:13:00 +09:00
Sayak Paul
48f39c2d59 [ci] allow claude to open PRs for certain instructions. (#13536)
* allow claude to open PRs for certain instructions.

* allow edits when claude is called on a PR of forked path

* address yiyi's feedback

* co-authoring
2026-05-10 09:08:36 +09:00
Pauline Bailly-Masson
3577280285 [CI] Bump style-bot SHA + switch to GitHub App (#13690)
* [CI] Bump style-bot SHA + switch to GitHub App

* [CI] Bump style-bot to merged SHA e2867e92
2026-05-07 14:13:27 +02:00
hf-security-analysis[bot]
9dad53e036 chore: update pr_labeler.yml (#13685)
fix(security): remediate workflow vulnerability in .github/workflows/pr_labeler.yml

Co-authored-by: hf-security-analysis[bot] <265538906+hf-security-analysis[bot]@users.noreply.github.com>
2026-05-06 23:38:55 +05:30
Dhruv Nair
e16719abb2 [CI] QOL improvement for PR size labeler (#13554)
* update

* update
2026-05-06 17:32:01 +05:30
Dhruv Nair
ffd5da5f74 [CI] Update all workflows with permissions (#13672)
update
2026-05-01 17:41:27 +05:30
Sayak Paul
4744648a8d [ci] use tokenizers stable installtion in CI. (#13562)
* use tokenizers stable installtion in CI.

* up1

* up2

* up3
2026-04-30 14:34:50 +05:30
Sayak Paul
dad80d728d [ci] simplify release workflow. (#13329)
* simplify release workflow.

* up

* trigger on branches too.

* restrict permissions to read.

* use sha

* remove determination step of latest branch

* resolve rest
2026-04-24 19:56:20 -03:00
Remy
d0c9cbad28 chore: bump doc-builder SHA for main doc build workflow (#13555) 2026-04-24 14:42:48 +02:00
Sayak Paul
267b7a0e4e [ci] feat: have pr labeler label for closing issues. (#13548)
feat: have pr labeler label for closing issues.
2026-04-22 17:53:14 -03:00
Pauline Bailly-Masson
e0c1ec462f add PR fork workable (#13438)
* add PR fork workable

* Apply suggestion from @paulinebm

* Apply suggestion from @paulinebm

* Apply suggestion from @yiyixuxu

Co-authored-by: YiYi Xu <yixu310@gmail.com>

* Apply suggestions from code review

Co-authored-by: Pauline Bailly-Masson <155966238+paulinebm@users.noreply.github.com>

---------

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
Co-authored-by: YiYi Xu <yixu310@gmail.com>
2026-04-16 15:19:10 +05:30
Remy
a68f3677b7 chore: bump doc-builder SHA for PR upload workflow (#13476) 2026-04-15 12:16:24 +02:00
Sayak Paul
896fec351b [tests] tighten dependency testing. (#13332)
* tighten dependency testing.

* invoke dependency testing temporarily.

* f
2026-04-10 18:12:12 +05:30
Dhruv Nair
431066e967 [CI] Use finegrained token for Issue Labeler (#13433)
update
2026-04-08 11:18:24 +02:00
Dhruv Nair
d7bc233b4b [CI] Add PR/Issue Auto Labeler (#13380)
* update

* update

* update

* update

* update

* update

* update

* update

* Apply suggestion from @sayakpaul

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>

---------

Co-authored-by: Sayak Paul <spsayakpaul@gmail.com>
2026-04-07 10:02:18 +05:30
YiYi Xu
039e688fe0 improve Claude CI (#13397)
up

Co-authored-by: yiyi@huggingface.co <yiyi@ip-26-0-160-103.ec2.internal>
2026-04-06 10:43:10 -10:00
Pauline Bailly-Masson
3211cd9df0 🔒 Pin GitHub Actions to commit SHAs (#13385)
* 🔒 pin benchmark.yml actions to commit SHAs

* 🔒 pin nightly_tests.yml actions to commit SHAs

* 🔒 pin build_pr_documentation.yml actions to commit SHAs

* 🔒 pin typos.yml actions to commit SHAs

* 🔒 pin build_docker_images.yml actions to commit SHAs

* 🔒 pin build_documentation.yml actions to commit SHAs

* 🔒 pin upload_pr_documentation.yml actions to commit SHAs

* 🔒 pin pr_style_bot.yml actions to commit SHAs

* 🔒 pin codeql.yml actions to commit SHAs

* 🔒 pin ssh-pr-runner.yml actions to commit SHAs

* 🔒 pin trufflehog.yml actions to commit SHAs
2026-04-02 21:04:45 +05:30
hf-security-analysis[bot]
514bba0696 chore: update claude_review.yml (#13374)
fix(security): remediate workflow vulnerability in .github/workflows/claude_review.yml

Co-authored-by: hf-security-analysis[bot] <265538906+hf-security-analysis[bot]@users.noreply.github.com>
2026-04-01 10:18:29 +05:30
Sayak Paul
a8075425d8 [ci] support claude reviewing on forks. (#13365)
* support claude reviewing on forks.

* sanitization

* tighten system prompt.

* use latest checkout

* remove id-token
2026-03-31 14:56:08 +05:30
Sayak Paul
7da22b9db5 [ci] include checkout step in claude review workflow (#13352)
up
2026-03-27 17:28:31 +05:30