Spintaxとは?
Spintax(スピン構文)は、一つのソースをテキストの数多くの本当にユニークなバリアントへと変えるためのテンプレート言語です。あなた — あるいはAI — がバリエーションのロジックを一度だけ書けば、エンジンが数千通りの個別で決定論的な結果をローカルに、ほぼゼロコストでレンダリングします。
基本の考え方
Spintaxテンプレートは、バリエーションのマーカーを埋め込んだ普通のテキストです。レンダリングのたびに、エンジンは各マーカーから一つの選択肢を選び、個別の出力を生み出します — ただしどの選択もあなたが定義したものなので、結果は確率的な当て推量ではなく、正確でブランドに沿ったまま保たれます。
最もシンプルな例は波括弧と縦棒を使います:
{Hello|Hi|Hey} {world|everyone|there}
この一行だけで9通りの出力が生まれます:「Hello world」「Hi everyone」「Hey there」など。数十のバリエーション点を持つ実際のテンプレートなら、一つのソースから数千から数百万のユニークなバリアントを生成できます。
なぜAIに全ページを書かせないのか?
ページごとに言語モデルを呼ぶこともできますが、それには三つの問題があります。リクエストごとに費用がかかり、品質はぶれ、そして — 最も重要なのは — 出力がほぼ同一で見破られやすいことです。検索エンジンは、手間をかけていない紋切り型のAIテキストをますます検出し、ほぼ重複するページは互いに競合して重複コンテンツのペナルティを招きます。
Spintaxは逆の道を行きます。バリエーションを一度だけ書き、ローカルでレンダリングします。ページごとのAPI呼び出しはなく、確認できる決定論的な出力で、そして — どのバリアントもあなたが定義した別々の組み合わせなので — 構造上ユニークなコンテンツになります。それは、でっち上げの水増しのようにではなく、検索の中で個性を保ちます。
単純なスピンを超えて
現代のspintaxは {a|b|c} をはるかに超えます。完全な構文には次が含まれます:
- 列挙
{a|b|c}— 一つの選択肢を選ぶ。任意の深さでネスト可能 - 順列
[a|b|c]— N個の要素を選び、シャッフルし、設定可能な区切り文字で連結 - 変数
%name%—#set/#defで定義、またはレンダリング時に渡す再利用可能な値 - 条件分岐
{?VAR?then|else}— コイン投げではなく、値に基づく分岐 - 複数形の一致
{plural N: one|few|many}— 数に応じた正しい名詞形、ロケール対応 - インクルード
#include "slug"— あるテンプレートを別のテンプレートに埋め込む - コメント
/#...#/— 出力から取り除かれる著者メモ - 後処理 — 大文字化・空白・句読点の自動補正
完全な仕様は構文リファレンスにあります。
Spintax + AI:現代のワークフロー
コンテンツチームはすでにAIを既定の執筆インターフェースとして使っています。問題は、AIが書いた後に何が起きるかです。
このワークフローは逆方向の執筆です。あなたはすべてのバリアントを手で書くのではありません。最終テキストを一度だけ書き、バリエーションのマークアップは最後に加えます。そうすればエンジンは推測ではなくあなたの意図を実行します — ソースには逆、出力には多様。こうしてあなたは一つの確認可能なテンプレートから多様なコンテンツを作り出します。
つまりspintaxは、いつものAIモデルを反転させます:
- AIを使ってテンプレートを一度だけ作る — バリエーションのロジックを備えた構造化文書
- それを検証する — 構文チェック、プレビュー、人による確認
- その場でレンダリングする — どの出力もローカルな文字列操作:API呼び出しも、コストも、遅延もなし
出力は決定論的で、テンプレートの品質だけに依存します。だから一つのアセットがあなたのブランドの声とバリエーション戦略を捉え — ユニークなコンテンツを安全に、安く、いつまでも生成します。
ユースケース
- 規模のあるコンテンツ — 多数のページにわたる商品説明、ランディングページ、FAQブロック、メタディスクリプション。どれも本当に異なる
- ローカライズ — 一つのテンプレートからロケール別のバリアント。変数とロケール対応の複数形つき
- マルチサイト・代理店 — 再利用可能なテンプレートパック。サイトごとにユニークなコンテンツで、ほぼ同一のページが招く重複コンテンツのペナルティを避けられる
- メール・メッセージ — テストとパーソナライズのための件名と本文のバリエーション
- QA・テストデータ — ステージング環境向けの多様で現実的なコンテンツ
はじめかた
構文リファレンスでマークアップを学ぶか、プレイグラウンドでその場で試してください — インストール不要。自分のアプリでレンダリングするには、ランタイムでエンジンを選びます:@spintax/core(JavaScript)、spintax/core(PHP)、spintax-core(Python)、または Free Pascal エンジン — いずれもオープンソース、依存ゼロ、MIT、そして一つの共有コーパスに準拠。WordPressユーザーは無料プラグインでエディタ・キャッシュ・フィールドバインディングを利用できます。4つのエンジンすべてをご覧ください。