Quark-72M / configuration_quark.py
ThingsAI's picture
fix: has_no_defaults_at_init=True per evitare RecursionError in to_diff_dict
c54f415 verified
Raw
History Blame Contribute Delete
1.41 kB
"""
Quark model configuration — compatibile con AutoConfig / AutoModel HuggingFace.
"""
from transformers import PretrainedConfig
class QuarkConfig(PretrainedConfig):
model_type = "quark"
# Spezza la ricorsione in to_diff_dict(): senza questo, transformers tenta
# di costruire self.__class__() per il diff, che richiama __init__ -> __repr__
# -> to_diff_dict() -> self.__class__() all'infinito.
has_no_defaults_at_init = True
def __init__(
self,
vocab_size = 65_536,
d_model = 512,
n_heads = 8,
n_kv_heads = 2,
n_layers = 14,
d_ff = 1344,
head_dim = 64,
max_seq_len = 2048,
rope_theta = 10_000.0,
rms_eps = 1e-5,
qkv_bias = True,
dropout = 0.0,
tie_word_embeddings = True,
**kwargs,
):
self.vocab_size = vocab_size
self.d_model = d_model
self.n_heads = n_heads
self.n_kv_heads = n_kv_heads
self.n_layers = n_layers
self.d_ff = d_ff
self.head_dim = head_dim
self.max_seq_len = max_seq_len
self.rope_theta = rope_theta
self.rms_eps = rms_eps
self.qkv_bias = qkv_bias
self.dropout = dropout
super().__init__(tie_word_embeddings=tie_word_embeddings, **kwargs)