Antharee commited on
Commit
2c56320
·
verified ·
1 Parent(s): 3d19969

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -22
app.py CHANGED
@@ -1,40 +1,26 @@
 
1
  import torch
2
- import gradio as gr
3
  from PIL import Image
4
- from transformers import AutoProcessor, AutoModelForVision2Seq
5
- import traceback
6
 
7
- processor = AutoProcessor.from_pretrained("scb10x/typhoon-ocr-3b")
8
  model = AutoModelForVision2Seq.from_pretrained(
9
- "scb10x/typhoon-ocr-3b",
10
  torch_dtype=torch.float16,
11
  device_map="auto"
12
  )
13
- # ❌ ห้ามใส่ model.to(device)
14
 
15
  def ocr_infer(image):
16
  try:
17
- if image is None:
18
- return "❌ Error: No image provided"
19
-
20
  image = image.convert("RGB")
21
  inputs = processor(images=image, return_tensors="pt")
22
- inputs = {k: v.to(model.device) for k, v in inputs.items()} # ✅ ใช้ model.device
23
 
24
  generated_ids = model.generate(**inputs, max_new_tokens=256)
25
  result = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
26
  return result
27
-
28
  except Exception as e:
29
- traceback.print_exc()
30
- return f"❌ Error during inference: {e}"
31
-
32
- iface = gr.Interface(
33
- fn=ocr_infer,
34
- inputs=gr.Image(type="pil"),
35
- outputs="text",
36
- title="Typhoon OCR 3B"
37
- )
38
 
39
- if __name__ == "__main__":
40
- iface.launch()
 
1
+ from transformers import AutoProcessor, AutoModelForVision2Seq
2
  import torch
 
3
  from PIL import Image
4
+ import gradio as gr
 
5
 
6
+ processor = AutoProcessor.from_pretrained("scb10x/typhoon-ocr-1b")
7
  model = AutoModelForVision2Seq.from_pretrained(
8
+ "scb10x/typhoon-ocr-1b",
9
  torch_dtype=torch.float16,
10
  device_map="auto"
11
  )
 
12
 
13
  def ocr_infer(image):
14
  try:
 
 
 
15
  image = image.convert("RGB")
16
  inputs = processor(images=image, return_tensors="pt")
17
+ inputs = {k: v.to(model.device) for k, v in inputs.items()}
18
 
19
  generated_ids = model.generate(**inputs, max_new_tokens=256)
20
  result = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
21
  return result
 
22
  except Exception as e:
23
+ return f"❌ Error: {e}"
 
 
 
 
 
 
 
 
24
 
25
+ iface = gr.Interface(fn=ocr_infer, inputs=gr.Image(type="pil"), outputs="text", title="Typhoon OCR 1B")
26
+ iface.launch()