DLC_SEDD_L512 / configuration_dlc_sedd.py
lavoies's picture
Upload DLCSEDD
f6d84ce verified
"""DLC SEDD config for Hugging Face."""
import transformers
class DLCSEDDGraphConfig(transformers.PretrainedConfig):
def __init__(self, graph_type="absorb", **kwargs):
super().__init__(**kwargs)
self.type = graph_type
self.file = "data"
self.report_all = False
class DLCSEDDNoiseConfig(transformers.PretrainedConfig):
def __init__(self, noise_type="loglinear", sigma_min=0.0001, sigma_max=20, **kwargs):
super().__init__(*kwargs)
self.type = noise_type
self.sigma_min = sigma_min
self.sigma_max = sigma_max
class DLCSEDDConfig(transformers.PretrainedConfig):
"""Hugging Face configuration class for dlc sedd."""
model_type = "dlc_sedd"
def __init__(
self,
length: int = 512,
hidden_size: int = 1024,
cond_dim: int = 128,
n_blocks: int = 24,
n_heads: int = 16,
dropout: float = 0.1,
time_conditioning: bool = True,
scale_by_sigma: bool = True,
shared_embedding: bool = True,
graph_type: str = "absorb",
tokens: float = 256,
**kwargs,
):
super().__init__(**kwargs)
self.length = length
self.hidden_size = hidden_size
self.cond_dim = cond_dim
self.n_blocks = n_blocks
self.n_heads = n_heads
self.dropout = dropout
self.time_conditioning = time_conditioning
self.scale_by_sigma = scale_by_sigma
self.shared_embedding = shared_embedding
self.graph = DLCSEDDGraphConfig()
self.noise = DLCSEDDNoiseConfig()
self.tokens = tokens