Animated Transformer Flow
graph TD
classDef yellow fill:#FFFDE7,stroke:#1A1A1A,stroke-width:2px;
classDef blue fill:#E3F2FD,stroke:#1A1A1A,stroke-width:2px;
classDef green fill:#E8F5E9,stroke:#1A1A1A,stroke-width:2px;
classDef purple fill:#F3E5F5,stroke:#1A1A1A,stroke-width:2px;
classDef teal fill:#E0F7FA,stroke:#1A1A1A,stroke-width:2px;
classDef orange fill:#FFF3E0,stroke:#1A1A1A,stroke-width:2px;
subgraph "Encoder Block"
MHA1[Multi-Head Attention]:::blue
AddNorm1[Add & Norm]:::green
FFN1[Feed Forward]:::orange
AddNorm2[Add & Norm]:::green
MHA1 --> AddNorm1
AddNorm1 --> FFN1
FFN1 --> AddNorm2
end
subgraph "Decoder Block"
MMHA[Masked Multi-Head Attention]:::blue
AddNorm3[Add & Norm]:::green
EncDecAttn[Multi-Head Attention]:::blue
AddNorm4[Add & Norm]:::green
FFN2[Feed Forward]:::orange
AddNorm5[Add & Norm]:::green
MMHA --> AddNorm3
AddNorm3 --> EncDecAttn
AddNorm4 --> FFN2
FFN2 --> AddNorm5
end
%% Connections with Flow
In[Input Embeddings]:::yellow --> MHA1
AddNorm2 --> EncDecAttn
EncDecAttn --> AddNorm4
AddNorm5 --> Out[Final Linear/Softmax]:::teal
%% Apply classes for animation
class MHA1,MMHA,EncDecAttn pulse
%% Tagging links for 'marching ants' animation via stroke color
linkStyle 0,1,2,3,4,5,6,7,8,9,10 stroke:#1E88E5