Spaces:
Build error
Build error
| from azure.core.credentials import AzureKeyCredential | |
| from azure.ai.formrecognizer import FormRecognizerClient, DocumentAnalysisClient | |
| import pandas as pd | |
| import numpy as np | |
| import gradio as gr | |
| from PIL import Image | |
| import os | |
| from transformers import AutoModelForQuestionAnswering, AutoTokenizer, pipeline | |
| model_name = "deepset/bert-base-uncased-squad2" | |
| # a) Get predictions | |
| nlp = pipeline('question-answering', model=model_name, tokenizer=model_name) | |
| endpoint = "https://invoice-extract.cognitiveservices.azure.com/" | |
| key = "af03126391e141d482255941fdb16b7c" | |
| # form_recognizer_client = FormRecognizerClient(endpoint=endpoint, credential=AzureKeyCredential(key)) | |
| document_analysis_client = DocumentAnalysisClient( | |
| endpoint=endpoint, credential=AzureKeyCredential(key)) | |
| def extract_check_info(img): | |
| f1 = Image.open(img) | |
| f1.save('upload.jpg',optimize=True, quality=95) | |
| os.remove(img) | |
| with open("upload.jpg", "rb") as f: | |
| poller = document_analysis_client.begin_analyze_document( | |
| "prebuilt-document", document=f) | |
| document_data = poller.result() | |
| os.remove("upload.jpg") | |
| content = document_data.content.strip() | |
| QA_input = { | |
| 'question': 'What is the IFSC code?', | |
| 'context': content} | |
| r1= nlp(QA_input) | |
| ifsc_code = r1['answer'] | |
| QA_input = { | |
| 'question': 'What is the A/C Number?', | |
| 'context': content} | |
| r2 = nlp(QA_input) | |
| ac_number = r2['answer'] | |
| QA_input = { | |
| 'question': 'What is the person name?', | |
| 'context': content} | |
| r3 = nlp(QA_input) | |
| person_name = r3['answer'] | |
| return ifsc_code, ac_number, person_name | |
| if __name__ == "__main__": | |
| iface = gr.Interface(fn=extract_check_info, | |
| inputs=[gr.inputs.Image(type='filepath', label='Input')], | |
| outputs = [gr.outputs.Textbox(type='text', label='IFSC code'), | |
| gr.outputs.Textbox(type='text', label='Account Number'), | |
| gr.outputs.Textbox(type='text', label='Signatory Name')], | |
| title="Cheque Information Extraction Demo") | |
| iface.launch() | |