| { |
| "architecture": { |
| "family": "masked_lm", |
| "is_moe": false, |
| "positional": "learned", |
| "tie_word_embeddings": true, |
| "view": "encoder" |
| }, |
| "capabilities": { |
| "task_heads": [ |
| "masked_lm", |
| "multiple_choice", |
| "next_sentence_prediction", |
| "pretraining", |
| "question_answering", |
| "sequence_classification", |
| "token_classification" |
| ], |
| "tensor_parallel": false |
| }, |
| "components": [ |
| { |
| "children": [ |
| "embeddings", |
| "encoder", |
| "pooler" |
| ], |
| "class_name": "FNetModel", |
| "id": "model", |
| "kind": "model", |
| "path_pattern": "model" |
| }, |
| { |
| "attributes": { |
| "embedding_dim": "config.hidden_size", |
| "num_embeddings": "config.vocab_size" |
| }, |
| "children": [ |
| "embeddings.word_embeddings", |
| "embeddings.position_embeddings", |
| "embeddings.token_type_embeddings", |
| "embeddings.LayerNorm" |
| ], |
| "class_name": "FNetEmbeddings", |
| "id": "embeddings", |
| "kind": "embedding", |
| "path_pattern": "model.embeddings" |
| }, |
| { |
| "attributes": { |
| "embedding_dim": "config.hidden_size", |
| "num_embeddings": "config.vocab_size", |
| "tied_lm_head": true |
| }, |
| "class_name": "Embedding", |
| "id": "embeddings.word_embeddings", |
| "kind": "embedding", |
| "path_pattern": "model.embeddings.word_embeddings" |
| }, |
| { |
| "attributes": { |
| "max_position_embeddings": "config.max_position_embeddings", |
| "scheme": "learned" |
| }, |
| "class_name": "Embedding", |
| "id": "embeddings.position_embeddings", |
| "kind": "position", |
| "path_pattern": "model.embeddings.position_embeddings" |
| }, |
| { |
| "attributes": { |
| "embedding_dim": "config.hidden_size", |
| "num_embeddings": 4 |
| }, |
| "class_name": "Embedding", |
| "id": "embeddings.token_type_embeddings", |
| "kind": "embedding", |
| "path_pattern": "model.embeddings.token_type_embeddings" |
| }, |
| { |
| "attributes": { |
| "norm_type": "layer" |
| }, |
| "class_name": "LayerNorm", |
| "id": "embeddings.LayerNorm", |
| "kind": "normalization", |
| "path_pattern": "model.embeddings.LayerNorm" |
| }, |
| { |
| "children": [ |
| "encoder_layers" |
| ], |
| "class_name": "FNetEncoder", |
| "id": "encoder", |
| "kind": "encoder", |
| "path_pattern": "model.encoder" |
| }, |
| { |
| "class_name": "FNetPooler", |
| "id": "pooler", |
| "kind": "pooler", |
| "path_pattern": "model.pooler" |
| } |
| ], |
| "config": { |
| "class_name": "FNetConfig", |
| "model_type": "fnet", |
| "module": "transformers.models.fnet.configuration_fnet", |
| "referenced_fields": { |
| "num_hidden_layers": 12 |
| }, |
| "salient_fields": { |
| "hidden_act": "gelu_new", |
| "hidden_size": 768, |
| "intermediate_size": 3072, |
| "is_encoder_decoder": false, |
| "max_position_embeddings": 512, |
| "num_hidden_layers": 12, |
| "tie_word_embeddings": true, |
| "vocab_size": 32000 |
| } |
| }, |
| "dataflow": { |
| "input": { |
| "name": "input_ids", |
| "shape": [ |
| "B", |
| "S" |
| ] |
| }, |
| "output": { |
| "shape": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ] |
| }, |
| "shapes": { |
| "embeddings": { |
| "in": null, |
| "out": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ] |
| }, |
| "encoder": { |
| "in": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ], |
| "out": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ] |
| }, |
| "encoder_layer.fourier": { |
| "in": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ], |
| "out": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ] |
| }, |
| "encoder_layer.intermediate": { |
| "in": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ], |
| "out": [ |
| "B", |
| "S", |
| "config.intermediate_size" |
| ] |
| }, |
| "encoder_layer.output": { |
| "in": [ |
| "B", |
| "S", |
| "config.intermediate_size" |
| ], |
| "out": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ] |
| }, |
| "pooler": { |
| "in": [ |
| "B", |
| "S", |
| "config.hidden_size" |
| ], |
| "out": [ |
| "B", |
| "config.hidden_size" |
| ] |
| } |
| }, |
| "source": "observed_forward_meta" |
| }, |
| "edges": [ |
| { |
| "kind": "data", |
| "source": "embeddings", |
| "target": "encoder" |
| }, |
| { |
| "kind": "data", |
| "source": "encoder", |
| "target": "pooler" |
| }, |
| { |
| "kind": "data", |
| "source": "embeddings.word_embeddings", |
| "target": "embeddings.token_type_embeddings" |
| }, |
| { |
| "kind": "data", |
| "source": "embeddings.token_type_embeddings", |
| "target": "embeddings.LayerNorm" |
| }, |
| { |
| "kind": "residual", |
| "source": "encoder_layer", |
| "target": "encoder_layer.intermediate" |
| }, |
| { |
| "kind": "position", |
| "source": "embeddings.position_embeddings", |
| "target": "embeddings" |
| }, |
| { |
| "kind": "data", |
| "provenance": "intra_module", |
| "source": "encoder_layer.intermediate", |
| "target": "encoder_layer.intermediate.dense" |
| }, |
| { |
| "kind": "data", |
| "provenance": "intra_module", |
| "source": "encoder_layer.output", |
| "target": "encoder_layer.output.dense" |
| }, |
| { |
| "kind": "data", |
| "provenance": "observed_forward", |
| "source": "encoder_layer.fourier", |
| "target": "encoder_layer.intermediate" |
| }, |
| { |
| "kind": "data", |
| "provenance": "observed_forward", |
| "source": "encoder_layer.intermediate", |
| "target": "encoder_layer.output" |
| } |
| ], |
| "extends": null, |
| "model_type": "fnet", |
| "provenance": { |
| "config_class": "FNetConfig", |
| "config_module": "transformers.models.fnet.configuration_fnet", |
| "model_class": "FNetModel", |
| "model_module": "transformers.models.fnet.modeling_fnet" |
| }, |
| "repeats": [ |
| { |
| "body": "encoder_layer", |
| "container_path_pattern": "model.encoder.layer", |
| "count": 12, |
| "count_expr": "config.num_hidden_layers", |
| "count_source": "config", |
| "id": "encoder_layers", |
| "index_symbol": "i", |
| "item_path_pattern": "model.encoder.layer.{i}", |
| "kind": "symbolic_repeat", |
| "provenance": { |
| "class_name": "FNetLayer", |
| "container_path_pattern": "model.encoder.layer", |
| "item_path_pattern": "model.encoder.layer.{i}", |
| "source": "module_tree_repeat_collapse" |
| }, |
| "repeated_class_name": "FNetLayer" |
| } |
| ], |
| "schema_version": "architecture-template-v0", |
| "templates": [ |
| { |
| "children": [ |
| "encoder_layer.fourier", |
| "encoder_layer.intermediate", |
| "encoder_layer.output" |
| ], |
| "class_name": "FNetLayer", |
| "id": "encoder_layer", |
| "kind": "transformer_block", |
| "path_pattern": "model.encoder.layer.{i}" |
| }, |
| { |
| "children": [ |
| "encoder_layer.fourier.output" |
| ], |
| "class_name": "FNetFourierTransform", |
| "id": "encoder_layer.fourier", |
| "kind": "module", |
| "path_pattern": "model.encoder.layer.{i}.fourier" |
| }, |
| { |
| "attributes": { |
| "activation": "gelu_new", |
| "hidden_size": 768, |
| "intermediate_size": 3072 |
| }, |
| "children": [ |
| "encoder_layer.fourier.output.LayerNorm" |
| ], |
| "class_name": "FNetBasicOutput", |
| "id": "encoder_layer.fourier.output", |
| "kind": "feed_forward", |
| "path_pattern": "model.encoder.layer.{i}.fourier.output" |
| }, |
| { |
| "attributes": { |
| "norm_type": "layer" |
| }, |
| "class_name": "LayerNorm", |
| "id": "encoder_layer.fourier.output.LayerNorm", |
| "kind": "normalization", |
| "path_pattern": "model.encoder.layer.{i}.fourier.output.LayerNorm" |
| }, |
| { |
| "attributes": { |
| "activation": "gelu_new", |
| "hidden_size": 768, |
| "intermediate_size": 3072 |
| }, |
| "children": [ |
| "encoder_layer.intermediate.dense" |
| ], |
| "class_name": "FNetIntermediate", |
| "id": "encoder_layer.intermediate", |
| "kind": "feed_forward", |
| "path_pattern": "model.encoder.layer.{i}.intermediate" |
| }, |
| { |
| "attributes": { |
| "in_features": "config.hidden_size", |
| "out_features": "config.intermediate_size" |
| }, |
| "class_name": "Linear", |
| "id": "encoder_layer.intermediate.dense", |
| "kind": "projection", |
| "path_pattern": "model.encoder.layer.{i}.intermediate.dense" |
| }, |
| { |
| "attributes": { |
| "activation": "gelu_new", |
| "hidden_size": 768, |
| "intermediate_size": 3072 |
| }, |
| "children": [ |
| "encoder_layer.output.dense", |
| "encoder_layer.output.LayerNorm" |
| ], |
| "class_name": "FNetOutput", |
| "id": "encoder_layer.output", |
| "kind": "feed_forward", |
| "path_pattern": "model.encoder.layer.{i}.output" |
| }, |
| { |
| "attributes": { |
| "in_features": "config.intermediate_size", |
| "out_features": "config.hidden_size" |
| }, |
| "class_name": "Linear", |
| "id": "encoder_layer.output.dense", |
| "kind": "projection", |
| "path_pattern": "model.encoder.layer.{i}.output.dense" |
| }, |
| { |
| "attributes": { |
| "norm_type": "layer" |
| }, |
| "class_name": "LayerNorm", |
| "id": "encoder_layer.output.LayerNorm", |
| "kind": "normalization", |
| "path_pattern": "model.encoder.layer.{i}.output.LayerNorm" |
| } |
| ] |
| } |
|
|