drkasi commited on
Commit
a5de306
·
verified ·
1 Parent(s): 0f743ef

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +3 -4
app.py CHANGED
@@ -5,7 +5,9 @@ import torch
5
 
6
  print("Loading TrOCR model...")
7
  device = "cuda" if torch.cuda.is_available() else "cpu"
8
- processor = TrOCRProcessor.from_pretrained('microsoft/trocr-base-handwritten')
 
 
9
  model = VisionEncoderDecoderModel.from_pretrained('microsoft/trocr-base-handwritten').to(device)
10
  print("Model loaded successfully!")
11
 
@@ -14,16 +16,13 @@ def predict(image):
14
  if image is None:
15
  return ""
16
 
17
- # Process the image and send it to exactly where the model is currently living
18
  pixel_values = processor(image, return_tensors="pt").pixel_values.to(model.device)
19
 
20
- # Generate the text extraction
21
  generated_ids = model.generate(pixel_values)
22
  generated_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
23
 
24
  return generated_text
25
 
26
- # The final interface
27
  demo = gr.Interface(
28
  fn=predict,
29
  inputs=gr.Image(type="pil"),
 
5
 
6
  print("Loading TrOCR model...")
7
  device = "cuda" if torch.cuda.is_available() else "cpu"
8
+
9
+ # use_fast=False completely bypasses the transformers tokenizer conversion bug!
10
+ processor = TrOCRProcessor.from_pretrained('microsoft/trocr-base-handwritten', use_fast=False)
11
  model = VisionEncoderDecoderModel.from_pretrained('microsoft/trocr-base-handwritten').to(device)
12
  print("Model loaded successfully!")
13
 
 
16
  if image is None:
17
  return ""
18
 
 
19
  pixel_values = processor(image, return_tensors="pt").pixel_values.to(model.device)
20
 
 
21
  generated_ids = model.generate(pixel_values)
22
  generated_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
23
 
24
  return generated_text
25
 
 
26
  demo = gr.Interface(
27
  fn=predict,
28
  inputs=gr.Image(type="pil"),