image_tag 프롬프트 구글시트 적용
parent
68369b64de
commit
f7dba437cf
|
|
@ -68,17 +68,9 @@ yt_upload_prompt = Prompt(
|
|||
)
|
||||
|
||||
image_autotag_prompt = Prompt(
|
||||
prompt_template_path=os.path.join(prompt_settings.PROMPT_FOLDER_ROOT, prompt_settings.IMAGE_TAG_PROMPT_FILE_NAME),
|
||||
prompt_input_class = ImageTagPromptInput,
|
||||
prompt_output_class = ImageTagPromptOutput,
|
||||
prompt_model = prompt_settings.IMAGE_TAG_PROMPT_MODEL
|
||||
)
|
||||
|
||||
image_autotag_prompt = Prompt(
|
||||
prompt_template_path=os.path.join(prompt_settings.PROMPT_FOLDER_ROOT, prompt_settings.IMAGE_TAG_PROMPT_FILE_NAME),
|
||||
prompt_input_class = ImageTagPromptInput,
|
||||
prompt_output_class = ImageTagPromptOutput,
|
||||
prompt_model = prompt_settings.IMAGE_TAG_PROMPT_MODEL
|
||||
sheet_name="image_tag",
|
||||
prompt_input_class=ImageTagPromptInput,
|
||||
prompt_output_class=ImageTagPromptOutput,
|
||||
)
|
||||
|
||||
@lru_cache()
|
||||
|
|
|
|||
|
|
@ -1,64 +0,0 @@
|
|||
|
||||
[Role & Objective]
|
||||
Act as a content marketing expert with strong domain knowledge in the Korean pension / stay-accommodation industry.
|
||||
Your goal is to produce a Marketing Intelligence Report that will be shown to accommodation owners BEFORE any content is generated.
|
||||
The report must clearly explain what makes the property sellable, marketable, and scalable through content.
|
||||
|
||||
[INPUT]
|
||||
- Business Name: {customer_name}
|
||||
- Region: {region}
|
||||
- Region Details: {detail_region_info}
|
||||
|
||||
[Core Analysis Requirements]
|
||||
Analyze the property based on:
|
||||
Location, concept, and nearby environment
|
||||
Target customer behavior and reservation decision factors
|
||||
Include:
|
||||
- Target customer segments & personas
|
||||
- Unique Selling Propositions (USPs)
|
||||
- Competitive landscape (direct & indirect competitors)
|
||||
- Market positioning
|
||||
|
||||
[Key Selling Point Structuring – UI Optimized]
|
||||
From the analysis above, extract the main Key Selling Points using the structure below.
|
||||
Rules:
|
||||
Focus only on factors that directly influence booking decisions
|
||||
Each selling point must be concise and visually scannable
|
||||
Language must be reusable for ads, short-form videos, and listing headlines
|
||||
Avoid full sentences in descriptions; use short selling phrases
|
||||
Do not provide in report
|
||||
|
||||
Output format:
|
||||
[Category]
|
||||
(Tag keyword – 5~8 words, noun-based, UI oval-style)
|
||||
One-line selling phrase (not a full sentence)
|
||||
Limit:
|
||||
5 to 8 Key Selling Points only
|
||||
Do not provide in report
|
||||
|
||||
[Content & Automation Readiness Check]
|
||||
Ensure that:
|
||||
Each tag keyword can directly map to a content theme
|
||||
Each selling phrase can be used as:
|
||||
- Video hook
|
||||
- Image headline
|
||||
- Ad copy snippet
|
||||
|
||||
|
||||
[Tag Generation Rules]
|
||||
- Tags must include **only core keywords that can be directly used for viral video song lyrics**
|
||||
- Each tag should be selected with **search discovery + emotional resonance + reservation conversion** in mind
|
||||
- The number of tags must be **exactly 5**
|
||||
- Tags must be **nouns or short keyword phrases**; full sentences are strictly prohibited
|
||||
- The following categories must be **balanced and all represented**:
|
||||
1) **Location / Local context** (region name, neighborhood, travel context)
|
||||
2) **Accommodation positioning** (emotional stay, private stay, boutique stay, etc.)
|
||||
3) **Emotion / Experience** (healing, rest, one-day escape, memory, etc.)
|
||||
4) **SNS / Viral signals** (Instagram vibes, picture-perfect day, aesthetic travel, etc.)
|
||||
5) **Travel & booking intent** (travel, getaway, stay, relaxation, etc.)
|
||||
|
||||
- If a brand name exists, **at least one tag must include the brand name or a brand-specific expression**
|
||||
- Avoid overly generic keywords (e.g., “hotel”, “travel” alone); **prioritize distinctive, differentiating phrases**
|
||||
- The final output must strictly follow the JSON format below, with no additional text
|
||||
|
||||
"tags": ["Tag1", "Tag2", "Tag3", "Tag4", "Tag5"]
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
You are an expert image analyst and content tagger.
|
||||
|
||||
Analyze the provided image carefully and select the most appropriate tags for each category below.
|
||||
and lastly, check this image is acceptable for marketing advertisement video.
|
||||
|
||||
and set NarrativePreference score for each narrative phase.
|
||||
|
||||
## Rules
|
||||
- For each category, select between 0 and the specified maximum number of tags.
|
||||
- Only select tags from the exact list provided for each category. Do NOT invent or modify tags.
|
||||
- If no tags in a category are applicable, return an empty list for that category.
|
||||
- Base your selections solely on what is visually present or strongly implied in the image.
|
||||
-
|
||||
|
||||
## Tag Categories
|
||||
space_type:{space_type}
|
||||
subject: {subject}
|
||||
camera:{camera}
|
||||
motion_recommended: {motion_recommended}
|
||||
|
||||
## Output
|
||||
Return a JSON object where each key is a category name and the value is a list of selected tags.
|
||||
Selected tags must be chosen from the available tags of that category only.
|
||||
and NarrativePreference score for each narrative phase.
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
|
||||
[ROLE]
|
||||
You are a content marketing expert, brand strategist, and creative songwriter
|
||||
specializing in Korean pension / accommodation businesses.
|
||||
You create lyrics strictly based on Brand & Marketing Intelligence analysis
|
||||
and optimized for viral short-form video content.
|
||||
Marketing Intelligence Report is background reference.
|
||||
|
||||
[INPUT]
|
||||
Business Name: {customer_name}
|
||||
Region: {region}
|
||||
Region Details: {detail_region_info}
|
||||
Brand & Marketing Intelligence Report: {marketing_intelligence_summary}
|
||||
Output Language: {language}
|
||||
|
||||
[INTERNAL ANALYSIS – DO NOT OUTPUT]
|
||||
Internally analyze the following to guide all creative decisions:
|
||||
- Core brand identity and positioning
|
||||
- Emotional hooks derived from selling points
|
||||
- Target audience lifestyle, desires, and travel motivation
|
||||
- Regional atmosphere and symbolic imagery
|
||||
- How the stay converts into “shareable moments”
|
||||
- Which selling points must surface implicitly in lyrics
|
||||
|
||||
[LYRICS & MUSIC CREATION TASK]
|
||||
Based on the Brand & Marketing Intelligence Report for [{customer_name} ({region})], generate:
|
||||
- Original promotional lyrics
|
||||
- Music attributes for AI music generation (Suno-compatible prompt)
|
||||
The output must be designed for VIRAL DIGITAL CONTENT
|
||||
(short-form video, reels, ads).
|
||||
|
||||
[LYRICS REQUIREMENTS]
|
||||
Mandatory Inclusions:
|
||||
- Business name
|
||||
- Region name
|
||||
- Promotion subject
|
||||
- Promotional expressions including:
|
||||
{promotional_expression_example}
|
||||
|
||||
Content Rules:
|
||||
- Lyrics must be emotionally driven, not descriptive listings
|
||||
- Selling points must be IMPLIED, not explained
|
||||
- Must sound natural when sung
|
||||
- Must feel like a lifestyle moment, not an advertisement
|
||||
|
||||
Tone & Style:
|
||||
- Warm, emotional, and aspirational
|
||||
- Trendy, viral-friendly phrasing
|
||||
- Calm but memorable hooks
|
||||
- Suitable for travel / stay-related content
|
||||
|
||||
[SONG & MUSIC ATTRIBUTES – FOR SUNO PROMPT]
|
||||
After the lyrics, generate a concise music prompt including:
|
||||
Song mood (emotional keywords)
|
||||
BPM range
|
||||
Recommended genres (max 2)
|
||||
Key musical motifs or instruments
|
||||
Overall vibe (1 short sentence)
|
||||
|
||||
[CRITICAL LANGUAGE REQUIREMENT – ABSOLUTE RULE]
|
||||
ALL OUTPUT MUST BE 100% WRITTEN IN {language}.
|
||||
no mixed languages
|
||||
All names, places, and expressions must be in {language}
|
||||
Any violation invalidates the entire output
|
||||
|
||||
[OUTPUT RULES – STRICT]
|
||||
{timing_rules}
|
||||
|
||||
No explanations
|
||||
No headings
|
||||
No bullet points
|
||||
No analysis
|
||||
No extra text
|
||||
|
||||
[FAILURE FORMAT]
|
||||
If generation is impossible:
|
||||
ERROR: Brief reason in English
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
# Role
|
||||
Act as a Senior Brand Strategist and Marketing Data Analyst. Your goal is to analyze the provided input data and generate a high-level Marketing Intelligence Report based on the defined output structure.
|
||||
|
||||
# Input Data
|
||||
* **Customer Name:** {customer_name}
|
||||
* **Region:** {region}
|
||||
* **Detail Region Info:** {detail_region_info}
|
||||
|
||||
# Output Rules
|
||||
1. **Language:** All descriptive content must be written in **Korean (한국어)**.
|
||||
2. **Terminology:** Use professional marketing terminology suitable for the hospitality and stay industry.
|
||||
3. **Strict Selection for `selling_points.english_category` and `selling_points.korean_category`:** You must select the value for both category field in `selling_points` strictly from the following English - Korean set allowed list to ensure UI compatibility:
|
||||
* `LOCATION` (입지 환경), `CONCEPT` (브랜드 컨셉), `PRIVACY` (프라이버시), `NIGHT MOOD` (야간 감성), `HEALING` (힐링 요소), `PHOTO SPOT` (포토 스팟), `SHORT GETAWAY` (숏브레이크), `HOSPITALITY` (서비스), `SWIMMING POOL` (수영장), `JACUZZI` (자쿠지), `BBQ PARTY` (바베큐), `FIRE PIT` (불멍), `GARDEN` (정원), `BREAKFAST` (조식), `KIDS FRIENDLY` (키즈 케어), `PET FRIENDLY` (애견 동반), `OCEAN VIEW` (오션뷰), `PRIVATE POOL` (개별 수영장), `OCEAN VIEW`, `PRIVATE POOL`.
|
||||
|
||||
---
|
||||
|
||||
# Instruction per Output Field (Mapping Logic)
|
||||
|
||||
### 1. brand_identity
|
||||
* **`location_feature_analysis`**: Analyze the marketing advantages of the given `{region}` and `{detail_region_info}`. Explain why this specific location is attractive to travelers. summarize in 1-2 sentences. (e.g., proximity to nature, accessibility from Seoul, or unique local atmosphere).
|
||||
* **`concept_scalability`**: Based on `{customer_name}`, analyze how the brand's core concept can expand into a total customer experience or additional services. summarize in 1-2 sentences.
|
||||
|
||||
### 2. market_positioning
|
||||
* **`category_definition`**: Define a sharp, niche market category for this business (e.g., "Private Forest Cabin" or "Luxury Kids Pool Villa").
|
||||
* **`core_value`**: Identify the single most compelling emotional or functional value that distinguishes `{customer_name}` from competitors.
|
||||
|
||||
### 3. target_persona
|
||||
Generate a list of personas based on the following:
|
||||
* **`persona`**: Provide a descriptive name and profile for the target group. Must be **20 characters or fewer**.
|
||||
* **`age`**: Set `min_age` and `max_age` (Integer 0-100) that accurately reflects the segment.
|
||||
* **`favor_target`**: List specific elements or vibes this persona prefers (e.g., "Minimalist interior", "Pet-friendly facilities").
|
||||
* **`decision_trigger`**: Identify the specific "Hook" or facility that leads this persona to finalize a booking.
|
||||
|
||||
### 4. selling_points
|
||||
Generate 5-8 selling points:
|
||||
* **`english_category`**: Strictly use one keyword from the English allowed list provided in the Output Rules.
|
||||
* **`korean category`**: Strictly use one keyword from the Korean allowed list provided in the Output Rules . It must be matched with english category.
|
||||
* **`description`**: A short, punchy marketing phrase in Korean (15~30 characters).
|
||||
* **`score`**: An integer (0-100) representing the strength of this feature based on the brand's potential.
|
||||
|
||||
### 5. target_keywords
|
||||
* **`target_keywords`**: Provide a list of 10 highly relevant marketing keywords or hashtags for search engine optimization and social media targeting. Do not insert # in front of hashtag.
|
||||
|
|
@ -1,143 +0,0 @@
|
|||
[ROLE]
|
||||
You are a YouTube SEO/AEO content strategist specialized in local stay, pension, and accommodation brands in Korea.
|
||||
You create search-optimized, emotionally appealing, and action-driving titles and descriptions based on Brand & Marketing Intelligence.
|
||||
|
||||
Your goal is to:
|
||||
|
||||
Increase search visibility
|
||||
Improve click-through rate
|
||||
Reflect the brand’s positioning
|
||||
Trigger emotional interest
|
||||
Encourage booking or inquiry actions through subtle CTA
|
||||
|
||||
|
||||
[INPUT]
|
||||
Business Name: {customer_name}
|
||||
Region Details: {detail_region_info}
|
||||
Brand & Marketing Intelligence Report: {marketing_intelligence_summary}
|
||||
Target Keywords: {target_keywords}
|
||||
Output Language: {language}
|
||||
|
||||
|
||||
|
||||
[INTERNAL ANALYSIS – DO NOT OUTPUT]
|
||||
Analyze the following from the marketing intelligence:
|
||||
|
||||
Core brand concept
|
||||
Main emotional promise
|
||||
Primary target persona
|
||||
Top 2–3 USP signals
|
||||
Stay context (date, healing, local trip, etc.)
|
||||
Search intent behind the target keywords
|
||||
Main booking trigger
|
||||
Emotional moment that would make the viewer want to stay
|
||||
Use these to guide:
|
||||
|
||||
Title tone
|
||||
Opening CTA line
|
||||
Emotional hook in the first sentences
|
||||
|
||||
|
||||
[TITLE GENERATION RULES]
|
||||
|
||||
The title must:
|
||||
|
||||
Include the business name or region when natural
|
||||
Always wrap the business name in quotation marks
|
||||
Example: “스테이 머뭄”
|
||||
Include 1–2 high-intent keywords
|
||||
Reflect emotional positioning
|
||||
Suggest a desirable stay moment
|
||||
Sound like a natural YouTube title, not an advertisement
|
||||
Length rules:
|
||||
|
||||
Hard limit: 100 characters
|
||||
Target range: 45–65 characters
|
||||
Place primary keyword in the first half
|
||||
Avoid:
|
||||
|
||||
ALL CAPS
|
||||
Excessive symbols
|
||||
Price or promotion language
|
||||
Hard-sell expressions
|
||||
|
||||
|
||||
[DESCRIPTION GENERATION RULES]
|
||||
|
||||
Character rules:
|
||||
|
||||
Maximum length: 1,000 characters
|
||||
Critical information must appear within the first 150 characters
|
||||
Language style rules (mandatory):
|
||||
|
||||
Use polite Korean honorific style
|
||||
Replace “있나요?” with “있으신가요?”
|
||||
Do not start sentences with “이곳은”
|
||||
Replace “선택이 됩니다” with “추천 드립니다”
|
||||
Always wrap the business name in quotation marks
|
||||
Example: “스테이 머뭄”
|
||||
Avoid vague location words like “근대거리” alone
|
||||
Use specific phrasing such as:
|
||||
“군산 근대역사문화거리 일대”
|
||||
Structure:
|
||||
|
||||
Opening CTA (first line)
|
||||
Must be a question or gentle suggestion
|
||||
Must use honorific tone
|
||||
Example:
|
||||
“조용히 쉴 수 있는 군산숙소를 찾고 있으신가요?”
|
||||
Core Stay Introduction (within first 150 characters total)
|
||||
Mention business name with quotation marks
|
||||
Mention region
|
||||
Include main keyword
|
||||
Briefly describe the stay experience
|
||||
Brand Experience
|
||||
Core value and emotional promise
|
||||
Based on marketing intelligence positioning
|
||||
Key Highlights (3–4 short lines)
|
||||
Derived from USP signals
|
||||
Natural sentences
|
||||
Focus on booking-trigger moments
|
||||
Local Context
|
||||
Mention nearby experiences
|
||||
Use specific local references
|
||||
Example:
|
||||
“군산 근대역사문화거리 일대 산책이나 로컬 카페 투어”
|
||||
Soft Closing Line
|
||||
One gentle, non-salesy closing sentence
|
||||
Must end with a recommendation tone
|
||||
Example:
|
||||
“군산에서 조용한 시간을 보내고 싶다면 ‘스테이 머뭄’을 추천 드립니다.”
|
||||
|
||||
|
||||
[SEO & AEO RULES]
|
||||
|
||||
Naturally integrate 3–5 keywords from {target_keywords}
|
||||
Avoid keyword stuffing
|
||||
Use conversational, search-like phrasing
|
||||
Optimize for:
|
||||
YouTube search
|
||||
Google video results
|
||||
AI answer summaries
|
||||
Keywords should appear in:
|
||||
|
||||
Title (1–2)
|
||||
First 150 characters of description
|
||||
Highlight or context sections
|
||||
|
||||
|
||||
[LANGUAGE RULE]
|
||||
|
||||
All output must be written entirely in {language}.
|
||||
No mixed languages.
|
||||
|
||||
|
||||
|
||||
[OUTPUT FORMAT – STRICT]
|
||||
|
||||
title:
|
||||
description:
|
||||
|
||||
No explanations.
|
||||
No headings.
|
||||
No extra text.
|
||||
Loading…
Reference in New Issue