renue

ARTICLE

競合バナーAI分析の実装ガイド【2026年版】— Playwright スクレイピング × Vision AI 分析 × プロンプト注入の本番アーキテクチャ

公開日: 2026/4/6

競合バナーAI分析とは、競合他社や業界標準のバナー広告を自動的に収集・分析し、その知見を自社のバナー生成に活用する仕組みである。単に「参考画像を並べる」だけでなく、Vision AIで「構成・色使い・雰囲気・視線誘導」の4観点で自動評価し、その結果を画像生成プロンプトに注入することで、業界標準を踏まえた高品質なバナーを自動生成できる。本記事では、renueが自社プロダクトとして実装している`BenchmarkScraper` + `BenchmarkAnalyzer`の本番アーキテクチャを解説する。

なぜ競合バナー分析を自動化するか

AI画像生成でバナーを作る際、最大の課題は「業界の雰囲気に合わない画像が生成される」ことである。例えばBtoB SaaSのバナーを生成するとき、プロンプトに「青系・クリーン」と書いても、AIが想像する「青系・クリーン」は現実の業界標準とズレることが多い。

従来の解決方法の問題

  • 手動で参考画像を集める: 時間がかかる、担当者のセンスに依存
  • プロンプトに業界名を書くだけ: AIの学習データ次第でズレる
  • 参考画像を直接LLMに渡す: トークンコストが高い、商標権の問題

競合バナー分析AIによる解決

  • 業界キーワードで自動的にバナーを収集
  • Vision AIで特徴をテキスト化(構成/色/雰囲気/視線誘導)
  • 複数画像の共通パターンを統合
  • 英語の画像生成プロンプトに注入可能な形式に変換
  • 商標やブランド名は除外し、スタイルのみ抽出

本番品質の競合バナー分析に必要な4レイヤー

レイヤー1: バナーギャラリーサイトからのスクレイピング

業界のバナーを収集するには、バナーギャラリーサイト(banner-hiroba.com, design-library.jp 等)を利用する。renueの実装では`BenchmarkScraper`クラスがPlaywrightを使ってヘッドレスブラウジングでバナーを収集する。

スクレイピングの基本設計

@dataclass
class BenchmarkImage:
    image_bytes: bytes
    mime_type: str
    source_url: str
    source_site: str

class BenchmarkScraper:
    def search(self, keywords, sources=None, limit=3):
        if sources is None:
            sources = ["banner_hiroba", "design_library"]
        limit = min(limit, MAX_IMAGES_PER_SOURCE)
        results = []
        for source in sources:
            try:
                if source == "banner_hiroba":
                    imgs = self._search_banner_hiroba(keywords, limit)
                elif source == "design_library":
                    imgs = self._search_design_library(keywords, limit)
                results.extend(imgs)
            except Exception as e:
                logger.warning("Benchmark search failed for %s: %s", source, e)
        return results

複数ソース対応の意義

単一のギャラリーサイトだけだと、結果が偏る。renueの実装では最低2サイトからバナーを収集し、結果を統合することで業界全体のパターンを把握する。

スクレイピング時の注意点

  • 利用規約遵守: スクレイピング対象サイトの規約を必ず確認
  • リクエスト頻度制限: 過度な負荷を避ける
  • 画像枚数の制限: 1ソースあたり最大5枚(`MAX_IMAGES_PER_SOURCE`)
  • Playwrightのタイムアウト: 30秒(`DEFAULT_TIMEOUT = 30000`)
  • 著作権の扱い: 分析は一時的な用途に限定、スタイル情報のみ抽出

レイヤー2: Vision AIによる4観点分析

収集したバナーをGemini Vision AIで分析し、テキスト記述に変換する。renueの実装では以下の4観点で分析する。

4観点評価フレームワーク

観点分析内容プロンプト注入先
1. 全体の構成・レイアウト要素の配置、余白の使い方composition, layout
2. 色使い主要な色、配色パターン、コントラストcolor palette, contrast
3. 雰囲気・トーンフォーマル/カジュアル、温かみ/クールmood, tone
4. 視線誘導どこに目が行くか、情報の優先順位focal point, hierarchy

分析プロンプトの設計

ANALYSIS_SYSTEM_PROMPT = '''あなたはグラフィックデザインの専門家です。
バナー広告や広告画像を分析し、デザインの特徴をテキストで記述してください。
具体的なテキスト内容やブランド名は含めず、ビジュアルの特徴のみを記述してください。'''

SINGLE_IMAGE_PROMPT = '''以下のバナー広告画像を分析し、次の4つの観点でテキスト要約してください。
各観点は1-2文で簡潔に。

1. 全体の構成・レイアウト(要素の配置、余白の使い方)
2. 色使い(主要な色、配色パターン、コントラスト)
3. 雰囲気・トーン(フォーマル/カジュアル、温かみ/クール等)
4. 視線誘導(どこに目が行くか、情報の優先順位)

出力は日本語で、箇条書きなしのテキストのみ。'''

ブランド名を含めない理由

プロンプトに「具体的なテキスト内容やブランド名は含めないこと」を明示する。これには3つの理由がある。

  • 商標権の保護: 他社ブランド名を後続のプロンプトに含めない
  • 汎用性の向上: スタイル情報のみなら多数の案件で再利用可能
  • 品質の向上: 後続の画像生成で「スタイルのみ真似る」挙動になる

レイヤー3: 複数画像の統合分析

1枚の分析では偏りが大きい。renueの実装では複数画像の分析結果を統合し、共通パターンを抽出する。

統合プロンプト

SYNTHESIS_PROMPT = '''以下は複数のバナー広告のデザイン分析結果です。
これらに共通するデザインパターンと特徴を統合し、
新しいバナーを制作する際のデザインガイダンスとして50-100語程度の英語で要約してください。

具体的なブランド名やテキスト内容は含めないこと。
色使い、レイアウト、雰囲気、構成の共通パターンに焦点を当てること。

分析結果:
{analyses}'''

英語出力の意義

日本語ではなく英語で要約する理由は、後続の画像生成AI(DALL-E/Midjourney/Imagen)が英語プロンプトを前提としているためである。日本語→英語の変換をこのステップで済ませることで、画像生成時の追加翻訳が不要になる。

出力の統合パターン

combined = "\n\n---\n\n".join(
    f"[画像{i + 1} ({img.source_site})]:\n{analysis}"
    for i, (img, analysis) in enumerate(zip(images, analyses))
)
result = client.generate(
    user_prompt=SYNTHESIS_PROMPT.format(analyses=combined),
    max_tokens=300,
)

各画像の分析結果をセパレーター(`---`)で区切り、ソースサイト情報を付与することで、LLMが各画像を区別できるようになる。

レイヤー4: 画像生成プロンプトへの注入

統合された英語デザインガイダンスを、CreativeImageGenerator等の画像生成AIに注入する。これにより業界標準を踏まえたバナーが自動生成される。

注入のタイミング

  • 事前生成型: キャンペーン開始前に業界ベンチマークを生成しておき、プロンプトのベースとして使用
  • オンデマンド型: バナー生成時に都度ベンチマーク分析を実行
  • 定期更新型: 月次で業界ベンチマークを更新し、キャッシュを活用

プロンプトへの注入例

画像生成プロンプトに以下のような形で注入する。

base_prompt = "Create a banner advertisement for {product}"
industry_context = benchmark_analyzer.analyze(images)
final_prompt = f'''
{base_prompt}

Industry design guidance:
{industry_context}

Additional requirements:
- Product: {product_name}
- Target: {target_audience}
- Brand colors: {brand_colors}
'''

この方式により、「業界ベンチマーク」「自社ブランド」「具体案件要件」の3層を組み合わせた高品質な画像生成が実現する。

エラーハンドリングとフォールバック

本番運用では、スクレイピング失敗やLLM API障害が発生する。renueの実装では以下のフォールバック戦略を取っている。

スクレイピング失敗時

  • 1サイトが失敗しても他サイトの結果を返す
  • 全サイトが失敗した場合は空リストを返す(例外を投げない)
  • ログには警告を残し、後で分析可能に

Vision AI分析失敗時

  • 1枚の分析が失敗しても他画像の分析を続行
  • 1枚も成功しなかった場合は空文字を返す
  • GeminiTextClient設定なしでも動作するようガード

統合失敗時のフォールバック

1枚だけの分析結果しかない場合、統合プロンプトは不要。renueの実装では以下の最適化を行っている。

# 1枚のみの場合は統合不要、そのまま英語に変換
if len(analyses) == 1:
    return client.generate(
        user_prompt=f"以下のデザイン分析を、画像生成プロンプトに使えるデザインガイダンスとして50-100語程度の英語に変換してください:\n\n{analyses[0]}",
        max_tokens=300,
    )

業界別のキーワード設計

ベンチマーク検索のキーワードは、業界によって最適化する必要がある。

業界推奨キーワード
BtoB SaaS"SaaS 法人 ビジネス プラットフォーム"
EC/D2C"通販 商品 セール 期間限定"
金融"投資 資産運用 ローン クレジット"
不動産"マンション 物件 住宅 新築"
教育"スクール 講座 受講 学習"
医療"クリニック 治療 美容 健康"
採用"求人 採用 転職 エントリー"

renueの実装特徴

renueは「Self-DX First」の方針のもと、競合バナー分析を自社プロダクトとして実装・運用している。社内12業務を553のAIツールで自動化済み(2026年1月時点)であり、競合バナー分析は広告代理AIエージェントの一機能として組み込まれている(全て公開情報)。

公開されている技術スタック

  • 言語: Python 3.11
  • スクレイピング: Playwright(Chromium, ヘッドレス)
  • Vision AI: Gemini (REST API直接呼び出し)
  • 統合先: CreativeImageGenerator(画像生成エンジン)
  • データクラス: BenchmarkImage / BenchmarkAnalyzer / BenchmarkScraper

2026年の競合分析AI市場

2026年現在、AIR DesignやBanavoなどの市場ツールも登場し、AI画像解析による競合分析が広がっている。renueの実装はこれらのSaaSツールと異なり、自社プロダクトに統合可能な形でのコード実装となっている。自社独自のブランドアセット管理と統合できるメリットがある。

導入時のよくある失敗パターン

  • スクレイピング規約を確認しない: 後で問題になる
  • 商標名を含んだ分析結果をそのまま使う: 著作権・商標権リスク
  • 1枚だけで判断する: 偏った結果になる
  • 日本語プロンプトで画像生成: 品質が下がる(英語が主流)
  • フォールバックがない: スクレイピング失敗で全機能停止
  • キーワードが抽象的すぎる: 関連度の低いバナーが集まる
  • 定期更新しない: 業界トレンドから外れる

AI画像生成プロンプトの品質向上パターン

競合バナー分析で得られたガイダンスは、以下のパターンで画像生成の品質を向上させる。

パターン1: スタイル注入

業界ガイダンスを「style」パラメータとして画像生成プロンプトに注入する。

パターン2: ネガティブプロンプト生成

業界ガイダンスから「避けるべきスタイル」も自動抽出し、ネガティブプロンプトに含める。

パターン3: カラーパレット抽出

分析結果から主要カラーを抽出し、自社ブランドカラーと組み合わせて使用する。

よくある質問

スクレイピングは合法?

公開されているサイトの利用規約を必ず確認すること。多くのギャラリーサイトは研究・分析目的での利用を許可しているが、商用利用や大量取得は禁止されている場合がある。事前確認は必須。

1回の分析コストは?

画像3枚の分析+統合で、Gemini Vision APIの使用料として数円〜数十円程度。スクレイピングは無料(Playwrightローカル実行)。月間100回の分析なら月額数千円程度で運用できる。

どのVision AIを使うべき?

日本語での分析ならGemini Visionが推奨。英語ベースの分析ならGPT-4 VisionやClaude Visionも選択肢。renueの実装では日本語分析から英語プロンプト生成までを1つのクライアントで処理できるGeminiを採用している。

ベンチマーク更新の頻度は?

業界のトレンドは数ヶ月で変わる。月次または四半期での更新が推奨される。renueの実装ではキャッシュを持ち、指定期間経過後に自動再取得する設計が可能。

導入後に最も改善するKPIは?

「バナー制作のトーン統一率」と「業界標準適合度」が最も改善する。デザイナーが感覚で作っていた業界の雰囲気を、AI分析結果で客観化できるため、新人でもベテラン品質のバナーを生成できる。