{ "_comment": "EgaraNet: DINOv3 ViT-L backbone + StyleNet (Transposed Attention Transformer) composite model config.", "model_type": "egara_net", "architectures": ["EgaraNetModel"], "torch_dtype": "float32", "transformers_version": "4.56.0.dev0", "auto_map": { "AutoConfig": "configuration_egara_net.EgaraNetConfig", "AutoModel": "modeling_egara_net.EgaraNetModel" }, "_section_backbone": "--- DINOv3 ViT Backbone (nested sub-config) ---", "backbone_config": { "model_type": "dinov3_vit", "architectures": ["DINOv3ViTModel"], "hidden_size": 1024, "num_hidden_layers": 24, "num_attention_heads": 16, "intermediate_size": 4096, "hidden_act": "gelu", "image_size": 224, "patch_size": 16, "num_channels": 3, "num_register_tokens": 4, "attention_dropout": 0.0, "drop_path_rate": 0.0, "layer_norm_eps": 1e-05, "layerscale_value": 1.0, "pos_embed_rescale": 2.0, "pos_embed_jitter": null, "pos_embed_shift": null, "rope_theta": 100.0, "key_bias": false, "query_bias": true, "value_bias": true, "proj_bias": true, "mlp_bias": true, "use_gated_mlp": false, "initializer_range": 0.02, "torch_dtype": "float32", "transformers_version": "4.56.0.dev0" }, "_section_stylenet": "--- StyleNet: Transposed Attention Transformer (TAT) head ---", "tat_input_dim": null, "_tat_input_dim_note": "null = auto-inferred from backbone_config.hidden_size at model init", "tat_hidden_dim": 1024, "_tat_hidden_dim_note": "Internal channel dimension of TAT layers. Matches backbone hidden_size for ViT-L.", "tat_output_dim": 1024, "_tat_output_dim_note": "Final L2-normalised style vector dimension.", "tat_num_layers": 3, "_tat_num_layers_note": "Number of stacked TransposedAttentionTransformer layers.", "tat_num_heads": 16, "_tat_num_heads_note": "Number of attention heads in TAT. Must divide tat_hidden_dim evenly. (1024 / 16 = 64)", "_section_tat_internals": "--- TAT internals (derived / documented for reference) ---", "tat_rms_norm_eps": 1e-05, "tat_swiglu_multiple": 64, "_tat_swiglu_note": "SwiGLU hidden = round_up(floor(hidden_dim * 8/3), multiple). E.g. 768->2048, 1024->2752.", "_section_attnpool": "--- Attention Pooling ---", "attn_pool_num_heads": 8, "_attn_pool_note": "nn.MultiheadAttention heads used in AttentionPooling. Must divide tat_hidden_dim.", "_section_head": "--- Projection Head (hidden -> output) ---", "head_act": "silu", "_head_note": "Linear(hidden) -> SiLU -> Linear(output). Output is L2-normalised.", "_section_preprocessing": "--- Default inference preprocessing ---", "image_size": 512, "keep_aspect_ratio": true, "_keep_aspect_ratio_note": "true = MaxResizeMod16(image_size); false = square resize.", "image_mean": [0.485, 0.456, 0.406], "image_std": [0.229, 0.224, 0.225], "_image_stats_note": "ImageNet stats; must match backbone preprocessor_config.json." }