24 lines
500 B
Python
24 lines
500 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Dict, List
|
|
|
|
|
|
class IGradeService(ABC):
|
|
|
|
@abstractmethod
|
|
async def calculate_grading_summary(self, extracted_sections: List):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def _calculate_section_grade_summary(self, section):
|
|
pass
|
|
|
|
@staticmethod
|
|
@abstractmethod
|
|
def _parse_openai_response(response):
|
|
pass
|
|
|
|
@staticmethod
|
|
@abstractmethod
|
|
def _parse_bullet_points(bullet_points_str, grade):
|
|
pass
|