71 lines
2.3 KiB
Markdown
71 lines
2.3 KiB
Markdown
# Deep Agent — поисковый агент с виртуальной ФС
|
|
|
|
Реализация **Deep Agent** на основе фреймворка `deepagents` (deep agents from scratch).
|
|
|
|
## Что умеет агент
|
|
|
|
| Возможность | Инструмент |
|
|
|-------------|------------|
|
|
| Поиск в интернете | `web_search` (DuckDuckGo, без API-ключа) |
|
|
| Создание файлов в виртуальной ФС | `write_file` |
|
|
| Чтение и редактирование файлов | `read_file`, `edit_file` |
|
|
| Выгрузка виртуальных файлов в реальную ФС | `export_virtual_files` |
|
|
|
|
## Архитектура
|
|
|
|
```
|
|
main.py
|
|
├── LLM: ChatOpenAI → BroJS (openai/gpt-oss-20b:free)
|
|
├── Backend: CompositeBackend
|
|
│ ├── LocalShellBackend (virtual_mode=True, root=./workspace/)
|
|
│ └── FilesystemBackend (virtual_mode=True, route=/fs/)
|
|
└── Tools: web_search, export_virtual_files
|
|
```
|
|
|
|
Агент работает в **виртуальной ФС** (`./workspace/`). По завершении инструмент `export_virtual_files` копирует все созданные файлы в реальную папку `./output/`.
|
|
|
|
## Установка
|
|
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## Переменные окружения
|
|
|
|
| Переменная | Описание |
|
|
|------------|----------|
|
|
| `JOURNAL_MCP_PAT` | Токен доступа к BroJS LLM |
|
|
|
|
Создай файл `.env`:
|
|
```
|
|
JOURNAL_MCP_PAT=jrnl_...
|
|
```
|
|
|
|
## Запуск
|
|
|
|
```bash
|
|
# Запрос по умолчанию (исследование LangGraph)
|
|
python main.py
|
|
|
|
# Свой запрос
|
|
python main.py "расскажи про LangChain агентов и сохрани в файл"
|
|
```
|
|
|
|
## Пример работы
|
|
|
|
```
|
|
Запрос: Найди информацию о LangGraph...
|
|
|
|
=== Ответ агента ===
|
|
Файл langgraph_research.md сохранён и выгружен в ./output/
|
|
|
|
=== Файлы в output/ ===
|
|
langgraph_research.md (2847 байт)
|
|
```
|
|
|
|
## Источники
|
|
|
|
- [deep-agents-from-scratch](https://github.com/langchain-ai/deep-agents-from-scratch)
|
|
- [deepagents PyPI](https://pypi.org/project/deepagents/)
|
|
- [LangChain docs](https://python.langchain.com/)
|