Spaces:
Running
Running
Update constants.ts
Browse files- constants.ts +266 -2
constants.ts
CHANGED
|
@@ -11,7 +11,7 @@ export const LAYER_DEFINITIONS: Record<LayerType, LayerDefinition> = {
|
|
| 11 |
category: 'Core',
|
| 12 |
parameters: [
|
| 13 |
{ name: 'name', type: 'string', label: 'Name', default: 'input_1', description: 'Variable name in forward()' },
|
| 14 |
-
{ name: 'modality', type: 'select', label: 'Modality', default: 'Tensor', options: ['Tensor', 'Image', 'Text', 'Audio', 'Video', 'Latent', 'State', '3D Volume', 'Point Cloud', 'Radar', 'Lidar'] },
|
| 15 |
{ name: 'shape', type: 'string', label: 'Shape (e.g. 3,224,224)', default: '3, 224, 224' },
|
| 16 |
{ name: 'batch_size', type: 'number', label: 'Batch Size', default: 32 },
|
| 17 |
{ name: 'dtype', type: 'select', label: 'Data Type', default: 'float32', options: ['float32', 'int64', 'bool'] }
|
|
@@ -62,6 +62,249 @@ export const LAYER_DEFINITIONS: Record<LayerType, LayerDefinition> = {
|
|
| 62 |
]
|
| 63 |
},
|
| 64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
// --- VIDEO / GENERATION ---
|
| 66 |
[LayerType.VIDEO_DIFFUSION_BLOCK]: {
|
| 67 |
type: LayerType.VIDEO_DIFFUSION_BLOCK,
|
|
@@ -410,6 +653,17 @@ export const LAYER_DEFINITIONS: Record<LayerType, LayerDefinition> = {
|
|
| 410 |
{ name: 'embedding_dim', type: 'number', label: 'Embedding Dim', default: 512 }
|
| 411 |
]
|
| 412 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 413 |
|
| 414 |
// --- 3D / VISION ---
|
| 415 |
[LayerType.NERF_BLOCK]: {
|
|
@@ -463,6 +717,16 @@ export const LAYER_DEFINITIONS: Record<LayerType, LayerDefinition> = {
|
|
| 463 |
{ name: 'sh_degree', type: 'number', label: 'SH Degree', default: 3 }
|
| 464 |
]
|
| 465 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 466 |
|
| 467 |
// --- MERGE ---
|
| 468 |
[LayerType.CONCAT]: {
|
|
@@ -1311,4 +1575,4 @@ export const TEMPLATES: Record<string, GraphTemplate> = {
|
|
| 1311 |
{ id: '4', source: 'cat', target: 'unet' }, { id: '5', source: 'unet', target: 'out' }
|
| 1312 |
]
|
| 1313 |
}
|
| 1314 |
-
};
|
|
|
|
| 11 |
category: 'Core',
|
| 12 |
parameters: [
|
| 13 |
{ name: 'name', type: 'string', label: 'Name', default: 'input_1', description: 'Variable name in forward()' },
|
| 14 |
+
{ name: 'modality', type: 'select', label: 'Modality', default: 'Tensor', options: ['Tensor', 'Image', 'Text', 'Audio', 'Video', 'Latent', 'State', '3D Volume', 'Point Cloud', 'Radar', 'Lidar', 'Graph', 'Molecule'] },
|
| 15 |
{ name: 'shape', type: 'string', label: 'Shape (e.g. 3,224,224)', default: '3, 224, 224' },
|
| 16 |
{ name: 'batch_size', type: 'number', label: 'Batch Size', default: 32 },
|
| 17 |
{ name: 'dtype', type: 'select', label: 'Data Type', default: 'float32', options: ['float32', 'int64', 'bool'] }
|
|
|
|
| 62 |
]
|
| 63 |
},
|
| 64 |
|
| 65 |
+
// --- GRAPH NEURAL NETWORKS ---
|
| 66 |
+
[LayerType.GCN_CONV]: {
|
| 67 |
+
type: LayerType.GCN_CONV,
|
| 68 |
+
label: 'GCN Conv',
|
| 69 |
+
description: 'Graph Convolutional Network',
|
| 70 |
+
category: 'Graph',
|
| 71 |
+
parameters: [
|
| 72 |
+
{ name: 'in_channels', type: 'number', label: 'In Channels', default: 16 },
|
| 73 |
+
{ name: 'out_channels', type: 'number', label: 'Out Channels', default: 32 },
|
| 74 |
+
{ name: 'improved', type: 'boolean', label: 'Improved GCN', default: false }
|
| 75 |
+
]
|
| 76 |
+
},
|
| 77 |
+
[LayerType.GRAPH_SAGE]: {
|
| 78 |
+
type: LayerType.GRAPH_SAGE,
|
| 79 |
+
label: 'GraphSAGE',
|
| 80 |
+
description: 'Inductive Graph Learning',
|
| 81 |
+
category: 'Graph',
|
| 82 |
+
parameters: [
|
| 83 |
+
{ name: 'in_channels', type: 'number', label: 'In Channels', default: 16 },
|
| 84 |
+
{ name: 'out_channels', type: 'number', label: 'Out Channels', default: 32 },
|
| 85 |
+
{ name: 'aggr', type: 'select', label: 'Aggregator', default: 'mean', options: ['mean', 'max', 'lstm'] }
|
| 86 |
+
]
|
| 87 |
+
},
|
| 88 |
+
[LayerType.GAT_CONV]: {
|
| 89 |
+
type: LayerType.GAT_CONV,
|
| 90 |
+
label: 'GAT Conv',
|
| 91 |
+
description: 'Graph Attention Network',
|
| 92 |
+
category: 'Graph',
|
| 93 |
+
parameters: [
|
| 94 |
+
{ name: 'in_channels', type: 'number', label: 'In Channels', default: 16 },
|
| 95 |
+
{ name: 'out_channels', type: 'number', label: 'Out Channels', default: 8 },
|
| 96 |
+
{ name: 'heads', type: 'number', label: 'Attention Heads', default: 4 },
|
| 97 |
+
{ name: 'concat', type: 'boolean', label: 'Concat Heads', default: true }
|
| 98 |
+
]
|
| 99 |
+
},
|
| 100 |
+
[LayerType.GIN_CONV]: {
|
| 101 |
+
type: LayerType.GIN_CONV,
|
| 102 |
+
label: 'GIN Conv',
|
| 103 |
+
description: 'Graph Isomorphism Network',
|
| 104 |
+
category: 'Graph',
|
| 105 |
+
parameters: [
|
| 106 |
+
{ name: 'eps', type: 'number', label: 'Epsilon', default: 0 },
|
| 107 |
+
{ name: 'train_eps', type: 'boolean', label: 'Train Epsilon', default: true }
|
| 108 |
+
]
|
| 109 |
+
},
|
| 110 |
+
|
| 111 |
+
// --- PHYSICS & SCIML ---
|
| 112 |
+
[LayerType.NEURAL_ODE]: {
|
| 113 |
+
type: LayerType.NEURAL_ODE,
|
| 114 |
+
label: 'Neural ODE',
|
| 115 |
+
description: 'Continuous Depth Model',
|
| 116 |
+
category: 'Physics',
|
| 117 |
+
parameters: [
|
| 118 |
+
{ name: 'hidden_dim', type: 'number', label: 'Hidden Dim', default: 64 },
|
| 119 |
+
{ name: 'solver', type: 'select', label: 'Solver', default: 'dopri5', options: ['dopri5', 'rk4', 'euler'] }
|
| 120 |
+
]
|
| 121 |
+
},
|
| 122 |
+
[LayerType.PINN_LINEAR]: {
|
| 123 |
+
type: LayerType.PINN_LINEAR,
|
| 124 |
+
label: 'PINN Linear',
|
| 125 |
+
description: 'Physics-Informed Linear Layer',
|
| 126 |
+
category: 'Physics',
|
| 127 |
+
parameters: [
|
| 128 |
+
{ name: 'in_features', type: 'number', label: 'In Features', default: 32 },
|
| 129 |
+
{ name: 'out_features', type: 'number', label: 'Out Features', default: 32 },
|
| 130 |
+
{ name: 'constraint', type: 'text', label: 'Constraint Formula', default: 'grad(u, x) - f(x) = 0' }
|
| 131 |
+
]
|
| 132 |
+
},
|
| 133 |
+
[LayerType.HAMILTONIAN_NN]: {
|
| 134 |
+
type: LayerType.HAMILTONIAN_NN,
|
| 135 |
+
label: 'Hamiltonian NN',
|
| 136 |
+
description: 'Conserves Energy/Momentum',
|
| 137 |
+
category: 'Physics',
|
| 138 |
+
parameters: [
|
| 139 |
+
{ name: 'dim', type: 'number', label: 'Dimension', default: 2 },
|
| 140 |
+
{ name: 'hidden_dim', type: 'number', label: 'Hidden Dim', default: 64 }
|
| 141 |
+
]
|
| 142 |
+
},
|
| 143 |
+
[LayerType.PROTEIN_FOLDING]: {
|
| 144 |
+
type: LayerType.PROTEIN_FOLDING,
|
| 145 |
+
label: 'Protein Folding',
|
| 146 |
+
description: 'AlphaFold EvoFormer Block',
|
| 147 |
+
category: 'Physics',
|
| 148 |
+
parameters: [
|
| 149 |
+
{ name: 'msa_dim', type: 'number', label: 'MSA Dim', default: 256 },
|
| 150 |
+
{ name: 'pair_dim', type: 'number', label: 'Pair Dim', default: 128 },
|
| 151 |
+
{ name: 'num_heads', type: 'number', label: 'Heads', default: 8 }
|
| 152 |
+
]
|
| 153 |
+
},
|
| 154 |
+
|
| 155 |
+
// --- SPIKING & NEUROMORPHIC ---
|
| 156 |
+
[LayerType.LIF_NEURON]: {
|
| 157 |
+
type: LayerType.LIF_NEURON,
|
| 158 |
+
label: 'LIF Neuron',
|
| 159 |
+
description: 'Leaky Integrate-and-Fire',
|
| 160 |
+
category: 'Spiking',
|
| 161 |
+
parameters: [
|
| 162 |
+
{ name: 'tau', type: 'number', label: 'Time Constant', default: 2.0 },
|
| 163 |
+
{ name: 'v_threshold', type: 'number', label: 'Threshold', default: 1.0 },
|
| 164 |
+
{ name: 'surrogate_grad', type: 'select', label: 'Surrogate Grad', default: 'fast_sigmoid', options: ['fast_sigmoid', 'arctan'] }
|
| 165 |
+
]
|
| 166 |
+
},
|
| 167 |
+
[LayerType.SPIKING_LAYER]: {
|
| 168 |
+
type: LayerType.SPIKING_LAYER,
|
| 169 |
+
label: 'Spiking Dense',
|
| 170 |
+
description: 'Fully Connected SNN Layer',
|
| 171 |
+
category: 'Spiking',
|
| 172 |
+
parameters: [
|
| 173 |
+
{ name: 'in_features', type: 'number', label: 'In Features', default: 128 },
|
| 174 |
+
{ name: 'out_features', type: 'number', label: 'Out Features', default: 128 },
|
| 175 |
+
{ name: 'spike_mode', type: 'boolean', label: 'Output Spikes', default: true }
|
| 176 |
+
]
|
| 177 |
+
},
|
| 178 |
+
|
| 179 |
+
// --- REINFORCEMENT LEARNING ---
|
| 180 |
+
[LayerType.DUELING_HEAD]: {
|
| 181 |
+
type: LayerType.DUELING_HEAD,
|
| 182 |
+
label: 'Dueling Head',
|
| 183 |
+
description: 'Separates Value and Advantage',
|
| 184 |
+
category: 'RL',
|
| 185 |
+
parameters: [
|
| 186 |
+
{ name: 'input_dim', type: 'number', label: 'Input Dim', default: 512 },
|
| 187 |
+
{ name: 'action_dim', type: 'number', label: 'Action Dim', default: 4 }
|
| 188 |
+
]
|
| 189 |
+
},
|
| 190 |
+
[LayerType.PPO_HEAD]: {
|
| 191 |
+
type: LayerType.PPO_HEAD,
|
| 192 |
+
label: 'PPO Actor-Critic',
|
| 193 |
+
description: 'Policy and Value Heads',
|
| 194 |
+
category: 'RL',
|
| 195 |
+
parameters: [
|
| 196 |
+
{ name: 'hidden_dim', type: 'number', label: 'Hidden Dim', default: 256 },
|
| 197 |
+
{ name: 'action_space', type: 'select', label: 'Action Space', default: 'Discrete', options: ['Discrete', 'Continuous'] }
|
| 198 |
+
]
|
| 199 |
+
},
|
| 200 |
+
[LayerType.SAC_HEAD]: {
|
| 201 |
+
type: LayerType.SAC_HEAD,
|
| 202 |
+
label: 'SAC Head',
|
| 203 |
+
description: 'Soft Actor-Critic Output',
|
| 204 |
+
category: 'RL',
|
| 205 |
+
parameters: [
|
| 206 |
+
{ name: 'hidden_dim', type: 'number', label: 'Hidden Dim', default: 256 },
|
| 207 |
+
{ name: 'log_std_min', type: 'number', label: 'Min Log Std', default: -20 },
|
| 208 |
+
{ name: 'log_std_max', type: 'number', label: 'Max Log Std', default: 2 }
|
| 209 |
+
]
|
| 210 |
+
},
|
| 211 |
+
|
| 212 |
+
// --- ADVANCED / NICHE ---
|
| 213 |
+
[LayerType.CAPSULE]: {
|
| 214 |
+
type: LayerType.CAPSULE,
|
| 215 |
+
label: 'Capsule Layer',
|
| 216 |
+
description: 'Preserves spatial hierarchy',
|
| 217 |
+
category: 'Advanced',
|
| 218 |
+
parameters: [
|
| 219 |
+
{ name: 'num_capsules', type: 'number', label: 'Num Capsules', default: 10 },
|
| 220 |
+
{ name: 'capsule_dim', type: 'number', label: 'Capsule Dim', default: 16 },
|
| 221 |
+
{ name: 'routings', type: 'number', label: 'Routing Iters', default: 3 }
|
| 222 |
+
]
|
| 223 |
+
},
|
| 224 |
+
[LayerType.HYPER_NET]: {
|
| 225 |
+
type: LayerType.HYPER_NET,
|
| 226 |
+
label: 'HyperNetwork',
|
| 227 |
+
description: 'Generates weights for another NN',
|
| 228 |
+
category: 'Advanced',
|
| 229 |
+
parameters: [
|
| 230 |
+
{ name: 'target_shape', type: 'string', label: 'Target Shape', default: '64,64' },
|
| 231 |
+
{ name: 'embedding_dim', type: 'number', label: 'Z Dim', default: 32 }
|
| 232 |
+
]
|
| 233 |
+
},
|
| 234 |
+
[LayerType.MAMBA_BLOCK]: {
|
| 235 |
+
type: LayerType.MAMBA_BLOCK,
|
| 236 |
+
label: 'Mamba (SSM)',
|
| 237 |
+
description: 'Selective State Space Model',
|
| 238 |
+
category: 'Advanced',
|
| 239 |
+
parameters: [
|
| 240 |
+
{ name: 'd_model', type: 'number', label: 'D Model', default: 512 },
|
| 241 |
+
{ name: 'd_state', type: 'number', label: 'State Dim', default: 16 },
|
| 242 |
+
{ name: 'expand', type: 'number', label: 'Expansion', default: 2 }
|
| 243 |
+
]
|
| 244 |
+
},
|
| 245 |
+
[LayerType.RWKV_BLOCK]: {
|
| 246 |
+
type: LayerType.RWKV_BLOCK,
|
| 247 |
+
label: 'RWKV Block',
|
| 248 |
+
description: 'RNN-Transformer Hybrid',
|
| 249 |
+
category: 'Advanced',
|
| 250 |
+
parameters: [
|
| 251 |
+
{ name: 'n_embd', type: 'number', label: 'Embed Dim', default: 768 },
|
| 252 |
+
{ name: 'n_layer', type: 'number', label: 'Layer Idx', default: 0 }
|
| 253 |
+
]
|
| 254 |
+
},
|
| 255 |
+
[LayerType.HOPFIELD]: {
|
| 256 |
+
type: LayerType.HOPFIELD,
|
| 257 |
+
label: 'Hopfield Layer',
|
| 258 |
+
description: 'Dense Associative Memory',
|
| 259 |
+
category: 'Advanced',
|
| 260 |
+
parameters: [
|
| 261 |
+
{ name: 'in_features', type: 'number', label: 'Features', default: 64 },
|
| 262 |
+
{ name: 'stored_patterns', type: 'number', label: 'Pattern Capacity', default: 10 }
|
| 263 |
+
]
|
| 264 |
+
},
|
| 265 |
+
[LayerType.NORMALIZING_FLOW]: {
|
| 266 |
+
type: LayerType.NORMALIZING_FLOW,
|
| 267 |
+
label: 'Normalizing Flow',
|
| 268 |
+
description: 'Invertible Generative Model',
|
| 269 |
+
category: 'Advanced',
|
| 270 |
+
parameters: [
|
| 271 |
+
{ name: 'flow_type', type: 'select', label: 'Type', default: 'RealNVP', options: ['RealNVP', 'Glow', 'MAF'] },
|
| 272 |
+
{ name: 'num_flows', type: 'number', label: 'Num Flows', default: 4 }
|
| 273 |
+
]
|
| 274 |
+
},
|
| 275 |
+
[LayerType.DNC_MEMORY]: {
|
| 276 |
+
type: LayerType.DNC_MEMORY,
|
| 277 |
+
label: 'DNC Memory',
|
| 278 |
+
description: 'Differentiable Neural Computer',
|
| 279 |
+
category: 'Advanced',
|
| 280 |
+
parameters: [
|
| 281 |
+
{ name: 'memory_size', type: 'number', label: 'Mem Slots', default: 128 },
|
| 282 |
+
{ name: 'word_size', type: 'number', label: 'Word Size', default: 20 },
|
| 283 |
+
{ name: 'num_read_heads', type: 'number', label: 'Read Heads', default: 4 }
|
| 284 |
+
]
|
| 285 |
+
},
|
| 286 |
+
[LayerType.ARCFACE]: {
|
| 287 |
+
type: LayerType.ARCFACE,
|
| 288 |
+
label: 'ArcFace',
|
| 289 |
+
description: 'Metric Learning Loss',
|
| 290 |
+
category: 'Advanced',
|
| 291 |
+
parameters: [
|
| 292 |
+
{ name: 's', type: 'number', label: 'Scale (s)', default: 64.0 },
|
| 293 |
+
{ name: 'm', type: 'number', label: 'Margin (m)', default: 0.5 },
|
| 294 |
+
{ name: 'num_classes', type: 'number', label: 'Classes', default: 1000 }
|
| 295 |
+
]
|
| 296 |
+
},
|
| 297 |
+
[LayerType.ECHO_STATE]: {
|
| 298 |
+
type: LayerType.ECHO_STATE,
|
| 299 |
+
label: 'Reservoir (ESN)',
|
| 300 |
+
description: 'Echo State Network',
|
| 301 |
+
category: 'Advanced',
|
| 302 |
+
parameters: [
|
| 303 |
+
{ name: 'reservoir_size', type: 'number', label: 'Reservoir Size', default: 1000 },
|
| 304 |
+
{ name: 'spectral_radius', type: 'number', label: 'Spectral Radius', default: 0.9 }
|
| 305 |
+
]
|
| 306 |
+
},
|
| 307 |
+
|
| 308 |
// --- VIDEO / GENERATION ---
|
| 309 |
[LayerType.VIDEO_DIFFUSION_BLOCK]: {
|
| 310 |
type: LayerType.VIDEO_DIFFUSION_BLOCK,
|
|
|
|
| 653 |
{ name: 'embedding_dim', type: 'number', label: 'Embedding Dim', default: 512 }
|
| 654 |
]
|
| 655 |
},
|
| 656 |
+
[LayerType.SINC_CONV]: {
|
| 657 |
+
type: LayerType.SINC_CONV,
|
| 658 |
+
label: 'SincConv',
|
| 659 |
+
description: 'Parametric Sinc Filters (Speech)',
|
| 660 |
+
category: 'Audio',
|
| 661 |
+
parameters: [
|
| 662 |
+
{ name: 'out_channels', type: 'number', label: 'Filters', default: 80 },
|
| 663 |
+
{ name: 'kernel_size', type: 'number', label: 'Kernel Size', default: 251 },
|
| 664 |
+
{ name: 'min_low_hz', type: 'number', label: 'Min Hz', default: 50 }
|
| 665 |
+
]
|
| 666 |
+
},
|
| 667 |
|
| 668 |
// --- 3D / VISION ---
|
| 669 |
[LayerType.NERF_BLOCK]: {
|
|
|
|
| 717 |
{ name: 'sh_degree', type: 'number', label: 'SH Degree', default: 3 }
|
| 718 |
]
|
| 719 |
},
|
| 720 |
+
[LayerType.MESH_CONV]: {
|
| 721 |
+
type: LayerType.MESH_CONV,
|
| 722 |
+
label: 'Mesh Conv',
|
| 723 |
+
description: 'Convolution on 3D Meshes',
|
| 724 |
+
category: '3D',
|
| 725 |
+
parameters: [
|
| 726 |
+
{ name: 'in_channels', type: 'number', label: 'In Channels', default: 3 },
|
| 727 |
+
{ name: 'out_channels', type: 'number', label: 'Out Channels', default: 64 }
|
| 728 |
+
]
|
| 729 |
+
},
|
| 730 |
|
| 731 |
// --- MERGE ---
|
| 732 |
[LayerType.CONCAT]: {
|
|
|
|
| 1575 |
{ id: '4', source: 'cat', target: 'unet' }, { id: '5', source: 'unet', target: 'out' }
|
| 1576 |
]
|
| 1577 |
}
|
| 1578 |
+
};
|