add README.md

This commit is contained in:
2026-05-26 13:03:07 +00:00
parent 1a97091a03
commit 20513e54b3
+39 -14
View File
@@ -1,21 +1,46 @@
# Task 69dd4221f309a98be0006b2e
# Парсер заданий: сырой текст -> TaskCard
## Задача
## Описание
Инструмент для преобразования неформального описания учебного задания в структурированную карточку TaskCard.
Разработать модуль, который принимает неформальное описание задания и преобразует его в
структурированный объект с полями: `title`, `subject`, `deadline_hint`, `deliverable_type`, `grading_hints`.
## Как использовать
## Структура TaskCard
| Поле | Тип | Описание |
|------|-----|----------|
| title | str | Краткое название |
| subject | str | Тема/предмет |
| deadline | str? | Срок сдачи |
| deliverable | str | Что сдавать |
| requirements | list[str] | Требования |
| difficulty | str | Сложность |
| grading_criteria | str? | Критерии оценки |
| tags | list[str] | Теги |
## Установка
```bash
python main.py "Сдайте к пятнице мини-отчёт по LangChain: 2 страницы, упор на агентов. Оценка: за полноту и за пример кода."
pip install -r requirements.txt
```
## Требования
- Python 3.10+
- `langchain-core`, `langchain-openai`, `pydantic`, `python-dotenv`
## Использование
```bash
python main.py
```
## Структура репозитория
- `main.py` основной скрипт
- `requirements.txt` зависимости
- `README.md` данное описание
Или программно:
```python
from parser import TaskParser
parser = TaskParser()
card = parser.parse("Напишите отчёт по LangChain до пятницы, 5 страниц")
print(card.to_markdown())
```
## Пример вывода
```markdown
## Отчёт по LangChain
**Предмет:** LangChain / Python
**Дедлайн:** пятница
**Сдать:** отчёт (5 страниц)
**Требования:**
- Объём 5 страниц
**Сложность:** средне
**Теги:** langchain, отчёт, python
```