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

Инструмент веб-загрузки (web_fetch)

В этом документе описывается инструмент web_fetch для Qwen Code.

Описание

Используйте web_fetch для получения содержимого по указанному URL и его обработки с помощью ИИ-модели. Инструмент принимает URL и подсказку (prompt) на вход, загружает содержимое URL и обрабатывает его с помощью подсказки, используя небольшую быструю модель.

Аргументы

web_fetch принимает три аргумента:

  • url (строка, обязательный): URL для загрузки содержимого. Должен быть полностью сформированным корректным URL, начинающимся с http:// или https://.
  • prompt (строка, обязательный): Подсказка, описывающая, какую информацию вы хотите извлечь из содержимого страницы.
  • format (строка, необязательный): Управляет только заголовком Accept, отправляемым серверу, указывая ваше предпочтение по содержимому. Всё загруженное содержимое нормализуется в обычный текст для обработки LLM, независимо от указанного формата. По умолчанию используется "auto", если не указано иное.
    • "auto" (по умолчанию): Предпочитает markdown через согласование содержимого (Accept: text/markdown, text/html;q=0.9, text/plain;q=0.8, */*;q=0.1), затем переключается на HTML, обычный текст или другие типы содержимого. Рекомендуется для большинства случаев, так как может снизить использование токенов до 80% для серверов, поддерживающих markdown, при этом продолжая работать с JSON-только API.
    • "markdown": Предпочитает Accept: text/markdown, */*;q=0.1. Используйте, когда вам явно нужно содержимое в формате markdown.
    • "html": Предпочитает Accept: text/html, */*;q=0.1. Используйте, когда сервер требует HTML в заголовке Accept. Содержимое всё равно преобразуется в обычный текст для обработки LLM.
    • "text": Предпочитает Accept: text/plain, */*;q=0.1. Используйте, когда вам нужно именно содержимое в виде обычного текста.

Как использовать web_fetch с Qwen Code

Чтобы использовать web_fetch с Qwen Code, укажите URL и подсказку, описывающую, что вы хотите извлечь из этого URL. Инструмент запросит подтверждение перед загрузкой URL. После подтверждения инструмент напрямую загрузит содержимое и обработает его с помощью ИИ-модели.

Инструмент автоматически:

  • Преобразует HTML в текст при необходимости
  • Обрабатывает URL-адреса blob на GitHub (преобразуя их в raw-URL)
  • Обновляет HTTP URL до HTTPS для безопасности
  • Поддерживает согласование содержимого для markdown (значительно снижает использование токенов)

Использование:

web_fetch(url="https://example.com", prompt="Обобщи основные моменты этой статьи")

С указанием формата:

web_fetch(url="https://example.com", prompt="Получить необработанное содержимое", format="markdown")

Примеры web_fetch

Обобщение одной статьи:

web_fetch(url="https://example.com/news/latest", prompt="Не могли бы вы обобщить основные моменты этой статьи?")

Извлечение конкретной информации:

web_fetch(url="https://arxiv.org/abs/2401.0001", prompt="Каковы ключевые результаты и методология, описанные в этой статье?")

Анализ документации GitHub:

web_fetch(url="https://github.com/QwenLM/Qwen/blob/main/README.md", prompt="Каковы шаги по установке и основные возможности?")

Получение содержимого в формате markdown (для серверов, поддерживающих Markdown for Agents):

web_fetch(url="https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/", prompt="Извлеки ключевую информацию", format="markdown")

Важные замечания

  • Обработка одного URL: web_fetch обрабатывает один URL за раз. Для анализа нескольких URL делайте отдельные вызовы инструмента.
  • Формат URL: Инструмент автоматически обновляет HTTP URL до HTTPS и преобразует URL blob на GitHub в raw-формат для лучшего доступа к содержимому.
  • Согласование содержимого: Инструмент поддерживает согласование содержимого “Markdown for Agents”. При использовании format="auto" (по умолчанию) он отправляет Accept: text/markdown, text/html;q=0.9, text/plain;q=0.8, */*;q=0.1, что позволяет серверам, поддерживающим markdown, возвращать его напрямую вместо HTML. Запасной вариант */* с низким приоритетом сохраняет возможность загрузки с JSON-только API и других не-текстовых конечных точек. Это может снизить использование токенов до 80%.
  • Обработка содержимого: Инструмент напрямую загружает содержимое и обрабатывает его с помощью ИИ-модели. Когда сервер возвращает HTML, он преобразует его в читаемый текстовый формат. Когда сервер возвращает markdown, обычный текст или другой запасной тип содержимого, например JSON, он использует содержимое как есть.
  • Качество вывода: Качество вывода будет зависеть от чёткости инструкций в подсказке.
  • MCP-инструменты: Если доступен предоставленный MCP инструмент веб-загрузки (начинающийся с “mcp__”), предпочтительнее использовать его, так как он может иметь меньше ограничений.

Поддержка Markdown for Agents

Инструмент web_fetch в Qwen Code реализует поддержку спецификации Cloudflare’s Markdown for Agents . Эта функция позволяет веб-сайтам предоставлять содержимое в формате markdown напрямую ИИ-агентам, значительно снижая использование токенов по сравнению с разбором HTML.

Как это работает

  1. Параметр format управляет только заголовком Accept, отправляемым серверу (он не влияет на формат вывода):
    • format="auto": отправляет Accept: text/markdown, text/html;q=0.9, text/plain;q=0.8, */*;q=0.1
    • format="markdown": отправляет Accept: text/markdown, */*;q=0.1
    • format="html": отправляет Accept: text/html, */*;q=0.1
    • format="text": отправляет Accept: text/plain, */*;q=0.1
  2. Если сервер поддерживает markdown, он возвращает Content-Type: text/markdown
  3. Инструмент использует содержимое markdown или обычного текста напрямую без преобразования
  4. Если сервер возвращает HTML, он преобразуется в читаемый текстовый формат для обработки LLM; markdown, обычный текст и запасные типы содержимого, такие как JSON, используются как есть
  5. Всё содержимое нормализуется в текст перед обработкой ИИ-моделью

Преимущества

  • Эффективность токенов: Markdown-контент обычно использует на 80% меньше токенов по сравнению с эквивалентным HTML
  • Лучшая структура: Markdown сохраняет семантическую структуру (заголовки, списки и т.д.)
  • Обратная совместимость: Работает со всеми веб-сайтами, улучшенный опыт для поддерживающих серверов

Примеры серверов, поддерживающих markdown

  • Cloudflare Developer Documentation
  • Cloudflare Blog
  • Любой веб-сайт, использующий функцию Cloudflare “Markdown for Agents”
Last updated on