task_generator / core /base_generator.py
reginafeles's picture
Upload 40 files
d2213a5 verified
raw
history blame contribute delete
911 Bytes
"""Базовый класс для всех генераторов задач"""
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