Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -62,14 +62,28 @@ class MarketingAnalyzer:
|
|
62 |
def _initialize_model(self, model_size: str):
|
63 |
"""Initialize Gemma model and tokenizer"""
|
64 |
try:
|
|
|
65 |
model_name = f"google/gemma-{model_size}"
|
66 |
-
self.model = AutoModelForCausalLM.from_pretrained(model_name)
|
67 |
-
self.tokenizer = AutoTokenizer.from_pretrained(model_name)
|
68 |
|
69 |
-
|
70 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
|
|
|
72 |
logger.info(f"Initialized model: {model_name}")
|
|
|
73 |
except Exception as e:
|
74 |
logger.error(f"Error initializing model: {str(e)}")
|
75 |
raise
|
@@ -198,7 +212,18 @@ class MarketingAnalyzer:
|
|
198 |
|
199 |
def create_gradio_interface():
|
200 |
"""Create Gradio interface for marketing analysis"""
|
201 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
202 |
|
203 |
def analyze(text):
|
204 |
results = analyzer.analyze_content(text)
|
|
|
62 |
def _initialize_model(self, model_size: str):
|
63 |
"""Initialize Gemma model and tokenizer"""
|
64 |
try:
|
65 |
+
import os
|
66 |
model_name = f"google/gemma-{model_size}"
|
|
|
|
|
67 |
|
68 |
+
# Access HF token from environment variable
|
69 |
+
hf_token = os.environ.get('HF_TOKEN')
|
70 |
+
if not hf_token:
|
71 |
+
logger.warning("HF_TOKEN not found in environment variables")
|
72 |
+
|
73 |
+
# Initialize model and tokenizer with token
|
74 |
+
self.model = AutoModelForCausalLM.from_pretrained(
|
75 |
+
model_name,
|
76 |
+
token=hf_token,
|
77 |
+
device_map='auto' # Automatically handle device placement
|
78 |
+
)
|
79 |
+
self.tokenizer = AutoTokenizer.from_pretrained(
|
80 |
+
model_name,
|
81 |
+
token=hf_token
|
82 |
+
)
|
83 |
|
84 |
+
self.model.eval() # Set to evaluation mode
|
85 |
logger.info(f"Initialized model: {model_name}")
|
86 |
+
|
87 |
except Exception as e:
|
88 |
logger.error(f"Error initializing model: {str(e)}")
|
89 |
raise
|
|
|
212 |
|
213 |
def create_gradio_interface():
|
214 |
"""Create Gradio interface for marketing analysis"""
|
215 |
+
try:
|
216 |
+
analyzer = MarketingAnalyzer()
|
217 |
+
except Exception as e:
|
218 |
+
logger.error(f"Failed to initialize analyzer: {str(e)}")
|
219 |
+
# Provide a more graceful fallback or error message in the interface
|
220 |
+
return gr.Interface(
|
221 |
+
fn=lambda x: "Error: Failed to initialize model. Please check authentication.",
|
222 |
+
inputs=gr.Textbox(),
|
223 |
+
outputs=gr.Textbox(),
|
224 |
+
title="Marketing Content Analyzer (Error)",
|
225 |
+
description="Failed to initialize. Please check if HF_TOKEN is properly set."
|
226 |
+
)
|
227 |
|
228 |
def analyze(text):
|
229 |
results = analyzer.analyze_content(text)
|