[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M73BKFS2DT9TP6GD8P43JAX4":3,"skill-same:01M73BKFS2DT9TP6GD8P43JAX4":47},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":21,"frontMatter":22,"refName":23,"commitSha":24,"skillDirectory":25,"forksCount":26,"repositoryHtmlUrl":27,"repositoryHomepageUrl":28,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":31,"updatedAt":32,"install":33,"resources":46},"01M73BKFS2DT9TP6GD8P43JAX4","flash-attention-patterns",null,"Horonomos-laps\u002FYana-AI","Horonomos-laps","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F355299122?v=4","01M76B3QPXE88ET2SQPDPVATZT"," Horonomos-laps","01M72ZQRJPCYPSSWT4D00VJR2A",13,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fflash-attention-patterns\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: flash-attention-patterns\ndescription: FlashAttention IO-aware attention algorithm for memory-efficient transformer training and inference. Tiling, recomputation strategy, hardware memory hierarchy, FlashAttention-2\u002F3 improvements, and integration with HuggingFace. Sources: Dao-AILab\u002Fflash-attention (BSD-3-Clause).\norigin: yana-ai — synthesized from Dao-AILab\u002Fflash-attention (BSD-3-Clause)\nlicense: Apache-2.0\nversion: 1.0.0\ncompatibility: yana-ai >= 1.3.51\n---\n\n# \u002Fflash-attention-patterns\n\n## When to Use\n\n- Reduce GPU memory usage during attention computation (O(N) vs O(N²))\n- Speed up training\u002Finference with long sequences (>1k tokens) on A100\u002FH100\n- Enable longer context windows that would otherwise OOM with standard attention\n- Drop-in replacement for `torch.nn.MultiheadAttention` with identical results\n\n## Do NOT use for\n\n- CPU inference (Flash Attention requires CUDA)\n- Models using custom attention variants (check architecture compatibility)\n\n---\n\n## Memory complexity comparison\n\n```\nStandard attention:\n  - Store full attention matrix: O(N²) GPU memory\n  - N=4096 tokens, fp16: 4096² × 2 bytes = 32 MB per layer per head\n  - N=32k tokens: 2 GB per layer — OOM before reaching long context\n\nFlashAttention:\n  - Tile the computation into SRAM blocks: O(N) HBM reads\u002Fwrites\n  - Never materializes full N×N matrix in HBM (GPU VRAM)\n  - Same mathematical result, 5–20× less memory for long sequences\n  - 2–4× faster due to reduced HBM bandwidth pressure\n\nFlashAttention-2 improvements:\n  - Better work partitioning across thread blocks\n  - Fewer non-matmul FLOPs → 2× faster than FA-1\n  - Supports GQA (Grouped-Query Attention) natively\n\nFlashAttention-3 (Hopper GPU, H100):\n  - Asynchronous pipelining between WGMMA and TMA\n  - FP8 support → 1.5–2× faster than FA-2 on H100\n```\n\n---\n\n## Installation and basic usage\n\n```bash\npip install flash-attn --no-build-isolation\n# Requires: CUDA 11.6+, PyTorch 2.0+, A100\u002FH100\u002FRTX 3090+\n```\n\n```python\nfrom flash_attn import flash_attn_qkvpacked_func, flash_attn_func\n\n# Packed QKV (efficient for self-attention)\n# qkv: (batch, seqlen, 3, num_heads, head_dim)\noutput = flash_attn_qkvpacked_func(\n  qkv,\n  dropout_p   = 0.0,     # 0 for inference\n  causal      = True,    # causal mask for autoregressive generation\n  softmax_scale = None,  # defaults to 1\u002Fsqrt(head_dim)\n)\n\n# Separate Q, K, V\n# q\u002Fk\u002Fv: (batch, seqlen, num_heads, head_dim)\noutput = flash_attn_func(q, k, v, causal=True)\n```\n\n---\n\n## Enable in HuggingFace model\n\n```python\nfrom transformers import AutoModelForCausalLM\n\n# Method 1: attn_implementation flag (transformers >= 4.36)\nmodel = AutoModelForCausalLM.from_pretrained(\n  'meta-llama\u002FLlama-3-8B',\n  attn_implementation = 'flash_attention_2',\n  torch_dtype         = torch.bfloat16,   # FA2 requires fp16 or bf16\n)\n\n# Method 2: torch.nn.functional.scaled_dot_product_attention (PyTorch 2.0+)\n# PyTorch's SDPA automatically uses FlashAttention if available:\nwith torch.backends.cuda.sdp_kernel(\n  enable_flash    = True,\n  enable_math     = False,\n  enable_mem_efficient = False,\n):\n  output = torch.nn.functional.scaled_dot_product_attention(q, k, v, is_causal=True)\n```\n\n---\n\n## Sequence length scaling\n\n```python\n# Benchmark attention memory at different sequence lengths\nimport torch, time\nfrom flash_attn import flash_attn_func\n\ndef bench(seqlen, use_flash=True):\n  batch, heads, dim = 1, 32, 128\n  q = torch.randn(batch, seqlen, heads, dim, dtype=torch.float16, device='cuda')\n  k = v = q.clone()\n\n  torch.cuda.empty_cache()\n  mem_before = torch.cuda.memory_allocated()\n\n  t = time.perf_counter()\n  if use_flash:\n    out = flash_attn_func(q, k, v, causal=True)\n  else:\n    out = torch.nn.functional.scaled_dot_product_attention(q.transpose(1,2), k.transpose(1,2), v.transpose(1,2), is_causal=True)\n  torch.cuda.synchronize()\n\n  mem = (torch.cuda.memory_allocated() - mem_before) \u002F 1e6\n  ms  = (time.perf_counter() - t) * 1000\n  print(f'seqlen={seqlen:6d} flash={use_flash} mem={mem:.0f}MB time={ms:.1f}ms')\n\nfor sl in [512, 2048, 8192, 32768]:\n  bench(sl, use_flash=True)\n  bench(sl, use_flash=False)\n```\n\n---\n\n## Anti-Fake-Pass Checklist\n\n```\n❌ float32 tensors → FA2 requires fp16 or bf16; float32 raises RuntimeError\n❌ Non-contiguous tensors → FA requires contiguous memory layout; call .contiguous() first\n❌ causal=False for autoregressive generation → attends to future tokens; wrong output\n❌ flash-attn not installed but attn_implementation='flash_attention_2' → falls back to eager silently\n❌ Using FA on sequences \u003C 64 tokens → overhead > benefit; standard attention faster here\n❌ Combining FA with gradient checkpointing incorrectly → recompute may not trigger; check FA's built-in recomputation\n```\n","# \u002Fflash-attention-patterns\n\n## When to Use\n\n- Reduce GPU memory usage during attention computation (O(N) vs O(N²))\n- Speed up training\u002Finference with long sequences (>1k tokens) on A100\u002FH100\n- Enable longer context windows that would otherwise OOM with standard attention\n- Drop-in replacement for `torch.nn.MultiheadAttention` with identical results\n\n## Do NOT use for\n\n- CPU inference (Flash Attention requires CUDA)\n- Models using custom attention variants (check architecture compatibility)\n\n---\n\n## Memory complexity comparison\n\n```\nStandard attention:\n  - Store full attention matrix: O(N²) GPU memory\n  - N=4096 tokens, fp16: 4096² × 2 bytes = 32 MB per layer per head\n  - N=32k tokens: 2 GB per layer — OOM before reaching long context\n\nFlashAttention:\n  - Tile the computation into SRAM blocks: O(N) HBM reads\u002Fwrites\n  - Never materializes full N×N matrix in HBM (GPU VRAM)\n  - Same mathematical result, 5–20× less memory for long sequences\n  - 2–4× faster due to reduced HBM bandwidth pressure\n\nFlashAttention-2 improvements:\n  - Better work partitioning across thread blocks\n  - Fewer non-matmul FLOPs → 2× faster than FA-1\n  - Supports GQA (Grouped-Query Attention) natively\n\nFlashAttention-3 (Hopper GPU, H100):\n  - Asynchronous pipelining between WGMMA and TMA\n  - FP8 support → 1.5–2× faster than FA-2 on H100\n```\n\n---\n\n## Installation and basic usage\n\n```bash\npip install flash-attn --no-build-isolation\n# Requires: CUDA 11.6+, PyTorch 2.0+, A100\u002FH100\u002FRTX 3090+\n```\n\n```python\nfrom flash_attn import flash_attn_qkvpacked_func, flash_attn_func\n\n# Packed QKV (efficient for self-attention)\n# qkv: (batch, seqlen, 3, num_heads, head_dim)\noutput = flash_attn_qkvpacked_func(\n  qkv,\n  dropout_p   = 0.0,     # 0 for inference\n  causal      = True,    # causal mask for autoregressive generation\n  softmax_scale = None,  # defaults to 1\u002Fsqrt(head_dim)\n)\n\n# Separate Q, K, V\n# q\u002Fk\u002Fv: (batch, seqlen, num_heads, head_dim)\noutput = flash_attn_func(q, k, v, causal=True)\n```\n\n---\n\n## Enable in HuggingFace model\n\n```python\nfrom transformers import AutoModelForCausalLM\n\n# Method 1: attn_implementation flag (transformers >= 4.36)\nmodel = AutoModelForCausalLM.from_pretrained(\n  'meta-llama\u002FLlama-3-8B',\n  attn_implementation = 'flash_attention_2',\n  torch_dtype         = torch.bfloat16,   # FA2 requires fp16 or bf16\n)\n\n# Method 2: torch.nn.functional.scaled_dot_product_attention (PyTorch 2.0+)\n# PyTorch's SDPA automatically uses FlashAttention if available:\nwith torch.backends.cuda.sdp_kernel(\n  enable_flash    = True,\n  enable_math     = False,\n  enable_mem_efficient = False,\n):\n  output = torch.nn.functional.scaled_dot_product_attention(q, k, v, is_causal=True)\n```\n\n---\n\n## Sequence length scaling\n\n```python\n# Benchmark attention memory at different sequence lengths\nimport torch, time\nfrom flash_attn import flash_attn_func\n\ndef bench(seqlen, use_flash=True):\n  batch, heads, dim = 1, 32, 128\n  q = torch.randn(batch, seqlen, heads, dim, dtype=torch.float16, device='cuda')\n  k = v = q.clone()\n\n  torch.cuda.empty_cache()\n  mem_before = torch.cuda.memory_allocated()\n\n  t = time.perf_counter()\n  if use_flash:\n    out = flash_attn_func(q, k, v, causal=True)\n  else:\n    out = torch.nn.functional.scaled_dot_product_attention(q.transpose(1,2), k.transpose(1,2), v.transpose(1,2), is_causal=True)\n  torch.cuda.synchronize()\n\n  mem = (torch.cuda.memory_allocated() - mem_before) \u002F 1e6\n  ms  = (time.perf_counter() - t) * 1000\n  print(f'seqlen={seqlen:6d} flash={use_flash} mem={mem:.0f}MB time={ms:.1f}ms')\n\nfor sl in [512, 2048, 8192, 32768]:\n  bench(sl, use_flash=True)\n  bench(sl, use_flash=False)\n```\n\n---\n\n## Anti-Fake-Pass Checklist\n\n```\n❌ float32 tensors → FA2 requires fp16 or bf16; float32 raises RuntimeError\n❌ Non-contiguous tensors → FA requires contiguous memory layout; call .contiguous() first\n❌ causal=False for autoregressive generation → attends to future tokens; wrong output\n❌ flash-attn not installed but attn_implementation='flash_attention_2' → falls back to eager silently\n❌ Using FA on sequences \u003C 64 tokens → overhead > benefit; standard attention faster here\n❌ Combining FA with gradient checkpointing incorrectly → recompute may not trigger; check FA's built-in recomputation\n```\n",{},"main","481dcd7dd2e288b9d627a2bd017db70e64e6c6fa","core\u002Fskills\u002Fflash-attention-patterns",2,"https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI","https:\u002F\u002Fyana.vutam.link\u002F","https:\u002F\u002Fgithub.com\u002FHoronomos-laps","https:\u002F\u002Fyana.vutam.link","An open-source governed runtime & execution environment for multi-agent AI systems.","2026-11-14 13:24:09",{"source":7,"skillName":5,"commands":34,"prompt":44,"zipAvailable":45},[35,38,41],{"tool":36,"command":37},"npx","npx skills add Horonomos-laps\u002FYana-AI --skill flash-attention-patterns",{"tool":39,"command":40},"bunx","bunx skills add Horonomos-laps\u002FYana-AI --skill flash-attention-patterns",{"tool":42,"command":43},"pnpm","pnpm dlx skills add Horonomos-laps\u002FYana-AI --skill flash-attention-patterns","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fflash-attention-patterns\u002FSKILL.md",true,[],[48,56,63,71,79,87],{"skillNo":49,"name":50,"nameZh":6,"description":51,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":52,"licenseFileUrl":6,"sourceHtmlUrl":53,"categories":54,"keywords":55,"publishedAt":18},"01M735GKET5YVYKAY62W2P5YXB","openai--sentry--sentry","Use when the user asks to inspect Sentry issues or events, summarize recent production errors, or pull basic Sentry health data via the Sentry API; perform read-only queries with the bundled script and require `SENTRY_AUTH_TOKEN`.","MIT","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fopenai--sentry--sentry\u002FSKILL.md",[],[],{"skillNo":57,"name":58,"nameZh":6,"description":59,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":60,"categories":61,"keywords":62,"publishedAt":18},"01M73DCAP83T17HY7SMGK7MGFE","ito-basket-compare","Compare Itô prediction-market baskets against a user's knowledge base, portfolio notes, financial context, watchlist, or research thesis. Use for read-only basket comparison and gap analysis without investment advice or live trading.","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fito-basket-compare\u002FSKILL.md",[],[],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":67,"sourceHtmlUrl":68,"categories":69,"keywords":70,"publishedAt":18},"01M734CYEMZFDR3KH6SW0JP8TD","implementing-network-traffic-baselining","Build network traffic baselines from NetFlow\u002FIPFIX data using Python pandas for statistical analysis, z-score anomaly detection, and hourly\u002Fdaily traffic pattern profiling","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-network-traffic-baselining\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-network-traffic-baselining\u002FSKILL.md",[],[],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":75,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":18},"01M73ASZ6NJRJM44Z2P84NGQ3Q","detecting-evasion-techniques-in-endpoint-logs","Detects defense evasion techniques used by adversaries in endpoint logs including log tampering, timestomping, process injection, and security tool disabling. Use when investigating suspicious endpoint behavior, building detection rules for evasion tactics, or conducting threat hunting for stealthy adversary activity. Activates for requests involving evasion detection, defense evasion analysis, log tampering detection, or MITRE ATT&CK TA0005.","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fdetecting-evasion-techniques-in-endpoint-logs\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fdetecting-evasion-techniques-in-endpoint-logs\u002FSKILL.md",[],[],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":83,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":18},"01M734AFNXD06Z78QRK0VKGT7Q","implementing-microsegmentation-with-guardicore","Implementing microsegmentation using Akamai Guardicore Segmentation to map application dependencies, create granular network policies, visualize east-west traffic flows, and enforce least-privilege communication between workloads across data centers and cloud.","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-microsegmentation-with-guardicore\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-microsegmentation-with-guardicore\u002FSKILL.md",[],[],{"skillNo":88,"name":89,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":18},"01M736TK27QMCXK0DVCH25SJN5","ramdisk-tmpfs-patterns","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Framdisk-tmpfs-patterns\u002FSKILL.md",[],[]]