Skip to Content
Руководство для разработчиковИнструментыВеб-поиск

Веб-поиск

Qwen Code поддерживает веб-поиск двумя способами:

  1. Встроенный инструмент web_search — работает через серверный поиск DashScope Responses API. Включён по умолчанию при запуске для поддерживаемых конфигураций ModelStudio и OpenAI-совместимых конфигураций DashScope; дополнительная настройка провайдера или MCP не требуется.
  2. Интеграции через MCP (Model Context Protocol) — подключите любой внешний поисковый сервис (Tavily, GLM и другие). Используйте этот вариант, если ваш провайдер не может обслуживать встроенный инструмент.

Встроенный инструмент отправляет самодостаточный запрос поиска небольшой вспомогательной модели с серверными инструментами DashScope web_search (и web_extractor) и возвращает описанные результаты плюс URL-адреса источников.

Когда он включается автоматически

Если вы ничего не настраивали в tools.webSearch, инструмент регистрируется, когда модель, которую вы используете, может обслуживать поисковый запрос с теми же учётными данными:

Способ входаВстроенный поиск
Alibaba ModelStudio → Standard API Keyвключён
Alibaba ModelStudio → Token Planвключён
Alibaba ModelStudio → Coding Planвыключен — его эндпоинт не проверен для этого API
OpenAI-совместимая запись modelProviders или Custom Provider на известном хосте DashScope Responses с прямым ключомвключён
Сторонние провайдеры (OpenRouter, DeepSeek, ModelScope, …), пользовательские эндпоинты на других хостах, локальные моделивыключен

Поиск тарифицируется на тот же ключ, что и ваша основная модель. Обработка разрешений следует активному режиму одобрения и правилам; в режиме одобрения default первый поиск запрашивает подтверждение. Когда ваш провайдер не может обслуживать инструмент, он просто не появляется при запуске — без предупреждения.

Чтобы выключить:

{ "tools": { "webSearch": { "enabled": false } } }

или ENABLE_WEB_SEARCH=false. Bare mode и safe mode всегда его отключают.

Явная настройка

Укажите инструменту ModelStudio Standard/Token Plan или другую проверенную запись DashScope Responses. Это полезно, когда ваша основная модель работает на другом провайдере, а у вас есть отдельный поддерживаемый ключ DashScope. Хосты Coding Plan исключены из автоматической активации, потому что поисковые инструменты Responses там не проверены. Вы можете явно подключить их через tools.webSearch.model; если эндпоинт их не обслуживает, первый поиск выдаст ошибку. Используйте MCP-провайдер поиска, если не хотите полагаться на этот непроверенный путь.

{ "modelProviders": { "openai": [ { "id": "qwen3.8-flash", "envKey": "DASHSCOPE_API_KEY", "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1" } ] }, "tools": { "webSearch": { "enabled": true, "model": "qwen3.8-flash" } } }
НастройкаПереопределение через envНазначение
tools.webSearch.enabledENABLE_WEB_SEARCHУстановите false, чтобы выключить инструмент. Неявная активация при запуске требует, чтобы enabled, model и бэкенд только через env были не установлены. Установка true разрешает автоматическое определение только когда бэкенд только через env также не установлен; иначе требуется model.
tools.webSearch.modelWEB_SEARCH_MODELСелектор модели поиска для явного пути (modelId или authType:modelId). С WEB_SEARCH_BASE_URL — это простой id модели для этого эндпоинта; иначе он должен совпадать с объявленной записью modelProviders, совместимой с DashScope. Автоматический путь использует qwen3.8-flash.
tools.webSearch.webExtractorWEB_SEARCH_EXTRACTORПозволяет поисковому агенту открывать страницы результатов для более обоснованных ответов (по умолчанию true; тарифицируется DashScope отдельно).
tools.webSearch.timeoutMsWEB_SEARCH_TIMEOUT_MSОбщий бюджет времени на один поиск в миллисекундах (по умолчанию 120000, максимум 600000; остальные значения возвращаются к значению по умолчанию). Поиск, у которого закончилось время, возвращает полученные данные как частичный результат, если хотя бы один поисковый вызов завершился; если бюджет истекает до завершения первого поискового вызова, инструмент сообщает об ошибке таймаута, потому что наррация без выполненного поиска не является аудируемым доказательством. Исполнительный лимит на инструмент (QWEN_CODE_TOOL_EXECUTION_TIMEOUT_MS) ниже этого бюджета срабатывает первым и отбрасывает частичный результат; держите его выше timeoutMs.
tools.webSearch.maxPerSessionWEB_SEARCH_MAX_PER_SESSIONМаксимальное количество вызовов web_search за одну сессию (по умолчанию 200, максимум 10000; остальные значения возвращаются к значению по умолчанию). Счётчик общий с субагентами и сбрасывается при смене сессии (/clear, /resume, ветвление). После достижения лимита дальнейшие поиски пропускаются, и модели предлагается продолжать с тем, что уже собрано.

Конфигурация только через env (без settings.json)

Для окружений, где невозможно записать файл настроек (заблокированные контейнеры, CI только с инъекцией env), инструмент можно настроить полностью через переменные окружения — запись в modelProviders не нужна:

export ENABLE_WEB_SEARCH=true export WEB_SEARCH_MODEL=qwen3.8-flash export WEB_SEARCH_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1 export DASHSCOPE_API_KEY=sk-... # или установите WEB_SEARCH_API_KEY

WEB_SEARCH_BASE_URL дублирует baseUrl из записи modelProviders и должен быть эндпоинтом, совместимым с DashScope; когда он установлен, он имеет приоритет над разрешением через modelProviders, а WEB_SEARCH_MODEL используется как простой id модели DashScope. API-ключ читается из WEB_SEARCH_API_KEY, если установлен, иначе из DASHSCOPE_API_KEY. Неправильная конфигурация по-прежнему отображается как уведомление при запуске.

Примечания:

  • Селектор должен разрешаться в совместимую с DashScope запись modelProviders с прямым API-ключом через envKey. Ваша основная модель может быть любым провайдером — только запрос поисковой стороны требует запись DashScope. Qwen OAuth не может использоваться для инструмента.
  • Какие провайдеры могут активировать инструмент, определяется при запуске. После активации поисковый бэкенд следует за текущей выбранной моделью при следующем поиске; переключение на неподдерживаемый провайдер приводит к сбою этого вызова, а переключение из сессии, где инструмент отсутствовал, всё равно требует перезапуска для его регистрации.
  • Автоматическое определение хоста намеренно принимает только известные региональные хосты DashScope, Token Plan MaaS и внутренние хосты Alibaba. Общие шлюзы *.alicloudapi.com и DASHSCOPE_PROXY_BASE_URL исключены, потому что неизвестно, перенаправляют ли они поисковые инструменты Responses.
  • Если инструмент включён явно, но неправильно настроен, он остаётся выключенным, а уведомление при запуске объясняет, какое условие не выполнено. Автоматическая активация никогда не выдаёт уведомление.
  • Поиск тарифицируется с вашего ключа DashScope (usage.x_tools). Режим автоматического одобрения (по умолчанию) позволяет классификатору одобрять поисковые запросы без подтверждения; в режиме одобрения default инструмент запрашивает подтверждение, и одобрение с “always allow” сохраняет стандартное правило разрешения WebSearch, как и другие инструменты.
  • Клиентского белого списка моделей нет; модель, которую не обслуживает эндпоинт Responses, выдаст ошибку при первом использовании.
  • Поиск, превысивший бюджет времени, возвращает полученные данные как частичный результат, если хотя бы один поисковый вызов завершился; если бюджет истекает до завершения первого поискового вызова, инструмент сообщает об ошибке таймаута, потому что наррация без выполненного поиска не является аудируемым доказательством. Когда поисковый вызов завершился, но нарративный ответ так и не поступил, результат содержит не более 6000 символов текста страницы, прочитанного агентом, помеченных как необработанное содержимое страницы.
  • Лимит на сессию считает вызовы инструмента web_search, а не поиски, которые один вызов выполняет внутри себя, и вызов, который завершился ошибкой, всё равно считается, потому что запрос был отправлен. Пропущенный вызов — не ошибка: он сообщает модели, что бюджет исчерпан, и предлагает попросить вас увеличить tools.webSearch.maxPerSession, если дополнительные поиски действительно необходимы.

Альтернативы через MCP

Если ваш провайдер не может обслуживать встроенный инструмент, веб-поиск доступен через подключение внешнего MCP-сервера — см. сервисы ниже.

⚠️ Историческое критическое изменение: оригинальный встроенный web_search удалён

Затронутые версии: с V0.0.7+ до последнего релиза с поддержкой встроенного веб-поиска.

Оригинальный встроенный инструмент web_search (мультипровайдерный: Tavily/Google/GLM/DashScope) и его конфигурация были удалены. Встроенный инструмент, описанный выше, — это другая реализация с другой конфигурацией. Если вы использовали что-либо из перечисленного, перейдите на новый встроенный инструмент (DashScope) или на MCP:

УдаленоЧто делать
Блок webSearch в settings.jsonВместо этого настройте MCP-сервер в mcpServers (см. ниже)
advanced.tavilyApiKey в settings.jsonИспользуйте MCP-сервер Tavily
Переменная окружения TAVILY_API_KEYИспользуйте MCP-сервер Tavily
DASHSCOPE_API_KEY для веб-поискаИспользуйте встроенный инструмент web_search
GLM_API_KEY для веб-поискаИспользуйте GLM WebSearch Prime MCP
Флаги CLI --tavily-api-key / --glm-api-key / --dashscope-api-keyНастройте через mcpServers в settings.json

Примеры миграции

До (Tavily через встроенный инструмент):

{ "webSearch": { "provider": [{ "type": "tavily", "apiKey": "tvly-xxx" }], "default": "tavily" } }

После (Tavily через MCP):

{ "mcpServers": { "tavily": { "httpUrl": "https://mcp.tavily.com/mcp/?tavilyApiKey=tvly-xxx" } } }

До (DashScope через встроенный инструмент):

{ "webSearch": { "provider": [{ "type": "dashscope", "apiKey": "sk-xxx" }], "default": "dashscope" } }

После (Alibaba Cloud Bailian WebSearch через MCP):

{ "mcpServers": { "WebSearch": { "httpUrl": "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp", "headers": { "Authorization": "Bearer sk-xxx" } } } }

Поддерживаемые MCP-сервисы веб-поиска

Alibaba Cloud Bailian WebSearch

Официальный MCP-сервис веб-поиска, предоставляемый платформой Alibaba Cloud Bailian на базе DashScope. Если у вас есть ключ DashScope, предпочтите встроенный инструмент web_search выше — он использует более мощный путь поиска, чем этот MCP-сервис.

Настройка

Способ 1: команда CLI

qwen mcp add WebSearch \ -t http \ "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp" \ -H "Authorization: Bearer ${DASHSCOPE_API_KEY}"

Способ 2: settings.json

{ "mcpServers": { "WebSearch": { "httpUrl": "https://dashscope.aliyuncs.com/api/v1/mcps/WebSearch/mcp", "headers": { "Authorization": "Bearer ${DASHSCOPE_API_KEY}" } } } }

Замените ${DASHSCOPE_API_KEY} на ваш реальный API-ключ или установите его как переменную окружения, чтобы Qwen Code автоматически его подхватывал.


Tavily WebSearch

Готовый к использованию MCP-сервер с возможностями веб-поиска в реальном времени, извлечения данных, построения карт сайтов и сканирования.

  • Репозиторий: https://github.com/tavily-ai/tavily-mcp 
  • Стоимость: платная (доступен бесплатный тариф)
  • Получить API-ключ: https://app.tavily.com/home 
  • Подходит для: универсального веб-поиска с высококачественными ответами на основе AI

Доступные инструменты

  • tavily_search — Поиск в реальном времени в интернете
  • tavily_extract — Интеллектуальное извлечение данных из веб-страниц
  • tavily_map — Создание структурированной карты веб-сайта
  • tavily_crawl — Систематическое исследование веб-сайтов

Настройка

Способ 1: команда CLI (удалённый MCP)

qwen mcp add tavily \ -t http \ "https://mcp.tavily.com/mcp/?tavilyApiKey=${TAVILY_API_KEY}"

Способ 2: settings.json (удалённый MCP)

{ "mcpServers": { "tavily": { "httpUrl": "https://mcp.tavily.com/mcp/?tavilyApiKey=${TAVILY_API_KEY}" } } }

Замените ${TAVILY_API_KEY} на ваш реальный API-ключ или установите его как переменную окружения.

Способ 3: settings.json (локальный NPX)

{ "mcpServers": { "tavily-mcp": { "command": "npx", "args": ["-y", "tavily-mcp@latest"], "env": { "TAVILY_API_KEY": "your-api-key-here" } } } }

GLM WebSearch Prime (ZhipuAI)

Официальный удалённый MCP-сервис веб-поиска от ZhipuAI (智谱AI), предназначенный для пользователей GLM Coding Plan. Обеспечивает поиск в реальном времени, включая новости, котировки акций, погоду и многое другое.

Доступные инструменты

  • webSearchPrime — Веб-поиск, возвращающий заголовок страницы, URL, краткое описание, название сайта и иконку

Настройка

Способ 1: команда CLI

qwen mcp add web-search-prime \ -t http \ "https://open.bigmodel.cn/api/mcp/web_search_prime/mcp" \ -H "Authorization: Bearer ${GLM_API_KEY}"

Способ 2: settings.json

{ "mcpServers": { "web-search-prime": { "httpUrl": "https://open.bigmodel.cn/api/mcp/web_search_prime/mcp", "headers": { "Authorization": "Bearer ${GLM_API_KEY}" } } } }

Замените ${GLM_API_KEY} на ваш реальный API-ключ ZhipuAI или установите его как переменную окружения.

Last updated on