Update README.md
This commit is contained in:
@@ -1,3 +1,53 @@
|
|||||||
# brojs-task-69a474cdc46fd26feae69896
|
# Практическое задание №3: Память и подтверждение действий
|
||||||
|
|
||||||
BroJS task solution: Практическое задание №3: Память и подтверждение действий
|
## Описание
|
||||||
|
|
||||||
|
Данное задание демонстрирует работу агента на LangGraph с включенной памятью, паузой перед вызовом инструмента и подтверждением пользователем. Агент использует OpenAI модели, библиотеку `rich` для красивого вывода и `MemorySaver` для сохранения истории.
|
||||||
|
|
||||||
|
## Установка
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Клонируйте репозиторий
|
||||||
|
git clone <repo-url>
|
||||||
|
cd <repo-dir>
|
||||||
|
|
||||||
|
# Создайте и активируйте виртуальное окружение (необязательно)
|
||||||
|
python -m venv venv
|
||||||
|
source venv/bin/activate # Windows: venv\Scripts\activate
|
||||||
|
|
||||||
|
# Установите зависимости
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# Установите переменную окружения с ключом OpenAI
|
||||||
|
export OPENAI_API_KEY=your_key_here # Windows: set OPENAI_API_KEY=your_key_here
|
||||||
|
```
|
||||||
|
|
||||||
|
## Запуск
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python agent.py
|
||||||
|
```
|
||||||
|
|
||||||
|
Вы будете видеть диалог с агентом. При каждом вызове инструмента агент попросит подтвердить действие. Нажмите `y` для выполнения или `n` для отмены.
|
||||||
|
|
||||||
|
## Пример
|
||||||
|
|
||||||
|
```
|
||||||
|
Вы: Какая погода в Казани сегодня?
|
||||||
|
|
||||||
|
--- --- ---
|
||||||
|
|
||||||
|
get_price({'city': 'Казань', 'date': 'сегодня'})
|
||||||
|
Агент хочет вызвать утилиту get_price({'city': 'Казань', 'date': 'сегодня'})
|
||||||
|
Разрешить? (Y/n): y
|
||||||
|
|
||||||
|
Казань сегодня: 25°C, облачно
|
||||||
|
```
|
||||||
|
|
||||||
|
## Технологии
|
||||||
|
- Python 3.11+
|
||||||
|
- LangGraph
|
||||||
|
- OpenAI LLM
|
||||||
|
- Rich
|
||||||
|
- MemorySaver
|
||||||
|
- LangGraph tools
|
||||||
|
|||||||
Reference in New Issue
Block a user