Noo88ear commited on
Commit
5643ef9
·
verified ·
1 Parent(s): be366f8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -3
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-1.5-flash')
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-1.5-flash')
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
  )