{"id":53594,"date":"2026-10-12T14:29:04","date_gmt":"2026-10-12T04:29:04","guid":{"rendered":"https:\/\/www.cloudproinc.com.au\/?p=53594"},"modified":"2026-10-12T14:29:04","modified_gmt":"2026-10-12T04:29:04","slug":"llm-self-attention-mechanism-explained","status":"publish","type":"post","link":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/llm-self-attention-mechanism-explained\/","title":{"rendered":"LLM Self-Attention Mechanism Explained"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">In this post, &#8220;LLM Self-Attention Mechanism Explained&#8221;we\u2019ll break down how self-attention works, why it\u2019s important, and how to implement it with code examples.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Self-attention<\/strong> is one of the core components powering <a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/category\/llm\/\">Large Language Models (LLMs) <\/a>like GPT, BERT, and Transformer-based architectures. It allows a model to dynamically focus on different parts of an input sequence when processing each word or token, enabling better understanding of context, relationships, and meaning. <\/p>\n\n\n\n<figure class=\"wp-block-audio\"><audio controls src=\"https:\/\/cloudproin-e5ddd09d0f1b51fcfd2f-endpoint.azureedge.net\/blobcloudproinf8788b00c9\/wp-content\/uploads\/2025\/08\/llm-self-attention-mechanism-explained.mp3\"><\/audio><\/figure>\n\n\n\n<div class=\"wp-block-yoast-seo-table-of-contents yoast-table-of-contents\"><h2>Table of contents<\/h2><ul><li><a href=\"#h-what-is-self-attention\" data-level=\"2\">What is Self-Attention?<\/a><\/li><li><a href=\"#h-why-self-attention-is-important-in-llms\" data-level=\"2\">Why Self-Attention is Important in LLMs<\/a><\/li><li><a href=\"#h-the-self-attention-computation\" data-level=\"2\">The Self-Attention Computation<\/a><ul><li><a href=\"#h-steps\" data-level=\"3\">Steps:<\/a><\/li><li><a href=\"#h-example-in-pytorch\" data-level=\"3\">Example in PyTorch<\/a><\/li><\/ul><\/li><li><a href=\"#h-a-simple-numerical-example\" data-level=\"2\">A Simple Numerical Example<\/a><\/li><li><a href=\"#h-self-attention-diagram\" data-level=\"2\">Self-Attention Diagram<\/a><\/li><li><a href=\"#h-multi-head-attention\" data-level=\"2\">Multi-Head Attention<\/a><\/li><li><a href=\"#h-conclusion\" data-level=\"2\">Conclusion<\/a><\/li><\/ul><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-is-self-attention\">What is Self-Attention?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Self-attention computes the <em>relevance<\/em> of each <a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/29\/counting-tokens-using-the-openai-python-sdk\/\">token<\/a> in a sequence to every other token. Instead of processing words in isolation, it assigns <em>attention weights<\/em> that determine how much one word should influence another\u2019s representation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, in the sentence:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cThe cat sat on the mat.\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">When processing the word <strong>&#8220;sat&#8221;<\/strong>, the model should give higher weight to <strong>&#8220;cat&#8221;<\/strong> and <strong>&#8220;mat&#8221;<\/strong> than to <strong>&#8220;the&#8221;<\/strong> because they provide more relevant context.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-why-self-attention-is-important-in-llms\">Why Self-Attention is Important in LLMs<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Self-attention allows LLMs to capture long-range dependencies, unlike RNNs which struggle with distant word relationships. It processes input sequences in parallel, avoiding the slow sequential nature of older architectures, and adapts dynamically because weights change for each new input sequence. This flexibility makes self-attention the foundation of modern NLP breakthroughs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-self-attention-computation\">The Self-Attention Computation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The computation involves three main vectors:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Query (Q)<\/strong> \u2013 Represents what we are looking for.<\/li>\n\n\n\n<li><strong>Key (K)<\/strong> \u2013 Represents the index of information.<\/li>\n\n\n\n<li><strong>Value (V)<\/strong> \u2013 Holds the actual content to be retrieved.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-steps\">Steps:<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Input embeddings are projected into Q, K, and V using learned weight matrices.<\/li>\n\n\n\n<li>Attention scores are computed by taking the dot product of Q and K.<\/li>\n\n\n\n<li>Scaling is applied to prevent large dot-product values from dominating the softmax.<\/li>\n\n\n\n<li>Softmax normalizes the scores into probabilities.<\/li>\n\n\n\n<li>A weighted sum of V is calculated based on these probabilities.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-example-in-pytorch\">Example in PyTorch<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-1\"><code>import torch<br>import torch.nn.functional as F<br><br># Example input: batch_size=1, sequence_length=4, embedding_dim=5<br>x = torch.randn(1, 4, 5)<br><br># Weight matrices for Q, K, V<br>W_q = torch.randn(5, 5)<br>W_k = torch.randn(5, 5)<br>W_v = torch.randn(5, 5)<br><br># Step 1: Compute Q, K, V<br>Q = x @ W_q<br>K = x @ W_k<br>V = x @ W_v<br><br># Step 2: Compute attention scores<br>scores = Q @ K.transpose(-2, -1)<br><br># Step 3: Scale<br>scale = Q.size(-1) ** 0.5<br>scores = scores \/ scale<br><br># Step 4: Apply softmax<br>weights = F.softmax(scores, dim=-1)<br><br># Step 5: Weighted sum of values<br>output = weights @ V<br><br>print(\"Attention Weights:\\n\", weights)<br>print(\"Output:\\n\", output)<br><\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-a-simple-numerical-example\">A Simple Numerical Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s say we have a 3-word sequence with scalar embeddings:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Input embeddings: <strong>[1, 2, 3]<\/strong><\/li>\n\n\n\n<li>Q = K = V = same as input (for simplicity)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 1:<\/strong> <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Compute scores:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-2\"><code>QK^T = [[1*1, 1*2, 1*3],<br>        [2*1, 2*2, 2*3],<br>        [3*1, 3*2, 3*3]]<br><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 2:<\/strong> <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Scale and <a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/26\/understanding-the-softmax-function-in-ai\/\">softmax<\/a> to get attention weights.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 3:<\/strong> <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Multiply weights by V to get the final output.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-self-attention-diagram\">Self-Attention Diagram<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Below is a conceptual diagram of the self-attention process:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"683\" height=\"1024\" data-src=\"\/wp-content\/uploads\/2025\/08\/selfattention-683x1024.png\" alt=\"Self-Attention Diagram\" class=\"wp-image-53595 lazyload\" data-srcset=\"\/wp-content\/uploads\/2025\/08\/selfattention-683x1024.png 683w, \/wp-content\/uploads\/2025\/08\/selfattention-200x300.png 200w, \/wp-content\/uploads\/2025\/08\/selfattention-768x1152.png 768w, \/wp-content\/uploads\/2025\/08\/selfattention-980x1470.png 980w, \/wp-content\/uploads\/2025\/08\/selfattention-480x720.png 480w, \/wp-content\/uploads\/2025\/08\/selfattention.png 1024w\" data-sizes=\"(max-width: 683px) 100vw, 683px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 683px; --smush-placeholder-aspect-ratio: 683\/1024;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-multi-head-attention\">Multi-Head Attention<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In practice, <a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/25\/understanding-transformers-the-architecture-driving-ai-innovation\/\">Transformers<\/a> use <strong>multi-head attention<\/strong>. Instead of a single Q\/K\/V set, they use multiple heads, each learning different relationships between tokens. The model concatenates the outputs from these heads and projects them back into its embedding space. This allows the model to capture multiple types of relationships simultaneously, enhancing its ability to understand complex language patterns.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The self-attention mechanism is the reason LLMs understand nuanced relationships across a sequence. By learning how much each token should pay attention to every other token, it enables context-aware, high-performance NLP models. If you\u2019re building or fine-tuning LLMs, understanding and experimenting with self-attention is a must. With the code and concepts above, you can now implement it from scratch and adapt it to your needs.<\/p>\n\n\n\n<ul class=\"wp-block-yoast-seo-related-links yoast-seo-related-links\">\n<li><a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/25\/understanding-transformers-the-architecture-driving-ai-innovation\/\">Understanding Transformers: The Architecture Driving AI Innovation<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/21\/running-pytorch-in-microsoft-azure-machine-learning\/\">Running PyTorch in Microsoft Azure Machine Learning<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/26\/understanding-the-softmax-function-in-ai\/\">Understanding the Softmax Function in AI<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/08\/06\/how-to-code-and-build-a-gpt-large-language-model\/\">How to Code and Build a GPT Large Language Model<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.cloudproinc.com.au\/index.php\/2025\/07\/29\/counting-tokens-using-the-openai-python-sdk\/\">Counting Tokens Using the OpenAI Python SDK<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In this post, &#8220;LLM Self-Attention Mechanism Explained&#8221;we\u2019ll break down how self-attention works, why it\u2019s important, and how to implement it with code examples.<\/p>\n","protected":false},"author":1,"featured_media":53597,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"off","_et_pb_old_content":"","_et_gb_content_width":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[24,13,77],"tags":[],"class_list":["post-53594","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai","category-blog","category-llm"],"jetpack-related-posts":[{"id":53573,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/how-to-code-and-build-a-gpt-large-language-model\/","url_meta":{"origin":53594,"position":0},"title":"How to Code and Build a GPT Large Language Model","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"In this blog post, you\u2019ll learn how to code and build a GPT LLM from scratch or fine-tune an existing one. We\u2019ll cover the architecture, key tools, libraries, frameworks, and essential resources to get you started fast. Table of contentsUnderstanding GPT LLM ArchitectureModel Architecture DiagramTools and Libraries to Build a\u2026","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/ai\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/08\/CreateLLM.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/08\/CreateLLM.png 1x, \/wp-content\/uploads\/2025\/08\/CreateLLM.png 1.5x, \/wp-content\/uploads\/2025\/08\/CreateLLM.png 2x, \/wp-content\/uploads\/2025\/08\/CreateLLM.png 3x, \/wp-content\/uploads\/2025\/08\/CreateLLM.png 4x"},"classes":[]},{"id":53959,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/supercharge-langchain-apps-with-an-llm-cache\/","url_meta":{"origin":53594,"position":1},"title":"Supercharge LangChain apps with an LLM Cache","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"Cut latency and costs by caching LLM outputs in LangChain. Learn what to cache, when not to, and how to ship in-memory, SQLite, and Redis caches.","rel":"","context":"In &quot;Blog&quot;","block_context":{"text":"Blog","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/blog\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png 1x, \/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png 1.5x, \/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png 2x, \/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png 3x, \/wp-content\/uploads\/2025\/09\/supercharge-langchain-apps-with-an-llm-cache-for-speed-and-cost.png 4x"},"classes":[]},{"id":53539,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/understanding-transformers-the-architecture-driving-ai-innovation\/","url_meta":{"origin":53594,"position":2},"title":"Understanding Transformers: The Architecture Driving AI Innovation","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"In this blog post titled \"Understanding Transformers: The Architecture Driving AI Innovation,\" we'll delve into what Transformer architecture is, how it works, the essential tools we use to build transformer-based models, some technical insights, and practical examples to illustrate its impact and utility. The Transformer architecture has revolutionized the field\u2026","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/ai\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/07\/create-a-highly-detailed-high-resolution-image-depicting-the-transformer-architecture.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/07\/create-a-highly-detailed-high-resolution-image-depicting-the-transformer-architecture.png 1x, \/wp-content\/uploads\/2025\/07\/create-a-highly-detailed-high-resolution-image-depicting-the-transformer-architecture.png 1.5x, \/wp-content\/uploads\/2025\/07\/create-a-highly-detailed-high-resolution-image-depicting-the-transformer-architecture.png 2x"},"classes":[]},{"id":53928,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/what-are-weights-in-ai-models\/","url_meta":{"origin":53594,"position":3},"title":"What Are Weights in AI Models","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"Understand what model weights are, how they shape predictions, and how to manage, tune, and ship them safely in production.","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/ai\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png 1x, \/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png 1.5x, \/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png 2x, \/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png 3x, \/wp-content\/uploads\/2025\/09\/what-are-weights-in-ai-models-and-why-they-matter-for-accuracy.png 4x"},"classes":[]},{"id":53599,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/strategies-to-control-randomness-in-llms\/","url_meta":{"origin":53594,"position":4},"title":"Strategies to Control Randomness in LLMs","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"In this post, we\u2019ll explore strategies to control randomness in LLMs, discuss trade-offs, and provide some code examples in Python using the OpenAI API. Large Language Models (LLMs) like GPT-4, Claude, or LLaMA are probabilistic by design. They generate text by sampling the most likely next token from a distribution,\u2026","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/ai\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png 1x, \/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png 1.5x, \/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png 2x, \/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png 3x, \/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-13-2025-05_17_44-PM.png 4x"},"classes":[]},{"id":53960,"url":"https:\/\/www.cloudproinc.com.au\/index.php\/2026\/10\/12\/langchain-architecture-explained\/","url_meta":{"origin":53594,"position":5},"title":"LangChain Architecture Explained","author":"CPI Staff","date":"October 12, 2026","format":false,"excerpt":"A practical tour of LangChain\u2019s building blocks\u2014models, prompts, chains, memory, tools, and RAG\u2014plus LCEL, tracing, and deployment tips for production AI apps.","rel":"","context":"In &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/www.cloudproinc.com.au\/index.php\/category\/ai\/"},"img":{"alt_text":"","src":"\/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png","width":350,"height":200,"srcset":"\/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png 1x, \/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png 1.5x, \/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png 2x, \/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png 3x, \/wp-content\/uploads\/2025\/09\/langchain-architecture-explained-for-agents-rag-and-production-apps.png 4x"},"classes":[]}],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"\/wp-content\/uploads\/2025\/08\/ChatGPT-Image-Aug-11-2025-08_28_04-PM.png","_links":{"self":[{"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/posts\/53594","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/comments?post=53594"}],"version-history":[{"count":2,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/posts\/53594\/revisions"}],"predecessor-version":[{"id":53608,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/posts\/53594\/revisions\/53608"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/media\/53597"}],"wp:attachment":[{"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/media?parent=53594"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/categories?post=53594"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cloudproinc.com.au\/index.php\/wp-json\/wp\/v2\/tags?post=53594"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}