Spaces:
Sleeping
Sleeping
File size: 911 Bytes
d2213a5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | """Базовый класс для всех генераторов задач"""
from abc import ABC, abstractmethod
from typing import List, Dict, Any
from models.task import Task
class BaseTaskGenerator(ABC):
"""Абстрактный базовый класс для генераторов задач"""
def __init__(self, complexity: str = 'medium'):
self.complexity = complexity
@abstractmethod
def generate(self) -> Task:
"""
Генерация одной задачи
Возвращает:
Task: объект задачи с вопросом, ответом и решением
"""
pass
@abstractmethod
def get_type(self) -> str:
"""
Возвращает тип задачи
Возвращает:
str: идентификатор типа задачи
"""
pass |