From 5a533419817baf16ec994f176882fb2c8c976c73 Mon Sep 17 00:00:00 2001 From: workprenticebot <257153108+workprenticebot@users.noreply.github.com> Date: Sun, 5 Jul 2026 12:45:44 +0000 Subject: [PATCH] Add FAQPage schema + answer-first intro to AI infrastructure tools guide Enables the existing what-is-style FAQPage schema mechanism for blog posts via an opt-in `faq_schema: true` frontmatter flag, then turns it on for /blog/ai-infrastructure-tools/, which already carries a genuine 9-question FAQ section. Blog posts are gated behind an explicit opt-in rather than a blanket `.Type "blog"` check because 168+ existing posts contain narrative headings ending in "?" that are not real Q&A sections; a blanket gate would emit inaccurate FAQPage schema across the archive. This keeps the mechanism reusable for future posts (mirrors the what-is template pattern from the earlier comparison-page FAQPage work) instead of a one-off inline JSON-LD block. Also rewrites the post's opening paragraph into an answer-first format (55 words) that states what the two AI-infrastructure markets are before any narrative framing, targeting our weakest AI-visibility topic (11.36% visibility per Profound) on a page that already drives citations. --- content/blog/ai-infrastructure-tools/index.md | 5 +++-- layouts/partials/schema/graph-builder.html | 13 +++++++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/content/blog/ai-infrastructure-tools/index.md b/content/blog/ai-infrastructure-tools/index.md index e453f4d89070..ba4bd1bd21e9 100644 --- a/content/blog/ai-infrastructure-tools/index.md +++ b/content/blog/ai-infrastructure-tools/index.md @@ -13,13 +13,14 @@ tags: - devops - announcements category: general +faq_schema: true --- -The phrase "AI infrastructure" now means two different things. One is the GPUs, schedulers, and MLOps platforms that exist to run AI workloads. The other is AI that runs infrastructure: agents and assistants that generate, deploy, and govern cloud resources on your behalf. They're different markets with different vendors, and most teams need to think about both. +"AI infrastructure tools" covers two distinct markets: infrastructure *for* AI (GPU clouds like CoreWeave, MLOps platforms like Weights & Biases) and AI *for* infrastructure (agentic platforms like Pulumi Neo that generate, deploy, and govern cloud resources for you). Most teams need tools from both categories, and picking the wrong one wastes budget and adoption goodwill. -The pressure to think about both is real. [McKinsey research](https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/the-economic-potential-of-generative-ai-the-next-productivity-frontier) puts the productivity lift from generative AI in software development at 20–45%, which is great for application teams and a problem for platform teams trying to keep up with the resulting feature flow. Infrastructure investment is climbing on both fronts: more spend on the compute that trains and serves models, more spend on AI tools that manage everything else. +The pressure to get this right is real. [McKinsey research](https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/the-economic-potential-of-generative-ai-the-next-productivity-frontier) puts the productivity lift from generative AI in software development at 20–45%, which is great for application teams and a problem for platform teams trying to keep up with the resulting feature flow. Infrastructure investment is climbing on both fronts: more spend on the compute that trains and serves models, more spend on AI tools that manage everything else. This guide covers both categories: the compute and MLOps stack in Part 1, and AI-powered infrastructure management in Part 2, where the more interesting product shift is happening. diff --git a/layouts/partials/schema/graph-builder.html b/layouts/partials/schema/graph-builder.html index 04417de577d5..311e539ec5e2 100644 --- a/layouts/partials/schema/graph-builder.html +++ b/layouts/partials/schema/graph-builder.html @@ -39,9 +39,18 @@ {{ end }} {{/* What-is pages get Article as their main entity; if the page also has an FAQ - section, expose it as a FAQPage entity in the same graph under its own @id. */}} + section, expose it as a FAQPage entity in the same graph under its own @id. + Blog posts opt in explicitly via `faq_schema: true` in frontmatter: unlike + what-is pages (curated, definitional, low false-positive risk), 168+ + existing blog posts contain narrative headings that happen to end in "?" + without being a real Q&A section, so gating blog FAQ schema on type alone + would generate inaccurate structured data across the archive. The opt-in + flag keeps this a reusable template mechanism (not a per-page hack) while + avoiding that regression; add `faq_schema: true` to any blog post's + frontmatter once it has a genuine FAQ section (## or ### headings ending + in "?") to pick up FAQPage schema automatically. */}} {{ $faqPage := dict }} -{{ if and (eq .Type "what-is") .IsPage }} +{{ if or (and (eq .Type "what-is") .IsPage) (and (eq .Type "blog") .IsPage .Params.faq_schema) }} {{ $faqPage = partial "schema/collectors/faq-entity.html" . }} {{ if and $faqPage (ne $faqPage (dict)) }} {{ $faqPage = merge $faqPage (dict "@id" "#faq") }}