Arif571 commited on
Commit
3540623
·
verified ·
1 Parent(s): 52545e8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -10
app.py CHANGED
@@ -5,20 +5,36 @@ import re
5
  from huggingface_hub import InferenceClient
6
 
7
  # ======================================================
8
- # SETUP AMAN (MENGAMBIL DARI SETTINGS)
 
 
 
9
  # ======================================================
10
- # Kita mengambil token dari "Secrets" yang baru Anda buat
11
- # Jadi tidak ada kode rahasia yang terlihat di sini.
12
- hf_token = os.getenv("HF_TOKEN")
13
 
14
- # Inisialisasi Model Qwen 2.5 (72B)
15
- client = InferenceClient("Qwen/Qwen2.5-72B-Instruct", token=hf_token)
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
  def engineer_mode(deskripsi_user):
 
 
 
 
18
  if not deskripsi_user:
19
  return "⚠️ Mohon isi deskripsi mesin dulu.", None
20
 
21
- # Prompt Insinyur
22
  prompt_system = """
23
  PERAN: Senior Industrial Automation Engineer (20+ Tahun).
24
  TUGAS: Terjemahkan ide user menjadi Dokumen Teknis Siap Rakit.
@@ -68,7 +84,6 @@ def engineer_mode(deskripsi_user):
68
  else:
69
  dot_code = 'digraph G { Error -> "Diagram Tidak Tergenerate"; }'
70
 
71
- # Render Gambar
72
  try:
73
  src = graphviz.Source(dot_code)
74
  output_path = src.render("diagram_output", format="png")
@@ -77,12 +92,12 @@ def engineer_mode(deskripsi_user):
77
  return response_text, None
78
 
79
  except Exception as e:
80
- return f"⚠️ ERROR TOKEN: Cek Settings > Secrets Anda.\nDetail: {str(e)}", None
81
 
82
  # Tampilan UI
83
  with gr.Blocks(theme=gr.themes.Soft()) as app:
84
  gr.Markdown("# 🏭 AI Insinyur (Secure Version)")
85
- gr.Markdown("Model: **Qwen 2.5 (72B)** | Status: **Secure Token**")
86
 
87
  with gr.Row():
88
  inp = gr.Textbox(lines=4, label="Deskripsi Mesin", placeholder="Jelaskan kebutuhan mesin Anda...")
 
5
  from huggingface_hub import InferenceClient
6
 
7
  # ======================================================
8
+ # CARA BERSIH (AMBIL DARI SETTINGS)
9
+ # ======================================================
10
+ # Kita tidak menulis token disini. Kita minta komputer
11
+ # mengambilnya dari menu Settings > Secrets.
12
  # ======================================================
 
 
 
13
 
14
+ # Mengambil token dari brankas Hugging Face
15
+ my_token = os.getenv("HF_TOKEN")
16
+
17
+ # Logika darurat jika token tidak terbaca
18
+ if my_token is None:
19
+ # Fallback manual jika user lupa setting secrets (tapi jangan tulis full di sini)
20
+ print("⚠️ WARNING: Token tidak ditemukan di Settings!")
21
+ client = None
22
+ else:
23
+ # Inisialisasi Model Qwen 2.5
24
+ try:
25
+ client = InferenceClient("Qwen/Qwen2.5-72B-Instruct", token=my_token)
26
+ except Exception as e:
27
+ print(f"Error Client: {e}")
28
+ client = None
29
 
30
  def engineer_mode(deskripsi_user):
31
+ # Cek apakah client berhasil dibuat
32
+ if client is None:
33
+ return "❌ ERROR FATAL: Token HF_TOKEN belum dipasang di menu Settings > Secrets. Mohon pasang dulu.", None
34
+
35
  if not deskripsi_user:
36
  return "⚠️ Mohon isi deskripsi mesin dulu.", None
37
 
 
38
  prompt_system = """
39
  PERAN: Senior Industrial Automation Engineer (20+ Tahun).
40
  TUGAS: Terjemahkan ide user menjadi Dokumen Teknis Siap Rakit.
 
84
  else:
85
  dot_code = 'digraph G { Error -> "Diagram Tidak Tergenerate"; }'
86
 
 
87
  try:
88
  src = graphviz.Source(dot_code)
89
  output_path = src.render("diagram_output", format="png")
 
92
  return response_text, None
93
 
94
  except Exception as e:
95
+ return f"⚠️ ERROR KONEKSI: {str(e)}\nCoba refresh Space ini.", None
96
 
97
  # Tampilan UI
98
  with gr.Blocks(theme=gr.themes.Soft()) as app:
99
  gr.Markdown("# 🏭 AI Insinyur (Secure Version)")
100
+ gr.Markdown("Model: **Qwen 2.5 (72B)** | Status: **Secrets Activated**")
101
 
102
  with gr.Row():
103
  inp = gr.Textbox(lines=4, label="Deskripsi Mesin", placeholder="Jelaskan kebutuhan mesin Anda...")