Centralize helper seed selection
This commit is contained in:
+7
-19
@@ -8,6 +8,7 @@ try:
|
||||
from .seed_config import (
|
||||
build_seed_config_json,
|
||||
build_seed_lock_config_json,
|
||||
configured_seed_from_axes,
|
||||
normalize_reroll_axis,
|
||||
seed_reroll_axis_choices,
|
||||
seed_mode_choices,
|
||||
@@ -16,6 +17,7 @@ except ImportError: # Allows local smoke tests from the repository root.
|
||||
from seed_config import (
|
||||
build_seed_config_json,
|
||||
build_seed_lock_config_json,
|
||||
configured_seed_from_axes,
|
||||
normalize_reroll_axis,
|
||||
seed_reroll_axis_choices,
|
||||
seed_mode_choices,
|
||||
@@ -225,25 +227,11 @@ class SxCPSDXLBucketSize:
|
||||
|
||||
@staticmethod
|
||||
def _configured_bucket_seed(seed_config):
|
||||
if not seed_config:
|
||||
return None
|
||||
if isinstance(seed_config, dict):
|
||||
raw = seed_config
|
||||
else:
|
||||
try:
|
||||
raw = json.loads(str(seed_config))
|
||||
except (TypeError, ValueError, json.JSONDecodeError):
|
||||
return None
|
||||
if not isinstance(raw, dict):
|
||||
return None
|
||||
for key in ("composition_seed", "content_seed", "seed", "global_seed"):
|
||||
try:
|
||||
value = int(raw.get(key))
|
||||
except (TypeError, ValueError):
|
||||
continue
|
||||
if value >= 0:
|
||||
return value
|
||||
return None
|
||||
return configured_seed_from_axes(
|
||||
seed_config,
|
||||
("composition", "content"),
|
||||
extra_keys=("seed", "global_seed"),
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def IS_CHANGED(cls, *args, **kwargs):
|
||||
|
||||
Reference in New Issue
Block a user