File size: 2,147 Bytes
9adb18c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import gradio as gr
from huggingface_hub import InferenceClient
import os

client = InferenceClient(token=os.getenv("HF_TOKEN"))

def optimize(
    image_prompt: str, alt_image_prompt: str, video_prompt: str,
    caption: str, kink_theme: str, platform: str, intensity: str
):
    system = f"""You are a viral NSFW content strategist. Optimize ALL inputs for MAX views, FYP algorithm push, and monetization on {platform}.
    Rules: Add strong hooks, emojis, questions, CTAs, taboo language, gooner bait. Keep {kink_theme} intensity at {intensity} level.
    Return ONLY the 4 optimized strings in JSON."""
    
    prompt = f"Originals:\nImage: {image_prompt}\nAlt: {alt_image_prompt}\nVideo: {video_prompt}\nCaption: {caption}"
    
    response = client.chat.completions.create(
        model="HauhauCS/Qwen3.5-9B-Uncensored-HauhauCS-Aggressive",
        messages=[{"role": "system", "content": system}, {"role": "user", "content": prompt}],
        max_tokens=1024,
        temperature=0.85
    )
    
    # Parse JSON from response (add robust parsing in production)
    optimized = json.loads(response.choices[0].message.content)
    return optimized["image"], optimized["alt"], optimized["video"], optimized["caption"]

with gr.Blocks(title="🔥 NSFW Prompt Optimizer") as demo:
    gr.Markdown("# AI Prompt Optimizer for Max Viral + Monetization")
    with gr.Row():
        image_in = gr.Textbox(label="Image Prompt", lines=3)
        alt_in = gr.Textbox(label="Alt Image Prompt", lines=3)
    video_in = gr.Textbox(label="Video Prompt", lines=2)
    caption_in = gr.Textbox(label="Original Caption", lines=4)
    kink = gr.Textbox(label="Kink Theme")
    plat = gr.Dropdown(["Twitter/X (NSFW)", "TikTok (Viral NSFW)"], label="Platform")
    inten = gr.Radio(["Teasing", "Explicit", "Extreme"], label="Intensity")
    
    optimize_btn = gr.Button("🚀 Optimize for VIRAL + $", variant="primary")
    
    outputs = [gr.Textbox(label=f"Optimized {n}") for n in ["Image", "Alt", "Video", "Caption"]]
    
    optimize_btn.click(optimize, inputs=[image_in, alt_in, video_in, caption_in, kink, plat, inten], outputs=outputs)

demo.launch()