| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1540 1273" width="1540" height="1273" font-size="14"> |
| <style> |
| :root { |
| --bg: #ffffff; --fg: #1b1f24; --muted: #6b7280; --panel: #f6f8fa; --grid: #e5e7eb; |
| --embed: #dbeafe; --embed-s: #3b82f6; |
| --attn: #cffafe; --attn-s: #06b6d4; |
| --mamba: #dcfce7; --mamba-s: #22c55e; |
| --linattn: #fce7f3; --linattn-s: #ec4899; |
| --recur: #ede9fe; --recur-s: #8b5cf6; |
| --moe: #ffedd5; --moe-s: #f97316; |
| --mlp: #ede9fe; --mlp-s: #8b5cf6; |
| --norm: #e5e7eb; --norm-s: #9ca3af; |
| --head: #fee2e2; --head-s: #ef4444; |
| --config: #f1f5f9; --config-s: #64748b; |
| --rope: #fef9c3; --rope-s: #eab308; |
| --layer: #f8fafc; --layer-s: #cbd5e1; |
| --io: #f1f5f9; --io-s: #94a3b8; |
| --soft: #fae8ff; --soft-s: #c026d3; |
| --add: #ffffff; --add-s: #475569; |
| --block-s: #94a3b8; |
| --residual: #f59e0b; |
| --added: #16a34a; --over: #d97706; --deleted: #dc2626; |
| --lt-full: #06b6d4; --lt-sliding: #3b82f6; --lt-chunked: #8b5cf6; |
| --lt-compressed: #f97316; --lt-heavy: #dc2626; --lt-linear: #ec4899; --lt-mamba: #22c55e; |
| --cell-on: #0ea5e9; --cell-off: #e5e7eb; |
| --vision: #dcfce7; --vision-s: #16a34a; --audio: #fae8ff; --audio-s: #c026d3; |
| --proj: #fef3c7; --proj-s: #d97706; --xattn: #db2777; |
| --conv: #d1fae5; --conv-s: #10b981; --act: #ecfccb; --act-s: #65a30d; |
| --pool: #e0f2fe; --pool-s: #0284c7; --quant: #fae8ff; --quant-s: #c026d3; |
| } |
| @media (prefers-color-scheme: dark) { |
| :root { |
| --bg: #0d1117; --fg: #e6edf3; --muted: #8b949e; --panel: #161b22; --grid: #30363d; |
| --embed: #172554; --attn: #083344; --mamba: #052e16; --linattn: #500724; |
| --recur: #2e1065; --moe: #431407; --mlp: #2e1065; --norm: #21262d; --head: #450a0a; |
| --config: #1e293b; --rope: #422006; --layer: #161b22; |
| --conv: #022c22; --act: #1a2e05; --pool: #082f49; --quant: #3b0764; --proj: #422006; |
| --io: #1e293b; --soft: #3b0764; --add: #0d1117; --cell-off: #21262d; |
| } |
| } |
| .bg { fill: var(--bg); } |
| text { font-family: ui-sans-serif, -apple-system, "Segoe UI", Roboto, sans-serif; fill: var(--fg); } |
| .title { font-size: 22px; font-weight: 700; } |
| .subtitle { font-size: 13px; fill: var(--muted); } |
| .box-label { font-size: 14px; font-weight: 600; } |
| .box-label.sm { font-size: 12.5px; } |
| .box-sub { font-size: 11px; fill: var(--muted); } |
| .glyph { font-size: 18px; font-weight: 700; fill: var(--add-s); } |
| .badge { font-size: 12px; font-weight: 700; fill: var(--fg); } |
| .facts-k { font-size: 11.5px; fill: var(--muted); } |
| .facts-v { font-size: 11.5px; font-weight: 600; } |
| .legend-t { font-size: 11.5px; fill: var(--fg); } |
| .panel { fill: var(--panel); stroke: var(--grid); } |
| rect.b { rx: 9; stroke-width: 1.6; } |
| .c-embed { fill: var(--embed); stroke: var(--embed-s); } |
| .c-attn { fill: var(--attn); stroke: var(--attn-s); } |
| .c-mamba { fill: var(--mamba); stroke: var(--mamba-s); } |
| .c-linattn { fill: var(--linattn); stroke: var(--linattn-s); } |
| .c-recur { fill: var(--recur); stroke: var(--recur-s); } |
| .c-moe { fill: var(--moe); stroke: var(--moe-s); } |
| .c-mlp { fill: var(--mlp); stroke: var(--mlp-s); } |
| .c-norm { fill: var(--norm); stroke: var(--norm-s); } |
| .c-head { fill: var(--head); stroke: var(--head-s); } |
| .c-config{ fill: var(--config);stroke: var(--config-s); } |
| .c-rope { fill: var(--rope); stroke: var(--rope-s); } |
| .c-proj { fill: var(--proj); stroke: var(--proj-s); } |
| .c-conv { fill: var(--conv); stroke: var(--conv-s); } |
| .c-act { fill: var(--act); stroke: var(--act-s); } |
| .c-pool { fill: var(--pool); stroke: var(--pool-s); } |
| .c-quant { fill: var(--quant); stroke: var(--quant-s); } |
| .c-layer { fill: var(--layer); stroke: var(--layer-s); } |
| .c-io { fill: var(--io); stroke: var(--io-s); } |
| .c-soft { fill: var(--soft); stroke: var(--soft-s); } |
| .c-add { fill: var(--add); stroke: var(--add-s); } |
| .c-block { fill: none; stroke: var(--block-s); stroke-width: 1.6; stroke-dasharray: 7 5; } |
| .c-lt-full { fill: var(--lt-full); stroke: var(--lt-full); } |
| .c-lt-sliding { fill: var(--lt-sliding); stroke: var(--lt-sliding); } |
| .c-lt-chunked { fill: var(--lt-chunked); stroke: var(--lt-chunked); } |
| .c-lt-compressed { fill: var(--lt-compressed); stroke: var(--lt-compressed); } |
| .c-lt-heavy { fill: var(--lt-heavy); stroke: var(--lt-heavy); } |
| .c-lt-linear { fill: var(--lt-linear); stroke: var(--lt-linear); } |
| .c-lt-mamba { fill: var(--lt-mamba); stroke: var(--lt-mamba); } |
| .cell-on { fill: var(--cell-on); } |
| .cell-off { fill: var(--cell-off); } |
| .grid-frame { fill: none; stroke: var(--grid); stroke-width: 1; } |
| .mask-bg { fill: var(--cell-off); } |
| .mask-on { fill: #22c55e; } |
| .mask-div { stroke: var(--fg); stroke-width: 1.5; stroke-dasharray: 3 2; } |
| .c-vision { fill: var(--vision); stroke: var(--vision-s); } |
| .c-audio { fill: var(--audio); stroke: var(--audio-s); } |
| .c-proj { fill: var(--proj); stroke: var(--proj-s); } |
| .c-sub { fill: var(--bg); stroke: var(--block-s); stroke-width: 1.2; } |
| .sec-h { font-size: 12px; font-weight: 700; } |
| .sec-hbar { fill: var(--bg); opacity: 0.82; } |
| .residual.xattn { stroke: var(--xattn); stroke-width: 2.4; } |
| .ghost { opacity: 0.32; stroke-dasharray: 4 3; } |
| .ch-added rect.b, rect.b.ch-added { stroke: var(--added); stroke-width: 3.2; } |
| .ch-over rect.b, rect.b.ch-over { stroke: var(--over); stroke-width: 3.2; } |
| .ch-deleted rect.b, rect.b.ch-deleted { stroke: var(--deleted); stroke-width: 3.2; } |
| .edge { stroke: var(--grid); stroke-width: 2; } |
| .flow { stroke: var(--grid); stroke-width: 2; fill: none; } |
| .residual { stroke: var(--residual); stroke-width: 2; fill: none; } |
| .rope { stroke: var(--rope-s); stroke-width: 2.2; fill: none; } |
| .xattn { stroke: var(--xattn); stroke-width: 2.4; fill: none; } |
| .cell-idx { font-size: 9px; fill: #ffffff; font-weight: 600; } |
| .sky { fill: #bae6fd; } .sun { fill: #fde047; } .hill { fill: #4ade80; } |
| </style> |
| <defs><marker id="ah-flow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 z" fill="var(--grid)"/></marker><marker id="ah-residual" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 z" fill="var(--residual)"/></marker><marker id="ah-rope" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 z" fill="var(--rope-s)"/></marker><marker id="ah-xattn" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 z" fill="var(--xattn)"/></marker></defs> |
| <rect class="bg" x="0" y="0" width="1540" height="1273"/> |
| <text class="title" x="24" y="34">aya_vision</text> |
| <text class="subtitle" x="24" y="54">diff vs llava · 4 overridden · 3 added · 0 deleted · 1 new · 2 inherited-as-is</text> |
| <line class="edge" x1="161" y1="120" x2="161" y2="798"/> |
| <g class=""><rect class="c-block" x="586" y="184" width="668" height="913" rx="14"/><text class="box-sub" x="598" y="202">AyaVisionModel · base model</text></g> |
| <g class=""><title>40 × Cohere2DecoderLayer</title><rect class="c-block" x="594" y="257" width="652" height="800" rx="14"/><text class="box-sub" x="606" y="275">Cohere2DecoderLayer</text><text class="badge" x="1234" y="277" text-anchor="end">× 40</text></g> |
| <g class=""><rect class="c-block" x="586" y="1097" width="668" height="142" rx="14"/><text class="box-sub" x="598" y="1115">AyaVisionForConditionalGeneration · task head</text></g> |
| <g class=""><rect class="c-block" x="32" y="830" width="258" height="16" rx="14"/><text class="box-sub" x="44" y="848">image ⊕ text attention</text></g> |
| <g class=""><rect class="c-block" x="336" y="255" width="58" height="16" rx="14"/><text class="box-sub" x="348" y="273">layers (idx)</text></g> |
| <g class="ghost"><rect class="b c-attn " x="620" y="321" width="600" height="440" rx="11"/><rect class="sec-hbar" x="625" y="325" width="590" height="18" rx="5"/><text class="sec-h" x="632" y="338">Self-Attention · Cohere2Attention (2 layer types — same modules, mask differs)</text></g> |
| <g class="ghost"><rect class="b c-vision " x="36" y="252" width="250" height="386" rx="11"/><rect class="sec-hbar" x="41" y="256" width="240" height="18" rx="5"/><text class="sec-h" x="48" y="269">Vision encoder · SiglipVisionMo…</text><text class="badge" x="274" y="269" text-anchor="end">×26</text></g> |
| <g class="ghost"><rect class="b c-vision " x="46" y="278" width="230" height="354" rx="11"/><rect class="sec-hbar" x="51" y="282" width="220" height="18" rx="5"/><text class="sec-h" x="58" y="295">SiglipEncoderLayer</text><text class="badge" x="264" y="295" text-anchor="end">×26</text></g> |
| <g class="ghost"><rect class="b c-mlp " x="620" y="857" width="330" height="152" rx="11"/><rect class="sec-hbar" x="625" y="861" width="320" height="18" rx="5"/><text class="sec-h" x="632" y="874">MLP · Cohere2MLP</text></g> |
| <g class=""><rect class="b c-proj ch-over" x="36" y="654" width="250" height="144" rx="11"/><rect class="sec-hbar" x="41" y="658" width="240" height="18" rx="5"/><text class="sec-h" x="48" y="671">Projector · AyaVisionMultiModalProjec…</text></g> |
| <g class="ghost"><rect class="b c-sub " x="54" y="328" width="214" height="143" rx="11"/><rect class="sec-hbar" x="59" y="332" width="204" height="18" rx="5"/><text class="sec-h" x="66" y="345">self_attn · SiglipAttention</text></g> |
| <g class="ghost"><rect class="b c-sub " x="54" y="505" width="214" height="115" rx="11"/><rect class="sec-hbar" x="59" y="509" width="204" height="18" rx="5"/><text class="sec-h" x="66" y="522">mlp · SiglipMLP</text></g> |
| <polyline class="rope" points="584,365 620,365" marker-end="url(#ah-rope)"/> |
| <polyline class="residual" points="620,279 586,279 586,788 620,788" stroke-dasharray="6 4" marker-end="url(#ah-residual)"/> |
| <polyline class="residual" points="620,788 570,788 570,1036 620,1036" stroke-dasharray="6 4" marker-end="url(#ah-residual)"/> |
| <polyline class="flow" points="161,184 161,206" marker-end="url(#ah-flow)"/> |
| <polyline class="flow" points="161,236 161,252" marker-end="url(#ah-flow)"/> |
| <polyline class="flow" points="161,638 161,654" marker-end="url(#ah-flow)"/> |
| <polyline class="flow" points="286,726 453,726 453,220 620,220" marker-end="url(#ah-flow)"/> |
| <g class=""><rect class="b c-io" x="620" y="108" width="330" height="32" rx="16"/><text class="box-label sm" x="785.0" y="122.0" text-anchor="middle">input_ids</text><text class="box-sub" x="785.0" y="137.0" text-anchor="middle">tokenize("Hey, how are you?") → [1, 6]</text></g> |
| <g class="ghost"><title>token 0: 'Hey'</title><rect class="b c-sub" x="620" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="645.0" y="165.0" text-anchor="middle">Hey</text><text class="box-sub" x="645.0" y="180.0" text-anchor="middle">0</text></g> |
| <g class="ghost"><title>token 1: ','</title><rect class="b c-sub" x="675" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="700.0" y="165.0" text-anchor="middle">,</text><text class="box-sub" x="700.0" y="180.0" text-anchor="middle">1</text></g> |
| <g class="ghost"><title>token 2: '␣how'</title><rect class="b c-sub" x="731" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="756.0" y="165.0" text-anchor="middle">␣how</text><text class="box-sub" x="756.0" y="180.0" text-anchor="middle">2</text></g> |
| <g class="ghost"><title>token 3: '␣are'</title><rect class="b c-sub" x="787" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="812.0" y="165.0" text-anchor="middle">␣are</text><text class="box-sub" x="812.0" y="180.0" text-anchor="middle">3</text></g> |
| <g class="ghost"><title>token 4: '␣you'</title><rect class="b c-sub" x="843" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="868.0" y="165.0" text-anchor="middle">␣you</text><text class="box-sub" x="868.0" y="180.0" text-anchor="middle">4</text></g> |
| <g class="ghost"><title>token 5: '?'</title><rect class="b c-sub" x="899" y="154" width="50" height="26" rx="9"/><text class="box-label sm" x="924.0" y="165.0" text-anchor="middle">?</text><text class="box-sub" x="924.0" y="180.0" text-anchor="middle">5</text></g> |
| <g class="ghost"><rect class="b c-embed" x="620" y="198" width="330" height="45" rx="9"/><text class="box-label sm" x="785.0" y="218.5" text-anchor="middle">Token Embedding</text><text class="box-sub" x="785.0" y="233.5" text-anchor="middle">weight [256000 × 8192] → [1, 6, 8192]</text></g> |
| <g class="ghost"><rect class="b c-norm" x="620" y="279" width="330" height="28" rx="9"/><text class="box-label sm" x="785.0" y="291.0" text-anchor="middle">Cohere2LayerNorm</text><text class="box-sub" x="785.0" y="306.0" text-anchor="middle">pre-attention [1, 6, 8192]</text></g> |
| <g class="ghost"><title>q_proj: Linear [8192→8192]</title><rect class="b c-proj" x="630" y="347" width="580" height="22" rx="9"/><text class="box-label sm" x="920.0" y="362.5" text-anchor="middle">q_proj [8192→8192]</text></g> |
| <g class="ghost"><title>k_proj: Linear [8192→8192]</title><rect class="b c-proj" x="630" y="377" width="580" height="22" rx="9"/><text class="box-label sm" x="920.0" y="392.5" text-anchor="middle">k_proj [8192→8192]</text></g> |
| <g class="ghost"><title>v_proj: Linear [8192→8192]</title><rect class="b c-proj" x="630" y="407" width="580" height="22" rx="9"/><text class="box-label sm" x="920.0" y="422.5" text-anchor="middle">v_proj [8192→8192]</text></g> |
| <g class="ghost"><title>o_proj: Linear [8192→8192]</title><rect class="b c-proj" x="630" y="437" width="580" height="22" rx="9"/><text class="box-label sm" x="920.0" y="452.5" text-anchor="middle">o_proj [8192→8192]</text></g> |
| <g class="ghost"><rect class="b c-sub" x="630" y="467" width="580" height="30" rx="9"/><text class="box-label sm" x="920.0" y="480.0" text-anchor="middle">scaled dot-product attention</text><text class="box-sub" x="920.0" y="495.0" text-anchor="middle">64 heads · head_dim 128</text></g> |
| <g class=""><title>sliding_attention attention mask (q↓ × k→)</title><text class="box-sub" x="651" y="509">sliding mask</text><rect class="mask-bg" x="651" y="515" width="240.0" height="240.0"/><rect class="mask-on" x="651.0" y="515.0" width="10.0" height="10.0"/><rect class="mask-on" x="651.0" y="525.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="525.0" width="10.0" height="10.0"/><rect class="mask-on" x="651.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="651.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="651.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="651.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="661.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="671.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="681.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="691.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="701.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="711.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="721.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="731.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="741.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="751.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="761.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="771.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="781.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="791.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="841.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="801.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="841.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="851.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="811.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="841.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="851.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="861.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="821.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="841.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="851.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="861.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="871.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="831.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="841.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="851.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="861.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="871.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="881.0" y="745.0" width="10.0" height="10.0"/><rect class="grid-frame" x="651" y="515" width="240.0" height="240.0"/></g> |
| <g class=""><title>full_attention attention mask (q↓ × k→)</title><text class="box-sub" x="949" y="509">full mask</text><rect class="mask-bg" x="949" y="515" width="240.0" height="240.0"/><rect class="mask-on" x="949.0" y="515.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="525.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="525.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="535.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="545.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="555.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="565.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="575.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="585.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="595.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="605.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="615.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="625.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="635.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="645.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="655.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="665.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="675.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="685.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="695.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="1139.0" y="705.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1139.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="1149.0" y="715.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1139.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1149.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="1159.0" y="725.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1139.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1149.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1159.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="1169.0" y="735.0" width="10.0" height="10.0"/><rect class="mask-on" x="949.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="959.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="969.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="979.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="989.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="999.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1009.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1019.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1029.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1039.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1049.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1059.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1069.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1079.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1089.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1099.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1109.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1119.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1129.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1139.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1149.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1159.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1169.0" y="745.0" width="10.0" height="10.0"/><rect class="mask-on" x="1179.0" y="745.0" width="10.0" height="10.0"/><rect class="grid-frame" x="949" y="515" width="240.0" height="240.0"/></g> |
| <g class="ghost"><rect class="b c-rope" x="452" y="347" width="132" height="40" rx="9"/><text class="box-label sm" x="518.0" y="365.0" text-anchor="middle">RoPE</text><text class="box-sub" x="518.0" y="380.0" text-anchor="middle">rotary positions → Q, K</text></g> |
| <g class=""><title>residual add</title><circle class="b c-add " cx="785.0" cy="788" r="13"/><text class="glyph" x="785.0" y="794" text-anchor="middle">+</text></g> |
| <g class="ghost"><rect class="b c-norm" x="620" y="815" width="330" height="28" rx="9"/><text class="box-label sm" x="785.0" y="827.0" text-anchor="middle">Cohere2LayerNorm</text><text class="box-sub" x="785.0" y="842.0" text-anchor="middle">pre-FFN [1, 6, 8192]</text></g> |
| <g class="ghost"><title>gate_proj: Linear [8192→22528]</title><rect class="b c-proj" x="632" y="883" width="306" height="22" rx="9"/><text class="box-label sm" x="785.0" y="898.5" text-anchor="middle">gate_proj [8192→22528]</text></g> |
| <g class="ghost"><title>up_proj: Linear [8192→22528]</title><rect class="b c-proj" x="632" y="913" width="306" height="22" rx="9"/><text class="box-label sm" x="785.0" y="928.5" text-anchor="middle">up_proj [8192→22528]</text></g> |
| <g class="ghost"><title>down_proj: Linear [22528→8192]</title><rect class="b c-proj" x="632" y="943" width="306" height="22" rx="9"/><text class="box-label sm" x="785.0" y="958.5" text-anchor="middle">down_proj [22528→8192]</text></g> |
| <g class="ghost"><title>act_fn: SiLUActivation</title><rect class="b c-act" x="632" y="973" width="306" height="22" rx="9"/><text class="box-label sm" x="785.0" y="988.5" text-anchor="middle">act_fn SiLU</text></g> |
| <g class=""><title>residual add</title><circle class="b c-add " cx="785.0" cy="1036" r="13"/><text class="glyph" x="785.0" y="1042" text-anchor="middle">+</text></g> |
| <g class="ghost"><rect class="b c-norm" x="620" y="1063" width="330" height="28" rx="9"/><text class="box-label sm" x="785.0" y="1075.0" text-anchor="middle">Final LayerNorm</text><text class="box-sub" x="785.0" y="1090.0" text-anchor="middle">[1, 6, 8192]</text></g> |
| <g class=""><title>AyaVisionForConditionalGeneration</title><rect class="b c-head ch-over" x="620" y="1105" width="330" height="42" rx="9"/><text class="box-label sm" x="785.0" y="1124.0" text-anchor="middle">LM Head</text><text class="box-sub" x="785.0" y="1139.0" text-anchor="middle">Linear [8192→256000] · tied</text><circle cx="632" cy="1117" r="5" fill="var(--over)"/></g> |
| <g class="ghost"><rect class="b c-soft" x="620" y="1161" width="330" height="26" rx="9"/><text class="box-label sm" x="785.0" y="1178.5" text-anchor="middle">Softmax</text></g> |
| <g class=""><rect class="b c-io" x="620" y="1201" width="330" height="30" rx="15"/><text class="box-label sm" x="785.0" y="1214.0" text-anchor="middle">logits</text><text class="box-sub" x="785.0" y="1229.0" text-anchor="middle">[1, 6, 256000]</text></g> |
| <g class=""><title>layer 0: sliding_attention</title><rect class="c-lt-sliding" x="340" y="279" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="291.0" text-anchor="middle">0</text></g> |
| <g class=""><title>layer 1: sliding_attention</title><rect class="c-lt-sliding" x="340" y="298" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="310.0" text-anchor="middle">1</text></g> |
| <g class=""><title>layer 2: sliding_attention</title><rect class="c-lt-sliding" x="340" y="317" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="329.0" text-anchor="middle">2</text></g> |
| <g class=""><title>layer 3: full_attention</title><rect class="c-lt-full" x="340" y="336" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="348.0" text-anchor="middle">3</text></g> |
| <g class=""><title>layer 4: sliding_attention</title><rect class="c-lt-sliding" x="340" y="356" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="368.0" text-anchor="middle">4</text></g> |
| <g class=""><title>layer 5: sliding_attention</title><rect class="c-lt-sliding" x="340" y="375" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="387.0" text-anchor="middle">5</text></g> |
| <g class=""><title>layer 6: sliding_attention</title><rect class="c-lt-sliding" x="340" y="394" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="406.0" text-anchor="middle">6</text></g> |
| <g class=""><title>layer 7: full_attention</title><rect class="c-lt-full" x="340" y="413" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="425.0" text-anchor="middle">7</text></g> |
| <g class=""><title>layer 8: sliding_attention</title><rect class="c-lt-sliding" x="340" y="433" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="445.0" text-anchor="middle">8</text></g> |
| <g class=""><title>layer 9: sliding_attention</title><rect class="c-lt-sliding" x="340" y="452" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="464.0" text-anchor="middle">9</text></g> |
| <g class=""><title>layer 10: sliding_attention</title><rect class="c-lt-sliding" x="340" y="471" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="483.0" text-anchor="middle">10</text></g> |
| <g class=""><title>layer 11: full_attention</title><rect class="c-lt-full" x="340" y="490" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="502.0" text-anchor="middle">11</text></g> |
| <g class=""><title>layer 12: sliding_attention</title><rect class="c-lt-sliding" x="340" y="510" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="522.0" text-anchor="middle">12</text></g> |
| <g class=""><title>layer 13: sliding_attention</title><rect class="c-lt-sliding" x="340" y="529" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="541.0" text-anchor="middle">13</text></g> |
| <g class=""><title>layer 14: sliding_attention</title><rect class="c-lt-sliding" x="340" y="548" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="560.0" text-anchor="middle">14</text></g> |
| <g class=""><title>layer 15: full_attention</title><rect class="c-lt-full" x="340" y="567" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="579.0" text-anchor="middle">15</text></g> |
| <g class=""><title>layer 16: sliding_attention</title><rect class="c-lt-sliding" x="340" y="587" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="599.0" text-anchor="middle">16</text></g> |
| <g class=""><title>layer 17: sliding_attention</title><rect class="c-lt-sliding" x="340" y="606" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="618.0" text-anchor="middle">17</text></g> |
| <g class=""><title>layer 18: sliding_attention</title><rect class="c-lt-sliding" x="340" y="625" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="637.0" text-anchor="middle">18</text></g> |
| <g class=""><title>layer 19: full_attention</title><rect class="c-lt-full" x="340" y="644" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="656.0" text-anchor="middle">19</text></g> |
| <g class=""><title>layer 20: sliding_attention</title><rect class="c-lt-sliding" x="340" y="664" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="676.0" text-anchor="middle">20</text></g> |
| <g class=""><title>layer 21: sliding_attention</title><rect class="c-lt-sliding" x="340" y="683" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="695.0" text-anchor="middle">21</text></g> |
| <g class=""><title>layer 22: sliding_attention</title><rect class="c-lt-sliding" x="340" y="702" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="714.0" text-anchor="middle">22</text></g> |
| <g class=""><title>layer 23: full_attention</title><rect class="c-lt-full" x="340" y="721" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="733.0" text-anchor="middle">23</text></g> |
| <g class=""><title>layer 24: sliding_attention</title><rect class="c-lt-sliding" x="340" y="741" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="753.0" text-anchor="middle">24</text></g> |
| <g class=""><title>layer 25: sliding_attention</title><rect class="c-lt-sliding" x="340" y="760" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="772.0" text-anchor="middle">25</text></g> |
| <g class=""><title>layer 26: sliding_attention</title><rect class="c-lt-sliding" x="340" y="779" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="791.0" text-anchor="middle">26</text></g> |
| <g class=""><title>layer 27: full_attention</title><rect class="c-lt-full" x="340" y="798" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="810.0" text-anchor="middle">27</text></g> |
| <g class=""><title>layer 28: sliding_attention</title><rect class="c-lt-sliding" x="340" y="818" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="830.0" text-anchor="middle">28</text></g> |
| <g class=""><title>layer 29: sliding_attention</title><rect class="c-lt-sliding" x="340" y="837" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="849.0" text-anchor="middle">29</text></g> |
| <g class=""><title>layer 30: sliding_attention</title><rect class="c-lt-sliding" x="340" y="856" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="868.0" text-anchor="middle">30</text></g> |
| <g class=""><title>layer 31: full_attention</title><rect class="c-lt-full" x="340" y="875" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="887.0" text-anchor="middle">31</text></g> |
| <g class=""><title>layer 32: sliding_attention</title><rect class="c-lt-sliding" x="340" y="895" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="907.0" text-anchor="middle">32</text></g> |
| <g class=""><title>layer 33: sliding_attention</title><rect class="c-lt-sliding" x="340" y="914" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="926.0" text-anchor="middle">33</text></g> |
| <g class=""><title>layer 34: sliding_attention</title><rect class="c-lt-sliding" x="340" y="933" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="945.0" text-anchor="middle">34</text></g> |
| <g class=""><title>layer 35: full_attention</title><rect class="c-lt-full" x="340" y="952" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="964.0" text-anchor="middle">35</text></g> |
| <g class=""><title>layer 36: sliding_attention</title><rect class="c-lt-sliding" x="340" y="972" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="984.0" text-anchor="middle">36</text></g> |
| <g class=""><title>layer 37: sliding_attention</title><rect class="c-lt-sliding" x="340" y="991" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="1003.0" text-anchor="middle">37</text></g> |
| <g class=""><title>layer 38: sliding_attention</title><rect class="c-lt-sliding" x="340" y="1010" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="1022.0" text-anchor="middle">38</text></g> |
| <g class=""><title>layer 39: full_attention</title><rect class="c-lt-full" x="340" y="1029" width="46" height="17" rx="2"/><text class="cell-idx" x="363.0" y="1041.0" text-anchor="middle">39</text></g> |
| <g class="ghost"><rect class="b c-vision" x="123" y="120" width="76" height="64" rx="6"/><clipPath id="ic123120"><rect x="129" y="126" width="64" height="52" rx="3"/></clipPath><g clip-path="url(#ic123120)"><rect class="sky" x="129" y="126" width="64" height="52"/><circle class="sun" cx="175" cy="143" r="8"/><path class="hill" d="M129,178 L151,152 L167,178 Z"/><path class="hill" d="M158,178 L177,155 L193,178 Z"/></g><rect class="grid-frame" x="129" y="126" width="64" height="52" rx="3"/><text class="box-sub" x="161.0" y="196" text-anchor="middle">example image</text></g> |
| <g class=""><rect class="b c-io" x="36" y="206" width="250" height="30" rx="15"/><text class="box-label sm" x="161.0" y="219.0" text-anchor="middle">pixel_values</text><text class="box-sub" x="161.0" y="234.0" text-anchor="middle">[1, 3, 336, 336]</text></g> |
| <g class=""><title>layer_norm1: LayerNorm 1152</title><rect class="b c-norm ch-added" x="54" y="300" width="214" height="22" rx="9"/><text class="box-label sm" x="161.0" y="315.5" text-anchor="middle">layer_norm1 LayerNorm 1152</text><circle cx="66" cy="312" r="5" fill="var(--added)"/></g> |
| <g class="ghost"><title>k_proj: Linear [1152→1152]</title><rect class="b c-proj" x="62" y="353" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="368.5" text-anchor="middle">k_proj [1152→1152]</text></g> |
| <g class="ghost"><title>v_proj: Linear [1152→1152]</title><rect class="b c-proj" x="62" y="381" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="396.5" text-anchor="middle">v_proj [1152→1152]</text></g> |
| <g class="ghost"><title>q_proj: Linear [1152→1152]</title><rect class="b c-proj" x="62" y="409" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="424.5" text-anchor="middle">q_proj [1152→1152]</text></g> |
| <g class=""><title>out_proj: Linear [1152→1152]</title><rect class="b c-proj ch-added" x="62" y="437" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="452.5" text-anchor="middle">out_proj [1152→1152]</text><circle cx="74" cy="449" r="5" fill="var(--added)"/></g> |
| <g class=""><title>layer_norm2: LayerNorm 1152</title><rect class="b c-norm ch-added" x="54" y="477" width="214" height="22" rx="9"/><text class="box-label sm" x="161.0" y="492.5" text-anchor="middle">layer_norm2 LayerNorm 1152</text><circle cx="66" cy="489" r="5" fill="var(--added)"/></g> |
| <g class=""><title>activation_fn: GELUTanh</title><rect class="b c-sub ch-added" x="62" y="530" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="545.5" text-anchor="middle">activation_fn GELUTanh</text><circle cx="74" cy="542" r="5" fill="var(--added)"/></g> |
| <g class=""><title>fc1: Linear [1152→4304]</title><rect class="b c-proj ch-added" x="62" y="558" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="573.5" text-anchor="middle">fc1 [1152→4304]</text><circle cx="74" cy="570" r="5" fill="var(--added)"/></g> |
| <g class=""><title>fc2: Linear [4304→1152]</title><rect class="b c-proj ch-added" x="62" y="586" width="198" height="22" rx="9"/><text class="box-label sm" x="161.0" y="601.5" text-anchor="middle">fc2 [4304→1152]</text><circle cx="74" cy="598" r="5" fill="var(--added)"/></g> |
| <g class=""><title>layernorm: LayerNorm 4608</title><rect class="b c-norm ch-added" x="46" y="680" width="230" height="22" rx="9"/><text class="box-label sm" x="161.0" y="695.5" text-anchor="middle">layernorm LayerNorm 4608</text><circle cx="58" cy="692" r="5" fill="var(--added)"/></g> |
| <g class=""><title>linear_1: Linear [4608→8192]</title><rect class="b c-proj ch-added" x="46" y="708" width="230" height="22" rx="9"/><text class="box-label sm" x="161.0" y="723.5" text-anchor="middle">linear_1 [4608→8192]</text><circle cx="58" cy="720" r="5" fill="var(--added)"/></g> |
| <g class=""><title>act: SiLUActivation</title><rect class="b c-act ch-added" x="46" y="736" width="230" height="22" rx="9"/><text class="box-label sm" x="161.0" y="751.5" text-anchor="middle">act SiLU</text><circle cx="58" cy="748" r="5" fill="var(--added)"/></g> |
| <g class=""><title>linear_2: Linear [4096→8192]</title><rect class="b c-proj ch-added" x="46" y="764" width="230" height="22" rx="9"/><text class="box-label sm" x="161.0" y="779.5" text-anchor="middle">linear_2 [4096→8192]</text><circle cx="58" cy="776" r="5" fill="var(--added)"/></g> |
| <g class="ghost"><rect class="b c-proj" x="375" y="190" width="168" height="18" rx="9"/><text class="box-label sm" x="459.0" y="203.5" text-anchor="middle">merge at modality tokens</text></g> |
| <g class=""><title>image↓text query × image|text key</title><text class="box-sub" x="83" y="846">5 img + 7 text · fully causal</text><rect class="mask-bg" x="83" y="852" width="156.0" height="156.0"/><rect class="mask-on" x="83.0" y="852.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="865.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="865.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="878.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="878.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="878.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="891.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="891.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="891.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="891.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="904.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="904.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="904.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="904.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="904.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="917.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="930.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="174.0" y="943.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="174.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="187.0" y="956.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="174.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="187.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="200.0" y="969.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="174.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="187.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="200.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="213.0" y="982.0" width="13.0" height="13.0"/><rect class="mask-on" x="83.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="96.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="109.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="122.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="135.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="148.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="161.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="174.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="187.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="200.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="213.0" y="995.0" width="13.0" height="13.0"/><rect class="mask-on" x="226.0" y="995.0" width="13.0" height="13.0"/><line class="mask-div" x1="148.0" y1="852" x2="148.0" y2="1008.0"/><rect class="grid-frame" x="83" y="852" width="156.0" height="156.0"/></g> |
| <rect class="panel" x="1252" y="88" width="264" height="174" rx="8"/> |
| <text class="facts-k" x="1266" y="112">model id</text> |
| <text class="facts-v" x="1502" y="112" text-anchor="end">CohereForAI/aya-vision-8b</text> |
| <text class="facts-k" x="1266" y="134">parent</text> |
| <text class="facts-v" x="1502" y="134" text-anchor="end">llava</text> |
| <text class="facts-k" x="1266" y="156">classes</text> |
| <text class="facts-v" x="1502" y="156" text-anchor="end">6</text> |
| <text class="facts-k" x="1266" y="178">overridden</text> |
| <text class="facts-v" x="1502" y="178" text-anchor="end">4</text> |
| <text class="facts-k" x="1266" y="200">added</text> |
| <text class="facts-v" x="1502" y="200" text-anchor="end">3</text> |
| <text class="facts-k" x="1266" y="222">new classes</text> |
| <text class="facts-v" x="1502" y="222" text-anchor="end">1</text> |
| <text class="facts-k" x="1266" y="244">inherited as-is</text> |
| <text class="facts-v" x="1502" y="244" text-anchor="end">2</text> |
| <text class="legend-t" x="1254" y="282" font-weight="700">legend</text> |
| <rect x="1256" y="293" width="16" height="12" rx="2" fill="none" stroke="var(--added)" stroke-width="3"/> |
| <text class="legend-t" x="1280" y="303">new submodule (vs parent)</text> |
| <rect x="1256" y="311" width="16" height="12" rx="2" fill="none" stroke="var(--over)" stroke-width="3"/> |
| <text class="legend-t" x="1280" y="321">changed / redefined</text> |
| <rect x="1256" y="329" width="16" height="12" rx="2" fill="none" stroke="var(--deleted)" stroke-width="3"/> |
| <text class="legend-t" x="1280" y="339">deleted</text> |
| <rect x="1256" y="347" width="16" height="12" rx="2" fill="none" stroke="var(--grid)" stroke-width="3"/> |
| <text class="legend-t" x="1280" y="357">inherited / copy-pasted</text> |
| <text class="legend-t" x="1254" y="380" font-weight="700">changes by class</text> |
| <circle cx="1260" cy="393" r="4" fill="var(--over)"/> |
| <text class="facts-v" x="1272" y="396">AyaVisionForConditionalGeneration</text> |
| <text class="box-sub" x="1272" y="409">ovr forward</text> |
| <circle cx="1260" cy="421" r="4" fill="var(--over)"/> |
| <text class="facts-v" x="1272" y="424">AyaVisionModel</text> |
| <text class="box-sub" x="1272" y="437">ovr forward,get_image_features</text> |
| <circle cx="1260" cy="449" r="4" fill="var(--over)"/> |
| <text class="facts-v" x="1272" y="452">AyaVisionPreTrainedModel</text> |
| <text class="box-sub" x="1272" y="465">1 attr</text> |
| <circle cx="1260" cy="477" r="4" fill="var(--added)"/> |
| <text class="facts-v" x="1272" y="480">AyaVisionMultiModalProjector</text> |
| <text class="box-sub" x="1272" y="493">add __init__,forward,pixel_shuffle</text> |
| </svg> |