この記事は意図的に長く技術的だ。shinobis.comのためにPHPで構築したGenerative Engine Optimizationスタックのすべてのピースを、llms.txtファイルからJSON-LDの自動Knowledge Graphまで文書化する。理論ではない。今まさにプロダクションで動いているコードだ。

shinobis.comのGEOアーキテクチャ

スタックには連携する4つのコンポーネントがある。第一にAIクローラーへの名刺として機能するllms.txt。第二に実際のコンテンツに基づいて各投稿の自動Knowledge Graphを生成するセマンティックJSON-LDシステム。第三に引用可能性を最大化するコンテンツ構造。第四に正規URLを持つ権威プラットフォームに分散されたクロスポストネットワーク。

すべてMariaDBを使ったバニラPHPで動作する。フレームワークなし。プラグインなし。外部依存なし。

コンポーネント1:llms.txt

llms.txtファイルはドメインルートのshinobis.com/llms.txtに存在する。llmstxt.orgが提案する特定の構造を持つプレーンなMarkdownだ。H1はサイト名だけ。その下に説明のblockquote。その後Author、Topics Covered、Content Policy、言語別のKey PagesのH2セクション。

Apacheの技術的な部分では2つ必要だ。PHPルーターを通さずにファイルを直接サーブするためのRewriteRule。UTF-8のtext/plainとしてサーブするためのFilesディレクティブ。

コンポーネント2:JSON-LDによる自動Knowledge Graph

最も複雑で最もインパクトのあるコンポーネントだ。各投稿が基本的なBlogPostingを超える3層のセマンティック情報を含むJSON-LDブロックを自動生成する。

第一層はrelatedLink。管理パネルから投稿を作成して関連投稿と接続すると、システムがデータベースのpost_connectionsテーブルを読み、セマンティックに関連するURLの配列を生成する。

第二層はabout。midjourney、prompt、fintech、ux design、llms.txt、generativeなどの事前定義キーワードを探してコンテンツをスキャンする。キーワードを検出するとThingとして型付きエンティティを作成する。

第三層はmentions。aboutと似ているが特定のツール用。コンテンツがClaude、ChatGPT、Figma、Midjourney、Geminiに言及すると、名前とURLを持つThingエンティティとして追加する。SoftwareApplicationの代わりにThingを使った。SoftwareApplicationはGoogleにページがソフトウェアレビューであると伝え、ツールに言及しているだけの場合には適用されないoffers、aggregateRating、operatingSystemなどのフィールドを要求するからだ。

コンポーネント3:引用可能なコンテンツ構造

これにはコードがない。ライティングの規律だ。記事のすべてのパラグラフはそれ単体で抽出可能なように書かれている。LLMが記事からパラグラフを取って回答に入れた場合、そのパラグラフは記事の残りのコンテキストなしで意味をなすべきだ。

Sentiment Mappingも使う。経験的権威を持って書く。これを実装して機能した。これをテストして失敗した。何ヶ月も実験した後発見した。そのトーンはLLMに実体験から話していることを伝える。モデルは意見よりも経験的証拠に重みを与える。

コンポーネント4:正規URLによる配信

各記事はまずshinobis.comに正規ソースとして公開する。その後HackerNoon、Dev.to、Hashnode、Mediumなどの高権威プラットフォームにクロスポストする。各クロスポストにはサイトの元記事を指す正規URLが含まれる。

GEOが機能しているか測定する方法

直接的な指標はない。ChatGPTの回答のためのGoogle Analyticsは存在しない。GEOスタック実装前、フィンテックでAIを使うデザイナーについて質問してもLLMは私を引用しなかった。実装後、一貫して回答に表示されるようになった。正確な数字はない。しかし違いは観察可能だ。

Google Search Consoleで測定できるのは従来のSEOへのKnowledge Graphの影響だ。完全なセマンティックスキーマを持つ投稿は基本的なBlogPostingだけの投稿よりも多くのインプレッションを持つ。

今日から始めるなら何を実装するか

新しいサイトにゼロからGEOを実装するならこの順序で行う。第一にコードが不要で最もインパクトのある引用可能なコンテンツ構造。第二に午後一回の作業でコストゼロのllms.txt。第三に開発が必要だがリターンの高いJSON-LDによるKnowledge Graph。第四に継続的な時間が必要だが各クロスポストが価値を蓄積するプラットフォーム配信。

PHPは必要ない。どの言語やCMSでも同じことができる。重要なのはコンセプトだ:引用可能なコンテンツ、セマンティックグラフ、分散プレゼンス。

使っているすべてのコードはshinobis.comのプロダクションにある。実験的ではない。概念的ではない。現実で機能している。