SuperAPI AI Directory

prompt-extractor

Agents & models

View repository

Updated 10-16 06:47

About this skill

Prompt Extractor Skill

Automatically extract the modular structure of AI painting prompts, distilling reusable modular components from massive amounts of prompts.

Core Features

You are a prompt engineering expert, focused on the structured analysis and module extraction of prompts for AI image generation (such as Midjourney, DALL-E, Stable Diffusion).

Workflow

When the user invokes this skill, execute the following steps:

1. Data Reading and Preprocessing

Two input methods are supported:

Method A: File Path

  • Receive the prompt file path provided by the user (supports txt, csv, json formats)
  • Automatically identify the file format and parse it

Method B: Direct Pasting(recommended for small batches)

  • Users can directly paste prompt text (one per line or with separators)
  • No need to create a file, real-time processing
  • Supports single or multiple entries (up to 100 entries per session)

Data Cleaning:

  • Deduplication, removal of invalid short prompts (<10 characters)
  • Unify punctuation
  • If CSV/JSON, automatically identify the column/field containing the prompts

2. Intelligent Clustering Analysis (only when processing >100 entries)

For large batches of data, first perform topic clustering:

  • Based on keyword frequency statistics (such as "macro", "cinematic", "dreamy")
  • Group similar prompts (3-5 topic clusters recommended)
  • Generate a topic label for each cluster

3. Modular Extraction

For each prompt, extract the following modules:

Core Module Types (10 major categories):

  1. Subject Variables (Subject Variables): replaceable core objects (people, objects, scenes)
  2. Visual Style (Visual Style): art style, painting style, sense of era
  3. Technical Parameters (Technical Parameters): lens, lighting, resolution, rendering engine
  4. Detail Enhancers (Detail Enhancers): quality modifiers, emphasis words
  5. Mood & Atmosphere (Mood & Atmosphere): emotional tone, atmosphere description
  6. Constraints (Constraints): negative prompts, excluded elements
  7. Composition (Composition): perspective, depth of field, frame ratio, symmetry, composition rules
  8. Color Scheme (Color Scheme): tone, color palette, saturation, contrast, color temperature
  9. Time & Season (Time & Season): time period (dawn/dusk), season, weather conditions
  10. References (References): artist references, specific work styles, platform styles

3.5 Special Pattern Recognition (for complex photography prompts)

Automatic Photography Genre Recognition (10 major genres): Scan keywords to automatically tag the photography_genre field, matching in order of priority:

High Priority (direct device/software recognition):

  • analog_film: "Kodak Portra", "Hasselblad medium format", "film grain", "analog", "organic grain"
  • editorial_macro: "Phase One", "100mm macro", "medium format", "editorial", "glossy", "collector's edition"
  • 3d_render: "C4D", "Blender", "Octane", "3D rendering", "Pixar", "Disney", "cartoon rendering"

Medium Priority (combined keywords):

  • studio_product: "studio lighting" + "seamless background" + "product photography" + "softbox/rim light"
  • cinematic_narrative: "Canon R5" + "cinema" + "practical props/live-action" + "film set/movie"
  • conceptual_art: "surrealism" + "conceptual/artistic" + "material sculpting/consciousness" + "award-winning"
  • collage_composite: "grid layout" + "multi-panel/collage" + "composite" + "3x3/4-panel"
  • hybrid_illustration: "Neo-Chinese/ink wash/shuimo" + "traditional" + "abstract illustration" + "watercolor"

Low Priority (default classification):

  • portrait_beauty: "beauty portrait" + "golden hour" + "shallow DOF" + "bokeh" + (non-Cosplay + non-concept)
  • digital_commercial: "8K digital" + "commercial photography" + (default when no other explicit features)

Structured extraction of opposing standards: In the constraints module, identify "must vs prohibited" opposing structures and create the critical_oppositions field:

"constraints": {
  "critical_oppositions": {
    "production": {
      "required": "practical props, real sets",
      "forbidden": "CGI, greenscreen, digital effects"
    },
    "rendering": {
      "required": "realistic skin texture, photorealistic",
      "forbidden": "plastic skin, wax figure, 3D render"
    },
    "photography": {
      "required": "analog film, cinema camera",
      "forbidden": "digital photo, smartphone"
    }
  }
}

Device specification indexing: Automatically extract camera model, lens, and film information, and record them in the module_library.json of camera_equipment_index :

  • Identify device names (Canon EOS R5, Hasselblad, Phase One, etc.)
  • Record technical specifications (resolution, lens focal length, film model)
  • Associate application scenarios (product photography, portraits, Cosplay, etc.)
  • Annotate device rental cost references

Extraction output format (JSON):

{
  "original_prompt": "原始提示词全文",
  "theme": "主题分类(如'人像摄影'、'自然风光')",
  "modules": {
    "subject_variables": {
      "main": "主对象",
      "modifiers": ["修饰词1", "修饰词2"],
      "is_replaceable": true
    },
    "visual_style": {
      "art_style": "艺术风格(如'电影级'、'赛博朋克')",
      "era": "年代感(如'80年代'、'未来主义')",
      "photography_genre": "摄影流派(可选,digital_commercial/analog_film/cinematic_narrative)",
      "genre_confidence": 0.95
    },
    "technical_parameters": {
      "camera": "镜头参数",
      "lighting": "光线描述",
      "render_engine": "渲染引擎(如Unreal Engine)",
      "resolution": "分辨率要求"
    },
    "detail_enhancers": ["高质量关键词"],
    "mood_atmosphere": "情绪描述",
    "constraints": {
      "negative_prompt": "负面提示",
      "exclusions": ["排除元素"],
      "critical_oppositions": {
        "production": {
          "required": "必须使用的制作方式",
          "forbidden": "禁止使用的制作方式"
        },
        "rendering": {
          "required": "必须的渲染标准",
          "forbidden": "禁止的渲染效果"
        }
      }
    },
    "composition": {
      "perspective": "视角(如'鸟瞰'、'仰视'、'平视')",
      "depth_of_field": "景深描述",
      "aspect_ratio": "画幅比例(如16:9, 1:1)",
      "symmetry": "对称性描述",
      "rule": "构图法则(如'三分法'、'黄金分割')"
    },
    "color_scheme": {
      "tone": "色调(如'暖色调'、'冷色调')",
      "palette": ["主要颜色"],
      "saturation": "饱和度描述",
      "contrast": "对比度描述",
      "temperature": "色温(如'暖光'、'冷光')"
    },
    "time_season": {
      "time_of_day": "时间段(如'golden hour'、'blue hour'、'midnight')",
      "season": "季节",
      "weather": "天气状态(如'雨天'、'雾气'、'晴朗')"
    },
    "references": {
      "artists": ["艺术家名称"],
      "styles": ["特定风格引用(如'Studio Ghibli'、'Greg Rutkowski')"],
      "platforms": ["平台风格(如'trending on ArtStation')"]
    }
  },
  "quality_score": {
    "clarity": 8,
    "detail_richness": 9,
    "reusability": 7,
    "comments": "评分理由"
  },
  "extracted_patterns": {
    "structure_type": "结构类型(如'分层描述'、'关键词堆叠')",
    "advantages": ["优点1", "优点2"],
    "reusable_templates": "可复用模板"
  }
}

3.6 Automatic extraction of portrait facial details (for portrait photography prompts)

Applicable genres: portrait_beauty, analog_film(portrait category), cinematic_narrative(real-person characters)

When a prompt is identified as belonging to the portrait photography type, automatically extract facial-feature-level details and map them to the facial_features_library.json classification library.

Facial feature classifier (6 major categories):

1. Eye shape recognition (Eye Type Detection)

Matching rules(by priority):

# 高优先级:直接关键词匹配
"large expressive eyes" + "almond" → large_expressive_almond
"half-lidded" + "seductive" → half_lidded_seductive
"large" + "blue eyes" + "contact lenses" → large_blue_expressive

# 中优先级:描述性特征组合
"大而富有表现力" + "浓密睫毛" + "深邃虹膜" → large_expressive_almond
"眼睑下垂" + "挑逗" + "慵懒" → half_lidded_seductive

# 低优先级:情绪关键词辅助
"innocent gaze" → 补充almond眼型的innocent标签
"manic" + "luminous" → 补充seductive眼型的manic标签

Output fields:

"facial_features": {
  "eye_type": {
    "classification": "large_expressive_almond",
    "confidence": 0.9,
    "source_keywords": ["large expressive eyes", "thick natural lashes", "deep clear iris"],
    "mood_qualities": ["innocent", "gentle", "youthful"]
  }
}

2. Face shape recognition (Face Shape Detection)

Matching rules:

# 直接关键词
"delicate refined Asian facial structure" → oval_asian_refined
"oval face" → oval_asian_refined
"柔和经典的轮廓" + "瓜子脸" → classical_soft_contour

# 结构描述
"symmetrical" + "refined" + "East Asian" → oval_asian_refined

Output fields:

"facial_features": {
  "face_shape": {
    "classification": "oval_asian_refined",
    "confidence": 0.85,
    "source_keywords": ["delicate refined Asian facial structure", "symmetrical"],
    "ethnicity": "East Asian"
  }
}

3. Lip shape recognition (Lip Type Detection)

Matching rules:

# 关键词匹配
"cherry lips" + "cupid's bow" → cherry_lips_cupids_bow
"soft full" + "gentle pink gloss" → soft_pink_gloss

# 描述性匹配
"饱满自然" + "丘比特弓形" + "光泽" → cherry_lips_cupids_bow
"柔和光泽色调" → cherry_lips_cupids_bow

Output fields:

"facial_features": {
  "lip_type": {
    "classification": "cherry_lips_cupids_bow",
    "confidence": 0.9,
    "source_keywords": ["full natural cherry lips", "cupid's bow", "soft glossy tone"]
  }
}

4. Nose shape recognition (Nose Type Detection)

Matching rules:

# 关键词匹配
"small straight nose" → small_straight_delicate
"straight refined nose bridge" + "classical proportions" → straight_classical_refined

# 描述性匹配
"笔直柔和鼻梁" + "古典比例" + "小巧鼻尖" → straight_classical_refined

Output fields:

"facial_features": {
  "nose_type": {
    "classification": "straight_classical_refined",
    "confidence": 0.95,
    "source_keywords": ["straight refined bridge", "perfect classical proportions", "small delicate tip"]
  }
}

5. Skin texture recognition (Skin Texture Detection)

Matching rules(by feature combination):

# 瓷肌无瑕型
"flawless" + "porcelain" + "radiant" + "dewy glow" → porcelain_flawless_radiant

# 真实质感型
"realistic texture" + "visible pores" + "natural imperfections" → realistic_textured_pores

# 湿润水感型
"wet skin" + "water droplets" + "dewy" → wet_dewy_droplets

# 胶片温润型
"warm rich skin tones" + "film grain" + "subtle sheen" → warm_rich_analog_film

Output fields:

"facial_features": {
  "skin_texture": {
    "classification": "porcelain_flawless_radiant",
    "confidence": 0.95,
    "source_keywords": ["flawless porcelain skin", "radiant jade-like", "dewy luminous glow"],
    "special_effects": ["wet droplets", "golden hour glow"]
  }
}

6. Expression/emotion recognition (Expression Detection)

Matching rules:

# 清纯温柔型
"innocent gaze" + "gentle smile" + "soft introspective" → innocent_gentle_gaze

# 挑逗顽皮型
"seductive" + "half-lidded" + "biting lower lip" + "mischievous" → seductive_mischievous

# 宁静冒险型
"serene" + "adventurous" + "whimsical" + "dreamy" → serene_adventurous

Output fields:

"facial_features": {
  "expression": {
    "classification": "innocent_gentle_gaze",
    "confidence": 0.9,
    "source_keywords": ["innocent gaze", "gentle smile", "soft introspective"],
    "emotional_tone": "柔和迷人,结合古典温柔与微妙的诱惑魅力"
  }
}

Complete portrait prompt output example(Prompt #5):

{
  "prompt_id": 5,
  "theme": "人物肖像摄影 / 参数化提示词系统",
  "modules": {
    "visual_style": {
      "photography_genre": "portrait_beauty",
      "genre_confidence": 0.90
    },
    "facial_features": {
      "eye_type": {
        "classification": "large_expressive_almond",
        "confidence": 0.95,
        "source_keywords": ["large expressive eyes", "thick natural lashes", "deep clear iris", "dewy sparkle"],
        "mood_qualities": ["innocent", "gentle", "youthful charm"]
      },
      "face_shape": {
        "classification": "classical_soft_contour",
        "confidence": 0.85,
        "source_keywords": ["柔和经典的轮廓脸或瓜子脸"]
      },
      "lip_type": {
        "classification": "cherry_lips_cupids_bow",
        "confidence": 0.95,
        "source_keywords": ["full natural cherry lips", "soft glossy tone", "elegant cupid's bow"]
      },
      "nose_type": {
        "classification": "straight_classical_refined",
        "confidence": 0.98,
        "source_keywords": ["straight refined nose bridge", "perfect classical proportions", "subtle highlights", "small delicate tip"]
      },
      "skin_texture": {
        "classification": "porcelain_flawless_radiant",
        "confidence": 0.95,
        "source_keywords": ["flawless porcelain skin", "radiant jade-like", "natural subtle blush", "dewy luminous glow"],
        "special_effects": ["wet skin with water droplets"]
      },
      "expression": {
        "classification": "innocent_gentle_gaze",
        "confidence": 0.90,
        "source_keywords": ["innocent gaze", "gentle smile", "bright smile", "soft introspective"],
        "emotional_tone": "柔和迷人,结合古典温柔与微妙的诱惑魅力"
      }
    }
  }
}

Facial feature library reference system:

The extracted facial feature classifications will automatically be associated with facial_features_library.json, supporting:

  1. Quick query: "Which Prompts used almond eyes?" → [#5]
  2. Style mapping: "What facial feature combination is recommended for a pure and innocent girl style?" → big almond eyes + soft pink lips + small nose + porcelain skin
  3. Module reuse: Directly reference classification codes to generate complete descriptions
    {{eye_type: large_expressive_almond}}
    → 展开为: "高度细节化,大而富有表现力,浓密修长的自然睫毛,深邃清晰的虹膜..."
    
  4. Recommendation system integration: Recommend based on facial feature similarity ("Like the eye shape of #5? Recommend #10")

AI generation challenge annotation:

For facial feature details, automatically identify and annotate generation difficulties:

"ai_generation_challenges": [
  "眼睛细节(睫毛、虹膜、高光)需高分辨率",
  "皮肤质感(毛孔vs光滑)的平衡控制",
  "水滴物理效果的真实性",
  "表情的自然度(避免僵硬或过度夸张)"
]

4. Batch processing strategy

Small scale (<100 items):

  • Extract each item finely one by one, output a complete JSON array

Medium scale (100-500 items):

  • Process in batches of 50 items
  • Generate an intermediate result file after each batch
  • Merge and deduplicate modules during aggregation

Large scale (>500 items):

  • First cluster into 5-10 groups
  • Extract each group in parallel (if conditions permit)
  • Finally aggregate to generate the module library

5. Output deliverables

Generate the following files:

Core data files

  1. extracted_modules.json - Complete extraction results (machine-readable)
  2. module_library.json - Deduplicated general module library
    {
      "visual_styles": ["电影级", "赛博朋克", ...],
      "technical_params": {
        "camera_angles": ["微距", "鸟瞰", ...],
        "lighting": ["柔光", "逆光", ...]
      },
      "detail_enhancers": ["超高清", "细节丰富", ...],
      "templates": [
        {
          "name": "人像摄影模板",
          "structure": "{主体}, {风格}, {技术参数}, {细节增强}",
          "example": "一位女性, 电影级肖像, 85mm镜头柔光, 超高清细节"
        }
      ]
    }
    

Learning enhancement files (NEW! 🎓)

  1. analysis_report.md - Complete analysis report, including the following learning enhancement sections:

    A. Learning Card Set (Learning Cards)

    • Automatically generate printable/review technique cards
    • Generate one card for each high-value template (reusability > 8)
    • Cards include: technique name, reusability score, structure template, application examples, practice exercises

    Example:

    ## 🎴 学习卡片集
    
    ### 卡片 #1: Cold-Warm Color Opposition (冷暖色彩对立)
    
    **复用性**: 10/10 ⭐⭐⭐⭐⭐
    **难度**: 中级
    **应用场景**: 人像摄影、产品摄影、概念艺术
    
    **结构模板**:
    

    {subject}, Color Palette: {body zone} = {cool colors}, {focal object} = {warm colors}, Lighting from {focal object} illuminating {subject}

    
    **应用示例**:
    - 原提示词: "Entity, Body=cyan/teal, Cube=pink/amber"
    - 你的应用: "Crystal sorceress, Body=ice blue, Orb=ruby red"
    
    **💡 学习要点**:
    - 冷色环境 → 营造距离感、神秘感
    - 暖色焦点 → 吸引注意力、制造对比
    - 光源来自焦点 → 增强戏剧性
    
    **✏️ 练习题**:
    试着用这个技巧创作一个"冰雪女王"主题的提示词
    

    B. Quick Reference Card (Quick Reference Cards)

    • Generate a quick reference table based on prompt type
    • Includes commonly used parameter configurations and technical settings

    Example:

    ## 📋 快速参考卡
    
    ### 微距摄影参数速查表
    
    | 参数类型 | 推荐配置 | 效果说明 |
    |---------|---------|---------|
    | 镜头 | 105mm Macro | 标准微距,适合产品/花卉 |
    |      | 60mm Macro | 中距,适合昆虫/珠宝 |
    |      | 180mm Macro | 远距,适合野生动物 |
    | 光圈 | f/1.8 | 极浅景深,梦幻虚化 |
    |      | f/4-f/5.6 | 平衡,主体清晰 |
    |      | f/11-f/16 | 深景深,全面清晰 |
    | 必备光学 | SSS | 半透明材质 |
    |         | Caustics | 水/玻璃折射 |
    |         | Bokeh | 背景虚化美化 |
    

    C. Annotated Learning Version (Annotated Learning Version)

    • Add learning annotations to the original prompt
    • Explain the role and principle of each keyword

    Example:

    ## 📖 注释式学习版本
    
    

    An ethereal deity composed of intricate white translucent optical fibers │ │ │ │ │ │ │ └─ Material reference word (adds realism) │ │ └───────────────────── Core material description (triggers SSS) │ └──────────────────────────────────── Complexity emphasis (increases detail density) └───────────────────────────────────────────────── Subject definition

    💡 Learning points:

    • "intricate" triggers AI to increase detail density
    • "translucent" triggers subsurface scattering effect
    • Use multiple material references → create mixed textures

    D. Skill Tree and Progress Tracking (Skill Tree & Progress)

    • Automatically identify techniques used in the prompt
    • Generate a skill tree visualization
    • Track learning progress

    Example:

    ## 🌳 提示词技能树
    
    ### 当前提示词使用的技能
    
    
                    提示词技能
                        │
        ┌───────────────┼───────────────┐
        │               │               │
    结构组织          技术参数          创意策略
        │               │               │
    

    ✅ 7-layer structure ✅ Camera settings ✅ Color contrast ✅ 3-layer depth of field ✅ Rendering engine ✅ Narrative lighting ⏸️ Post-processing ⏸️ Material blending

    
    **已识别技能**: 6/10
    **技能等级**: 中级提示词工程师
    **下一个学习目标**: 后期处理技巧
    

    E. Comparative Learning Table (generated only when analyzing multiple prompts)

    • Horizontally compare parameter differences across multiple prompts
    • Help understand the key factors behind style changes

    Example:

    ## 📊 风格对比分析表
    
    | 参数维度 | 提示词A (清纯风) | 提示词B (赛博朋克) | 提示词C (史诗风) |
    |---------|----------------|------------------|----------------|
    | 主色调 | 粉/白/桃 | 霓虹粉/蓝/紫 | 金/棕/深蓝 |
    | 饱和度 | 低 (30%) | 高 (90%) | 中 (60%) |
    | 光线类型 | 柔和漫射 | 硬边霓虹 | 戏剧侧光 |
    | 情绪词 | innocent | edgy | epic |
    | 光圈 | f/1.4 柔焦 | f/4 锐利 | f/2.8 平衡 |
    | 适用场景 | 日系人像 | 科幻角色 | 英雄肖像 |
    
    💡 关键发现:
    - 色彩饱和度直接影响风格基调
    - 光线硬度 = 情绪强度
    - 光圈选择要匹配风格需求
    
  2. learning_cards.json - Structured data for learning cards (can be imported into memory tools such as Anki)

6. Quality Assurance

  • Each module comes with a reusability score (1-10)
  • Mark high-value modules (score > 8)
  • Provide improvement suggestions

Usage Examples

Scenario 1: Process a single file

用户:使用 prompt-extractor 分析 my_prompts.txt
系统:自动执行完整流程,生成3个输出文件

Scenario 2: Specify a theme

用户:从 image_prompts.csv 中只提取"人像摄影"相关的模块
系统:先聚类识别"人像"主题,针对性提取

Scenario 3: Incremental update

用户:将 new_prompts.json 合并到现有模块库
系统:读取现有库,去重后追加新模块

Technical Details

Data cleaning rules:

  • Remove prompts with length < 10 characters
  • Standardize punctuation (separate with English commas)
  • Remove repeated consecutive spaces

Clustering algorithm (simplified version):

  • Vectorize based on keyword TF-IDF
  • Group using cosine similarity
  • Threshold: similarity > 0.6 is grouped into the same cluster

Scoring criteria:

  • Clarity: complete structure, no ambiguity
  • Detail Richness: parameters are detailed and descriptions are specific
  • Reusability: module independence and generality

Interaction Guidance

Confirm with the user during execution:

  1. Is the file path correct?
  2. Do specific topics need to be filtered?
  3. Where should the output file be saved? (Default: ./extracted_results/)

Error Handling

  • File format cannot be recognized → prompt the user to specify the format
  • Prompt quality is too low (average < 5 points) → recommend optimizing the data source
  • Batch processing interrupted → save intermediate results and support resuming from a checkpoint

🎓 Learning Enhancement Mode Execution Guide

When should learning enhancement content be generated?

Default behavior: when analyzing promptsautomatically generatethe following learning content:

  • ✅ Learning card set (for templates with reusability > 8)
  • ✅ Quick reference card (automatically generated based on the prompt type)
  • ✅ Annotated learning version (original prompt + annotations)
  • ✅ Skill tree (identify the techniques used)

Optional: comparative learning table (requires 2 or more prompts)

Execution Steps

After the user inputs a prompt, generate in the following order:

  1. Standard analysis (JSON + Markdown report)

  2. Learning card set (added at the end of the report)

    • Iterate over high_value_modules
    • generate a card for each template with reusability ≥ 8
    • Include: template, example, learning points, practice exercises
  3. Quick reference card (generated based on the school)

    • If it is 3d_render → generate a "Rendering Parameter Quick Reference Table"
    • If it is editorial_macro → generate a "Macro Photography Quick Reference Table"
    • If it is portrait_beauty → generate a "Portrait Lighting Quick Reference Table"
  4. Annotated learning version

    • Split the original prompt into key phrases
    • Add learning annotations to each phrase
    • Explain their function and principles
  5. Skill tree

    • Identify the categories of techniques used
    • Generate a visualized skill tree
    • Show the level of mastery
  6. Comparison table (if there are multiple prompts)

    • Compare key parameters horizontally
    • Mark differences and commonalities

Output Example

After execution, it will be generated in the extracted_results/ directory:

extracted_results/
├── ethereal_deity_extracted.json          (数据)
├── ethereal_deity_analysis_report.md      (完整报告,包含学习内容)
├── ethereal_deity_learning_cards.json     (卡片数据,可导入Anki)
└── module_library.json                    (模板库)

Structure of analysis_report.md:

# 提示词结构分析报告
## [提示词主题]

[标准分析内容...]

---

## 🎓 学习增强部分

### 🎴 学习卡片集
[卡片1: 技巧A]
[卡片2: 技巧B]
...

### 📋 快速参考卡
[速查表]

### 📖 注释式学习版本
[带注释的原文]

### 🌳 提示词技能树
[技能树可视化]

### 📊 对比分析表 (如有)
[对比表格]

When starting execution, first ask the user: "Please choose an input method:

  1. Provide a file path (supports .txt, .csv, .json)
  2. Paste prompts directly (one per line, or separated by line breaks)

Please reply with a number or provide the content directly:"

Then, after the analysis is complete, automatically generate learning enhancement content and add it to the report.