""" Standalone Prompt Components Extracted from sid_zimage_prompt_generator_advanced_v2.py for testing without ComfyUI. """ # Component definitions for analysis COMPONENTS = { "framing": { "name": "Framing & Composition", "prompt": """Analyze ONLY the framing and composition of this image: 1. COLOR MODE (CRITICAL): - Is this a COLOR photo or BLACK AND WHITE / MONOCHROME? - If B&W: is it high contrast, soft, sepia-toned? 2. SHOT TYPE (choose one): - ECU (Extreme Close-Up): Only eyes/lips visible - BCU (Big Close-Up): Face fills frame - CU (Close-Up): Head and neck - MCU (Medium Close-Up): Head and shoulders, upper chest - MS (Medium Shot): Waist up - MFS (Medium Full Shot): Knees up - FS (Full Shot): Full body, head to toe - LS (Long Shot): Full body with environment 3. SUBJECT POSE (CRITICAL): - STANDING: Subject is upright on feet - SEATED: Subject is sitting (on chair, floor, stool, etc.) - LYING: Subject is lying down - KNEELING: Subject is on knees - LEANING: Subject is leaning against something 4. SUBJECT POSITION: Where in frame? (centered, left third, right third) 5. FRAME FILL: What percentage of frame height does subject fill? (30%, 50%, 70%, 90%) 6. CAMERA ANGLE: Eye level, slightly above, slightly below, dramatic angle? 7. DEPTH OF FIELD: Shallow (blurred background), medium, deep (all in focus)? Output JSON: { "color_mode": "", "color_style": "", "shot_type": "", "shot_description": "", "subject_pose": "", "subject_position": "", "frame_fill_percent": , "camera_angle": "", "depth_of_field": "", "background_blur": "", "prompt_description": "" }""" }, "ethnicity": { "name": "Ethnicity & Demographics", "prompt": """Analyze ONLY the subject's ethnicity and demographics: CRITICAL: Look carefully at facial structure, eye shape, and features before deciding. 1. APPARENT ETHNICITY (be specific - check EACH category): ASIAN FEATURES TO CHECK: - East Asian (Chinese, Japanese, Korean): epicanthic fold, flatter nose bridge, straight black hair - Southeast Asian (Thai, Vietnamese, Filipino): similar to East Asian but often darker skin - South Asian (Indian, Pakistani): larger eyes, higher nose bridge, can have lighter or darker skin NON-ASIAN FEATURES: - European: deeper-set eyes, higher nose bridge, varied hair colors - Middle Eastern: can look similar to South Asian or Mediterranean - African: varied features by region - Latin American/Hispanic: mixed features - Mixed heritage: specify which mix 2. KEY DISTINGUISHING FEATURES: - Eye shape: Does the eye have an epicanthic fold? Monolid? Double lid? - Nose bridge: Flat, medium, or high? - Face shape: Round, oval, heart, square? - Cheekbone position: High, medium, flat? 3. SKIN TONE (be precise): - Base: porcelain, ivory, fair, light, light-medium, medium, medium-tan, tan, caramel, brown, dark brown, deep, ebony - Undertone: warm (golden/yellow/peachy), cool (pink/blue), neutral, olive 4. AGE RANGE: child, teen, young adult (20s), adult (30s), middle-aged (40s-50s), senior 5. GENDER PRESENTATION: female, male, androgynous Output JSON: { "ethnicity": "", "ethnicity_features": "", "eye_shape_details": "", "skin_tone_base": "", "skin_tone_undertone": "", "skin_description": "", "age_range": "", "gender": "", "prompt_description": "" }""" }, "hair": { "name": "Hair Analysis", "prompt": """Analyze ONLY the hair in this image: CRITICAL: Start your description with the OVERALL ARRANGEMENT (how hair is styled on top of head) BEFORE describing any flowing parts. 1. HAIR ARRANGEMENT (CRITICAL - choose one): - UPDO/BUN: Hair pulled up and secured (bun, chignon, top knot) - NO hair hanging loose - PONYTAIL: Hair gathered and hanging from one point - BRAIDED: Any braid style (French, Dutch, fishtail, box braids) - HALF-UP: Top/crown pulled back and secured, bottom portion hangs down - LOOSE/DOWN: ALL hair flowing freely, nothing secured or pulled back - PINNED/STYLED: Elaborately styled with pins/accessories - SHORT: Too short to be styled up 2. CROWN/TOP DESCRIPTION (CRITICAL): - Is hair at the crown pulled back, slicked, volumized, or loose? - Is there a visible parting? Center, side, none? - Are any pins, clips, or elastic visible? 3. HAIR COLOR (be specific): - Base color: black, dark brown, medium brown, light brown, dark blonde, etc. - Highlights/lowlights: describe if present 4. HAIR TEXTURE: straight, wavy, curly, coily, kinky 5. HAIR LENGTH: pixie, short, chin-length, shoulder-length, mid-back, waist-length 6. HAIR CONDITION: glossy, matte, frizzy, sleek, volumized Output JSON: { "arrangement": "", "crown_description": "", "arrangement_details": "", "base_color": "", "highlights": "", "texture": "", "length": "", "condition": "", "prompt_description": "" }""" }, "face": { "name": "Face Shape & Position", "prompt": """Analyze ONLY the face shape and positioning: 1. FACE SHAPE: oval, round, heart, square, oblong, diamond, rectangle 2. FACE ANGLE: - Frontal (looking straight at camera) - 3/4 left (turned slightly left, showing right side more) - 3/4 right (turned slightly right, showing left side more) - Profile left (side view, facing left) - Profile right (side view, facing right) 3. HEAD TILT: level, tilted left, tilted right, chin up, chin down 4. FACE PROPORTIONS: Any notable features? High cheekbones, defined jaw, etc. Output JSON: { "shape": "", "angle": "", "angle_degrees": "", "tilt": "", "notable_features": "", "prompt_description": "" }""" }, "eyes": { "name": "Eyes Analysis", "prompt": """Analyze ONLY the eyes in this image: 1. EYE COLOR (be very specific): - Base: dark brown, medium brown, light brown, hazel, green, blue-green, blue, gray, black - Variations: lighter ring around pupil? Darker limbal ring? Flecks of other colors? 2. EYE SHAPE: almond, round, hooded, monolid, upturned, downturned, deep-set, prominent 3. GAZE DIRECTION: - Direct at camera - Looking left/right/up/down - Looking at something specific 4. EYE EXPRESSION: soft, intense, playful, serious, sultry, tired, alert 5. EYE MAKEUP (if any): - Eyeshadow: colors, placement - Eyeliner: style (winged, tight-line, smudged), color - Mascara: natural, dramatic, false lashes? - Brows: shape, thickness, groomed/natural Output JSON: { "color": "", "color_details": "", "shape": "", "gaze": "", "expression": "", "makeup_eyeshadow": "", "makeup_eyeliner": "", "makeup_lashes": "", "eyebrows": "", "prompt_description": "" }""" }, "nose_lips": { "name": "Nose & Lips", "prompt": """Analyze ONLY the nose and lips: NOSE: 1. Shape: straight, Roman/aquiline, button, upturned, hooked, flat, wide, narrow 2. Bridge: high, medium, low 3. Tip: rounded, pointed, upturned 4. Size relative to face: small, medium, large LIPS: 1. Shape: full, thin, heart-shaped, wide, bow-shaped 2. Upper vs lower lip: balanced, fuller upper, fuller lower 3. Cupid's bow: defined, subtle, flat 4. Natural color: pink, nude, red, berry, coral 5. State: closed, slightly parted, smiling, pursed 6. Lip makeup: lipstick color and finish if worn (matte, glossy, satin) Output JSON: { "nose_shape": "", "nose_details": "", "lip_shape": "", "lip_fullness": "", "lip_color": "", "lip_state": "", "lip_finish": "", "prompt_description": "" }""" }, "body_pose": { "name": "Body & Pose", "prompt": """Analyze ONLY the visible body and pose: 1. VISIBLE BODY PARTS: List what's visible (head, neck, shoulders, arms, hands, torso, legs, feet) 2. POSTURE: straight/upright, relaxed, slouched, leaning 3. SHOULDER POSITION: level, one raised, squared to camera, angled 4. ARM POSITIONS (if visible): - Left arm: position and gesture - Right arm: position and gesture 5. HAND POSITIONS (if visible): - Left hand: where placed, gesture - Right hand: where placed, gesture 6. BODY ANGLE: Facing camera directly, angled left, angled right, torso twist 7. WEIGHT DISTRIBUTION: centered, on left leg, on right leg Output JSON: { "visible_parts": [""], "posture": "", "shoulders": "", "left_arm": "", "right_arm": "", "left_hand": "", "right_hand": "", "body_angle": "", "overall_pose": "", "prompt_description": "" }""" }, "body_figure": { "name": "Body Figure & Proportions", "prompt": """Analyze the BODY FIGURE, PROPORTIONS, and EXPOSURE LEVEL visible in this image. CRITICAL: Only describe what is ACTUALLY VISIBLE. Do not invent or assume hidden body parts. 1. NUDITY/EXPOSURE LEVEL (CRITICAL - identify accurately): - Fully clothed: no skin exposed beyond face/hands - Partially clothed: some skin exposed (arms, legs, midriff) - Revealing clothing: significant skin, cleavage, short shorts, etc. - Swimwear/Lingerie: bikini, underwear, bra visible - Topless: chest/breasts exposed, no top garment - Nude: fully naked, no clothing - Implied nude: appears nude but strategic covering/cropping 2. BREAST/CHEST EXPOSURE (be specific): - Covered: fully covered by clothing - Cleavage only: upper breast curves visible between/above garment - Sideboob: side curve of breast visible (left, right, or both) - Underboob: lower curve of breast visible below garment - Partial exposure: significant breast visible but not nipple - Full exposure: entire breast visible including nipple - Nipple visibility: covered, showing through fabric, partially visible, fully visible 3. OVERALL BODY TYPE (if visible): - Slim/Slender: narrow frame, lean build - Athletic/Toned: muscular definition, fit appearance - Average: moderate proportions - Curvy/Voluptuous: pronounced curves, fuller figure - Petite: small frame overall - Plus-size: larger frame 4. BUST/CHEST DETAILS (if visible - be specific): - Cup size estimate (use standard sizing): * AA/A: Very small, minimal projection * B: Small, subtle curve * C: Medium, moderate projection * D: Large, noticeable projection * DD/E: Very large, significant projection * DDD/F: Extra large, prominent projection * G+: Extremely large, very prominent - Size relative to frame: small, medium, large, very large - Shape: natural, rounded, teardrop, projected, perky, full, pendulous - Cleavage visibility: none, minimal, moderate, prominent, deep - Cleavage shadow: none, subtle, defined, dramatic - Upper curve visibility: how much of upper breast curve is visible - Side curve visibility: visible from side angle? how much? - Underboob visibility: visible? how much? - Lift/Position: natural, lifted, pushed together, separated - Fullness distribution: top-heavy, bottom-heavy, even - Projection: flat, slight, moderate, projected, very projected 5. WAIST (if visible): - Definition: undefined, slight, defined, very defined (hourglass) - Width relative to bust/hips: narrow, proportional, wide - Midriff visible: yes/no, how much - Waist shadows: soft shadows, defined shadows, dramatic contour 6. HIPS & BUTTOCKS (if visible): - Hip width: narrow, medium, wide, very wide - Hip curve: subtle, moderate, pronounced, dramatic - Hip-to-waist ratio: slight, moderate, dramatic hourglass - Buttocks shape (if visible): flat, moderate, rounded, prominent, heart-shaped - Buttocks exposure: covered, partially visible, fully visible - Buttocks curve shadow: none, subtle, defined 7. THIGHS (if visible): - Fullness: slim, toned, moderate, full, thick - Gap: thigh gap present, touching, close together - Curve: straight, slight curve, curved, very curved 8. BODY SHADOWS & CONTOURS: - Shadow under bust: none, subtle, defined, dramatic - Abdominal shadows: flat, subtle definition, defined abs, shadows in curves - Hip/waist shadow: how shadows define the waist curve - Overall body contour definition: soft/flat lighting, moderate shadows, dramatic sculpting 9. SKIN EXPOSURE SUMMARY: - Upper body: covered, arms exposed, shoulders exposed, cleavage shown, midriff shown, breasts exposed - Lower body: covered, thighs visible, legs visible, buttocks visible, genitals covered/exposed - Back: covered, upper back, lower back, full back Output JSON: { "nudity_level": "", "breast_exposure": { "level": "", "sideboob_visible": "", "underboob_visible": true/false, "nipple_visibility": "", "exposure_details": "" }, "body_type": "", "bust": { "visible": true/false, "cup_size": "", "size": "", "shape": "", "cleavage_visibility": "", "cleavage_shadow": "", "upper_curve": "", "side_curve": "", "underboob_curve": "", "position": "", "fullness_distribution": "" }, "waist": { "visible": true/false, "definition": "", "width": "", "midriff_exposed": true/false, "shadows": "" }, "hips": { "visible": true/false, "width": "", "curve": "", "waist_ratio": "", "shadow_definition": "" }, "buttocks": { "visible": true/false, "exposure": "", "shape": "", "curve_shadow": "" }, "thighs": { "visible": true/false, "fullness": "", "curve": "", "gap": "" }, "body_contour_shadows": { "under_bust_shadow": "", "abdominal_shadows": "", "hip_waist_shadow": "", "overall_sculpting": "" }, "skin_exposure": { "upper_body": "", "lower_body": "", "back": "" }, "prompt_description": "" }""" }, "clothing": { "name": "Clothing Analysis", "prompt": """Analyze ONLY the clothing ACTUALLY VISIBLE in this image. CRITICAL RULES: - ONLY describe what you can ACTUALLY SEE in the image - Do NOT invent, assume, or imagine parts of garments that are not visible - If you can only see the top of a dress, just describe the visible neckline/bodice - Do NOT describe cutouts, midriff, sleeves, or features that are NOT in frame - If clothing is cut off by the frame, say "visible portion only" or "cropped at [location]" For EACH visible garment, describe: 1. GARMENT TYPE: dress, top, blouse, etc. - If unsure if dress or top (cropped at frame), say "dress or top" 2. NECKLINE (what you can see): - sweetheart, V-neck, scoop, strapless, off-shoulder, halter, etc. 3. COLOR: Be specific 4. MATERIAL/FABRIC: silk, satin, cotton, crepe, etc. 5. FIT: fitted, loose, structured, etc. 6. VISIBLE FEATURES ONLY: - What straps/sleeves can you actually see? - Is midriff actually visible or is image cropped above it? Output JSON: { "garments": [ { "type": "", "neckline": "", "color": "", "material": "", "fit": "", "visible_features": "", "cropped_at": "" } ], "overall_style": "", "prompt_description": "" }""" }, "accessories": { "name": "Accessories", "prompt": """Analyze ONLY the accessories/jewelry in this image: For EACH visible accessory: 1. TYPE: necklace, earrings, bracelet, ring, watch, hair accessory, glasses, hat, etc. 2. STYLE: - Necklace: choker, pendant, chain, statement, layered - Earrings: studs, hoops, dangles, drops, chandeliers - Other: describe style 3. MATERIAL: gold, silver, platinum, crystals, diamonds, pearls, beads, fabric 4. SIZE: delicate, medium, statement/large 5. DETAILS: specific design elements, stones, patterns Output JSON: { "accessories": [ { "type": "", "style": "