laverdes commited on
Commit
c91f43f
1 Parent(s): c3a6b55

feat: working with twin 🍩🍩s

Browse files
Files changed (1) hide show
  1. app.py +35 -10
app.py CHANGED
@@ -66,16 +66,41 @@ st.text(f'{information} mode is ON!\nTarget receipt: {receipt}\n(opening image @
66
  image = Image.open(f"./img/receipt-{receipt}.jpg")
67
  st.image(image, caption='Your target receipt')
68
 
69
- st.text(f'baking the 🍩...')
70
- processor = DonutProcessor.from_pretrained("unstructuredio/donut-base-sroie")
71
- pretrained_model = VisionEncoderDecoderModel.from_pretrained("unstructuredio/donut-base-sroie")
72
 
73
- device = "cuda" if torch.cuda.is_available() else "cpu"
74
- pretrained_model.to(device)
 
 
 
 
75
 
76
- # pretrained_model.encoder.to(torch.bfloat16)
77
- # pretrained_model.eval()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
 
79
- st.text(f'parsing receipt..')
80
- parsed_receipt_info = run_prediction(image)
81
- st.text(f'\nRaw output:\n{parsed_receipt_info}')
 
 
 
 
 
 
 
 
 
 
66
  image = Image.open(f"./img/receipt-{receipt}.jpg")
67
  st.image(image, caption='Your target receipt')
68
 
69
+ st.text(f'baking the 🍩s...')
 
 
70
 
71
+ if information == 'Receipt Summary':
72
+ processor = DonutProcessor.from_pretrained("unstructuredio/donut-base-sroie")
73
+ pretrained_model = VisionEncoderDecoderModel.from_pretrained("unstructuredio/donut-base-sroie")
74
+ task_prompt = f"<s>"
75
+ device = "cuda" if torch.cuda.is_available() else "cpu"
76
+ pretrained_model.to(device)
77
 
78
+ elif information == 'Receipt Menu Details':
79
+ processor = DonutProcessor.from_pretrained("naver-clova-ix/donut-base-finetuned-cord-v2")
80
+ pretrained_model = VisionEncoderDecoderModel.from_pretrained("naver-clova-ix/donut-base-finetuned-cord-v2")
81
+ task_prompt = f"<s_cord-v2>"
82
+ device = "cuda" if torch.cuda.is_available() else "cpu"
83
+ pretrained_model.to(device)
84
+
85
+ else:
86
+ # st.text(f'NotImplemented: soon you will be able to use it..')
87
+ processor_a = DonutProcessor.from_pretrained("unstructuredio/donut-base-sroie")
88
+ processor_b = DonutProcessor.from_pretrained("naver-clova-ix/donut-base-finetuned-cord-v2")
89
+ pretrained_model_a = VisionEncoderDecoderModel.from_pretrained("unstructuredio/donut-base-sroie")
90
+ pretrained_model_b = VisionEncoderDecoderModel.from_pretrained("naver-clova-ix/donut-base-finetuned-cord-v2")
91
+
92
+ device = "cuda" if torch.cuda.is_available() else "cpu"
93
+ pretrained_model.to(device)
94
 
95
+ if information == 'Extract all!':
96
+ st.text(f'parsing receipt (extracting all)..')
97
+ pretrained_model, processor, task_prompt = pretrained_model_a, processor_a, f"<s>"
98
+ parsed_receipt_info_a = run_prediction(image)
99
+ pretrained_model, processor, task_prompt = pretrained_model_b, processor_b, f"<s_cord-v2>"
100
+ parsed_receipt_info_b = run_prediction(image)
101
+ st.text(f'\nRaw output a:\n{parsed_receipt_info_a}')
102
+ st.text(f'\nRaw output b:\n{parsed_receipt_info_b}')
103
+ else:
104
+ st.text(f'parsing receipt..')
105
+ parsed_receipt_info = run_prediction(image)
106
+ st.text(f'\nRaw output:\n{parsed_receipt_info}')