diff --git a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md b/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md deleted file mode 100644 index bb62088..0000000 --- a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md +++ /dev/null @@ -1,122 +0,0 @@ -# Практическое задание №3: Память и подтверждение действий - -## Описание проекта -В этом проекте реализован агент на базе LangGraph, который умеет: -- **Поминать** историю диалога (MemorySaver + `thread_id`); -- **Подтверждать** каждый вызов инструмента пользователем (`interrupt_before=['tools']`). - -Библиотека `rich` используется для красивого вывода в консоль. - -## Структура файлов -``` -. -├── agent.py # Создание и настройка агента -├── main.py # Точка входа: запуск диалога с пользователем -└── tools.py # Пример пользовательского инструмента -``` - -## Установка зависимостей - -```bash -# Клонируйте репозиторий (если ещё не сделали) -git clone https://github.com/your-username/your-repo.git -cd your-repo - -# Создайте виртуальное окружение (рекомендуется) -python -m venv .venv -source .venv/bin/activate # Windows: .\.venv\Scripts\activate - -# Установите зависимости -pip install -r requirements.txt -``` - -`requirements.txt` содержит: -```text -langgraph -rich -openai # или любой другой LLM, который вы используете -``` - -## Запуск проекта - -### 1. Создание агента (`agent.py`) -Файл `agent.py` экспортирует функцию `create_agent`, которая возвращает готовый агент. - -```bash -python -c "from agent import create_agent; print('Agent ready')" -``` - -> **Важно**: перед запуском убедитесь, что переменная окружения `OPENAI_API_KEY` (или аналогичная) установлена. - -### 2. Запуск диалога (`main.py`) -Файл `main.py` запускает интерактивный чат с агентом. - -```bash -python main.py -``` - -Пример работы: - -``` -> Привет, как дела? -Agent: Я в порядке, спасибо! Как я могу помочь? - -> Сколько будет 12 * 8? -[Подтверждение] Вы хотите вызвать инструмент `calculator`? (y/n): y -Agent: Результат вычисления: 96 - -> Спасибо! -``` - -### 3. Добавление новых инструментов (`tools.py`) -В файле `tools.py` определены пользовательские инструменты. -Чтобы добавить новый, создайте функцию и зарегистрируйте её в списке `TOOLS`. - -```python -def my_new_tool(arg1: str) -> str: - """Описание нового инструмента.""" - return f"Вы передали {arg1}" -``` - -## Пример использования - -```python -from agent import create_agent -from tools import TOOLS -from langgraph.checkpoint.memory import MemorySaver -from rich.console import Console - -console = Console() - -# Инициализируем память -memory = MemorySaver() - -# Создаём агента с подтверждением перед каждым инструментом -agent = create_agent( - model="gpt-4o-mini", - tools=TOOLS, - system_prompt="Вы — полезный помощник.", - checkpointer=memory, - interrupt_before=["tools"], -) - -config = {"configurable": {"thread_id": "session-1"}} - -# Запускаем диалог -response = agent.stream( - {"messages": [{"role": "user", "content": "Сколько будет 7 * 6?"}]}, - config=config, -) -for chunk in response: - console.print(chunk["output_text"], end="") -``` - -## Что дальше? -- Добавьте собственные инструменты в `tools.py`. -- Настройте более сложный `system_prompt` и правила взаимодействия. -- Используйте другие LLM (например, Anthropic) заменив `"gpt-4o-mini"` на нужную модель. - ---- - -**Автор:** [Ваше имя] -**Дата:** 2026‑05‑26 \ No newline at end of file diff --git a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/requirements.txt b/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/requirements.txt deleted file mode 100644 index 64d4bfd..0000000 --- a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -numpy -pandas \ No newline at end of file