Files
AI-Video/reelforge/prompts
2025-11-07 16:59:12 +08:00
..
2025-11-07 16:59:11 +08:00
2025-11-07 16:59:12 +08:00
2025-11-07 16:59:11 +08:00
2025-11-07 16:59:12 +08:00

Prompts Directory

Centralized prompt management for all LLM interactions in ReelForge.

Structure

Each prompt is in its own file for easy maintenance and modification:

prompts/
├── __init__.py                  # Exports all builder functions
├── topic_narration.py           # Generate narrations from topic
├── content_narration.py         # Extract/refine narrations from content
├── script_split.py              # Split fixed script into segments
├── title_generation.py          # Generate video title from content
├── image_generation.py          # Generate image prompts from narrations
└── style_conversion.py          # Convert style description to image prompt

Usage

All builder functions are exported from the package root:

from reelforge.prompts import (
    build_topic_narration_prompt,
    build_content_narration_prompt,
    build_script_split_prompt,
    build_title_generation_prompt,
    build_image_prompt_prompt,
    build_style_conversion_prompt,
)

Prompt Files

Narration Prompts

  1. topic_narration.py

    • Purpose: Generate engaging narrations from a topic/theme
    • Input: topic, n_storyboard, min_words, max_words
    • Output: JSON with narrations array
  2. content_narration.py

    • Purpose: Extract and refine narrations from user content
    • Input: content, n_storyboard, min_words, max_words
    • Output: JSON with narrations array
  3. script_split.py

    • Purpose: Split fixed script into natural segments (no modification)
    • Input: script, min_words (reference), max_words (reference)
    • Output: JSON with narrations array
  4. title_generation.py

    • Purpose: Generate short, attractive video title
    • Input: content, max_length
    • Output: Plain text title

Image Prompts

  1. image_generation.py

    • Purpose: Generate English image prompts from narrations
    • Input: narrations, min_words, max_words, style_preset/style_description
    • Output: JSON with image_prompts array
    • Contains: IMAGE_STYLE_PRESETS dictionary
  2. style_conversion.py

    • Purpose: Convert custom style description to English image prompt
    • Input: description (any language)
    • Output: Plain text English image prompt

Modifying Prompts

To modify a prompt:

  1. Locate the relevant file (e.g., topic_narration.py)
  2. Edit the prompt constant (e.g., TOPIC_NARRATION_PROMPT)
  3. Changes take effect immediately (no need to modify service code)

Adding New Prompts

To add a new prompt:

  1. Create a new file (e.g., my_new_prompt.py)
  2. Define the prompt constant and builder function
  3. Export the builder function in __init__.py
  4. Use it in service code:
    from reelforge.prompts import build_my_new_prompt
    

Design Principles

  • One File, One Prompt: Each prompt has its own file for clarity
  • Builder Functions: Each file exports a build_*_prompt() function
  • Centralized Exports: All builders are exported from __init__.py
  • Consistent Format: All prompts follow similar structure and style
  • Easy Maintenance: Modify prompts without touching service code