main
8️⃣ Самописный поисковый агент на основе Deep Agents from Scratch
Project name: deep-search-agent
Goal: Build a custom search agent that can browse the web, create virtual files in memory and finally export them to the real file system.
📖 Описание проекта
В этом репозитории реализован Deep Agent, построенный на основе библиотеки langchain и примеров из репозитория deep-agents-from-scratch.
Агент умеет:
- Выполнять поисковые запросы в интернете (через
requests+BeautifulSoup); - Создавать виртуальные файлы, хранить их в памяти (
VirtualFileSystem); - В конце работы выгружать все виртуальные файлы на диск.
Код находится в одном файле solution.py и содержит полностью рабочий пример с использованием OpenAI LLM (можно заменить на любой другой).
⚙️ Установка зависимостей
# Создайте виртуальное окружение (рекомендовано)
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
# Установите зависимости из requirements.txt
pip install -r requirements.txt
requirements.txt содержит:
langchain==0.2.0
openai==1.12.0
beautifulsoup4==4.12.3
requests==2.32.3
rich==13.7.1
Важно:
- Для работы с OpenAI понадобится переменная окружения
OPENAI_API_KEY.export OPENAI_API_KEY="sk-..."- Если вы используете другую LLM, замените импорт и конфигурацию в коде.
🚀 Запуск
python solution.py
При запуске агент:
- Спросит у пользователя цель (например: «Найти информацию о последних новостях по теме X»).
- Выполнит поиск, создаст виртуальные файлы с найденными данными.
- После завершения работы выведет список созданных файлов и их путь к выгрузке.
📄 Пример использования
$ python solution.py
Enter your goal: Find the latest news about AI breakthroughs in 2024.
[Agent] Searching for "AI breakthroughs 2024"...
[Agent] Found 3 relevant sources. Creating virtual files...
Virtual file system created:
- ai_breakthroughs_2024.html
- ai_breakthroughs_2024_summary.txt
Exporting virtual files to disk...
✅ Files exported to ./output/
Done! Check the output folder for results.
После выполнения вы увидите в каталоге ./output/ файлы:
ai_breakthroughs_2024.html # Полный HTML страницы
ai_breakthroughs_2024_summary.txt # Краткое резюме, созданное LLM
📂 Структура проекта
deep-search-agent/
├── solution.py # Основной скрипт с агентом
├── requirements.txt # Зависимости
└── README.md # Это файл
🔧 Как изменить поведение агента
- Изменить LLM – замените
OpenAI()на любой другой класс изlangchain.llms. - Добавить новые инструменты – в список
toolsдобавьте свои функции. - Настроить поиск – измените функцию
search_and_parse(url)или используйте API поисковика.
📜 Лицензия
MIT License. См. файл LICENSE.
Description
Languages
Python
100%