Garvitj commited on
Commit
3583331
·
verified ·
1 Parent(s): 77c3fb7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -30
app.py CHANGED
@@ -7,32 +7,14 @@ from PIL import Image
7
  import pytesseract as tess
8
  from sentence_transformers import SentenceTransformer, util
9
  import io
 
10
 
11
- # save_directory = "spaces/Garvitj/grader"
 
 
12
 
13
- # # Load the tokenizer from the saved directory
14
- # tokenizer = AutoTokenizer.from_pretrained(save_directory)
15
 
16
- # # Load the model from the saved directory
17
- # model = AutoModelForCausalLM.from_pretrained(
18
- # save_directory,
19
- # torch_dtype=torch.float16 if torch.cuda.is_available() else torch.float32,
20
- # device_map="auto" if torch.cuda.is_available() else None
21
- # )
22
-
23
- # # Move model to the appropriate device (CPU or CUDA)
24
- # device = "cuda" if torch.cuda.is_available() else "cpu"
25
- # model.to(device)
26
-
27
- # print(f"Model and tokenizer loaded from {save_directory}")
28
-
29
- tess.pytesseract.tesseract_cmd = r"tesseract"
30
-
31
- # Use a pipeline as a high-level helper
32
- # pipe = pipeline("text-generation", model="eachadea/vicuna-7b-1.1")
33
-
34
- # Initialize the pipeline with the Hugging Face API
35
- # pipe = pipeline("text-generation", model="eachadea/vicuna-7b-1.1", api_key="your_api_key")
36
  import requests
37
 
38
  API_URL = "https://api-inference.huggingface.co/models/openai-community/gpt2"
@@ -73,12 +55,6 @@ def get_grade(similarity_score):
73
  else:
74
  return 1
75
 
76
- def extract_text_from_image(image):
77
- # Convert PIL image to RGB format
78
- image = image.convert('RGB')
79
- # Use pytesseract to extract text from the image
80
- text = tess.image_to_string(image)
81
- return text.strip()
82
 
83
  def evaluate_answer(image):
84
  student_answer = extract_text_from_image(image)
@@ -108,7 +84,7 @@ def gradio_interface(image, prompt):
108
 
109
  interface = gr.Interface(
110
  fn=gradio_interface,
111
- inputs=gr.Image(type="pil", label="Upload your answer sheet"),
112
  outputs=[gr.Text(label="Grade"), gr.Number(label="Similarity Score (%)"), gr.Text(label="Feedback")],
113
  title="Automated Grading System",
114
  description="Upload an image of your answer sheet to get a grade from 1 to 5, similarity score, and feedback based on the model answer.",
 
7
  import pytesseract as tess
8
  from sentence_transformers import SentenceTransformer, util
9
  import io
10
+ from typing import List
11
 
12
+ def extract_text_from_image(filepath: str, languages: List[str]):
13
+ image = Image.open(filepath)
14
+ return pytesseract.image_to_string(image=image, lang=', '.join(languages))
15
 
16
+ # tess.pytesseract.tesseract_cmd = r"tesseract"
 
17
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  import requests
19
 
20
  API_URL = "https://api-inference.huggingface.co/models/openai-community/gpt2"
 
55
  else:
56
  return 1
57
 
 
 
 
 
 
 
58
 
59
  def evaluate_answer(image):
60
  student_answer = extract_text_from_image(image)
 
84
 
85
  interface = gr.Interface(
86
  fn=gradio_interface,
87
+ inputs=gr.Image(type="filepath",label="Upload your answer sheet"),
88
  outputs=[gr.Text(label="Grade"), gr.Number(label="Similarity Score (%)"), gr.Text(label="Feedback")],
89
  title="Automated Grading System",
90
  description="Upload an image of your answer sheet to get a grade from 1 to 5, similarity score, and feedback based on the model answer.",