Skip to content

Latest commit

 

History

History
34 lines (25 loc) · 1.8 KB

File metadata and controls

34 lines (25 loc) · 1.8 KB

Решение задач

Вопрос

Каждый вопрос в тесте наследует абстрактный Question.

В нём есть поля

  • id
  • text
  • type

и абстрактные методы

  • query - сформировать промпт для нейросети
  • compose - из текстового ответа получить готовую структуру для отправки в API

А также где-то рядом должна быть функция для парсинга вопроса.

Класс вопроса должен содержать всю необходимую для решения информацию: текст, варианты ответа, айди вариантов ответа.

Решатели

Далее нам нужно для каждого объекта вопроса получать ответ - для этого нужны решатели.

Решатель предоставляет метод solve(question), в этом методе скрыта логика решения вопроса. Это может быть запрос к нейросети или поиск в локальном файле. Метод возвращает некоторый ответ, например, словарь или список.

Отправка

Далее ответы для всех вопросов задачи собираются вместе и отправляются по API на openedu.

После этого мы получаем результат - количество баллов за задачу.

После того как мы научились решать одну задачу, остаётся только научиться итерироваться по всем задачам курса