diffusers-workflow 0.4.0b4__tar.gz → 0.4.0b6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {diffusers_workflow-0.4.0b4/diffusers_workflow.egg-info → diffusers_workflow-0.4.0b6}/PKG-INFO +5 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/README.md +1 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6/diffusers_workflow.egg-info}/PKG-INFO +5 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/SOURCES.txt +49 -21
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/requires.txt +3 -2
- diffusers_workflow-0.4.0b6/dw/adapter_compatibility.py +226 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/arguments.py +14 -11
- diffusers_workflow-0.4.0b6/dw/content_types.py +105 -0
- diffusers_workflow-0.4.0b6/dw/docs/AGENT_LOOP.md +86 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/MCP.md +25 -11
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/RECIPES_24GB.md +14 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/SECURITY.md +66 -10
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/SECURITY_QUICKREF.md +34 -6
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/SERVER.md +64 -7
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/TASKS.md +19 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/WORKFLOW_GUIDE.md +171 -4
- diffusers_workflow-0.4.0b6/dw/elision.py +306 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/events.py +86 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/introspection.py +128 -8
- diffusers_workflow-0.4.0b6/dw/kernel_availability.py +208 -0
- diffusers_workflow-0.4.0b6/dw/locations.py +541 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/pipeline_processors/pipeline.py +190 -5
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/pipeline_processors/remote.py +27 -10
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/plan.py +93 -3
- diffusers_workflow-0.4.0b6/dw/reference_limits.py +210 -0
- diffusers_workflow-0.4.0b6/dw/reference_names.py +125 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/repl.py +2 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/result.py +148 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/schema.py +70 -4
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/security.py +83 -5
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/serve.py +2 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/app.py +632 -98
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/catalog_shape.py +74 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/guides.py +1 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/jobs.py +62 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/mcp_mount.py +4 -0
- diffusers_workflow-0.4.0b6/dw/server/observed_cost.py +335 -0
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/cssMode-_LF3nQQz.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/cssMode-1t4O7A8b.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/editor.api-Df8mF5HS.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/editor.api-C2mqCHa9.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/freemarker2-BFhhUaaI.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/freemarker2-Cb6RGT42.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/handlebars-uOyL83kB.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/handlebars-LzK4_SEF.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/html-CNOcS1qq.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/html-Biz_qd50.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/htmlMode-BrZs8ZFo.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/htmlMode-CP4Kjl0x.js +1 -1
- diffusers_workflow-0.4.0b6/dw/server/ui/assets/index-Bt8BlCkf.js +41 -0
- diffusers_workflow-0.4.0b6/dw/server/ui/assets/index-D9tEUhx5.css +1 -0
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/javascript-BjmXvHYV.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/javascript-DX4-t0BE.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/jsonMode-CUpeMAA9.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/jsonMode-hZa_qOEa.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/liquid-CDCYHjo5.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/liquid-BRkTuJ_A.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/lspLanguageFeatures-C3BQ9bHy.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/lspLanguageFeatures-Dvt5tod9.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/mdx-Z0OBIKet.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/mdx-Bdet7qev.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/monaco-CXIxqF1g.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/monaco-QRyCMGAv.js +4 -4
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/python-zEGBkDvi.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/python-DO0uJyUr.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/razor-QEBcCsTz.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/razor-CkfVe6oz.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/tsMode-YMmO0OvA.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/tsMode-z26QXNyE.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/typescript-DmCSelwV.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/typescript-DIdNc_uc.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/workers-DNhR6kh1.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/workers-Ce8CDVu5.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/xml-B9wx0o_u.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/xml-Djj2U0Rl.js +1 -1
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/yaml-DRuGviYp.js → diffusers_workflow-0.4.0b6/dw/server/ui/assets/yaml-CePLO71e.js +1 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/index.html +2 -2
- diffusers_workflow-0.4.0b6/dw/task_domains.py +219 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/audio_utils.py +199 -43
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/concat_videos.py +70 -7
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/gather.py +16 -4
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/image_utils.py +2 -2
- diffusers_workflow-0.4.0b6/dw/tasks/pair_audio.py +181 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/task.py +34 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/video_utils.py +56 -9
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/teacache.py +6 -1
- diffusers_workflow-0.4.0b6/dw/variable_constraints.py +444 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/worker.py +38 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workflow.py +201 -9
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workflow_schema.json +129 -32
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workspace.py +5 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/assets.py +77 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/authoring.py +28 -7
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/catalog.py +45 -9
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/client.py +6 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/diagnose.py +31 -14
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/media.py +74 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/server.py +118 -25
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/pyproject.toml +30 -5
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_argument_updates.py +21 -26
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_arguments.py +12 -10
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_audio_utils.py +211 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_cache_blocks.py +0 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_catalog_shape.py +1 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_catalog_structure.py +127 -56
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_chain.py +0 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_concat_videos.py +85 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_configuration_schema.py +3 -1
- diffusers_workflow-0.4.0b6/tests/test_content_types.py +132 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_device.py +0 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_diffusion_upscale.py +2 -6
- diffusers_workflow-0.4.0b6/tests/test_elision.py +499 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_events.py +144 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_examples.py +26 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_for_each.py +15 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_gather.py +6 -6
- diffusers_workflow-0.4.0b6/tests/test_h3_adapters.py +195 -0
- diffusers_workflow-0.4.0b6/tests/test_h3_schedule.py +152 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_integration.py +0 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_introspection.py +1 -2
- diffusers_workflow-0.4.0b6/tests/test_job_warnings.py +46 -0
- diffusers_workflow-0.4.0b6/tests/test_kernel_availability.py +255 -0
- diffusers_workflow-0.4.0b6/tests/test_locations.py +476 -0
- diffusers_workflow-0.4.0b6/tests/test_lora_alpha.py +128 -0
- diffusers_workflow-0.4.0b6/tests/test_ltx2_diffusion_decode.py +97 -0
- diffusers_workflow-0.4.0b6/tests/test_ltx2_ic_loras.py +166 -0
- diffusers_workflow-0.4.0b6/tests/test_ltx_prompt_library.py +123 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_assets.py +87 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_catalog.py +36 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_main.py +0 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_media.py +98 -6
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_server.py +86 -3
- diffusers_workflow-0.4.0b6/tests/test_observed_cost.py +594 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_output_references.py +37 -0
- diffusers_workflow-0.4.0b6/tests/test_pair_audio_fit.py +149 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_pipeline_caching.py +231 -27
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_pipeline_components.py +93 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_plan.py +156 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_plugin_skills.py +71 -32
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_realize.py +12 -13
- diffusers_workflow-0.4.0b6/tests/test_reference_limits.py +138 -0
- diffusers_workflow-0.4.0b6/tests/test_reference_names.py +103 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_repl_commands.py +2 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_repl_reorganization.py +6 -6
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_result.py +275 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_result_output_naming.py +0 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_schema.py +226 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_segment.py +0 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server.py +497 -14
- diffusers_workflow-0.4.0b6/tests/test_server_downloads.py +283 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_exports.py +15 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_info.py +17 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_workspaces.py +30 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_step.py +2 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_task.py +6 -6
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_task_discovery.py +12 -5
- diffusers_workflow-0.4.0b6/tests/test_task_domains.py +286 -0
- diffusers_workflow-0.4.0b6/tests/test_task_signature_errors.py +146 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_template_subfolders.py +9 -9
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_tensor_image.py +0 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_type_helpers.py +0 -2
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_validate_arguments.py +56 -0
- diffusers_workflow-0.4.0b6/tests/test_variable_constraints.py +566 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_video_utils.py +55 -3
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_worker_execute.py +61 -4
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_workflow.py +7 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_workflow_step_cache.py +5 -1
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_workflow_trust.py +108 -0
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/index-BkC2KOK-.js +0 -37
- diffusers_workflow-0.4.0b4/dw/server/ui/assets/index-Dvcgq7CV.css +0 -1
- diffusers_workflow-0.4.0b4/dw/tasks/pair_audio.py +0 -81
- diffusers_workflow-0.4.0b4/tests/test_ltx_prompt_library.py +0 -72
- diffusers_workflow-0.4.0b4/tests/test_server_downloads.py +0 -123
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/LICENSE +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/MANIFEST.in +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/dependency_links.txt +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/entry_points.txt +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/top_level.txt +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/__init__.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/assets.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/cache_blocks.json +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/cache_blocks.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/community_pipelines/pipeline_flux_rf_inversion.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/ACCELERATION.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/DEPENDENCIES.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/IP_ADAPTER.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/LORAS.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/PROMPT_WEIGHTING.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/QUANTIZATION.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/RELEASING.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/REMOTE.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/REPL_COMMANDS.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/REPL_WORKER_GUIDE.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/TESTING.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/docs/WORKSPACES.md +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/for_each.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/host_memory.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/hub_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/log_setup.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/media_info.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/pipeline_processors/chain.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/pipeline_processors/config_objects.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/previous_results.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/prompt_schema.json +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/prompt_weighting.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/prompts.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/realize.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/repl_commands.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/repl_worker.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/run.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/runs.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/__init__.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/enhancers.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/exports.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/netinfo.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/abap-08VXUWAP.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/apex-BWPQTe0t.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/azcli-Bc_sGQ0U.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/bat-i0X4ZdIN.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/bicep-B5-_aFwp.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/cameligo-DMUM7wLl.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/clojure-Cm7r79vr.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/codicon-Brq4_Ui5.ttf +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/coffee-Ba7i2nA0.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/cpp-C7h46wYY.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/csharp-BKxtCVv1.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/csp-bTuwJoIa.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/css-DIMkf-bt.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/css.worker-B3ciXF_0.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/cypher-CVaqCwHa.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/dart-onAF5SnQ.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/dockerfile-DZFCIeNp.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/ecl-D05T4iGw.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/editor-jjEx9u7D.css +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/editor.worker-q-txB4vs.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/elixir-6RTg0lbw.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/flow9-C5_-GSwl.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/fsharp-C8Ef5oNN.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/go-C-y9NEjX.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/graphql-fmXr3nnJ.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/hcl-CpzslTdj.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/html.worker-C93Ht9o9.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/ini-sBoK_t0W.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/java-BEtHBSE6.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/json.worker-B2V3pomh.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/julia-Bri6UV-V.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/kotlin-BOotOW0E.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/less-B9JPFI3C.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/lexon-CfSJPG6W.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/lua-CsQS60Ue.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/m3-D-oSqn_W.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/markdown-Cimd5fb3.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/mips-CIPQ_RoX.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/monaco--ixms01u.css +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/msdax-DauUninz.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/mysql-SOo6toE5.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/objective-c-FvmIjYaQ.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/pascal-DrH0SRf2.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/pascaligo-D-ptJ9y-.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/perl-oz_6vUea.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/pgsql-DTj74zXo.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/php-nr791fC2.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/pla-CopQ2nXW.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/postiats-43DmfD33.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/powerquery-D3hlyOfw.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/powershell-DmHpPYUd.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/protobuf-C531GsRP.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/pug-Z5eAx3Zn.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/qsharp-DkqhCAOL.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/r-BwWrilGY.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/redis-ClamHrr6.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/redshift-DT7zqm-g.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/restructuredtext-BYgofb2h.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/ruby-DezsRK8O.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/rust-DdL9SqIa.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/sb-CcwsVR0C.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/scala-DHpiXF5c.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/scheme-BeGwcela.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/scss-gp-XZpBa.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/shell-CC2rA5mh.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/solidity-BEEn4gHE.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/sophia-CRfGWb83.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/sparql-D_Lu-MrJ.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/sql-NEE52Syq.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/st-DbInun42.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/swift-Bxkupp3x.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/systemverilog-Bz4Y3fRF.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/tcl-DISqw1ZD.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/ts.worker-D7T1-Ig5.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/twig-De2hgUGE.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/typespec-B8J7ngcE.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/vb-DV3o63ZY.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/ui/assets/wgsl-DpFanUEy.js +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/server/updater.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/settings.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/step.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/step_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/subfolders.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/background_remover.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/borders.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/compose_text.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/depth_estimator.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/diffusion_upscale.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/dissolve_videos.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/format_messages.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/image_to_text.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/interpolate_frames.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/model_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/qr_code.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/restore_faces.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/rife_model.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/segment.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/speech_generation.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/stabilize.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/tensor_image.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/text_generation.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/text_sections.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/upscale.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/tasks/zoe_depth.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/teacache_models.json +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/test.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/type_helpers.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/validate.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/variables.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workflow_sources.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workflows/h3_context_ir.json +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw/workflows/test.json +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/__init__.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/__main__.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/exports.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/guides.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/models.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/prompts.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/dw_mcp/workspaces.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/setup.cfg +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_assets.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_borders.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_cli.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_component_pruning.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_compose_text.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_config_objects.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_depth_estimator.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_device_helpers.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_device_portability.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_dialogue_short_voices.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_dissolve_videos.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_docs_links.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_h3_context_ir.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_hf_placement.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_host_memory.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_hub_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_image_to_text.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_image_utils.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_interpolate_frames.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_job_progress.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_jobs_listing.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_jobs_reused.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_library_sources.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_list_images.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_authoring.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_client.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_diagnose.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_exports.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_guides.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_models.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_prompts.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mcp_workspaces.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_media_info.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_mix_audio.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_model_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_modular_pipeline.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_modular_progress.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_offload_placement.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_pair_audio.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_phase_events.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_previous_results.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_prompt_parser.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_prompt_references.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_prompt_weighting.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_prompts.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_recenter_crop.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_repl_ergonomics.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_repl_hierarchical.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_repl_worker.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_rerun_new_seed.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_resize_bucket.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_runs.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_scheduler_config.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_security.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_serve_main.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_guides.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_jobs.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_server_mcp.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_speech_generation.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_stabilize.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_step_cache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_strip_exif_and_watermark.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_subfolders.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_teacache.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_text_generation.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_text_sections.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_updater.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_variables.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_worker.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_workflow_sources.py +0 -0
- {diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/tests/test_workspace.py +0 -0
{diffusers_workflow-0.4.0b4/diffusers_workflow.egg-info → diffusers_workflow-0.4.0b6}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffusers-workflow
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.0b6
|
|
4
4
|
Summary: Declarative workflow engine and web UI for Hugging Face Diffusers
|
|
5
5
|
Author: dkackman
|
|
6
6
|
License: Apache-2.0
|
|
@@ -19,7 +19,7 @@ License-File: LICENSE
|
|
|
19
19
|
Requires-Dist: torch>=2.13.0
|
|
20
20
|
Requires-Dist: torchvision>=0.28.0
|
|
21
21
|
Requires-Dist: diffusers>=0.40.0
|
|
22
|
-
Requires-Dist: transformers
|
|
22
|
+
Requires-Dist: transformers!=5.17.0,>=5.16.1
|
|
23
23
|
Requires-Dist: accelerate>=1.14.0
|
|
24
24
|
Requires-Dist: peft>=0.20.0
|
|
25
25
|
Requires-Dist: safetensors>=0.8.0
|
|
@@ -36,6 +36,7 @@ Requires-Dist: bitsandbytes>=0.50.2; sys_platform == "linux"
|
|
|
36
36
|
Requires-Dist: controlnet-aux>=0.0.10
|
|
37
37
|
Requires-Dist: opencv-python-headless>=5.0.0.93
|
|
38
38
|
Requires-Dist: kornia>=0.8.3
|
|
39
|
+
Requires-Dist: kernels>=0.17.0
|
|
39
40
|
Requires-Dist: spandrel>=0.4.2
|
|
40
41
|
Requires-Dist: facexlib>=0.3.0
|
|
41
42
|
Requires-Dist: numpy>=2.5.2
|
|
@@ -68,7 +69,7 @@ Requires-Dist: pytest-timeout>=2.4.0; extra == "dev"
|
|
|
68
69
|
Requires-Dist: pytest-mock>=3.15.1; extra == "dev"
|
|
69
70
|
Requires-Dist: pytest-asyncio>=1.4.0; extra == "dev"
|
|
70
71
|
Requires-Dist: httpx>=0.28.1; extra == "dev"
|
|
71
|
-
Requires-Dist:
|
|
72
|
+
Requires-Dist: ruff>=0.15.0; extra == "dev"
|
|
72
73
|
Requires-Dist: build; extra == "dev"
|
|
73
74
|
Requires-Dist: mcp>=2.1.1; extra == "dev"
|
|
74
75
|
Dynamic: license-file
|
|
@@ -295,3 +296,4 @@ frame interpolation and more.
|
|
|
295
296
|
- [Security](docs/SECURITY.md) — Security model
|
|
296
297
|
- [Testing](docs/TESTING.md) — Running the test suite
|
|
297
298
|
- [Releasing](docs/RELEASING.md) — Cutting a release from a version tag
|
|
299
|
+
- [Agent Loop](docs/AGENT_LOOP.md) — What the automated implementer/tester ticket labels mean, for anyone joining an Issue
|
|
@@ -220,3 +220,4 @@ frame interpolation and more.
|
|
|
220
220
|
- [Security](docs/SECURITY.md) — Security model
|
|
221
221
|
- [Testing](docs/TESTING.md) — Running the test suite
|
|
222
222
|
- [Releasing](docs/RELEASING.md) — Cutting a release from a version tag
|
|
223
|
+
- [Agent Loop](docs/AGENT_LOOP.md) — What the automated implementer/tester ticket labels mean, for anyone joining an Issue
|
{diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6/diffusers_workflow.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffusers-workflow
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.0b6
|
|
4
4
|
Summary: Declarative workflow engine and web UI for Hugging Face Diffusers
|
|
5
5
|
Author: dkackman
|
|
6
6
|
License: Apache-2.0
|
|
@@ -19,7 +19,7 @@ License-File: LICENSE
|
|
|
19
19
|
Requires-Dist: torch>=2.13.0
|
|
20
20
|
Requires-Dist: torchvision>=0.28.0
|
|
21
21
|
Requires-Dist: diffusers>=0.40.0
|
|
22
|
-
Requires-Dist: transformers
|
|
22
|
+
Requires-Dist: transformers!=5.17.0,>=5.16.1
|
|
23
23
|
Requires-Dist: accelerate>=1.14.0
|
|
24
24
|
Requires-Dist: peft>=0.20.0
|
|
25
25
|
Requires-Dist: safetensors>=0.8.0
|
|
@@ -36,6 +36,7 @@ Requires-Dist: bitsandbytes>=0.50.2; sys_platform == "linux"
|
|
|
36
36
|
Requires-Dist: controlnet-aux>=0.0.10
|
|
37
37
|
Requires-Dist: opencv-python-headless>=5.0.0.93
|
|
38
38
|
Requires-Dist: kornia>=0.8.3
|
|
39
|
+
Requires-Dist: kernels>=0.17.0
|
|
39
40
|
Requires-Dist: spandrel>=0.4.2
|
|
40
41
|
Requires-Dist: facexlib>=0.3.0
|
|
41
42
|
Requires-Dist: numpy>=2.5.2
|
|
@@ -68,7 +69,7 @@ Requires-Dist: pytest-timeout>=2.4.0; extra == "dev"
|
|
|
68
69
|
Requires-Dist: pytest-mock>=3.15.1; extra == "dev"
|
|
69
70
|
Requires-Dist: pytest-asyncio>=1.4.0; extra == "dev"
|
|
70
71
|
Requires-Dist: httpx>=0.28.1; extra == "dev"
|
|
71
|
-
Requires-Dist:
|
|
72
|
+
Requires-Dist: ruff>=0.15.0; extra == "dev"
|
|
72
73
|
Requires-Dist: build; extra == "dev"
|
|
73
74
|
Requires-Dist: mcp>=2.1.1; extra == "dev"
|
|
74
75
|
Dynamic: license-file
|
|
@@ -295,3 +296,4 @@ frame interpolation and more.
|
|
|
295
296
|
- [Security](docs/SECURITY.md) — Security model
|
|
296
297
|
- [Testing](docs/TESTING.md) — Running the test suite
|
|
297
298
|
- [Releasing](docs/RELEASING.md) — Cutting a release from a version tag
|
|
299
|
+
- [Agent Loop](docs/AGENT_LOOP.md) — What the automated implementer/tester ticket labels mean, for anyone joining an Issue
|
{diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/SOURCES.txt
RENAMED
|
@@ -9,15 +9,20 @@ diffusers_workflow.egg-info/entry_points.txt
|
|
|
9
9
|
diffusers_workflow.egg-info/requires.txt
|
|
10
10
|
diffusers_workflow.egg-info/top_level.txt
|
|
11
11
|
dw/__init__.py
|
|
12
|
+
dw/adapter_compatibility.py
|
|
12
13
|
dw/arguments.py
|
|
13
14
|
dw/assets.py
|
|
14
15
|
dw/cache_blocks.json
|
|
15
16
|
dw/cache_blocks.py
|
|
17
|
+
dw/content_types.py
|
|
18
|
+
dw/elision.py
|
|
16
19
|
dw/events.py
|
|
17
20
|
dw/for_each.py
|
|
18
21
|
dw/host_memory.py
|
|
19
22
|
dw/hub_cache.py
|
|
20
23
|
dw/introspection.py
|
|
24
|
+
dw/kernel_availability.py
|
|
25
|
+
dw/locations.py
|
|
21
26
|
dw/log_setup.py
|
|
22
27
|
dw/media_info.py
|
|
23
28
|
dw/plan.py
|
|
@@ -26,6 +31,8 @@ dw/prompt_schema.json
|
|
|
26
31
|
dw/prompt_weighting.py
|
|
27
32
|
dw/prompts.py
|
|
28
33
|
dw/realize.py
|
|
34
|
+
dw/reference_limits.py
|
|
35
|
+
dw/reference_names.py
|
|
29
36
|
dw/repl.py
|
|
30
37
|
dw/repl_commands.py
|
|
31
38
|
dw/repl_worker.py
|
|
@@ -39,11 +46,13 @@ dw/settings.py
|
|
|
39
46
|
dw/step.py
|
|
40
47
|
dw/step_cache.py
|
|
41
48
|
dw/subfolders.py
|
|
49
|
+
dw/task_domains.py
|
|
42
50
|
dw/teacache.py
|
|
43
51
|
dw/teacache_models.json
|
|
44
52
|
dw/test.py
|
|
45
53
|
dw/type_helpers.py
|
|
46
54
|
dw/validate.py
|
|
55
|
+
dw/variable_constraints.py
|
|
47
56
|
dw/variables.py
|
|
48
57
|
dw/worker.py
|
|
49
58
|
dw/workflow.py
|
|
@@ -52,6 +61,7 @@ dw/workflow_sources.py
|
|
|
52
61
|
dw/workspace.py
|
|
53
62
|
dw/community_pipelines/pipeline_flux_rf_inversion.py
|
|
54
63
|
dw/docs/ACCELERATION.md
|
|
64
|
+
dw/docs/AGENT_LOOP.md
|
|
55
65
|
dw/docs/DEPENDENCIES.md
|
|
56
66
|
dw/docs/IP_ADAPTER.md
|
|
57
67
|
dw/docs/LORAS.md
|
|
@@ -83,6 +93,7 @@ dw/server/guides.py
|
|
|
83
93
|
dw/server/jobs.py
|
|
84
94
|
dw/server/mcp_mount.py
|
|
85
95
|
dw/server/netinfo.py
|
|
96
|
+
dw/server/observed_cost.py
|
|
86
97
|
dw/server/updater.py
|
|
87
98
|
dw/server/ui/index.html
|
|
88
99
|
dw/server/ui/assets/abap-08VXUWAP.js
|
|
@@ -99,45 +110,45 @@ dw/server/ui/assets/csharp-BKxtCVv1.js
|
|
|
99
110
|
dw/server/ui/assets/csp-bTuwJoIa.js
|
|
100
111
|
dw/server/ui/assets/css-DIMkf-bt.js
|
|
101
112
|
dw/server/ui/assets/css.worker-B3ciXF_0.js
|
|
102
|
-
dw/server/ui/assets/cssMode-
|
|
113
|
+
dw/server/ui/assets/cssMode-1t4O7A8b.js
|
|
103
114
|
dw/server/ui/assets/cypher-CVaqCwHa.js
|
|
104
115
|
dw/server/ui/assets/dart-onAF5SnQ.js
|
|
105
116
|
dw/server/ui/assets/dockerfile-DZFCIeNp.js
|
|
106
117
|
dw/server/ui/assets/ecl-D05T4iGw.js
|
|
107
118
|
dw/server/ui/assets/editor-jjEx9u7D.css
|
|
108
|
-
dw/server/ui/assets/editor.api-
|
|
119
|
+
dw/server/ui/assets/editor.api-C2mqCHa9.js
|
|
109
120
|
dw/server/ui/assets/editor.worker-q-txB4vs.js
|
|
110
121
|
dw/server/ui/assets/elixir-6RTg0lbw.js
|
|
111
122
|
dw/server/ui/assets/flow9-C5_-GSwl.js
|
|
112
|
-
dw/server/ui/assets/freemarker2-
|
|
123
|
+
dw/server/ui/assets/freemarker2-Cb6RGT42.js
|
|
113
124
|
dw/server/ui/assets/fsharp-C8Ef5oNN.js
|
|
114
125
|
dw/server/ui/assets/go-C-y9NEjX.js
|
|
115
126
|
dw/server/ui/assets/graphql-fmXr3nnJ.js
|
|
116
|
-
dw/server/ui/assets/handlebars-
|
|
127
|
+
dw/server/ui/assets/handlebars-LzK4_SEF.js
|
|
117
128
|
dw/server/ui/assets/hcl-CpzslTdj.js
|
|
118
|
-
dw/server/ui/assets/html-
|
|
129
|
+
dw/server/ui/assets/html-Biz_qd50.js
|
|
119
130
|
dw/server/ui/assets/html.worker-C93Ht9o9.js
|
|
120
|
-
dw/server/ui/assets/htmlMode-
|
|
121
|
-
dw/server/ui/assets/index-
|
|
122
|
-
dw/server/ui/assets/index-
|
|
131
|
+
dw/server/ui/assets/htmlMode-CP4Kjl0x.js
|
|
132
|
+
dw/server/ui/assets/index-Bt8BlCkf.js
|
|
133
|
+
dw/server/ui/assets/index-D9tEUhx5.css
|
|
123
134
|
dw/server/ui/assets/ini-sBoK_t0W.js
|
|
124
135
|
dw/server/ui/assets/java-BEtHBSE6.js
|
|
125
|
-
dw/server/ui/assets/javascript-
|
|
136
|
+
dw/server/ui/assets/javascript-DX4-t0BE.js
|
|
126
137
|
dw/server/ui/assets/json.worker-B2V3pomh.js
|
|
127
|
-
dw/server/ui/assets/jsonMode-
|
|
138
|
+
dw/server/ui/assets/jsonMode-hZa_qOEa.js
|
|
128
139
|
dw/server/ui/assets/julia-Bri6UV-V.js
|
|
129
140
|
dw/server/ui/assets/kotlin-BOotOW0E.js
|
|
130
141
|
dw/server/ui/assets/less-B9JPFI3C.js
|
|
131
142
|
dw/server/ui/assets/lexon-CfSJPG6W.js
|
|
132
|
-
dw/server/ui/assets/liquid-
|
|
133
|
-
dw/server/ui/assets/lspLanguageFeatures-
|
|
143
|
+
dw/server/ui/assets/liquid-BRkTuJ_A.js
|
|
144
|
+
dw/server/ui/assets/lspLanguageFeatures-Dvt5tod9.js
|
|
134
145
|
dw/server/ui/assets/lua-CsQS60Ue.js
|
|
135
146
|
dw/server/ui/assets/m3-D-oSqn_W.js
|
|
136
147
|
dw/server/ui/assets/markdown-Cimd5fb3.js
|
|
137
|
-
dw/server/ui/assets/mdx-
|
|
148
|
+
dw/server/ui/assets/mdx-Bdet7qev.js
|
|
138
149
|
dw/server/ui/assets/mips-CIPQ_RoX.js
|
|
139
150
|
dw/server/ui/assets/monaco--ixms01u.css
|
|
140
|
-
dw/server/ui/assets/monaco-
|
|
151
|
+
dw/server/ui/assets/monaco-QRyCMGAv.js
|
|
141
152
|
dw/server/ui/assets/msdax-DauUninz.js
|
|
142
153
|
dw/server/ui/assets/mysql-SOo6toE5.js
|
|
143
154
|
dw/server/ui/assets/objective-c-FvmIjYaQ.js
|
|
@@ -152,10 +163,10 @@ dw/server/ui/assets/powerquery-D3hlyOfw.js
|
|
|
152
163
|
dw/server/ui/assets/powershell-DmHpPYUd.js
|
|
153
164
|
dw/server/ui/assets/protobuf-C531GsRP.js
|
|
154
165
|
dw/server/ui/assets/pug-Z5eAx3Zn.js
|
|
155
|
-
dw/server/ui/assets/python-
|
|
166
|
+
dw/server/ui/assets/python-DO0uJyUr.js
|
|
156
167
|
dw/server/ui/assets/qsharp-DkqhCAOL.js
|
|
157
168
|
dw/server/ui/assets/r-BwWrilGY.js
|
|
158
|
-
dw/server/ui/assets/razor-
|
|
169
|
+
dw/server/ui/assets/razor-CkfVe6oz.js
|
|
159
170
|
dw/server/ui/assets/redis-ClamHrr6.js
|
|
160
171
|
dw/server/ui/assets/redshift-DT7zqm-g.js
|
|
161
172
|
dw/server/ui/assets/restructuredtext-BYgofb2h.js
|
|
@@ -175,15 +186,15 @@ dw/server/ui/assets/swift-Bxkupp3x.js
|
|
|
175
186
|
dw/server/ui/assets/systemverilog-Bz4Y3fRF.js
|
|
176
187
|
dw/server/ui/assets/tcl-DISqw1ZD.js
|
|
177
188
|
dw/server/ui/assets/ts.worker-D7T1-Ig5.js
|
|
178
|
-
dw/server/ui/assets/tsMode-
|
|
189
|
+
dw/server/ui/assets/tsMode-z26QXNyE.js
|
|
179
190
|
dw/server/ui/assets/twig-De2hgUGE.js
|
|
180
|
-
dw/server/ui/assets/typescript-
|
|
191
|
+
dw/server/ui/assets/typescript-DIdNc_uc.js
|
|
181
192
|
dw/server/ui/assets/typespec-B8J7ngcE.js
|
|
182
193
|
dw/server/ui/assets/vb-DV3o63ZY.js
|
|
183
194
|
dw/server/ui/assets/wgsl-DpFanUEy.js
|
|
184
|
-
dw/server/ui/assets/workers-
|
|
185
|
-
dw/server/ui/assets/xml-
|
|
186
|
-
dw/server/ui/assets/yaml-
|
|
195
|
+
dw/server/ui/assets/workers-Ce8CDVu5.js
|
|
196
|
+
dw/server/ui/assets/xml-Djj2U0Rl.js
|
|
197
|
+
dw/server/ui/assets/yaml-CePLO71e.js
|
|
187
198
|
dw/tasks/audio_utils.py
|
|
188
199
|
dw/tasks/background_remover.py
|
|
189
200
|
dw/tasks/borders.py
|
|
@@ -243,6 +254,7 @@ tests/test_compose_text.py
|
|
|
243
254
|
tests/test_concat_videos.py
|
|
244
255
|
tests/test_config_objects.py
|
|
245
256
|
tests/test_configuration_schema.py
|
|
257
|
+
tests/test_content_types.py
|
|
246
258
|
tests/test_depth_estimator.py
|
|
247
259
|
tests/test_device.py
|
|
248
260
|
tests/test_device_helpers.py
|
|
@@ -251,11 +263,14 @@ tests/test_dialogue_short_voices.py
|
|
|
251
263
|
tests/test_diffusion_upscale.py
|
|
252
264
|
tests/test_dissolve_videos.py
|
|
253
265
|
tests/test_docs_links.py
|
|
266
|
+
tests/test_elision.py
|
|
254
267
|
tests/test_events.py
|
|
255
268
|
tests/test_examples.py
|
|
256
269
|
tests/test_for_each.py
|
|
257
270
|
tests/test_gather.py
|
|
271
|
+
tests/test_h3_adapters.py
|
|
258
272
|
tests/test_h3_context_ir.py
|
|
273
|
+
tests/test_h3_schedule.py
|
|
259
274
|
tests/test_hf_placement.py
|
|
260
275
|
tests/test_host_memory.py
|
|
261
276
|
tests/test_hub_cache.py
|
|
@@ -265,10 +280,16 @@ tests/test_integration.py
|
|
|
265
280
|
tests/test_interpolate_frames.py
|
|
266
281
|
tests/test_introspection.py
|
|
267
282
|
tests/test_job_progress.py
|
|
283
|
+
tests/test_job_warnings.py
|
|
268
284
|
tests/test_jobs_listing.py
|
|
269
285
|
tests/test_jobs_reused.py
|
|
286
|
+
tests/test_kernel_availability.py
|
|
270
287
|
tests/test_library_sources.py
|
|
271
288
|
tests/test_list_images.py
|
|
289
|
+
tests/test_locations.py
|
|
290
|
+
tests/test_lora_alpha.py
|
|
291
|
+
tests/test_ltx2_diffusion_decode.py
|
|
292
|
+
tests/test_ltx2_ic_loras.py
|
|
272
293
|
tests/test_ltx_prompt_library.py
|
|
273
294
|
tests/test_mcp_assets.py
|
|
274
295
|
tests/test_mcp_authoring.py
|
|
@@ -288,9 +309,11 @@ tests/test_mix_audio.py
|
|
|
288
309
|
tests/test_model_cache.py
|
|
289
310
|
tests/test_modular_pipeline.py
|
|
290
311
|
tests/test_modular_progress.py
|
|
312
|
+
tests/test_observed_cost.py
|
|
291
313
|
tests/test_offload_placement.py
|
|
292
314
|
tests/test_output_references.py
|
|
293
315
|
tests/test_pair_audio.py
|
|
316
|
+
tests/test_pair_audio_fit.py
|
|
294
317
|
tests/test_phase_events.py
|
|
295
318
|
tests/test_pipeline_caching.py
|
|
296
319
|
tests/test_pipeline_components.py
|
|
@@ -303,6 +326,8 @@ tests/test_prompt_weighting.py
|
|
|
303
326
|
tests/test_prompts.py
|
|
304
327
|
tests/test_realize.py
|
|
305
328
|
tests/test_recenter_crop.py
|
|
329
|
+
tests/test_reference_limits.py
|
|
330
|
+
tests/test_reference_names.py
|
|
306
331
|
tests/test_repl_commands.py
|
|
307
332
|
tests/test_repl_ergonomics.py
|
|
308
333
|
tests/test_repl_hierarchical.py
|
|
@@ -334,6 +359,8 @@ tests/test_strip_exif_and_watermark.py
|
|
|
334
359
|
tests/test_subfolders.py
|
|
335
360
|
tests/test_task.py
|
|
336
361
|
tests/test_task_discovery.py
|
|
362
|
+
tests/test_task_domains.py
|
|
363
|
+
tests/test_task_signature_errors.py
|
|
337
364
|
tests/test_teacache.py
|
|
338
365
|
tests/test_template_subfolders.py
|
|
339
366
|
tests/test_tensor_image.py
|
|
@@ -342,6 +369,7 @@ tests/test_text_sections.py
|
|
|
342
369
|
tests/test_type_helpers.py
|
|
343
370
|
tests/test_updater.py
|
|
344
371
|
tests/test_validate_arguments.py
|
|
372
|
+
tests/test_variable_constraints.py
|
|
345
373
|
tests/test_variables.py
|
|
346
374
|
tests/test_video_utils.py
|
|
347
375
|
tests/test_worker.py
|
{diffusers_workflow-0.4.0b4 → diffusers_workflow-0.4.0b6}/diffusers_workflow.egg-info/requires.txt
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
torch>=2.13.0
|
|
2
2
|
torchvision>=0.28.0
|
|
3
3
|
diffusers>=0.40.0
|
|
4
|
-
transformers
|
|
4
|
+
transformers!=5.17.0,>=5.16.1
|
|
5
5
|
accelerate>=1.14.0
|
|
6
6
|
peft>=0.20.0
|
|
7
7
|
safetensors>=0.8.0
|
|
@@ -17,6 +17,7 @@ gguf>=0.19.0
|
|
|
17
17
|
controlnet-aux>=0.0.10
|
|
18
18
|
opencv-python-headless>=5.0.0.93
|
|
19
19
|
kornia>=0.8.3
|
|
20
|
+
kernels>=0.17.0
|
|
20
21
|
spandrel>=0.4.2
|
|
21
22
|
facexlib>=0.3.0
|
|
22
23
|
numpy>=2.5.2
|
|
@@ -47,7 +48,7 @@ pytest-timeout>=2.4.0
|
|
|
47
48
|
pytest-mock>=3.15.1
|
|
48
49
|
pytest-asyncio>=1.4.0
|
|
49
50
|
httpx>=0.28.1
|
|
50
|
-
|
|
51
|
+
ruff>=0.15.0
|
|
51
52
|
build
|
|
52
53
|
mcp>=2.1.1
|
|
53
54
|
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"""The LoRA a step loads has to be trained for the path that step runs.
|
|
2
|
+
|
|
3
|
+
MiniMax-H3 ships one repository holding two checkpoint partitions -
|
|
4
|
+
`transformer/` for the `t2va` and `fl2va` workflows, `transformer_ref/` for
|
|
5
|
+
`ref2va` - and a separate turbo adapter trained against each. Handing the
|
|
6
|
+
FL2VA adapter to a `ref2va` step is the one H3 misconfiguration that never
|
|
7
|
+
shows up as a failure: a `ref2va` step holds `transformer_ref` alone, so
|
|
8
|
+
diffusers loads whatever it is given straight onto it, the run succeeds, and
|
|
9
|
+
the only symptom is identity retention that quietly is not as good as it
|
|
10
|
+
should be. Four templates carried exactly that mistake and nothing ever
|
|
11
|
+
complained (#149, #155).
|
|
12
|
+
|
|
13
|
+
Everything a pipeline itself would refuse is refused by the pipeline. This
|
|
14
|
+
is the other kind: a request the pipeline accepts and answers wrongly, which
|
|
15
|
+
costs a whole render to discover and cannot be seen in the output. So it is
|
|
16
|
+
checked where it is free - `validation_errors`, so `POST /api/validate` and
|
|
17
|
+
the pre-queue check both refuse it, at the JSON path the value sits at.
|
|
18
|
+
|
|
19
|
+
What is *not* written here: the adapter file names. `lora_weight_name` is a
|
|
20
|
+
free string and a future reference-trained checkpoint cannot be predicted, so
|
|
21
|
+
an unrecognised name is a warning naming the rule rather than a refusal - the
|
|
22
|
+
default inverts from "anything passes" to "the one documented mistake is
|
|
23
|
+
caught", and someone testing `my-new-ref-lora.safetensors` still gets
|
|
24
|
+
through. What *is* written here is a vendor naming convention (`ref2v` /
|
|
25
|
+
`fl2v` in the file name) that no diffusers symbol declares; the workflow
|
|
26
|
+
names and the partition each one denoises against are diffusers' own, and
|
|
27
|
+
`tests/test_h3_adapters.py` pins them to it.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
import logging
|
|
31
|
+
|
|
32
|
+
from .for_each import MEMBER_SEPARATOR, render_path
|
|
33
|
+
|
|
34
|
+
logger = logging.getLogger("dw")
|
|
35
|
+
|
|
36
|
+
# The `workflow=` values MiniMaxH3Blocks._workflow_map declares, split by the
|
|
37
|
+
# transformer partition each one denoises against - a `ref2va` step loads
|
|
38
|
+
# `transformer_ref` and nothing else, every other H3 workflow loads
|
|
39
|
+
# `transformer`. A workflow name not listed here is not checked
|
|
40
|
+
REFERENCE_WORKFLOWS = frozenset({"ref2va"})
|
|
41
|
+
KEYFRAME_WORKFLOWS = frozenset({"t2va", "fl2va"})
|
|
42
|
+
H3_WORKFLOWS = REFERENCE_WORKFLOWS | KEYFRAME_WORKFLOWS
|
|
43
|
+
|
|
44
|
+
# The token MiniMax puts in an adapter's file name to say which partition it
|
|
45
|
+
# was trained against. `ref2v` first: it is the longer match and a name
|
|
46
|
+
# carrying both is ambiguous rather than a keyframe adapter
|
|
47
|
+
REFERENCE_TOKEN = "ref2v"
|
|
48
|
+
KEYFRAME_TOKEN = "fl2v"
|
|
49
|
+
|
|
50
|
+
LORAS_KEY = "loras"
|
|
51
|
+
WEIGHT_NAME_KEY = "weight_name"
|
|
52
|
+
WORKFLOW_KEY = "workflow"
|
|
53
|
+
FROM_PRETRAINED_KEY = "from_pretrained_arguments"
|
|
54
|
+
VARIABLE_PREFIX = "variable:"
|
|
55
|
+
# Values another pass resolves; one still spelled out here is not this
|
|
56
|
+
# pass's complaint
|
|
57
|
+
_UNRESOLVED_PREFIXES = ("variable:", "item:", "previous_result:", "gather:")
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def _trained_for(weight_name):
|
|
61
|
+
"""Which partition an adapter's file name says it was trained against -
|
|
62
|
+
'reference', 'keyframe', or None when the name says neither."""
|
|
63
|
+
lowered = weight_name.lower()
|
|
64
|
+
if REFERENCE_TOKEN in lowered:
|
|
65
|
+
return "reference"
|
|
66
|
+
if KEYFRAME_TOKEN in lowered:
|
|
67
|
+
return "keyframe"
|
|
68
|
+
return None
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def _problem(workflow, weight_name):
|
|
72
|
+
"""(severity, message) for one adapter on one step, or None when the
|
|
73
|
+
pairing is right."""
|
|
74
|
+
trained = _trained_for(weight_name)
|
|
75
|
+
wants = "reference" if workflow in REFERENCE_WORKFLOWS else "keyframe"
|
|
76
|
+
if trained == wants:
|
|
77
|
+
return None
|
|
78
|
+
if trained is None:
|
|
79
|
+
return (
|
|
80
|
+
"warning",
|
|
81
|
+
f"'{weight_name}' names neither '{REFERENCE_TOKEN}' nor "
|
|
82
|
+
f"'{KEYFRAME_TOKEN}', so it cannot be checked against this "
|
|
83
|
+
f"step's '{workflow}' workflow. A '{workflow}' step denoises "
|
|
84
|
+
f"against the "
|
|
85
|
+
f"'{'transformer_ref' if wants == 'reference' else 'transformer'}' "
|
|
86
|
+
f"partition, and an adapter trained against the other one loads "
|
|
87
|
+
f"onto it without error and only degrades the result",
|
|
88
|
+
)
|
|
89
|
+
return (
|
|
90
|
+
"error",
|
|
91
|
+
f"'{weight_name}' is trained against the "
|
|
92
|
+
f"'{'transformer_ref' if trained == 'reference' else 'transformer'}' "
|
|
93
|
+
f"partition and this step runs the '{workflow}' workflow, which "
|
|
94
|
+
f"denoises against "
|
|
95
|
+
f"'{'transformer_ref' if wants == 'reference' else 'transformer'}'. "
|
|
96
|
+
f"MiniMax-H3 loads it anyway and the run succeeds - the only symptom "
|
|
97
|
+
f"is a worse result - so it is refused here. Use an adapter trained "
|
|
98
|
+
f"for this workflow (its name carries "
|
|
99
|
+
f"'{REFERENCE_TOKEN if wants == 'reference' else KEYFRAME_TOKEN}')",
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def _lora_problems(steps, source_indices, written=None, supplied=()):
|
|
104
|
+
"""Every adapter/workflow mismatch in an expanded step list, as
|
|
105
|
+
(severity, path, message).
|
|
106
|
+
|
|
107
|
+
`written` is the definition as the author wrote it and `supplied` the
|
|
108
|
+
argument names the caller passed: when the value arrived through a
|
|
109
|
+
variable the caller set, the path reported is `arguments.<name>`, where
|
|
110
|
+
they wrote it, rather than the step it landed in.
|
|
111
|
+
"""
|
|
112
|
+
written_steps = (written or {}).get("steps")
|
|
113
|
+
found = []
|
|
114
|
+
for index, step in enumerate(steps):
|
|
115
|
+
if not isinstance(step, dict):
|
|
116
|
+
continue
|
|
117
|
+
pipeline = step.get("pipeline")
|
|
118
|
+
if not isinstance(pipeline, dict):
|
|
119
|
+
continue
|
|
120
|
+
source = (
|
|
121
|
+
source_indices[index]
|
|
122
|
+
if source_indices is not None and index < len(source_indices)
|
|
123
|
+
else index
|
|
124
|
+
)
|
|
125
|
+
from_pretrained = pipeline.get(FROM_PRETRAINED_KEY)
|
|
126
|
+
workflow = (
|
|
127
|
+
from_pretrained.get(WORKFLOW_KEY)
|
|
128
|
+
if isinstance(from_pretrained, dict)
|
|
129
|
+
else None
|
|
130
|
+
)
|
|
131
|
+
if workflow not in H3_WORKFLOWS:
|
|
132
|
+
continue
|
|
133
|
+
loras = pipeline.get(LORAS_KEY)
|
|
134
|
+
if not isinstance(loras, list):
|
|
135
|
+
continue
|
|
136
|
+
name = step.get("name")
|
|
137
|
+
where = (
|
|
138
|
+
f" in member '{name}'"
|
|
139
|
+
if isinstance(name, str) and MEMBER_SEPARATOR in name
|
|
140
|
+
else ""
|
|
141
|
+
)
|
|
142
|
+
for position, lora in enumerate(loras):
|
|
143
|
+
if not isinstance(lora, dict):
|
|
144
|
+
continue
|
|
145
|
+
weight_name = lora.get(WEIGHT_NAME_KEY)
|
|
146
|
+
if not isinstance(weight_name, str) or weight_name.startswith(
|
|
147
|
+
_UNRESOLVED_PREFIXES
|
|
148
|
+
):
|
|
149
|
+
continue
|
|
150
|
+
problem = _problem(workflow, weight_name)
|
|
151
|
+
if problem is None:
|
|
152
|
+
continue
|
|
153
|
+
severity, message = problem
|
|
154
|
+
found.append(
|
|
155
|
+
(
|
|
156
|
+
severity,
|
|
157
|
+
_path_for(written_steps, source, position, supplied)
|
|
158
|
+
or render_path(
|
|
159
|
+
(
|
|
160
|
+
"steps",
|
|
161
|
+
source,
|
|
162
|
+
"pipeline",
|
|
163
|
+
LORAS_KEY,
|
|
164
|
+
position,
|
|
165
|
+
WEIGHT_NAME_KEY,
|
|
166
|
+
)
|
|
167
|
+
),
|
|
168
|
+
message + where,
|
|
169
|
+
)
|
|
170
|
+
)
|
|
171
|
+
return found
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
def _path_for(written_steps, source, position, supplied):
|
|
175
|
+
"""`arguments.<name>` when the adapter came from a variable the caller
|
|
176
|
+
set, else None - the value is reported where it was written."""
|
|
177
|
+
if not isinstance(written_steps, list) or source >= len(written_steps):
|
|
178
|
+
return None
|
|
179
|
+
step = written_steps[source]
|
|
180
|
+
pipeline = step.get("pipeline") if isinstance(step, dict) else None
|
|
181
|
+
loras = pipeline.get(LORAS_KEY) if isinstance(pipeline, dict) else None
|
|
182
|
+
if not isinstance(loras, list) or position >= len(loras):
|
|
183
|
+
return None
|
|
184
|
+
entry = loras[position]
|
|
185
|
+
reference = entry.get(WEIGHT_NAME_KEY) if isinstance(entry, dict) else None
|
|
186
|
+
if not isinstance(reference, str) or not reference.startswith(VARIABLE_PREFIX):
|
|
187
|
+
return None
|
|
188
|
+
variable = reference.removeprefix(VARIABLE_PREFIX)
|
|
189
|
+
return f"arguments.{variable}" if variable in (supplied or ()) else None
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
def adapter_errors(workflow_definition, source_indices=None, written=None, supplied=()):
|
|
193
|
+
"""Every adapter loaded onto the wrong checkpoint partition, as
|
|
194
|
+
[{path, message}]. The definition is the expanded, substituted one, so a
|
|
195
|
+
`for_each` member's own adapter is checked as it will run."""
|
|
196
|
+
return [
|
|
197
|
+
{"path": path, "message": message}
|
|
198
|
+
for severity, path, message in _lora_problems(
|
|
199
|
+
workflow_definition.get("steps") or [], source_indices, written, supplied
|
|
200
|
+
)
|
|
201
|
+
if severity == "error"
|
|
202
|
+
]
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
def adapter_warnings(
|
|
206
|
+
workflow_definition, source_indices=None, written=None, supplied=()
|
|
207
|
+
):
|
|
208
|
+
"""Every adapter whose name says nothing about what it was trained for,
|
|
209
|
+
as messages - valid, and said out loud because nothing at run time will."""
|
|
210
|
+
return [
|
|
211
|
+
f"{path}: {message}"
|
|
212
|
+
for severity, path, message in _lora_problems(
|
|
213
|
+
workflow_definition.get("steps") or [], source_indices, written, supplied
|
|
214
|
+
)
|
|
215
|
+
if severity == "warning"
|
|
216
|
+
]
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
def warn_adapters(workflow_definition):
|
|
220
|
+
"""Say the unrecognised-adapter warning where whoever asked for the run
|
|
221
|
+
can read it - a run started from the CLI or a rerun never passed through
|
|
222
|
+
the validate route."""
|
|
223
|
+
from .events import emit_warning
|
|
224
|
+
|
|
225
|
+
for message in adapter_warnings(workflow_definition):
|
|
226
|
+
emit_warning(message, kind="adapter_unrecognized")
|
|
@@ -17,6 +17,7 @@ from .security import (
|
|
|
17
17
|
ALLOWED_VIDEO_EXTENSIONS,
|
|
18
18
|
ALLOWED_AUDIO_EXTENSIONS,
|
|
19
19
|
)
|
|
20
|
+
from .locations import validate_media_path, validate_media_url
|
|
20
21
|
|
|
21
22
|
logger = logging.getLogger("dw")
|
|
22
23
|
|
|
@@ -905,7 +906,7 @@ def fetch_image(img_spec, base_dir=None):
|
|
|
905
906
|
|
|
906
907
|
# If already a PIL Image, return as-is (allows multiple realize_args calls)
|
|
907
908
|
if hasattr(img_spec, "mode") and hasattr(img_spec, "size"):
|
|
908
|
-
logger.debug(
|
|
909
|
+
logger.debug("Image already loaded, returning as-is")
|
|
909
910
|
return img_spec
|
|
910
911
|
|
|
911
912
|
# Handle dict format: {"location": "url_or_path"}
|
|
@@ -931,12 +932,13 @@ def fetch_image(img_spec, base_dir=None):
|
|
|
931
932
|
if isinstance(img_spec, str) and (
|
|
932
933
|
img_spec.startswith("http://") or img_spec.startswith("https://")
|
|
933
934
|
):
|
|
934
|
-
validated_url =
|
|
935
|
+
validated_url = validate_media_url(img_spec, "an image argument")
|
|
935
936
|
return load_image(validated_url)
|
|
936
937
|
else:
|
|
937
|
-
# Treat as file path, relative to the workflow file
|
|
938
|
-
|
|
939
|
-
|
|
938
|
+
# Treat as file path, relative to the workflow file, and confined
|
|
939
|
+
# to the directories this workflow may read (dw/locations.py)
|
|
940
|
+
validated_path = validate_media_path(
|
|
941
|
+
str(img_spec), base_dir, "an image argument"
|
|
940
942
|
)
|
|
941
943
|
# Validate file extension
|
|
942
944
|
ext = os.path.splitext(validated_path)[1].lower()
|
|
@@ -995,12 +997,12 @@ def fetch_video(video_spec, base_dir=None):
|
|
|
995
997
|
return [fetch_video(vid, base_dir) for vid in video_spec]
|
|
996
998
|
# Otherwise assume it's already loaded video frames
|
|
997
999
|
else:
|
|
998
|
-
logger.debug(
|
|
1000
|
+
logger.debug("Video frames already loaded, returning as-is")
|
|
999
1001
|
return video_spec
|
|
1000
1002
|
|
|
1001
1003
|
# If already loaded video frames (tuple), return as-is
|
|
1002
1004
|
if isinstance(video_spec, tuple):
|
|
1003
|
-
logger.debug(
|
|
1005
|
+
logger.debug("Video frames already loaded, returning as-is")
|
|
1004
1006
|
return video_spec
|
|
1005
1007
|
|
|
1006
1008
|
# Handle dict format: {"location": "url_or_path"}
|
|
@@ -1028,12 +1030,13 @@ def fetch_video(video_spec, base_dir=None):
|
|
|
1028
1030
|
if isinstance(video_spec, str) and (
|
|
1029
1031
|
video_spec.startswith("http://") or video_spec.startswith("https://")
|
|
1030
1032
|
):
|
|
1031
|
-
validated_url =
|
|
1033
|
+
validated_url = validate_media_url(video_spec, "a video argument")
|
|
1032
1034
|
return _with_frame_rate(load_video(validated_url), validated_url)
|
|
1033
1035
|
else:
|
|
1034
|
-
# Treat as file path, relative to the workflow file
|
|
1035
|
-
|
|
1036
|
-
|
|
1036
|
+
# Treat as file path, relative to the workflow file, and confined
|
|
1037
|
+
# to the directories this workflow may read (dw/locations.py)
|
|
1038
|
+
validated_path = validate_media_path(
|
|
1039
|
+
str(video_spec), base_dir, "a video argument"
|
|
1037
1040
|
)
|
|
1038
1041
|
# Validate file extension
|
|
1039
1042
|
ext = os.path.splitext(validated_path)[1].lower()
|