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

Инструмент Web Fetch (web_fetch)

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

Описание

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

Аргументы

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

  • url (string, required): URL, с которого нужно получить контент. Должен быть полностью сформированным валидным URL, начинающимся с http:// или https://.
  • prompt (string, required): Prompt, описывающий, какую информацию нужно извлечь из содержимого страницы.
  • format (string, optional): Управляет только заголовком Accept, отправляемым на сервер, указывая ваши предпочтения по формату. Весь загруженный контент нормализуется в plain text для обработки LLM, независимо от указанного формата. По умолчанию используется "auto", если не задано явно.
    • "auto" (по умолчанию): Предпочитает markdown через согласование контента (Accept: text/markdown, text/html), принимает HTML в качестве fallback. Рекомендуется для большинства сценариев, так как может сократить использование токенов до 80% на серверах, поддерживающих markdown.
    • "markdown": Отправляет Accept: text/markdown. Используйте, когда вам явно нужен контент в формате markdown.
    • "html": Отправляет Accept: text/html. Используйте, когда сервер требует HTML в заголовке Accept. Контент всё равно будет преобразован в plain text для обработки LLM.
    • "text": Отправляет Accept: text/plain. Используйте, когда вам конкретно нужен контент в виде plain text.

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

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

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

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

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

web_fetch(url="https://example.com", prompt="Summarize the main points of this article")

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

web_fetch(url="https://example.com", prompt="Get the raw content", format="markdown")

Примеры использования web_fetch

Краткое содержание одной статьи:

web_fetch(url="https://example.com/news/latest", prompt="Can you summarize the main points of this article?")

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

web_fetch(url="https://arxiv.org/abs/2401.0001", prompt="What are the key findings and methodology described in this paper?")

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

web_fetch(url="https://github.com/QwenLM/Qwen/blob/main/README.md", prompt="What are the installation steps and main features?")

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

web_fetch(url="https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/", prompt="Extract the key information", format="markdown")

Важные примечания

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

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

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

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

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

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

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

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

  • Документация для разработчиков Cloudflare
  • Блог Cloudflare
  • Любой веб-сайт, использующий функцию Cloudflare “Markdown for Agents”
Last updated on