- Backend Optimizations: - Optimized workflow graph traversal using deque for O(1) operations. - Implemented robust normalization for autocomplete extra_files API. - Added bounded instance-level caching to prevent memory growth. - Fixed AttributeError in hooks by restoring transformers_dict. - Added EXPERIMENTAL.md for tracking legacy code notes. - Frontend Refinements: - Fixed memory leaks via onRemoved cleanup for DOM and observers. - Added race-condition protection for autocomplete blur events. - Improved UI feedback for API errors in the autocomplete popup. - Refined autocomplete aesthetics (removed redundant last-item border). - Ensured defensive DOM cleanup in coordinate calculations. - Documentation & Quality: - Overhauled README with auto-detection and hidden inputs docs. - Fixed MD040 linting errors across all project READMEs. - Updated CHANGELOG.md and TODO.md for the 2026-02-02 release.
914 B
914 B
From hooks.py, needs more testing if it changes the output or not
# NOTE: Pooled output (y) swapping disabled - testing if it improves A1111 parity
# The pooled output might have different timing characteristics that affect
# how the style "settles" in later steps.
# if target_pooled is not None and "y" in c:
# orig_y = c["y"]
# if orig_y.shape[-1] == 2816: # SDXL
# new_pooled = target_pooled.to(device=device, dtype=dtype).clone()
# modified_y = orig_y.clone()
#
# # Only swap positive positions
# for batch_idx, cond_type in enumerate(cond_or_uncond):
# if cond_type == 0 and batch_idx < modified_y.shape[0]:
# # Replace first 1280 dims with our pooled output
# modified_y[batch_idx, :1280] = new_pooled[0]
#
# c["y"] = modified_y
# logging.debug(f" Also swapped pooled output (first 1280 of y)")