ABDALLAH31 commited on
Commit
01b5648
·
verified ·
1 Parent(s): 9127116

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -3
app.py CHANGED
@@ -1,13 +1,17 @@
 
 
 
 
 
 
 
1
  def analyze_contract(file):
2
- # Hugging Face provides `file.name` (a path to the uploaded file)
3
  tmp_path = file.name
4
-
5
  text = extract_text_from_pdf(tmp_path)
6
  clauses = simple_clause_split(text)
7
  results = classify_clauses(clauses)
8
 
9
  overall_score = sum(r['risk_score'] for r in results) / len(results) if results else 0
10
-
11
  report_path = generate_pdf(results, overall_score)
12
 
13
  highlight_output = ""
@@ -25,3 +29,20 @@ def analyze_contract(file):
25
  })
26
 
27
  return f"Overall Risk Score: {overall_score:.2f}", highlight_output, report_path
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from utils import extract_text_from_pdf, simple_clause_split
3
+ from model import classify_clauses
4
+ from report import generate_pdf
5
+ from salesforce_stub import send_to_salesforce
6
+
7
+ # Initialize Gradio interface
8
  def analyze_contract(file):
 
9
  tmp_path = file.name
 
10
  text = extract_text_from_pdf(tmp_path)
11
  clauses = simple_clause_split(text)
12
  results = classify_clauses(clauses)
13
 
14
  overall_score = sum(r['risk_score'] for r in results) / len(results) if results else 0
 
15
  report_path = generate_pdf(results, overall_score)
16
 
17
  highlight_output = ""
 
29
  })
30
 
31
  return f"Overall Risk Score: {overall_score:.2f}", highlight_output, report_path
32
+
33
+ # Create Gradio Interface
34
+ iface = gr.Interface(
35
+ fn=analyze_contract,
36
+ inputs=gr.File(label="Upload Contract PDF"),
37
+ outputs=[
38
+ gr.Textbox(label="Overall Risk Score"),
39
+ gr.HTML(label="Clause Risk Highlight"),
40
+ gr.File(label="Download Risk Report (PDF)")
41
+ ],
42
+ title="📜 Contract Risk Heatmap Generator",
43
+ description="Upload a contract and get clause-level risk scores with heatmap-style highlights."
44
+ )
45
+
46
+ # Ensure the Gradio app starts properly
47
+ if __name__ == "__main__":
48
+ iface.launch()