diff --git a/StabilityMatrix.Core/Models/Packages/AiToolkit.cs b/StabilityMatrix.Core/Models/Packages/AiToolkit.cs index 24009cef..fc1e388e 100644 --- a/StabilityMatrix.Core/Models/Packages/AiToolkit.cs +++ b/StabilityMatrix.Core/Models/Packages/AiToolkit.cs @@ -35,10 +35,7 @@ IPyInstallationManager pyInstallationManager public override string LicenseUrl => "https://github.com/ostris/ai-toolkit/blob/main/LICENSE"; public override string LaunchCommand => string.Empty; - public override Uri PreviewImageUri => - new( - "https://camo.githubusercontent.com/ea35b399e0d659f9f2ee09cbedb58e1a3ec7a0eab763e8ae8d11d076aad5be40/68747470733a2f2f6f73747269732e636f6d2f77702d636f6e74656e742f75706c6f6164732f323032352f30322f746f6f6c6b69742d75692e6a7067" - ); + public override Uri PreviewImageUri => new("https://cdn.lykos.ai/sm/packages/aitoolkit/preview.webp"); public override string OutputFolderName => "output"; public override IEnumerable AvailableTorchIndices => [TorchIndex.Cuda]; diff --git a/StabilityMatrix.Core/Models/Packages/ComfyZluda.cs b/StabilityMatrix.Core/Models/Packages/ComfyZluda.cs index 16565208..723db36b 100644 --- a/StabilityMatrix.Core/Models/Packages/ComfyZluda.cs +++ b/StabilityMatrix.Core/Models/Packages/ComfyZluda.cs @@ -6,6 +6,7 @@ using StabilityMatrix.Core.Helper; using StabilityMatrix.Core.Helper.Cache; using StabilityMatrix.Core.Helper.HardwareInfo; +using StabilityMatrix.Core.Models; using StabilityMatrix.Core.Models.FileInterfaces; using StabilityMatrix.Core.Models.Progress; using StabilityMatrix.Core.Processes; @@ -40,8 +41,65 @@ IPyInstallationManager pyInstallationManager public override string Disclaimer => "Prerequisite install may require admin privileges and a reboot. " + "Visual Studio Build Tools for C++ Desktop Development will be installed automatically. " - + "AMD GPUs under the RX 6800 may require additional manual setup."; + + "AMD GPUs under the RX 6800 may require additional manual setup. "; public override string LaunchCommand => Path.Combine("zluda", "zluda.exe"); + + public override List LaunchOptions + { + get + { + var options = new List + { + new() + { + Name = "Cross Attention Method", + Type = LaunchOptionType.Bool, + InitialValue = "--use-quad-cross-attention", + Options = + [ + "--use-split-cross-attention", + "--use-quad-cross-attention", + "--use-pytorch-cross-attention", + "--use-sage-attention", + ], + }, + new() + { + Name = "Disable Async Offload", + Type = LaunchOptionType.Bool, + InitialValue = true, + Options = ["--disable-async-offload"], + }, + new() + { + Name = "Disable Pinned Memory", + Type = LaunchOptionType.Bool, + InitialValue = true, + Options = ["--disable-pinned-memory"], + }, + new() + { + Name = "Disable Smart Memory", + Type = LaunchOptionType.Bool, + InitialValue = false, + Options = ["--disable-smart-memory"], + }, + new() + { + Name = "Disable Model/Node Caching", + Type = LaunchOptionType.Bool, + InitialValue = false, + Options = ["--cache-none"], + }, + }; + + options.AddRange( + base.LaunchOptions.Where(x => x.Name != "Cross Attention Method") + ); + return options; + } + } + public override IEnumerable AvailableTorchIndices => [TorchIndex.Zluda]; public override TorchIndex GetRecommendedTorchVersion() => TorchIndex.Zluda;