ClawSkills logoClawSkills

Meta Video Ad Deconstructor

使用 Gemini AI 将视频广告创意解构为营销维度。提取钩子、社会证明、号召性用语 (CTA)、目标受众、情感触发点、紧迫策略

介绍

# Video Ad Deconstructor

利用 AI 将视频广告素材解构为可执行的市场营销洞察。

## 此技能的功能

- **生成摘要**:提取产品、功能、受众、行动号召(CTA) - **解构营销维度**:钩子、社会证明、紧迫感、情感等 - **支持多种内容类型**:消费品和游戏广告 - **进度跟踪**:针对长时间分析提供回调支持 - **JSON 输出**:用于下游处理的结构化数据

## 设置

### 1. 环境变量

```bash # Required for Gemini GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json ```

### 2. 依赖项

```bash pip install vertexai ```

## 使用方法

### 基础广告解构

```python from scripts.deconstructor import AdDeconstructor from scripts.models import ExtractedVideoContent import vertexai from vertexai.generative_models import GenerativeModel

# Initialize Vertex AI vertexai.init(project="your-project-id", location="us-central1") gemini_model = GenerativeModel("gemini-1.5-flash")

# Create deconstructor deconstructor = AdDeconstructor(gemini_model=gemini_model)

# Create extracted content (from video-ad-analyzer or manually) content = ExtractedVideoContent( video_path="ad.mp4", duration=30.0, transcript="Tired of messy cables? Meet CableFlow...", text_timeline=[{"at": 0.0, "text": ["50% OFF TODAY"]}], scene_timeline=[{"timestamp": 0.0, "description": "Person frustrated with tangled cables"}] )

# Generate summary summary = deconstructor.generate_summary( transcript=content.transcript, scenes="0.0s: Person frustrated with tangled cables", text_overlays="50% OFF TODAY" ) print(summary) ```

### 完整解构

```python # Deconstruct all marketing dimensions def on_progress(fraction, dimension): print(f"Progress: {fraction*100:.0f}% - Analyzed {dimension}")

analysis = deconstructor.deconstruct( extracted_content=content, summary=summary, is_gaming=False, # Set True for gaming ads on_progress=on_progress )

# Access dimensions for dimension, data in analysis.dimensions.items(): print(f"\n{dimension}:") print(data) ```

## 输出结构

### 摘要输出

``` Product/App: CableFlow Cable Organizer

Key Features: Magnetic design: Keeps cables organized automatically Universal fit: Works with all cable types Premium materials: Durable silicone construction

Target Audience: Tech users frustrated with cable management

Call to Action: Order now and get 50% off ```

### 解构输出

```python { "spoken_hooks": { "elements": [ { "hook_text": "Tired of messy cables?", "timestamp": "0:00", "hook_type": "Problem Question", "effectiveness": "High - directly addresses pain point" } ] }, "social_proof": { "elements": [ { "proof_type": "User Count", "claim": "Over 1 million happy customers", "credibility_score": 7 } ] }, # ... more dimensions } ```

## 已解构的营销维度

| 维度 | 提取内容 | |-----------|------------------| | `spoken_hooks` | 转录文本中的开头钩子 | | `visual_hooks` | 引人注目的视觉效果 | | `text_hooks` | 屏幕文字钩子 | | `social_proof` | 证言、用户数量、评价 | | `urgency_scarcity` | 限时优惠、库存警告 | | `emotional_triggers` | 恐惧、欲望、归属感等 | | `problem_solution` | 痛点和解决方案 | | `cta_analysis` | 行动号召的有效性 | | `target_audience` | 广告的目标人群 | | `unique_mechanism` | 产品的独特之处 |

## 自定义提示词

编辑 `prompts/marketing_analysis.md` 中的提示词以进行自定义:

- 要分析的维度 - 输出格式 - 评分标准 - 侧重游戏还是消费品

## 可解答的常见问题

- “这个广告使用了哪些钩子?” - “情感诉求是什么?” - “这个广告是如何制造紧迫感的?” - “这个广告针对谁?” - “展示了哪些社会证明?” - “解构这个竞争对手的广告”

更多产品