Раздел Service — единая точка настройки всех внешних сервисов Research Agent. Поисковые провайдеры, методы скачивания и LLM-модели подключаются здесь, в интерфейсе, а не через переменные окружения.
Категории сервисов
- Поисковые провайдеры — Serper, Keenable, Brave, Tavily (API-ключи) и SearXNG (base URL собственного экземпляра); по одному экземпляру-сервису на провайдера;
- Методы скачивания — прокси для Proxied и адрес remote-browser (Playwright) для скачивания страниц с JavaScript;
- LLM — любые OpenAI-совместимые провайдеры для извлечения данных.
Приоритеты и запасные варианты
Внутри категории сервисы упорядочиваются приоритетом: при ошибке или недоступности запрос уходит к следующему — автоматически, без вмешательства. Для извлечения данных рекомендуется дешёвая модель с низким приоритетом (номер меньше — выбирается раньше) и платная по требованию с более высоким — как запасной вариант.
Ключи через переменные окружения
Секрет в настройках сервиса можно не хранить в базе, а записать как ссылку на переменную окружения сервера: $NAME или ${NAME}. При каждом обращении продукт подставляет значение переменной — реальный ключ в базе не появляется. В интерфейсе такая ссылка показывается как есть: это указатель, а не сам ключ, поэтому маскировать её незачем.
Что это даёт: чтобы сменить ключ, не нужно править базу — достаточно поправить значение переменной в окружении и перезапустить контейнер. Если переменная не задана, продукт сообщит об этом понятной ошибкой с именем переменной (например, «ApiKey references environment variable “X” which is not set…»), а не отправит запрос без ключа.
Модели и стоимость
Для извлечения данных подходят любые OpenAI-совместимые модели. Рекомендация автора — DeepSeek-V4-Flash: исследование целиком стоит 10–30 центов; ещё дешевле обойдётся DeepSeek-V4-Flash-Mini (OpenRouter). Для более тяжёлых задач (написание отчётов, планирование) работает агент с той моделью, что настроена у него, — сервисы Research Agent касаются только извлечения.
Каждый запрос к поставщику моделей помечается строкой PastukhovResearchAgent/0.1.6 — название продукта и его версия, так что провайдеры видят, какой продукт к ним обращается.
Тестирование сервисов
Каждый сервис проверяется прямо из интерфейса — тестеры выполняют реальный запрос к провайдеру и показывают ответ. Битый ключ виден до того, как он сломает исследование. При редактировании сервиса рядом показывается индикатор «Сохранено/Изменено» — всегда видно, применились ли правки.
Статус agent API
В Settings → Agent API показано, включён ли REST-доступ для внешних агентов (сам ключ не отображается). Управляется переменной RESEARCH_AGENT_API_KEY — подробнее в разделе Интеграция с Pastukhov Agent.
Статистика
- Completions — история LLM-вызовов: токены, стоимость, скорость по каждому;
- Sessions — исследовательские сессии: поиски, скачивания и извлечения одной темы с итоговыми счётчиками.