Update app.py
Browse files
app.py
CHANGED
@@ -127,7 +127,7 @@ def enhance_prompt_with_gemini(prompt: str, style: str) -> str:
|
|
127 |
Return only the enhanced prompt without explanation.
|
128 |
"""
|
129 |
|
130 |
-
model = genai.GenerativeModel('gemini-
|
131 |
response = model.generate_content(enhancement_prompt)
|
132 |
enhanced = response.text.strip()
|
133 |
|
@@ -321,7 +321,7 @@ def analyze_marketing_image_with_gemini(image_url: str, prompt: str, review_guid
|
|
321 |
return _fallback_image_analysis(prompt, review_guidelines)
|
322 |
|
323 |
# Generate analysis using Gemini Vision
|
324 |
-
model = genai.GenerativeModel('gemini-
|
325 |
response = model.generate_content([analysis_prompt, image])
|
326 |
analysis_text = response.text
|
327 |
|
@@ -698,6 +698,13 @@ def gradio_generate_marketing_image(prompt: str, style: str, max_retries: int, r
|
|
698 |
return None, "⚠️ Please enter a prompt to generate an image."
|
699 |
|
700 |
try:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
701 |
# Use the complete workflow function with iteration parameters
|
702 |
result_json = generate_and_review_marketing_image(
|
703 |
prompt=prompt,
|
@@ -759,6 +766,26 @@ with gr.Blocks(title="Marketing Image Generator MCP", theme=gr.themes.Soft()) as
|
|
759 |
info="Provide specific marketing guidelines for review"
|
760 |
)
|
761 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
762 |
# Generate button
|
763 |
generate_btn = gr.Button("🚀 Generate Marketing Image", variant="primary", size="lg")
|
764 |
|
@@ -810,7 +837,7 @@ with gr.Blocks(title="Marketing Image Generator MCP", theme=gr.themes.Soft()) as
|
|
810 |
# Event handlers
|
811 |
generate_btn.click(
|
812 |
fn=gradio_generate_marketing_image,
|
813 |
-
inputs=[prompt, style, review_guidelines],
|
814 |
outputs=[image_output, review_output],
|
815 |
show_progress=True
|
816 |
)
|
|
|
127 |
Return only the enhanced prompt without explanation.
|
128 |
"""
|
129 |
|
130 |
+
model = genai.GenerativeModel('gemini-2.0-flash-exp')
|
131 |
response = model.generate_content(enhancement_prompt)
|
132 |
enhanced = response.text.strip()
|
133 |
|
|
|
321 |
return _fallback_image_analysis(prompt, review_guidelines)
|
322 |
|
323 |
# Generate analysis using Gemini Vision
|
324 |
+
model = genai.GenerativeModel('gemini-2.0-flash-exp')
|
325 |
response = model.generate_content([analysis_prompt, image])
|
326 |
analysis_text = response.text
|
327 |
|
|
|
698 |
return None, "⚠️ Please enter a prompt to generate an image."
|
699 |
|
700 |
try:
|
701 |
+
# Ensure parameters are correct types
|
702 |
+
max_retries = int(max_retries) if max_retries is not None else 3
|
703 |
+
review_threshold = float(review_threshold) if review_threshold is not None else 0.8
|
704 |
+
review_guidelines = str(review_guidelines) if review_guidelines is not None else ""
|
705 |
+
|
706 |
+
logger.info(f"🎯 Starting generation with max_retries={max_retries}, threshold={review_threshold}")
|
707 |
+
|
708 |
# Use the complete workflow function with iteration parameters
|
709 |
result_json = generate_and_review_marketing_image(
|
710 |
prompt=prompt,
|
|
|
766 |
info="Provide specific marketing guidelines for review"
|
767 |
)
|
768 |
|
769 |
+
# Advanced settings
|
770 |
+
with gr.Accordion("🔧 Advanced Settings", open=False):
|
771 |
+
max_retries = gr.Slider(
|
772 |
+
minimum=1,
|
773 |
+
maximum=5,
|
774 |
+
value=3,
|
775 |
+
step=1,
|
776 |
+
label="Max Retries",
|
777 |
+
info="Maximum number of retry attempts if quality threshold not met"
|
778 |
+
)
|
779 |
+
|
780 |
+
review_threshold = gr.Slider(
|
781 |
+
minimum=0.0,
|
782 |
+
maximum=1.0,
|
783 |
+
value=0.8,
|
784 |
+
step=0.1,
|
785 |
+
label="Quality Threshold",
|
786 |
+
info="Minimum quality score required for auto-approval"
|
787 |
+
)
|
788 |
+
|
789 |
# Generate button
|
790 |
generate_btn = gr.Button("🚀 Generate Marketing Image", variant="primary", size="lg")
|
791 |
|
|
|
837 |
# Event handlers
|
838 |
generate_btn.click(
|
839 |
fn=gradio_generate_marketing_image,
|
840 |
+
inputs=[prompt, style, max_retries, review_threshold, review_guidelines],
|
841 |
outputs=[image_output, review_output],
|
842 |
show_progress=True
|
843 |
)
|