Saravutw commited on
Commit
a50cb3d
·
verified ·
1 Parent(s): 6d492cc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -19
app.py CHANGED
@@ -1,29 +1,37 @@
 
1
  import os
2
- import sys
3
 
4
- # --- สวนแก้ไขการ Import ---
5
- try:
6
- import gradio as gr
7
- except ImportError:
8
- # ถ้ายังม่มี Gradio ให้ิดต้งและ import ใหม่
9
- print("=== ไม่พบ Gradio กำลังติดตั้ง... ===")
10
- os.system('pip install gradio --upgrade')
11
- import gradio as gr
12
 
13
- print("=== กำลังเื่อมตอกับ Space ต้ (selfit-camera/omni-image-editor) ===")
14
- print("=== ระบบจะใช้ทรัพยากรจาก Space ต้นทาง ไม่ได้ใช้ GPU ของคุณ ===")
15
 
16
- # โหลด Interface จาก Space ต้นทาง
17
- # src="spaces" คือคีย์สำคัญที่บอกว่าให้ดึงหน้าเว็บมาแสดงผล ไม่ใช่โหลดโมเดลมาลงเครื่อง
18
  try:
19
- demo = gr.load(name="selfit-camera/omni-image-editor", src="spaces")
 
 
 
 
20
  except Exception as e:
21
- # เผื่อกรณใสเต็มแล้ว error ลอส่บบี้
22
- print(f"เกิดข้อผิดพลดในการโหลดแบบแรก: {e}")
23
- print("กำลังลองโหดด้วยวิธีสำ...")
24
- demo = gr.load(name="spaces/selfit-camera/omni-image-editor")
 
 
 
 
 
 
 
 
 
 
25
 
26
  # รันแอปพลิเคชัน
27
  if __name__ == "__main__":
28
- # ใน HF Space ไม่จำเป็นต้องใช้ share=True แต่ถ้าเผื่อรันใน Colab ก็ใส่ไว้ได้
29
  demo.launch()
 
1
+ import gradio as gr
2
  import os
 
3
 
4
+ # ชื Space ต้นทาง
5
+ source_space = "selfit-camera/omni-image-editor"
6
+ src_url = f"https://huggingface.co/spaces/{source_space}"
7
+
8
+ print(f"=== กำลังพยายาเชืมต่อก {source_space} ===")
 
 
 
9
 
10
+ # ดึ HF Token จาก Settings (ถ้ามี) ื่อวยใ Wake up space
11
+ hf_token = os.getenv("HF_TOKEN")
12
 
 
 
13
  try:
14
+ # วิธีที่ 1: พยายามโหลดแบบ Native API (ดีที่สุด)
15
+ # ใส่ hf_token เพื่อช่วยปลุก Space ที่หลับอยู่ได้ดีขึ้น
16
+ demo = gr.load(name=source_space, src="spaces", hf_token=hf_token)
17
+ print("=== เชื่อมต่อ API สำเร็จ! ===")
18
+
19
  except Exception as e:
20
+ # วิธที 2: ถ้า API พัง หรือ Space หลับ (เจ JSONDecodeError) -> ช้ Iframe
21
+ print(f"=== ไม่สารโหลด API ได้ ({e}) ===")
22
+ print("=== กำลังับไปใช้โห Iframe เพื่อแสงผลหนาเ็บโดรง ===")
23
+
24
+ with gr.Blocks() as demo:
25
+ gr.Markdown(f"### ⚠️ เชื่อมต่อ API โดยตรงไม่ได้ (Space ต้นทางอาจกำลังหลับ) \nระบบสลับมาใช้โหมดแสดงผลหน้าเว็บแทน คุณยังสามารถใช้งานได้ตามปกติ")
26
+ # ฝังหน้าเว็บต้นทางลงไปเลย (วิธีนี้ไม่มีวัน Error)
27
+ gr.HTML(f"""
28
+ <iframe src="{src_url}"
29
+ width="100%"
30
+ height="800px"
31
+ style="border:none;">
32
+ </iframe>
33
+ """)
34
 
35
  # รันแอปพลิเคชัน
36
  if __name__ == "__main__":
 
37
  demo.launch()