47 lines
1.4 KiB
Markdown
47 lines
1.4 KiB
Markdown
# Парсер заданий: сырой текст -> TaskCard
|
|
|
|
## Описание
|
|
Инструмент для преобразования неформального описания учебного задания в структурированную карточку TaskCard.
|
|
|
|
## Структура TaskCard
|
|
| Поле | Тип | Описание |
|
|
|------|-----|----------|
|
|
| title | str | Краткое название |
|
|
| subject | str | Тема/предмет |
|
|
| deadline | str? | Срок сдачи |
|
|
| deliverable | str | Что сдавать |
|
|
| requirements | list[str] | Требования |
|
|
| difficulty | str | Сложность |
|
|
| grading_criteria | str? | Критерии оценки |
|
|
| tags | list[str] | Теги |
|
|
|
|
## Установка
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## Использование
|
|
```bash
|
|
python main.py
|
|
```
|
|
|
|
Или программно:
|
|
```python
|
|
from parser import TaskParser
|
|
parser = TaskParser()
|
|
card = parser.parse("Напишите отчёт по LangChain до пятницы, 5 страниц")
|
|
print(card.to_markdown())
|
|
```
|
|
|
|
## Пример вывода
|
|
```markdown
|
|
## Отчёт по LangChain
|
|
**Предмет:** LangChain / Python
|
|
**Дедлайн:** пятница
|
|
**Сдать:** отчёт (5 страниц)
|
|
**Требования:**
|
|
- Объём 5 страниц
|
|
**Сложность:** средне
|
|
**Теги:** langchain, отчёт, python
|
|
```
|