Files changed (1) hide show
  1. app.py +216 -396
app.py CHANGED
@@ -1,8 +1,7 @@
1
  import random
2
  import gradio as gr
3
 
4
-
5
- # Dataset with essential elements for prompts
6
  fashion_elements = {
7
  "hairstyles": [
8
  "long wavy auburn hair with elegant curls",
@@ -19,223 +18,108 @@ fashion_elements = {
19
  "long updo with strawberry blonde",
20
  "long ponytail with sandy blonde"
21
  ],
22
- "lace_lingerie": [
23
- "black lace panties",
24
- "red lace panties with scalloped edges",
25
- "white lace panties with delicate trim",
26
- "pink lace panties with rose patterns",
27
- "blue lace panties with elegant design",
28
- "green lace panties with leaf motif",
29
- "purple lace panties with ornate details",
30
- "champagne lace panties with subtle sheen",
31
- "rose gold lace panties with metallic threads",
32
- "burgundy lace panties with intricate patterns"
33
- ],
34
- "dresses_and_skirts": [
35
- "a short black satin skirt and a white blouse",
36
- "a tight red mini dress with a side slit",
37
- "a flowy silk dress with a high thigh slit",
38
- "a denim mini skirt and a crop top",
39
- "a short tennis skirt and a tight-fitting polo shirt",
40
- "a pleated wool mini skirt and an oversized sweater"
41
- ],
42
- "boudoir_office_poses": [
43
- "legs semi-open with slight torso twist, hands gently touching skirt or thong, confident and direct gaze or slightly flirty",
44
- "sitting on desk edge with one leg crossed over the other, skirt delicately lifted with one hand, soft and confident gaze",
45
- "gently leaning over the desk with semi-open legs, one hand on the table and the other subtly lifting skirt, intimate yet professional gaze",
46
- "walking with skirt slightly lifted, one leg forward in a natural step, hands adjusting accessories, focused gaze",
47
- "standing next to the desk with semi-open legs, one hand on the table while the other subtly touches the skirt or dress, confident or slightly flirty gaze",
48
- "standing with one leg forward and skirt subtly moved, weight on the back leg with the skirt sliding to slightly show the lingerie, hand on hip, direct and confident gaze",
49
- "leaning on a backward-turned chair, semi-open legs, skirt smoothly lifted with hands on waist or on the fabric, confident expression and direct gaze at the lens",
50
- "crossed legs with the skirt shifted, ensuring the posture is natural and feminine, soft and suggestive gaze",
51
- "one leg slightly elevated and resting against a surface, hand touching the skirt or thong, seductive gaze at the camera",
52
- "hands on the waist subtly lifting the garment to delicately show the thong, upright posture and confident gaze",
53
- "standing with hands behind back, torso slightly arched, semi-open legs showing the silhouette, fixed gaze at the lens",
54
- "walking with a soft step, skirt swaying and slightly lifted, one hand playing with the skirt's edge, confident expression",
55
- "sitting on an office chair, knees crossed, hands resting on the backrest, relaxed and attractive gaze",
56
- "standing with torso twisted and one leg crossed in front of the other, hand holding the skirt to hint at the thong, mysterious gaze",
57
- "leaning over the desk, semi-open legs, arms extended forward, intense and penetrating gaze",
58
- "sitting slightly inclined with one leg stretched and the other bent, hands on the waist, a confident but sweet expression",
59
- "arching her back while stretching, outfit lifting to reveal thong, looking back with intense desire",
60
- "leaning back on an office surface, legs subtly spread hinting thong, eyes locked with a subtle ecstatic gesture",
61
- "kneeling on the office floor, skirt riding up to tease thong, gazing upwards with desire",
62
- "sitting on a high office stool, legs crossed and skirt hiked up to show thong, direct gaze with a subtle moan-like expression",
63
- "bending over an office railing, outfit stretching to reveal thong, looking back with playful desire",
64
- "reclining on a sofa in the office, legs positioned to hint at thong, eyes conveying subtle ecstasy",
65
- "standing with hands on hips, skirt swaying to reveal thong, direct eye contact with passionate desire",
66
- "sitting on the edge of a sofa, adjusting stockings to tease thong view, gazing with desire",
67
- "reaching for something high on a shelf, outfit lifting to hint at thong, turning head with a desirous look",
68
- "dancing sensually, twirl causing skirt to lift, thong visible momentarily, gazing passionately",
69
- "applying lipstick in mirror, bending slightly to reveal thong, glancing at viewer with desire",
70
- "reading a document in a provocative position, legs positioned to hint at thong, looking up with a subtle flush",
71
- "heating food with playful movements, bending to the microwave, thong hinted, turning with a desirous smile",
72
- "exercising with a deep stretch pose, outfit hinting thong, eyes meeting viewer",
73
- "brushing long hair, movement causing outfit to shift, thong tease, intense gaze",
74
- "talking on the phone with a seductive posture, pacing, skirt swaying to reveal thong, desirous expression",
75
- "watering office plants with a bend and reach, thong visible, looking back with a subtle gesture",
76
- "trying on heels, sitting and adjusting, thong hinted, direct seductive look",
77
- "folding clothes with a suggestive bend, movement revealing thong, eyes with desire",
78
- "working at the desk with a relaxed posture, leaning back, legs apart subtly hinting thong, gazing",
79
- "standing tall with one hand on hip, shoulders relaxed, soft gaze",
80
- "seated sideways on an office chair, legs crossed elegantly, looking over shoulder",
81
- "lying on side on a sofa with head propped on hand, legs slightly bent, serene expression",
82
- "leaning against the office wall with one foot up, hands running through hair, subtle smile",
83
- "curled up on a sofa, hugging knees, eyes gently closed",
84
- "lying on back on a sofa with arms above head, arching slightly, eyes on camera",
85
- "seated on the floor with legs extended, torso twisted to camera, soft smile",
86
- "standing with back to camera, looking over shoulder with a sultry look",
87
- "resting chin on hand, elbow on knee, casual yet elegant gaze",
88
- "hands gently framing face, soft tousled hair, relaxed posture",
89
- "lying on stomach with crossed ankles, chin resting on hands, playful smile",
90
- "standing with arms above head, elongating body, peaceful expression",
91
- "seated on edge of a sofa, one leg crossed over the other, eyes downward",
92
- "leaning forward on a chair, elbows on knees, intense gaze",
93
- "standing in a flowing robe or blazer, holding belt loosely, inviting expression",
94
- "sitting with legs tucked under, looking sideways, soft smile",
95
- "lying diagonally on a sofa, arm stretched out, relaxed and elegant",
96
- "standing with hands clasped behind back, head tilted, soft gaze",
97
- "sitting with knees bent, arms wrapped around legs, contemplative look",
98
- "semi-open legs with weight on one, the other slightly ahead and relaxed, arms gently crossed or hands on waist, confident and direct gaze",
99
- "hands on hips for a firm stance, legs shoulder-width apart, head slightly tilted with a seductive expression",
100
- "semi-open with one bent leg, one leg straight with weight, the other with a slightly bent knee and pointed toe, relaxed arms, intense gaze",
101
- "legs slightly separated, with one leg slightly ahead pointing outward, hands resting on thighs or lower part of the skirt, elegant and confident expression",
102
- "legs semi-open, with arms crossed or gently hugging the body for a sophisticated and contained sensuality",
103
- "semi-open legs with a twisted torso, turning the body and head slightly to soften the pose and add dynamism, with a gaze towards the lens or profile",
104
- "squatting with semi-open legs and hands resting on thighs, creating a visual line that hints at sensuality and elegance",
105
- "squatting with hands gently on thighs or slightly to the sides, touching the skirt or thong with delicacy for a tactile feel",
106
- "torso slightly inclined forward or to the side to add dynamism and flatter body lines",
107
- "head and gaze oriented toward the camera with a soft and confident expression for an intimate connection",
108
- "squatting and resting on heels, legs slightly separated, arm resting on the floor or thigh, head slightly tilted for a seductive gaze",
109
- "squatting with arms around legs, gently holding them or ankles, with direct eye contact or a low gaze for vulnerability or mystery",
110
- "squatting with elevated hands, hands resting behind or elevated to touch hair or neck, body arched and gaze fixed on the lens for a sophisticated and sensual pose",
111
- "for a strong connection, the gaze should be direct to the lens, or slightly to the side for a subtle mystery",
112
- "expressions should be natural, confident, and relaxed, avoiding tension",
113
- "hands should be soft and natural, gently touching garments or accessories",
114
- "hands resting on hips or thighs",
115
- "fluid postures that guide attention, avoiding stiffness"
116
- ],
117
- "expressions": [
118
- "seductive gaze with desire",
119
- "soft and confident gaze",
120
- "intimate yet professional gaze",
121
- "focused gaze",
122
- "confident or slightly flirty gaze",
123
- "direct and confident gaze",
124
- "mysterious gaze",
125
- "soft and suggestive gaze",
126
- "seductive gaze at the camera",
127
- "confident gaze",
128
- "confident expression",
129
- "attractive gaze",
130
- "penetrating gaze",
131
- "sweet expression",
132
- "intense desire",
133
- "subtle ecstatic gesture",
134
- "gazing upwards with desire",
135
- "subtle moan-like expression",
136
- "playful desire",
137
- "subtle ecstasy",
138
- "passionate desire",
139
- "gazing with desire",
140
- "desirous look",
141
- "passionately gazing",
142
- "desire",
143
- "subtle flush",
144
- "desirous smile",
145
- "intense gaze",
146
- "desirous expression",
147
- "subtle gesture",
148
- "direct seductive look",
149
- "eyes with desire",
150
- "gazing",
151
- "soft gaze",
152
- "seductive expression",
153
- "intense gaze",
154
- "serene expression",
155
- "subtle smile",
156
- "eyes gently closed",
157
- "eyes on camera",
158
- "soft smile",
159
- "sultry look",
160
- "elegant gaze",
161
- "relaxed posture",
162
- "playful smile",
163
- "peaceful expression",
164
- "eyes downward",
165
- "intense gaze",
166
- "inviting expression",
167
- "contemplative look",
168
- "soft gaze",
169
- "seductive gaze",
170
- "intense gaze",
171
- "elegant expression",
172
- "gaze towards the lens or profile",
173
- "seductive gaze",
174
- "natural, confident, and relaxed expression",
175
- "soft and confident expression",
176
- "direct eye contact or a low gaze",
177
- "direct gaze on the lens, or slightly to the side",
178
- "soft and confident expression for an intimate connection",
179
- "natural, confident, and relaxed expression, avoiding tension"
180
- ],
181
- "poses_thongs": [
182
- "arching her back while stretching, outfit lifting to reveal thong, looking back with intense desire",
183
- "leaning back on a surface, legs subtly spread hinting thong, eyes locked with subtle orgasmic gesture",
184
- "sipping coffee lounging to reveal thong, subtle ecstasy"
185
- ],
186
- "lingerie_sets": [
187
- "black lace set with push-up bra, floral thong, and sheer thigh-high stockings with a lace top",
188
- "red satin set with underwire bra, bow accents thong, and fishnet thigh-high stockings with a pattern",
189
- "white mesh set with sheer-cup bra, transparent thong, and silk thigh-high stockings with a smooth finish",
190
- "pink lace set with demi-cup bra, scalloped-edge thong, and thigh-high stockings with a garter",
191
- "blue silk set with smooth-cup bra, a sleek thong, and velvet thigh-high stockings with a soft texture",
192
- "green velvet set with padded bra, a textured thong, and satin thigh-high stockings with a subtle shine",
193
- "purple satin set with balconette bra, a glossy thong, and mesh thigh-high stockings with a net pattern",
194
- "yellow chiffon set with a light-coverage bra, a light thong, and thigh-high stockings with a light, airy feel",
195
- "black mesh set with transparent-strap bra, a net-pattern thong, and opaque thigh-high stockings with a matte look",
196
- "red lace set with embroidered bra, an embroidered thong, and sheer thigh-high stockings with a red tint",
197
- "white satin set with pearl-accented bra, a pearl-detailed thong, and fishnet thigh-high stockings with a diamond pattern",
198
- "pink silk set with delicate-lace-trim bra, a delicate-strap thong, and shiny silk thigh-high stockings",
199
- "blue velvet set with a plush bra, a plush thong, and lace thigh-high stockings with a floral design",
200
- "green lace set with a floral-pattern bra, a leaf-motif thong, and plush velvet thigh-high stockings",
201
- "purple mesh set with sheer-panel bra, sheer-panel thong, and luxurious satin thigh-high stockings",
202
- "yellow satin set with a shiny bra, a glossy thong, and transparent mesh thigh-high stockings",
203
- "black chiffon set with a flowy-edged bra, a flowy-edged thong, and flowy chiffon thigh-high stockings",
204
- "red mesh set with a bold bra, a bold-line thong, and opaque thigh-high stockings with a bold look",
205
- "white lace set with a romantic bra, a romantic thong, and sheer thigh-high stockings for a subtle touch",
206
- "pink velvet set with a soft-textured bra, a soft-pile thong, and fun fishnet thigh-high stockings",
207
- "blue satin set with a sleek-line bra, a sleek thong, and elegant silk thigh_high stockings",
208
- "green silk set with an elegant-feel bra, an elegant-drape thong, and romantic lace thigh_high stockings",
209
- "purple chiffon set with an airy bra, an airy thong, and deep velvet thigh_high stockings",
210
- "yellow lace set with a bright bra, a bright thong, and bright satin thigh_high stockings",
211
- "black satin set with a luxurious bra, a luxurious thong, and edgy mesh thigh_high stockings",
212
- "red velvet set with a deep-hued bra, a deep-colored thong, and airy chiffon thigh_high stockings",
213
- "white mesh set with a modern bra, a modern-grid thong, and clean opaque thigh_high stockings",
214
- "pink chiffon set with a feminine bra, a feminine-ruffle thong, and blush-pink sheer thigh_high stockings",
215
- "blue lace set with a wave-pattern bra, a wave-pattern thong, and playful fishnet thigh_high stockings",
216
- "green satin set with a natural-color bra, a natural-hued thong, and natural-color silk thigh_high stockings",
217
- "purple velvet set with a royal-style bra, a royal-vibe thong, and ornate lace thigh_high stockings",
218
- "yellow mesh set with a sunny-transparency bra, a sunny thong, and sunny velvet thigh_high stockings",
219
- "black lace set with a gothic bra, a gothic-element thong, and thigh-high stockings with a shadow-black lace top",
220
- "red silk set with a passionate bra, a passionate thong, and passionate-red mesh thigh-high stockings",
221
- "white chiffon set with a pure-white bra, a pure-white thong, and pure-white chiffon thigh-high stockings",
222
- "pink satin set with a blush-pink bra, a blush-pink thong, and soft opaque thigh-high stockings",
223
- "blue velvet set with a deep-blue bra, a deep-blue thong, and sheer thigh-high stockings in a calm blue",
224
- "green lace set with an envious-green bra, an envious-green thong, and green fishnet thigh-high stockings",
225
- "purple mesh set with a mysterious bra, a mysterious thong, and lavender fishnet thigh-high stockings",
226
- "yellow chiffon set with a joyful-yellow bra, a joyful-yellow thong, and sunny-yellow silk thigh-high stockings",
227
- "black silk set with a night-black bra, a night-black thong, and shadow-black lace thigh-high stockings",
228
- "red satin set with a fire-red bra, a fire-red thong, and deep-red velvet thigh-high stockings",
229
- "white velvet set with a snow-white bra, a snow-white thong, and white-sheer thigh-high stockings",
230
- "pink lace set with a rose-pink bra, a rose-pink thong, and pink-rose lace thigh-high stockings",
231
- "blue mesh set with a sky-blue bra, a sky-blue thong, and sky-blue mesh thigh-high stockings",
232
- "green chiffon set with a forest-green bra, a forest-green thong, and forest-green chiffon thigh-high stockings",
233
- "purple satin set with a lavender bra, a lavender thong, and lavender lace thigh-high stockings",
234
- "yellow velvet set with a sun-yellow bra, a sun-yellow thong, and sun-yellow velvet thigh-high stockings",
235
- "black mesh set with a shadow-black bra, a shadow-black thong, and shadow-black mesh thigh-high stockings",
236
- "red chiffon set with a sunset-red bra, a sunset-red thong, and sunset-red chiffon thigh-high stockings"
237
- ],
238
- "colors": [
239
  "deep ruby red", "classic black", "emerald green", "sapphire blue", "royal purple",
240
  "champagne gold", "silver metallic", "burgundy wine", "chocolate brown", "ivory white",
241
  "hot pink", "electric blue", "vibrant orange", "forest green", "midnight navy",
@@ -253,128 +137,46 @@ fashion_elements = {
253
  "a flowing chiffon mini dress with intricate patterns",
254
  "a form-fitting leather mini skirt with bold accents",
255
  ],
256
- "dresses": [
257
- "black sheath mini dress with lace inserts",
258
- "red bodycon dress with plunging neckline",
259
- "white slip dress with spaghetti straps",
260
- "pink halter mini dress with ruffles",
261
- "blue wrap dress with belt tie",
262
- "green off-shoulder dress with puff sleeves",
263
- "purple A-line dress with pleats",
264
- "yellow sundress with floral print",
265
- "black cocktail dress with sequins",
266
- "red evening dress with slit",
267
- "white lace dress with scalloped hem",
268
- "pink skater dress with full skirt",
269
- "blue maxi dress with side slits",
270
- "green shift dress with pockets",
271
- "purple tunic dress with embroidery",
272
- "yellow babydoll dress with empire waist",
273
- "black velvet dress with choker neck",
274
- "red satin dress with cowl neck",
275
- "white chiffon dress with layers",
276
- "pink leather dress with zip front",
277
- "blue denim dress with buttons",
278
- "green sequin dress with fringe",
279
- "purple tulle dress with tutu skirt",
280
- "yellow mesh dress with underlay",
281
- "black plaid dress with collar",
282
- "red latex dress with shine",
283
- "white satin dress with bow back",
284
- "pink velvet dress with ruche",
285
- "blue lace dress with illusion neck",
286
- "green chiffon dress with drape",
287
- "purple denim dress with distress",
288
- "yellow leather dress with seams",
289
- "black sequin dress with sparkle",
290
- "red tulle dress with volume",
291
- "white mesh dress with transparency",
292
- "pink plaid dress with pattern",
293
- "blue satin dress with gloss",
294
- "green lace dress with romance",
295
- "purple velvet dress with luxury",
296
- "yellow chiffon dress with flow",
297
- "black denim dress with casual",
298
- "red leather dress with edge",
299
- "white sequin dress with party",
300
- "pink tulle dress with princess",
301
- "blue velvet dress with texture",
302
- "green plaid dress with preppy",
303
- "purple lace dress with gothic",
304
- "yellow mesh dress with sporty",
305
- "black satin dress with elegance",
306
- "red chiffon dress with boho"
307
- ],
308
- "lingerie_details": [
309
- "delicate lace trim",
310
- "satin ribbon accents",
311
- "strategic sheer panels",
312
- "scalloped edges",
313
- "embellished with subtle crystals",
314
- "bow details",
315
- "plunging neckline",
316
- "underwire support",
317
- "removable garter straps"
318
  ],
319
- "camera_angles": [
320
- "extreme low angle from floor level, gently tilted upward, filling the frame closely",
321
- "worm's-eye view, gently tilted upward, filling the frame closely",
322
- "low angle capturing the full figure from below, gently tilted upward, filling the frame closely",
323
- "dramatic low angle emphasizing height and form, gently tilted upward, filling the frame closely",
324
- "low angle close-up focusing on lower body and outfit from below, gently tilted upward, filling the frame closely",
325
- "low angle medium shot capturing the figure from below, gently tilted upward, filling the frame closely",
 
 
 
 
326
  ],
327
- "miniskirts": [
328
- "black leather pleated miniskirt with silver zipper",
329
- "red velvet ultra-short miniskirt with lace hem",
330
- "white denim tight miniskirt with distressed edges",
331
- "pink satin flared miniskirt with bow details",
332
- "blue plaid schoolgirl miniskirt with buttons",
333
- "green sequin shiny miniskirt with fringe",
334
- "purple tulle layered miniskirt with ruffles",
335
- "yellow chiffon flowy miniskirt with slits",
336
- "black mesh transparent miniskirt with embroidery",
337
- "red latex shiny miniskirt with buckles",
338
- "white lace delicate miniskirt with floral patterns",
339
- "blue denim cutoff miniskirt with pockets",
340
- "green velvet wrap miniskirt with ties",
341
- "pink leather high-waist miniskirt with studs",
342
- "purple satin asymmetric miniskirt with drape",
343
- "yellow plaid pleated miniskirt with suspenders",
344
- "black chiffon sheer miniskirt with lining",
345
- "red sequin glittering miniskirt with hemline",
346
- "white tulle ballerina miniskirt with layers",
347
- "blue leather bodycon miniskirt with seams",
348
- "green lace romantic miniskirt with scallop",
349
- "pink denim distressed miniskirt with fray",
350
- "purple velvet ruched miniskirt with drawstring",
351
- "yellow satin shiny miniskirt with pleats",
352
- "black plaid tartan miniskirt with kilt pin",
353
- "red mesh fishnet miniskirt with overlay",
354
- "white chiffon boho miniskirt with embroidery",
355
- "blue sequin party miniskirt with sparkle",
356
- "green tulle voluminous miniskirt with petticoat",
357
- "pink lace victorian miniskirt with ribbons",
358
- "purple denim acid-wash miniskirt with patches",
359
- "yellow leather moto miniskirt with zippers",
360
- "black satin elegant miniskirt with slit",
361
- "red velvet holiday miniskirt with trim",
362
- "white plaid preppy miniskirt with buttons",
363
- "blue chiffon summer miniskirt with flow",
364
- "green sequin festival miniskirt with shine",
365
- "pink tulle princess miniskirt with bows",
366
- "purple lace gothic miniskirt with corset",
367
- "yellow mesh sporty miniskirt with stripes",
368
- "black denim classic miniskirt with belt",
369
- "red leather edgy miniskirt with chains",
370
- "white satin bridal miniskirt with veil",
371
- "blue velvet luxurious miniskirt with texture",
372
- "green plaid highland miniskirt with pattern",
373
- "pink chiffon romantic miniskirt with ruffles",
374
- "purple sequin disco miniskirt with glitter",
375
- "yellow tulle fun miniskirt with colors",
376
- "black lace sexy miniskirt with transparency",
377
- "red denim casual miniskirt with wash"
378
  ],
379
  "stockings": [
380
  "sheer thigh-high stockings with a lace top",
@@ -445,7 +247,7 @@ fashion_elements = {
445
  "a shadow-black thong", "a sunset-red thong"
446
  ],
447
  "lingerie_bras": [
448
- "push-up bra", "underwire bra", "sheer-cup bra", "demi-ccup bra", "smooth-cup bra",
449
  "padded bra", "balconette bra", "a light-coverage bra", "transparent-strap bra",
450
  "embroidered bra", "pearl-accented bra", "delicate-lace-trim bra", "a plush bra",
451
  "a floral-pattern bra", "sheer-panel bra", "a shiny bra", "a flowy-edged bra",
@@ -458,70 +260,81 @@ fashion_elements = {
458
  "a fire-red bra", "a snow-white bra", "a rose-pink bra", "a sky-blue bra",
459
  "a forest-green bra", "a lavender bra", "a sun-yellow bra", "a shadow-black bra",
460
  "a sunset-red bra"
461
- ],
462
- "backgrounds": [
463
- "a luxurious bedroom", "a modern office", "a chic studio apartment", "a dimly lit lounge",
464
- "a stylish hotel room", "an industrial loft", "a minimalist living space", "a Parisian balcony",
465
- "a vintage boudoir", "a serene garden setting"
466
- ],
467
- "lighting": [
468
- "soft natural window light", "dramatic chiaroscuro lighting", "warm golden hour glow",
469
- "studio lighting with softboxes", "ambient moody lighting", "rim lighting to accentuate silhouette",
470
- "cinematic lighting with subtle color grading", "ethereal backlight", "dynamic spotlighting"
471
  ]
472
  }
473
 
474
  class FashionPromptGenerator:
475
  def __init__(self):
476
  self.fashion_elements = fashion_elements
 
 
 
 
 
 
 
 
 
 
 
477
 
478
- def generate_prompt(self, celebrity_name):
479
  primary_color = random.choice(self.fashion_elements["colors"])
 
 
480
  outfit = random.choice(self.fashion_elements["outfits"])
481
  thong = random.choice(self.fashion_elements["lingerie_thongs"])
482
- bra = random.choice(self.fashion_elements["lingerie_bras"]) if random.random() > 0.5 else None
 
483
  lingerie_item = f"{primary_color} {thong}"
484
  if bra:
485
- lingerie_item += f" and {primary_color} {bra}"
486
- lingerie_detail = random.choice(self.fashion_elements["lingerie_details"])
487
- stocking = f"{primary_color} {random.choice(self.fashion_elements['stockings'])}"
488
- pose = random.choice(self.fashion_elements["boudoir_office_poses"])
 
489
  hairstyle = random.choice(self.fashion_elements["hairstyles"])
490
  background = random.choice(self.fashion_elements["backgrounds"])
491
  lighting = random.choice(self.fashion_elements["lighting"])
492
- camera_angle = random.choice(self.fashion_elements["camera_angles"])
493
  expression = random.choice(self.fashion_elements["expressions"])
 
494
 
495
  prompt = f"""
496
- Ultra-realistic sensual photograph of the beautiful celebrity (({celebrity_name}:1.2)), captured from an **extreme low angle from floor level**, **gently tilted upward** to emphasize the skirt's texture, the visible {primary_color} {thong}, and then ascending towards the face with impeccable makeup. The camera is positioned slightly below the garment level, near the floor or knees, to highlight details and add drama and depth, emphasizing textures and shapes. The framing is tight and close, completely filling the frame.
 
 
497
 
498
- The composition frames from the lower part of her body up to the face or makeup, using the pose and gaze to guide the viewer's attention.
 
499
 
500
- She wears a meticulously designed {primary_color} {outfit}, featuring {lingerie_item} with {lingerie_detail}. Also wearing {stocking}. {pose}, with {hairstyle}. Expression: {expression}.
 
 
 
 
501
 
502
- **Capture Technique:**
503
- - **Angle and Framing:** {camera_angle} - **Crucially, the camera is placed slightly below garment level (near the floor or knees) and tilted gently upward.**
504
- - **Distance:** Close-up, capturing fine details in the fabric, lace, or finishes without losing the context of the ensemble. A macro or zoom prime lens (between 85mm and 135mm) is used to capture minute textures.
505
- - **Lighting:** {lighting}, utilizing soft, directional light or diffusers. Side or backlighting is ideal to accentuate reliefs in lace or embroidery, avoiding harsh shadows or distracting reflections.
506
- - **Pose:** Poses with slight inclinations or twists, legs softly crossed, hands gently touching the skirt or lingerie to create dynamism and visual tactile sensitivity.
507
 
508
- The image has a perfect depth of field, with sharp focus on the details and a softly blurred background. Expertly color graded for a polished, cinematic quality. Ultra HD, 16K.
509
 
510
- Negative prompt: bad framing, subject too small, empty space, cropped poorly, cut off limbs, out of frame, border, frame, outline, harsh shadows, uneven lighting, dark areas, (bad anatomy, deformed, ugly), blurry, noisy, oversaturated, underexposed, overexposed, text, watermark, signature, grain, (anime, cartoon, 3d, painting, illustration), monochrome, black and white, sepia, vintage, low quality, plastic, doll, airbrushed, photoshopped, fake, surreal
511
  """
512
  return prompt.strip()
513
 
514
  def generate_five_prompts(self, celebrity_name):
515
- return [self.generate_prompt(celebrity_name) for _ in range(5)]
 
 
516
 
517
 
518
  def create_gradio_interface():
519
  generator = FashionPromptGenerator()
520
 
521
- with gr.Blocks(title="FINAL BATUTO", theme=gr.themes.Soft(), css="""
522
- .copy-btn {
523
- margin-top: 8px;
524
- }
525
  .prompt-box {
526
  border: 1px solid #e2e8f0;
527
  border-radius: 8px;
@@ -541,42 +354,48 @@ def create_gradio_interface():
541
  .dark .prompt-title {
542
  color: #e2e8f0;
543
  }
 
 
 
 
544
  """) as demo:
545
- gr.Markdown("# ✨ FINAL BATUTO: Fashion Prompt Generator ✨")
546
- gr.Markdown("Enter a celebrity's name to generate 5 unique and detailed fashion photography prompts.")
547
-
 
 
 
548
  with gr.Row():
549
- with gr.Column(scale=3):
550
  celebrity_input = gr.Textbox(
551
  label="Celebrity Name",
552
- placeholder="Ex: Scarlett Johansson, Zendaya, Ana de Armas...",
553
- info="The name of the celebrity who will appear in the prompts."
554
  )
555
  with gr.Column(scale=1):
556
- generate_btn = gr.Button("Generate 5 Prompts", variant="primary", size="lg")
557
- clear_btn = gr.Button("Clear All", variant="secondary")
558
 
559
  gr.Markdown("## Generated Prompts")
 
560
 
561
  output_prompts = []
562
- copy_buttons = []
563
- prompt_columns = [] # Define prompt_columns here
564
 
565
  for i in range(5):
566
  with gr.Column(visible=False) as prompt_col:
567
- gr.Markdown(f"### Prompt {i+1}", elem_classes="prompt-title")
568
- with gr.Row():
569
- prompt_output = gr.Textbox(
570
- label="",
571
- lines=15,
572
- max_lines=20,
573
- interactive=False,
574
- elem_id=f"prompt_output_{i}",
575
- show_copy_button=True,
576
- elem_classes="prompt-box"
577
- )
578
  output_prompts.append(prompt_output)
579
- prompt_columns.append(prompt_col) # Append to the list
580
 
581
  def generate_and_display_prompts(celebrity_name):
582
  if not celebrity_name.strip():
@@ -585,6 +404,7 @@ def create_gradio_interface():
585
  return [gr.update(visible=True)] * 5 + prompts
586
 
587
  def clear_all():
 
588
  return [gr.update(visible=False)] * 5 + [""] * 5
589
 
590
  generate_btn.click(
@@ -600,14 +420,14 @@ def create_gradio_interface():
600
  )
601
 
602
  gr.Markdown("---")
603
- gr.Markdown("### Examples to try:")
604
  gr.Examples(
605
  examples=["Zendaya", "Ana de Armas", "Florence Pugh", "Sydney Sweeney", "Margot Robbie"],
606
  inputs=celebrity_input,
607
  outputs=prompt_columns + output_prompts,
608
  fn=generate_and_display_prompts,
609
  cache_examples=False,
610
- label="Click an example to load and generate."
611
  )
612
 
613
  return demo
 
1
  import random
2
  import gradio as gr
3
 
4
+ # Dataset con elementos mejorados para mayor variedad
 
5
  fashion_elements = {
6
  "hairstyles": [
7
  "long wavy auburn hair with elegant curls",
 
18
  "long updo with strawberry blonde",
19
  "long ponytail with sandy blonde"
20
  ],
21
+ "discovery_moments": [
22
+ "momentarily revealing lingerie as she adjusts her posture",
23
+ "subtly exposing lingerie while shifting weight between legs",
24
+ "accidentally revealing intimate details during a natural movement",
25
+ "playfully teasing the visibility of lingerie through fabric movement",
26
+ "unintentionally showing lingerie while reaching for an object",
27
+ "delicately revealing underwear as she crosses and uncrosses legs",
28
+ "offering a fleeting glimpse of lingerie during a graceful turn",
29
+ "exposing intimate apparel through the sheer fabric of her clothing",
30
+ "revealing lingerie edges while sitting down or standing up",
31
+ "showing subtle hints of underwear through strategic posing",
32
+ "creating an intimate reveal as the fabric clings to her form",
33
+ "allowing a private view of her lingerie during an unguarded moment",
34
+ "exposing delicate details through the transparency of her garment",
35
+ "revealing hidden layers through calculated body movements",
36
+ "creating sensual tension through partial concealment and revelation"
37
+ ],"voyeuristic_angles": [
38
+ "extreme low angle from floor level, tilted upward to capture intimate details",
39
+ "worm's-eye view focusing on the revealing moment from below",
40
+ "low angle emphasizing the voyeuristic perspective of discovered lingerie",
41
+ "camera positioned as if secretly observing from a hidden vantage point",
42
+ "upward angle creating the sensation of an unauthorized glimpse",
43
+ "shot from knee level capturing the accidental exposure",
44
+ "perspective from below simulating a hidden camera view",
45
+ "low vantage point emphasizing the forbidden nature of the view",
46
+ "angle that suggests the viewer is discovering something intimate",
47
+ "camera placement that enhances the feeling of witnessing a private moment",
48
+ "view from beneath creating a sense of intimate discovery",
49
+ "low-angle shot that makes the reveal feel more personal and intrusive",
50
+ "perspective that captures the moment as if by chance observation",
51
+ "angle that emphasizes the vulnerability of the exposed moment",
52
+ "shot composition that feels like a secret being uncovered"
53
+ ],
54
+ "lingerie_reveal_actions": [
55
+ "adjusting her stockings while revealing the thong underneath",
56
+ "smoothing her skirt only to expose more lingerie accidentally",
57
+ "reaching up high causing her outfit to ride up and show underwear",
58
+ "bending over to pick something up, offering a view of her thong",
59
+ "crossing her legs in a way that pulls the fabric taut against lingerie",
60
+ "stretching languidly, causing her clothing to shift and reveal",
61
+ "turning quickly, creating a momentary flash of intimate apparel",
62
+ "sitting down with a graceful motion that exposes lingerie edges",
63
+ "standing up from a chair, her skirt riding up to show the thong",
64
+ "playing with her hair while her other hand accidentally lifts her skirt",
65
+ "leaning forward to examine something, revealing her lingerie line",
66
+ "arching her back in a stretch that lifts her clothing",
67
+ "shifting position on a sofa, causing her dress to hike up",
68
+ "bending at the waist to tie her shoe, exposing her underwear",
69
+ "reclining back with legs slightly parted, hinting at her thong"
70
+ ],
71
+ "lingerie_sets": [
72
+ "black lace set with push-up bra, floral thong, and sheer thigh-high stockings with a lace top",
73
+ "red satin set with underwire bra, bow accents thong, and fishnet thigh-high stockings with a pattern",
74
+ "white mesh set with sheer-cup bra, transparent thong, and silk thigh-high stockings with a smooth finish",
75
+ "pink lace set with demi-cup bra, scalloped-edge thong, and thigh-high stockings with a garter",
76
+ "blue silk set with smooth-cup bra, a sleek thong, and velvet thigh-high stockings with a soft texture",
77
+ "green velvet set with padded bra, a textured thong, and satin thigh-high stockings with a subtle shine",
78
+ "purple satin set with balconette bra, a glossy thong, and mesh thigh-high stockings with a net pattern",
79
+ "yellow chiffon set with a light-coverage bra, a light thong, and thigh-high stockings with a light, airy feel",
80
+ "black mesh set with transparent-strap bra, a net-pattern thong, and opaque thigh-high stockings with a matte look",
81
+ "red lace set with embroidered bra, an embroidered thong, and sheer thigh-high stockings with a red tint",
82
+ "white satin set with pearl-accented bra, a pearl-detailed thong, and fishnet thigh-high stockings with a diamond pattern",
83
+ "pink silk set with delicate-lace-trim bra, a delicate-strap thong, and shiny silk thigh-high stockings",
84
+ "blue velvet set with a plush bra, a plush thong, and lace thigh-high stockings with a floral design",
85
+ "green lace set with a floral-pattern bra, a leaf-motif thong, and plush velvet thigh-high stockings",
86
+ "purple mesh set with sheer-panel bra, sheer-panel thong, and luxurious satin thigh-high stockings",
87
+ "yellow satin set with a shiny bra, a glossy thong, and transparent mesh thigh-high stockings",
88
+ "black chiffon set with a flowy-edged bra, a flowy-edged thong, and flowy chiffon thigh-high stockings",
89
+ "red mesh set with a bold bra, a bold-line thong, and opaque thigh-high stockings with a bold look",
90
+ "white lace set with a romantic bra, a romantic thong, and sheer thigh-high stockings for a subtle touch",
91
+ "pink velvet set with a soft-textured bra, a soft-pile thong, and fun fishnet thigh-high stockings",
92
+ "blue satin set with a sleek-line bra, a sleek thong, and elegant silk thigh_high stockings",
93
+ "green silk set with an elegant-feel bra, an elegant-drape thong, and romantic lace thigh_high stockings",
94
+ "purple chiffon set with an airy bra, an airy thong, and deep velvet thigh_high stockings",
95
+ "yellow lace set with a bright bra, a bright thong, and bright satin thigh_high stockings",
96
+ "black satin set with a luxurious bra, a luxurious thong, and edgy mesh thigh_high stockings",
97
+ "red velvet set with a deep-hued bra, a deep-colored thong, and airy chiffon thigh_high stockings",
98
+ "white mesh set with a modern bra, a modern-grid thong, and clean opaque thigh_high stockings",
99
+ "pink chiffon set with a feminine bra, a feminine-ruffle thong, and blush-pink sheer thigh_high stockings",
100
+ "blue lace set with a wave-pattern bra, a wave-pattern thong, and playful fishnet thigh_high stockings",
101
+ "green satin set with a natural-color bra, a natural-hued thong, and natural-color silk thigh_high stockings",
102
+ "purple velvet set with a royal-style bra, a royal-vibe thong, and ornate lace thigh_high stockings",
103
+ "yellow mesh set with a sunny-transparency bra, a sunny thong, and sunny velvet thigh_high stockings",
104
+ "black lace set with a gothic bra, a gothic-element thong, and thigh-high stockings with a shadow-black lace top",
105
+ "red silk set with a passionate bra, a passionate thong, and passionate-red mesh thigh-high stockings",
106
+ "white chiffon set with a pure-white bra, a pure-white thong, and pure-white chiffon thigh-high stockings",
107
+ "pink satin set with a blush-pink bra, a blush-pink thong, and soft opaque thigh-high stockings",
108
+ "blue velvet set with a deep-blue bra, a deep-blue thong, and sheer thigh-high stockings in a calm blue",
109
+ "green lace set with an envious-green bra, an envious-green thong, and green fishnet thigh-high stockings",
110
+ "purple mesh set with a mysterious bra, a mysterious thong, and lavender fishnet thigh-high stockings",
111
+ "yellow chiffon set with a joyful-yellow bra, a joyful-yellow thong, and sunny-yellow silk thigh-high stockings",
112
+ "black silk set with a night-black bra, a night-black thong, and shadow-black lace thigh-high stockings",
113
+ "red satin set with a fire-red bra, a fire-red thong, and deep-red velvet thigh-high stockings",
114
+ "white velvet set with a snow-white bra, a snow-white thong, and white-sheer thigh-high stockings",
115
+ "pink lace set with a rose-pink bra, a rose-pink thong, and pink-rose lace thigh-high stockings",
116
+ "blue mesh set with a sky-blue bra, a sky-blue thong, and sky-blue mesh thigh-high stockings",
117
+ "green chiffon set with a forest-green bra, a forest-green thong, and forest-green chiffon thigh-high stockings",
118
+ "purple satin set with a lavender bra, a lavender thong, and lavender lace thigh-high stockings",
119
+ "yellow velvet set with a sun-yellow bra, a sun-yellow thong, and sun-yellow velvet thigh-high stockings",
120
+ "black mesh set with a shadow-black bra, a shadow-black thong, and shadow-black mesh thigh-high stockings",
121
+ "red chiffon set with a sunset-red bra, a sunset-red thong, and sunset-red chiffon thigh-high stockings"
122
+ ], "colors": [
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  "deep ruby red", "classic black", "emerald green", "sapphire blue", "royal purple",
124
  "champagne gold", "silver metallic", "burgundy wine", "chocolate brown", "ivory white",
125
  "hot pink", "electric blue", "vibrant orange", "forest green", "midnight navy",
 
137
  "a flowing chiffon mini dress with intricate patterns",
138
  "a form-fitting leather mini skirt with bold accents",
139
  ],
140
+ "expressions": [
141
+ "unaware of being observed, natural and relaxed",
142
+ "slightly self-conscious but continuing her actions",
143
+ "lost in thought, completely natural in her movements",
144
+ "playfully teasing but pretending not to notice the camera",
145
+ "focused on her task, unaware of the revealing moment",
146
+ "exuding quiet confidence while her lingerie becomes visible",
147
+ "appearing distracted, allowing natural exposure to occur",
148
+ "maintaining composure while her clothing shifts revealingly",
149
+ "exhibiting casual elegance despite the intimate exposure",
150
+ "completely absorbed in the moment, natural and unposed",
151
+ "displaying innocent unawareness of the camera's presence",
152
+ "showing subtle confidence in her accidental revelation",
153
+ "maintaining natural grace during the unintentional exposure",
154
+ "expressing quiet contemplation while partially exposed",
155
+ "radiating natural beauty in the unguarded moment"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
  ],
157
+ "backgrounds": [
158
+ "a luxurious bedroom with soft ambient lighting",
159
+ "a modern office space during after-hours",
160
+ "a chic studio apartment with intimate atmosphere",
161
+ "a dimly lit lounge with moody shadows",
162
+ "a stylish hotel room with elegant decor",
163
+ "an industrial loft with dramatic lighting",
164
+ "a minimalist living space with clean lines",
165
+ "a Parisian balcony with romantic ambiance",
166
+ "a vintage boudoir with ornate details",
167
+ "a serene garden setting with natural beauty"
168
  ],
169
+ "lighting": [
170
+ "soft natural window light creating intimate shadows",
171
+ "dramatic chiaroscuro lighting emphasizing curves and reveals",
172
+ "warm golden hour glow enhancing skin tones",
173
+ "studio lighting with softboxes for a polished look",
174
+ "ambient moody lighting adding mystery and depth",
175
+ "rim lighting to accentuate silhouette and intimate details",
176
+ "cinematic lighting with subtle color grading",
177
+ "ethereal backlight creating a halo effect",
178
+ "dynamic spotlighting focusing on the revealed areas",
179
+ "low-key lighting enhancing the voyeuristic atmosphere"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
180
  ],
181
  "stockings": [
182
  "sheer thigh-high stockings with a lace top",
 
247
  "a shadow-black thong", "a sunset-red thong"
248
  ],
249
  "lingerie_bras": [
250
+ "push-up bra", "underwire bra", "sheer-cup bra", "demi-cup bra", "smooth-cup bra",
251
  "padded bra", "balconette bra", "a light-coverage bra", "transparent-strap bra",
252
  "embroidered bra", "pearl-accented bra", "delicate-lace-trim bra", "a plush bra",
253
  "a floral-pattern bra", "sheer-panel bra", "a shiny bra", "a flowy-edged bra",
 
260
  "a fire-red bra", "a snow-white bra", "a rose-pink bra", "a sky-blue bra",
261
  "a forest-green bra", "a lavender bra", "a sun-yellow bra", "a shadow-black bra",
262
  "a sunset-red bra"
 
 
 
 
 
 
 
 
 
 
263
  ]
264
  }
265
 
266
  class FashionPromptGenerator:
267
  def __init__(self):
268
  self.fashion_elements = fashion_elements
269
+ self.previous_prompts = set() def generate_unique_prompt(self, celebrity_name):
270
+ """Genera un prompt único evitando repeticiones"""
271
+ max_attempts = 10
272
+ for attempt in range(max_attempts):
273
+ prompt = self._build_prompt(celebrity_name)
274
+ prompt_hash = hash(prompt)
275
+ if prompt_hash not in self.previous_prompts:
276
+ self.previous_prompts.add(prompt_hash)
277
+ return prompt
278
+ # Si no encuentra único después de varios intentos, devuelve igual
279
+ return self._build_prompt(celebrity_name)
280
 
281
+ def _build_prompt(self, celebrity_name):
282
  primary_color = random.choice(self.fashion_elements["colors"])
283
+ secondary_color = random.choice([c for c in self.fashion_elements["colors"] if c != primary_color])
284
+
285
  outfit = random.choice(self.fashion_elements["outfits"])
286
  thong = random.choice(self.fashion_elements["lingerie_thongs"])
287
+ bra = random.choice(self.fashion_elements["lingerie_bras"]) if random.random() > 0.3 else None
288
+
289
  lingerie_item = f"{primary_color} {thong}"
290
  if bra:
291
+ lingerie_item += f" and {secondary_color} {bra}"
292
+
293
+ discovery_moment = random.choice(self.fashion_elements["discovery_moments"])
294
+ reveal_action = random.choice(self.fashion_elements["lingerie_reveal_actions"])
295
+ voyeur_angle = random.choice(self.fashion_elements["voyeuristic_angles"])
296
  hairstyle = random.choice(self.fashion_elements["hairstyles"])
297
  background = random.choice(self.fashion_elements["backgrounds"])
298
  lighting = random.choice(self.fashion_elements["lighting"])
 
299
  expression = random.choice(self.fashion_elements["expressions"])
300
+ stocking = f"{primary_color} {random.choice(self.fashion_elements['stockings'])}"
301
 
302
  prompt = f"""
303
+ Voyeuristic fashion photograph of {celebrity_name}, captured from {voyeur_angle}.
304
+ The composition creates an intimate, almost forbidden viewing experience, {discovery_moment}.
305
+ She is {reveal_action}, creating a natural and unposed moment of exposure.
306
 
307
+ She wears a {primary_color} {outfit} that subtly reveals her {lingerie_item} during movement.
308
+ Complemented by {stocking}. Her {hairstyle} frames her face as she maintains {expression}.
309
 
310
+ **Scene & Atmosphere:**
311
+ - **Setting:** {background} with {lighting}
312
+ - **Composition:** Full-body shot from below, maintaining complete figure visibility while emphasizing the intimate reveal
313
+ - **Mood:** Sensual, voyeuristic, natural, and subtly erotic
314
+ - **Focus:** Sharp detail on the revealed lingerie and facial expression, with soft background blur
315
 
316
+ **Technical Details:**
317
+ - Shot on professional DSLR with 85mm prime lens
318
+ - Shallow depth of field focusing on the intimate moment
319
+ - Natural skin tones with warm color grading
320
+ - Ultra HD resolution, professional retouching
321
 
322
+ The image captures a fleeting, intimate moment that feels both spontaneous and beautifully composed, emphasizing the sensual discovery of hidden lingerie through natural movement and expert framing.
323
 
324
+ Negative prompt: cropped body, cut off limbs, out of frame, border, harsh shadows, uneven lighting, (bad anatomy, deformed, ugly), blurry, noisy, oversaturated, text, watermark, signature, (anime, cartoon, 3d, painting), monochrome, low quality, plastic, doll, airbrushed, photoshopped, fake, surreal, explicit nudity, vulgar
325
  """
326
  return prompt.strip()
327
 
328
  def generate_five_prompts(self, celebrity_name):
329
+ """Genera 5 prompts únicos"""
330
+ self.previous_prompts.clear() # Limpiar historial para nueva generación
331
+ return [self.generate_unique_prompt(celebrity_name) for _ in range(5)]
332
 
333
 
334
  def create_gradio_interface():
335
  generator = FashionPromptGenerator()
336
 
337
+ with gr.Blocks(title="Voyeuristic Fashion Prompt Generator", theme=gr.themes.Soft(), css="""
 
 
 
338
  .prompt-box {
339
  border: 1px solid #e2e8f0;
340
  border-radius: 8px;
 
354
  .dark .prompt-title {
355
  color: #e2e8f0;
356
  }
357
+ .header {
358
+ text-align: center;
359
+ margin-bottom: 20px;
360
+ }
361
  """) as demo:
362
+
363
+ gr.Markdown("""
364
+ # 🔍 Voyeuristic Fashion Prompt Generator
365
+ *Create intimate, discovery-focused fashion prompts with sensual lingerie reveals*
366
+ """)
367
+
368
  with gr.Row():
369
+ with gr.Column(scale=4):
370
  celebrity_input = gr.Textbox(
371
  label="Celebrity Name",
372
+ placeholder="Enter celebrity name (e.g., Scarlett Johansson, Zendaya, Ana de Armas...)",
373
+ info="The celebrity who will appear in the sensual fashion prompts"
374
  )
375
  with gr.Column(scale=1):
376
+ generate_btn = gr.Button("Generate 5 Unique Prompts", variant="primary", size="lg")
377
+ clear_btn = gr.Button("🗑️ Clear All", variant="secondary")
378
 
379
  gr.Markdown("## Generated Prompts")
380
+ gr.Markdown("*Each prompt features unique angles, discovery moments, and lingerie reveals*")
381
 
382
  output_prompts = []
383
+ prompt_columns = []
 
384
 
385
  for i in range(5):
386
  with gr.Column(visible=False) as prompt_col:
387
+ gr.Markdown(f"### 🎯 Prompt {i+1}", elem_classes="prompt-title")
388
+ prompt_output = gr.Textbox(
389
+ label="",
390
+ lines=12,
391
+ max_lines=15,
392
+ interactive=False,
393
+ elem_id=f"prompt_output_{i}",
394
+ show_copy_button=True,
395
+ elem_classes="prompt-box"
396
+ )
 
397
  output_prompts.append(prompt_output)
398
+ prompt_columns.append(prompt_col)
399
 
400
  def generate_and_display_prompts(celebrity_name):
401
  if not celebrity_name.strip():
 
404
  return [gr.update(visible=True)] * 5 + prompts
405
 
406
  def clear_all():
407
+ generator.previous_prompts.clear()
408
  return [gr.update(visible=False)] * 5 + [""] * 5
409
 
410
  generate_btn.click(
 
420
  )
421
 
422
  gr.Markdown("---")
423
+ gr.Markdown("### 💡 Try these examples:")
424
  gr.Examples(
425
  examples=["Zendaya", "Ana de Armas", "Florence Pugh", "Sydney Sweeney", "Margot Robbie"],
426
  inputs=celebrity_input,
427
  outputs=prompt_columns + output_prompts,
428
  fn=generate_and_display_prompts,
429
  cache_examples=False,
430
+ label="Click any example to generate prompts"
431
  )
432
 
433
  return demo