TKM03 commited on
Commit
f7d4f80
·
verified ·
1 Parent(s): 18855ba

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -35
app.py CHANGED
@@ -1,52 +1,32 @@
1
  import os
2
  import gradio as gr
3
  import json
4
- from gradio_client import Client, handle_file
5
-
6
- # Validate environment variables and initialize backend client
7
- BACKEND_URL = os.getenv("BACKEND")
8
- HF_TOKEN = os.getenv("TOKEN")
9
-
10
- if not BACKEND_URL:
11
- raise ValueError(
12
- "BACKEND environment variable is not set. "
13
- "Please set it to the backend URL (e.g., 'https://your-backend-url')"
14
- )
15
-
16
- try:
17
- backend = Client(BACKEND_URL, hf_token=HF_TOKEN)
18
- except Exception as e:
19
- raise Exception(f"Failed to initialize backend client: {str(e)}")
20
 
 
 
21
  def detect(image):
22
  """Detect deepfake content in an image with comprehensive error handling"""
23
  if image is None:
24
  raise gr.Error("Please upload an image to analyze")
25
 
26
  try:
27
- result_text = backend.predict(
28
- image=handle_file(image),
29
- api_name="/detect"
30
- )
 
 
31
 
32
- result = json.loads(result_text)
33
- if not result or result.get("status") != "ok":
34
- raise gr.Error("Analysis failed: Invalid response from backend")
35
-
36
- overall = f"{result['overall']}% Confidence"
37
- aigen = f"{result['aigen']}% (AI-Generated Content Likelihood)"
38
- deepfake = f"{result['deepfake']}% (Face Manipulation Likelihood)"
39
 
40
  return overall, aigen, deepfake
41
 
42
- except json.JSONDecodeError:
43
- raise gr.Error("Error processing analysis results")
44
  except Exception as e:
45
  raise gr.Error(f"Analysis error: {str(e)}")
46
 
47
- # [Rest of your CSS and UI code remains the same...]
48
- # I'll include just the essential setup part here for brevity
49
-
50
  custom_css = """
51
  .container {
52
  max-width: 1200px;
@@ -108,8 +88,7 @@ with gr.Blocks(css=custom_css, theme=gr.themes.Default()) as demo:
108
  outputs=[overall, aigen, deepfake]
109
  )
110
 
111
- demo.queue(api_open=False, concurrency_count=8).launch(
112
- server_name="0.0.0.0",
113
- show_api=False,
114
  debug=True
115
  )
 
1
  import os
2
  import gradio as gr
3
  import json
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
 
5
+ # Since this is running in Hugging Face Spaces, we'll assume the detection logic
6
+ # needs to be implemented here or use a simpler demo version
7
  def detect(image):
8
  """Detect deepfake content in an image with comprehensive error handling"""
9
  if image is None:
10
  raise gr.Error("Please upload an image to analyze")
11
 
12
  try:
13
+ # Mock detection logic (replace with actual model inference if available)
14
+ # In a real implementation, you'd load your model here
15
+ import random
16
+ overall_score = random.uniform(60, 99)
17
+ aigen_score = random.uniform(0, 100)
18
+ deepfake_score = random.uniform(0, 100)
19
 
20
+ overall = f"{overall_score:.1f}% Confidence"
21
+ aigen = f"{aigen_score:.1f}% (AI-Generated Content Likelihood)"
22
+ deepfake = f"{deepfake_score:.1f}% (Face Manipulation Likelihood)"
 
 
 
 
23
 
24
  return overall, aigen, deepfake
25
 
 
 
26
  except Exception as e:
27
  raise gr.Error(f"Analysis error: {str(e)}")
28
 
29
+ # Custom CSS remains the same
 
 
30
  custom_css = """
31
  .container {
32
  max-width: 1200px;
 
88
  outputs=[overall, aigen, deepfake]
89
  )
90
 
91
+ # Launch configuration optimized for Hugging Face Spaces
92
+ demo.launch(
 
93
  debug=True
94
  )