Spectrum MOSS-Image (Manual):
The SpectrumMOSSImageManual node is designed to provide manual control over the Spectrum scheduling for MOSS-Image models within the ComfyUI framework. This node allows you to forecast hidden states, effectively skipping full transformer evaluations, which can significantly enhance processing speed while maintaining model accuracy. By leveraging native ER-SDE detection and utilizing a solver bridge, this node optimizes model performance through manual configuration of various scheduling parameters. This approach is particularly beneficial for users who wish to fine-tune the balance between computational efficiency and model precision, offering a customizable solution for advanced model optimization.
Spectrum MOSS-Image (Manual) Input Parameters:
model
This parameter represents the MOSS-Image model that you wish to optimize using manual Spectrum scheduling. It is a required input and serves as the foundation upon which all other configurations are applied.
warmup_steps
This integer parameter specifies the number of initial steps that always run the full transformer before forecasting is allowed. The default value is 8, with a range from 0 to 64. Higher values ensure safer operation by allowing more initial data processing, while lower values can increase speed by reducing initial processing time.
tail_actual_steps
This integer parameter determines the number of final steps that are forced to use the full transformer. The default is 2, with a range from 0 to 64. Increasing this value can enhance safety by ensuring more thorough final evaluations, whereas decreasing it can speed up the process by reducing the number of full evaluations at the end.
window_size
A float parameter that sets the starting forecast window before a full-transformer refresh is required. The default value is 2.0, with a range from 1.0 to 16.0. A higher window size allows for more aggressive forecasting, potentially increasing speed, while a lower size is safer and more conservative.
flex_window
This float parameter controls how much the forecast window can grow after refreshes. It defaults to 0.75 and ranges from 0.0 to 8.0. A higher value allows for more aggressive growth, which can speed up processing, while a lower value maintains a safer, more controlled approach.
max_consecutive_forecasts
An integer parameter that limits the maximum number of forecast steps allowed consecutively before an actual refresh. The default is 2, with a range from 0 to 32. Higher values can increase speed but may introduce risk, while lower values ensure safer operation by enforcing more frequent refreshes.
history_points
This integer parameter specifies the number of actual hidden-state anchors kept for the Spectrum predictor, with a default of 8 and a range from 2 to 32. More history points use more memory but can improve prediction accuracy. Note that this is ignored when using ER-SDE.
chebyshev_degree
This integer parameter sets the polynomial degree used by the Spectrum predictor, with a default of 4 and a range from 1 to 12. Higher degrees can model more complex trends but may reduce stability. This parameter is ignored when using ER-SDE.
ridge_lambda
A float parameter that determines the regularization strength for the Spectrum predictor, with a default of 0.1 and a range from 0.0 to 10.0. Higher values dampen extrapolation more strongly, which can stabilize predictions. This parameter is ignored when using ER-SDE.
blend_weight
This float parameter controls the mix between spectral prediction and linear extrapolation, with a default of 0.5 and a range from 0.0 to 1.0. A value of 0 uses only linear extrapolation, while a value of 1 uses only spectral prediction. This parameter is ignored when using ER-SDE.
cache_device
This parameter specifies where the actual hidden-state history is stored, offering options such as "main_device", "offload_device", and "cpu". The default is "main_device", which is the fastest but uses VRAM. Choosing "CPU" or "offload_device" saves VRAM but may reduce speed.
force_actual_on_control
A boolean parameter that, when enabled, forces actual transformer evaluation when a control input is present. The default is True, which ensures safer compatibility by prioritizing accuracy over speed.
debug
This boolean parameter, when enabled, prints Spectrum scheduling, forecast error, and speed statistics to the console. The default is False, which keeps the console output clean unless debugging is needed.
warn_unverified_sampler
A boolean parameter that, when enabled, shows a console warning for samplers not yet validated. The default is True, which helps ensure that you are aware of potential issues with unverified samplers without altering their behavior.
Spectrum MOSS-Image (Manual) Output Parameters:
model
The output is the optimized MOSS-Image model, which has been adjusted according to the manual Spectrum scheduling parameters you have set. This model is now configured to potentially run more efficiently, balancing speed and accuracy based on your input settings.
Spectrum MOSS-Image (Manual) Usage Tips:
- Adjust
warmup_stepsandtail_actual_stepsto balance between safety and speed; higher values ensure more thorough processing, while lower values can increase speed. - Use
window_sizeandflex_windowto control the aggressiveness of forecasting; larger values can speed up processing but may introduce risk. - Consider the
cache_devicesetting based on your hardware capabilities; using "main_device" is faster but requires more VRAM. - Enable
debugmode to monitor the impact of your settings and make informed adjustments based on real-time feedback.
Spectrum MOSS-Image (Manual) Common Errors and Solutions:
"Spectrum (MOSS-Image) requires the native ComfyUI MOSSImage core."
- Explanation: This error occurs when the model provided is not compatible with the Spectrum MOSS-Image node, likely due to an outdated ComfyUI version or incorrect model type.
- Solution: Ensure that you are using a version of ComfyUI that supports the native MOSS-Image core and that the model is correctly loaded using the "Load Diffusion Model" feature.
"Invalid parameter value."
- Explanation: This error indicates that one or more input parameters are set outside their allowed range or with an incorrect type.
- Solution: Double-check all input parameters to ensure they are within the specified ranges and of the correct type, as outlined in the input parameter descriptions.
