Files
Runware-ComfyUI-Runware/modules/providerSettings/blackForestProviderSettings.py
T

67 lines
2.2 KiB
Python

"""
Runware BlackForest Labs Provider Settings Node
Provides BlackForest Labs-specific settings for image generation
"""
from typing import Optional, Dict, Any
class RunwareBlackForestProviderSettings:
"""Runware BlackForest Labs Provider Settings Node"""
@classmethod
def INPUT_TYPES(cls):
return {
"required": {},
"optional": {
"useSafetyTolerance": ("BOOLEAN", {
"tooltip": "Enable to include safetyTolerance parameter in API request",
"default": False,
}),
"safetyTolerance": ("INT", {
"tooltip": "Safety tolerance value for generation. Only used when 'Use Safety Tolerance' is enabled.",
"default": 0,
"min": 0,
"max": 100,
}),
}
}
RETURN_TYPES = ("RUNWAREPROVIDERSETTINGS",)
RETURN_NAMES = ("Provider Settings",)
FUNCTION = "createProviderSettings"
CATEGORY = "Runware/Provider Settings"
DESCRIPTION = "Configure BlackForest Labs-specific provider settings for image generation including safety tolerance."
def createProviderSettings(self, **kwargs) -> tuple[Dict[str, Any]]:
"""Create BlackForest Labs provider settings"""
# Get control parameters
useSafetyTolerance = kwargs.get("useSafetyTolerance", False)
# Get value parameters
safetyTolerance = kwargs.get("safetyTolerance", 0)
# Build settings dictionary - only include what is enabled
blackForestSettings: Dict[str, Any] = {}
# Add safetyTolerance only if useSafetyTolerance is enabled
if useSafetyTolerance:
blackForestSettings["safetyTolerance"] = safetyTolerance
# Clean up None values
blackForestSettings = {k: v for k, v in blackForestSettings.items() if v is not None}
# Return flat dictionary - will be wrapped by inference node with provider name
return (blackForestSettings,)
# Node class mappings
NODE_CLASS_MAPPINGS = {
"RunwareBlackForestProviderSettings": RunwareBlackForestProviderSettings,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"RunwareBlackForestProviderSettings": "Runware BlackForest Labs Provider Settings",
}