hansoneze commited on
Commit
0929775
·
1 Parent(s): 0a551d8

Switch to Gemini + update requirements

Browse files
Files changed (2) hide show
  1. app.py +7 -13
  2. requirements.txt +2 -1
app.py CHANGED
@@ -3,7 +3,7 @@ from datetime import datetime
3
  from PIL import Image
4
  import gradio as gr
5
  from rembg import remove
6
- from openai import OpenAI
7
 
8
  # ---------------------------
9
  # CONFIG
@@ -17,8 +17,9 @@ LIFETIME = 24 * 60 * 60 # 24 hours
17
  os.makedirs(UPLOAD_DIR, exist_ok=True)
18
  os.makedirs(RESULTS_DIR, exist_ok=True)
19
 
20
- # OpenAI API key (must be added in Hugging Face Secrets as OPENAI_API_KEY)
21
- client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
 
22
 
23
  # ---------------------------
24
  # HELPERS
@@ -65,7 +66,7 @@ def process_image(input_img, bg_choice):
65
  return [result_path]
66
 
67
  # ---------------------------
68
- # CAPTION GENERATOR
69
  # ---------------------------
70
  def generate_caption(prompt="Promote my product"):
71
  try:
@@ -75,15 +76,8 @@ def generate_caption(prompt="Promote my product"):
75
  "Format output clearly as:\nInstagram:\nFacebook:\nTikTok:\n"
76
  )
77
 
78
- response = client.chat.completions.create(
79
- model="gpt-3.5-turbo",
80
- messages=[{"role": "user", "content": full_prompt}],
81
- temperature=0.7,
82
- max_tokens=300
83
- )
84
-
85
- captions = response.choices[0].message.content.strip()
86
- return captions
87
 
88
  except Exception as e:
89
  return f"❌ Error generating captions: {str(e)}"
 
3
  from PIL import Image
4
  import gradio as gr
5
  from rembg import remove
6
+ import google.generativeai as genai # Gemini SDK
7
 
8
  # ---------------------------
9
  # CONFIG
 
17
  os.makedirs(UPLOAD_DIR, exist_ok=True)
18
  os.makedirs(RESULTS_DIR, exist_ok=True)
19
 
20
+ # Gemini API key (must be added in Hugging Face Secrets as GEMINI_API_KEY)
21
+ genai.configure(api_key=os.getenv("GEMINI_API_KEY"))
22
+ model = genai.GenerativeModel("gemini-1.5-flash")
23
 
24
  # ---------------------------
25
  # HELPERS
 
66
  return [result_path]
67
 
68
  # ---------------------------
69
+ # CAPTION GENERATOR (Gemini)
70
  # ---------------------------
71
  def generate_caption(prompt="Promote my product"):
72
  try:
 
76
  "Format output clearly as:\nInstagram:\nFacebook:\nTikTok:\n"
77
  )
78
 
79
+ response = model.generate_content(full_prompt)
80
+ return response.text.strip()
 
 
 
 
 
 
 
81
 
82
  except Exception as e:
83
  return f"❌ Error generating captions: {str(e)}"
requirements.txt CHANGED
@@ -5,4 +5,5 @@ Pillow
5
  rembg
6
  onnxruntime
7
  requests
8
- openai
 
 
5
  rembg
6
  onnxruntime
7
  requests
8
+ google-generativeai
9
+