У AI-агента одна фундаментальная проблема: он не знает ничего, чего нет в его обучающих данных. Модель может рассуждать о паттернах проектирования, но не знает, какая версия библиотеки вышла вчера. Может писать код, но не видит текущую документацию. Может генерировать ответ, но не может его проверить.
Решение — дать агенту доступ к вебу. Но прямой доступ — это парсеры, антибот-защита, JavaScript-рендеринг, куки, капчи, блокировки по IP. Для каждого сайта свой контур обхода. Для каждого изменения вёрстки — новый парсер.
Tavily закрывает этот слой одним HTTP-запросом. Вы отправляете запрос — получаете очищенный текст, готовый для передачи в языковую модель. Без парсеров, без борьбы с защитой, без поддержки инфраструктуры.
Что это
Tavily — поисковый API, созданный специально для AI-агентов. Это не поисковая система для людей и не универсальный скрейпер. Это промежуточный слой между агентом и интернетом, который берёт на себя грязную работу: находит страницы, извлекает текст, чистит от рекламы и навигации, возвращает результат в формате, удобном для языковой модели.
Платформа основана в 2024 году, штаб-квартира в Нью-Йорке. В феврале 2026 года Nebius объявила о приобретении Tavily; по данным Bloomberg, сумма сделки составила около 275 млн долларов, официально условия не раскрывались. Команда во главе с основателем и CEO Ротемом Вайсом перешла в Nebius. На уровне API смена владельца пока не отразилась: адреса методов, ключи и SDK остались прежними.
Важно: кредит — расчётная единица Tavily, не равная запросу. Стоимость вызова варьируется от 1 до нескольких сотен кредитов: зависит от выбранного метода и глубины обработки. Тысяча кредитов не означает тысячу запросов — это важно для оценки бюджета.
Зачем нужно
Представьте агентный контур, где модель должна ответить на вопрос о текущих событиях или свежей документации. Без веб-доступа агент галлюцинирует: выдаёт правдоподобные, но устаревшие или выдуманные факты. С веб-доступом через Tavily агент получает проверяемую информацию — с указанием источника, релевантности и очищенным текстом.
Пять конкретных сценариев:
- Динамический RAG. Агент ищет актуальную информацию по запросу пользователя и передаёт её в контекст модели. Не нужно заранее индексировать весь интернет — поиск происходит в момент вопроса.
- Мониторинг конкурентов. Регулярные запросы по ключевым темам с отслеживанием изменений. Tavily возвращает очищенный контент, готовый для сравнительного анализа.
- Сбор данных для исследовательского отчёта. Research берёт на себя всю цепочку: составляет поисковые запросы, отбирает источники и собирает готовый отчёт. Вам не нужно писать оркестрацию — ни цикл запросов, ни обработку ответов.
- Извлечение контента со страниц. Дайте Tavily список URL — получите чистый текст без рекламы, навигации и всплывающих окон. Полезно для подготовки обучающих материалов и датасетов.
- Обход сайтов документации. Метод Crawl проходит весь сайт и извлекает содержимое страниц. Один вызов заменяет десятки ручных запросов.
Как устроено
API состоит из пяти методов, каждый решает свою задачу. Базовый адрес — https://api.tavily.com.
Search — веб-поиск
На выходе не перечень ссылок, а готовый текст со страниц — очищенный от мусора и пригодный для скармливания модели. Глубина регулируется параметром search_depth: basic отдаёт сниппеты (быстрее, дешевле), advanced тянет полный контент. Можно ограничить выдачу списком доменов: include_domains для белого списка, exclude_domains для чёрного.
Extract — извлечение контента
Принимает список URL и возвращает читаемый текст без рекламы, JS-оверлеев и навигационного мусора. Платите только за страницы, которые реально загрузились — неудачные извлечения не тарифицируются.
Map — карта сайта
Собирает карту адресов сайта — перечень страниц, из которых можно потом выбирать для извлечения. Через параметр instructions можно задать фильтр обычным текстом: какие разделы нужны, какие пропустить. Например, «только страницы из раздела документации».
Crawl — обход сайта
Проходит сайт целиком: строит карту (Map), затем параллельно вытягивает содержимое каждой страницы (Extract). Стоимость складывается из обеих операций. Пригодится для оцифровки документации, баз знаний и структурированных порталов.
Research — исследовательский отчёт
Запускается асинхронно: вы создаёте задачу, Tavily подбирает запросы, находит источники и собирает отчёт. Модель mini работает легче и дешевле, pro уходит глубже, но стоит больше. Итоговая сумма зависит от того, сколько источников Tavily решит обработать.
Подключение
Аутентификация — через заголовок Authorization с Bearer-токеном. Выпускаются два типа ключей: Development и Production, и именно тип определяет пропускную способность в запросах в минуту.
# ключ храните в переменной окружения, а не в коде
export TAVILY_API_KEY="tvly-..."
curl -X POST https://api.tavily.com/search \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ***" \
-d '{"query": "latest AI agent frameworks", "search_depth": "basic"}'
Официальные SDK:
- Python: pip install tavily-python
- JavaScript / TypeScript: npm install @tavily/core
- Исходники, CLI и дополнительные инструменты: github.com/tavily-ai
Внимание: строка tvly-… — это прямой доступ к вашему кошельку кредитов. Если она попадёт в публичный репозиторий, лимит исчерпают за часы. Держите ключ в переменной окружения или в хранилище секретов — агент должен читать его оттуда, а не из исходника.
Проверка результата
Минимальный сценарий, который подтверждает, что ключ работает:
- Получите ключ в app.tavily.com и запишите в переменную окружения TAVILY_API_KEY.
- Выполните запрос из примера выше.
- В ответе должен прийти JSON со статусом
200и полемresults— массив найденных страниц, у каждой естьtitle,url,contentиscore. - Если приходит
401— ключ передан неверно или недействителен.429— превышен лимит запросов. - Откройте дашборд в app.tavily.com и убедитесь, что счётчик израсходованных кредитов увеличился: базовый поиск списывает 1 кредит.
До того как подключать API в рабочий контур агента, прогоните идентичный запрос в Playground — визуально сравните, как выдача реагирует на смену параметров, и зафиксируйте оптимальную комбинацию.
Когда использовать
Тарификация в кредитах и пять методов разной стоимости делают выбор нетривиальным. Ключевой вопрос: когда Tavily, а когда что-то другое?
| Задача | Что выбрать |
|---|---|
| Универсальный доступ агента к вебу: поиск, извлечение и обход в одном API | Tavily |
| Готовые исследовательские отчёты без своей оркестрации | Tavily Research или Exa Deep |
| Массовый скрейпинг сотен страниц и структурированные данные с сайтов | Специализированные скрейпинг-API |
| Минимальная задержка на большом объёме простых запросов | Проверять на своих запросах: разброс по скорости между API большой |
Публичные бенчмарки поисковых API устаревают за недели и меряют не ваши сценарии. Перед выбором прогоните 20–30 реальных запросов через два-три сервиса и сравните полноту выдачи и стоимость одного полезного ответа.
Пример
Стоимость каждого вызова
Тарификация считается в кредитах и зависит от метода и глубины обработки.
| Метод | Стоимость |
|---|---|
| Search basic | 1 кредит за запрос |
| Search advanced | 2 кредита за запрос |
| Extract basic | 1 кредит за каждые 5 успешных извлечений |
| Extract advanced | 2 кредита за каждые 5 успешных извлечений |
| Map | 1 кредит за каждые 10 страниц, с instructions — 2 кредита |
| Crawl | Стоимость карты плюс стоимость извлечения |
| Research mini | От 4 до 110 кредитов за задачу |
| Research pro | От 15 до 250 кредитов за задачу |
Пример расчёта для Crawl: обход 10 страниц с базовым извлечением стоит 1 кредит за карту и 2 кредита за извлечение, итого 3 кредита. С продвинутым извлечением те же 10 страниц обойдутся в 5 кредитов.
Совет: Research экономит оркестрацию, но его стоимость плавающая. Одна задача на модели pro в худшем случае съедает четверть месячного бесплатного лимита. Если бюджет важнее глубины, собирайте цепочку из Search и Extract вручную и считайте кредиты сами.
Тарифы
| План | Кредитов в месяц | Цена | Цена кредита |
|---|---|---|---|
| Researcher | 1 000 | Бесплатно | — |
| Project | 4 000 | 30 $ | 0,0075 $ |
| Bootstrap | 15 000 | 100 $ | 0,0067 $ |
| Startup | 38 000 | 220 $ | 0,0058 $ |
| Growth | 100 000 | 500 $ | 0,005 $ |
| Pay as you go | По расходу | 0,008 $ за кредит | 0,008 $ |
| Enterprise | По договору | По договору | По договору |
Кредиты обнуляются первого числа каждого месяца независимо от даты оплаты. Режим pay-as-you-go включается поверх плана: когда месячные кредиты заканчиваются, списание идёт по 0,008 $ за кредит вместо ошибки.
Лимиты запросов
Лимиты зависят от типа ключа, а не от тарифа.
| Что вызываем | Development | Production |
|---|---|---|
| Search, Extract, Map | 100 запросов в минуту | 1 000 запросов в минуту |
| Crawl | 100 в минуту | 100 в минуту |
| Создание задач Research | 20 в минуту | 20 в минуту |
| Endpoint расхода кредитов | 10 за 10 минут | 10 за 10 минут |
Превышение лимита возвращает 429 Too Many Requests, а в заголовке retry-after лежит число секунд, через которые можно повторить. Корректный агент не бросает запрос, а ставит его на паузу по этому значению.
Важно: production-ключ выдаётся только при активном платном плане или включённом pay-as-you-go. На бесплатном тарифе вы остаётесь в рамках 100 запросов в минуту, и это стоит учитывать до нагрузочного теста.
На что хватит 1 000 бесплатных кредитов
Бесплатный тариф включает 1 000 кредитов ежемесячно — карта не требуется. Считать нужно в кредитах, а не в запросах.
- Утренний дайджест по 5 темам с продвинутым поиском: 10 кредитов в день, около 300 в месяц.
- Еженедельный мониторинг конкурентов, 20 продвинутых запросов за проход: около 80 кредитов в месяц.
- RAG-бот на сайте с базовым поиском, 10 обращений в день: около 300 кредитов в месяц.
- Подготовка контента, 3 материала в неделю по два поиска и пять извлечений: около 40 кредитов в месяц.
- Полноценные отчёты Research: один запуск на pro может стоить до 250 кредитов, поэтому четыре тяжёлых отчёта исчерпывают месячный лимит целиком.
Для малой команды набора повседневных задач хватает — пока в контуре не появляется Research по расписанию. Как только он запускается регулярно, бесплатный лимит тает за дни, не за недели.
Совет: сохранив результаты повторяющихся запросов в кеш и обновляя их раз в сутки, вы сокращаете расход кредитов сильнее, чем любым другим способом. Второй рычаг — переход с advanced на basic там, где модель не нуждается в полном тексте, а хватает сниппетов.
Поисковый API — это одна деталь агентного контура, и цена ошибки видна не на демо, а на счёте в конце месяца. Разбор пригодится тем, кто уже собирает агента с доступом к вебу и выбирает, на чём считать бюджет.
Ограничения
Ограничения
Что учитывать
Нет данных о качестве по языкам — Если работаете не с английским, проверяйте релевантность и полноту на своих запросах.
Документация не описывает языковую модель ранжирования, а публичных бенчмарков по русскому или другим языкам нет.
Непредсказуемая стоимость Research — Модель pro стоит от 15 до 250 кредитов за задачу.
Планируйте бюджет по верхней границе, иначе один запуск может съесть четверть бесплатного лимита. Разброс зависит от сложности задачи и количества источников, которые Tavily решит собрать.
Production-ключ требует платного плана — На бесплатном тарифе лимит 100 запросов в минуту для Search, Extract и Map.
Для Crawl и Research лимит и так ниже — 100 и 20 соответственно. Для продакшн-нагрузки этого может не хватить, и переход на платный план или pay-as-you-go становится обязательным.
Кредиты не переносятся на следующий месяц — Перенос остатка в документации не описан, поэтому рассчитывать на него не стоит.
Неиспользованные кредиты сгорают, и prepaid-модель не предусматривает накопления.
Смена владельца в 2026 году — Tavily перешла к Nebius.
Условия, состав тарифов и лимиты могут измениться. Сверяйте с официальными страницами Credits & Pricing и Rate Limits перед долгими обязательствами.
Антипаттерны
Антипаттерны
Чего не делать
Не коммитьте ключ в репозиторий — Ключ tvly-… даёт доступ к балансу кредитов.
Попавший в публичный репозиторий ключ быстро найдут и исчерпают лимит. Передавайте через переменную окружения TAVILY_API_KEY или менеджер секретов, а в коде читайте из неё, а не из строкового литерала.
Не гоняйте Research по расписанию без лимитов — Одна задача pro может стоить до 250 кредитов.
Четыре запуска в день исчерпают бесплатный лимит за сутки. Если нужен регулярный research, считайте бюджет по верхней границе и переходите на платный план, либо собирайте цепочку из Search и Extract вручную.
Не используйте advanced там, где хватает basic — Продвинутый поиск стоит в два раза дороже — 2 кредита против 1.
Если для контекста модели достаточно сниппетов, basic экономит кредиты без потери качества ответа. Прогоните оба варианта в Playground и сравните выдачу.
Не игнорируйте заголовок retry-after — При 429 Too Many Requests Tavily сообщает число секунд до следующей попытки.
Агент должен повторять запрос с этой задержкой, а не сразу бросать или спамить запросами. Без обработки 429 агент будет падать при превышении лимита вместо того, чтобы дождаться окна.
Чеклист
Чеклист
Проверка перед запуском
Проверить ключ минимальным запросом — Отправьте один Search-запрос с search_depth: basic через curl или Playground.
Ожидаемый результат: JSON со статусом 200, поле results с массивом страниц. Каждая страница содержит title, url, content, score. Если приходит 401 — ключ недействителен или передан неверно.
Проверить тип ключа — Development даёт 100 запросов в минуту, Production даёт 1 000.
Production-ключ доступен только на платном плане или с pay-as-you-go. Убедитесь, что тип ключа соответствует нагрузке, которую вы планируете.
Сверить баланс кредитов — Откройте дашборд в app.tavily.com.
Бесплатный план даёт 1 000 кредитов в месяц. После тестового запроса счётчик должен увеличиться на 1. Если не изменился — запрос не дошёл или ключ не активен.
Прогнать через Playground — Перед встраиванием в агента откройте app.tavily.com/playground и выполните тот же запрос с разными параметрами.
Сравните выдачу при basic и advanced, с фильтром доменов и без. Это помогает выбрать оптимальную конфигурацию до того, как она начнёт тратить кредиты в продакшне.
Настроить обработку 429 — Агент должен читать заголовок retry-after и повторять запрос через указанное число секунд.
Без этого агент будет падать при превышении лимита вместо того, чтобы дождаться окна. Добавьте exponential backoff с потолком, чтобы не зациклиться.
Ссылки
Ссылки
- Сайт: tavily.com
- Документация: docs.tavily.com
- Документация: Кредиты и цены — docs.tavily.com/documentation/api-credits
- Документация: Лимиты запросов — docs.tavily.com/documentation/rate-limits
- Сайт: Playground — app.tavily.com/playground
- Репозиторий: github.com/tavily-ai