add README.md with instructions

This commit is contained in:
2026-05-28 16:31:02 +00:00
parent 2d6aaeb5e3
commit e418e26d9c
+65 -1
View File
@@ -1,2 +1,66 @@
# task-6a1865008a94f887e50d471c
# Экзамен: Структурированный вывод (Pydantic)
## Описание
Приложение для извлечения структурированных данных из текста с использованием Pydantic и LangChain.
## Установка
```bash
pip install -r requirements.txt
```
Для работы с OpenAI установите переменную окружения:
```bash
export OPENAI_API_KEY=your_api_key
```
Для работы с Ollama убедитесь, что сервис запущен:
```bash
ollama serve
ollama pull llama3.2
```
## Запуск
```bash
# С встроенным примером (интерактивный выбор)
python main.py
# С аргументом командной строки
python main.py "Анна, 28 лет, Python-разработчик. Навыки: FastAPI, Docker."
```
## Примеры
### Информация о человеке
```
Вход: "Анна, 28 лет, Python-разработчик. Навыки: FastAPI, Docker."
{
"name": "Анна",
"age": 28,
"profession": "Python-разработчик",
"skills": ["FastAPI", "Docker"]
}
```
### Заметки о встрече
```
Вход: "Встреча 28.05.2026. Участники: Иван, Мария, Петр. Темы: план проекта, бюджет. Решения: утвердить бюджет. Следующие шаги: подготовить ТЗ."
{
"date": "28.05.2026",
"participants": ["Иван", "Мария", "Петр"],
"topics": ["план проекта", "бюджет"],
"decisions": ["утвердить бюджет"],
"next_steps": ["подготовить ТЗ"]
}
```
## Компоненты
- **PersonInfo** — модель для информации о человеке (имя, возраст, профессия, навыки)
- **MeetingNotes** — модель для заметок о встрече (дата, участники, темы, решения, следующие шаги)
- **PydanticOutputParser** — для валидации и парсинга вывода LLM
- **Маршрутизация** — автоматический выбор схемы по типу текста