INTEGRITY Документация

Parse types

Parse type определяет, как AI Search находит страницы для индексирования на источник данных веб-сайта. AI Search поддерживает два parse types.

Parse type Обнаружение страниц Когда использовать
sitemap (по умолчанию) Считывает XML sitemap, объявленные в robots.txt, или заданные вами адреса URL sitemap. По ссылкам не переходит. Ваш сайт публикует полный и актуальный sitemap.
discover Начинается с исходного URL-адреса и по умолчанию использует как ваши sitemap, так и ссылки, которые находит на страницах при обходе. На вашем сайте нет sitemap, либо он не охватывает все нужные страницы.

Задайте parse type в source_params.web_crawler.parse_type. Если вы его не зададите, AI Search использует sitemap.

Оба parse types требуют исходный URL на домене, подключённом к тому же аккаунту Cloudflare. См. Подключение домена если ваш домен ещё не подключён к Cloudflare.

Какой parse type использовать

Оба parse types умеют считывать ваши файлы sitemap, поэтому выбор не сводится просто к "sitemap или ссылки". discover по умолчанию имеет значение источник обнаружения all, а значит, считывает ваши файлы sitemap и переходит по ссылкам. Разница в том, насколько полно каждый из них использует sitemap.

Если ваш сайт публикует sitemap, охватывающий страницы, которые вы хотите проиндексировать, предпочтительнее использовать sitemap. Это более надёжный из двух вариантов, потому что:

Выберите discover когда sitemap отсутствует, неполный или устарел.

Sitemap

sitemap parse type используется по умолчанию. AI Search считывает XML sitemap, опубликованные на вашем сайте, чтобы определить, какие страницы индексировать, и повторно обходит страницу, когда меняется её <lastmod> дата меняется.

Как находятся страницы

При подключении домена краулер ищет sitemap вашего сайта, чтобы определить, какие страницы нужно посетить:

  1. Если вы настроите один или несколько пользовательских URL-адресов sitemap в dashboard в разделе Параметры парсера > Конкретный sitemap, AI Search сканирует только эти URL-адреса из sitemap.
  2. В противном случае краулер проверяет robots.txt для перечисленных sitemap.
  3. Если нет robots.txt найден, краулер проверяет карту сайта по адресу /sitemap.xml.
  4. Если sitemap недоступен, домен нельзя просканировать с помощью sitemap parse type. Используйте discover взамен.

Порядок индексирования

Если ваши sitemap включают <priority> атрибуты, AI Search читает все sitemap и индексирует страницы на основе значения приоритета каждой страницы, независимо от того, в каком sitemap она находится.

Если нет <priority> указан, страницы индексируются в том порядке, в котором перечислены карты сайта: либо из настроенных пользовательских URL адресов карт сайта, либо из robots.txt сверху вниз.

AI Search поддерживает .gz сжатые sitemap. Оба robots.txt и карты сайта могут использовать частичные URL-адреса.

Синхронизация и обновления

При плановой или ручной задания синхронизации, краулер проверит изменения в <lastmod> атрибут в вашем sitemap. Если он изменён на дату, которая наступает позже последней синхронизации, страница обходится заново, сохраняется её обновлённая версия, и она автоматически переиндексируется, чтобы результаты поиска всегда отражали актуальный контент.

Если <lastmod> атрибут не задан, AI Search использует <changefreq> атрибут, чтобы определить, как часто повторно обходить URL. Если не задан ни <lastmod> ни <changefreq> задан, AI Search автоматически обходит каждую ссылку раз в сутки.

Конкретный sitemap

По умолчанию AI Search сканирует все файлы sitemap, перечисленные в вашем robots.txt в том порядке, в котором они указаны (сверху вниз). Если вы не хотите, чтобы краулер индексировал всё подряд, или если ваш sitemap размещён по нестандартному пути, вы можете настроить собственные URL-адреса sitemap в панели управления, в разделе Параметры парсера > Конкретный sitemap.

Если настроены пользовательские URL-адреса sitemap, AI Search использует именно их вместо автоматического поиска sitemap из robots.txt или /sitemap.xml. Можно добавить до пяти URL sitemap.

robots.txt

Краулер AI Search использует User-Agent Cloudflare-AI-Search. Ваш robots.txt файл должен указывать на ваш sitemap и разрешать доступ краулеру:

robots.txt
User-agent: *
Allow: /

Sitemap: https://example.com/sitemap.xml

Вы можете указать несколько файлов sitemap или использовать индексный файл sitemap:

robots.txt
User-agent: *
Allow: /

Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/blog-sitemap.xml
Sitemap: https://example.com/sitemap.xml.gz

Чтобы заблокировать всех остальных краулеров и разрешить только AI Search:

robots.txt
User-agent: *
Disallow: /

User-agent: Cloudflare-AI-Search
Allow: /

Sitemap: https://example.com/sitemap.xml

Структура sitemap

Структурируйте sitemap так, чтобы предоставить AI Search данные, необходимые для эффективного сканирования:

sitemap.xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/important-page</loc>
    <lastmod>2026-01-15</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://example.com/other-page</loc>
    <lastmod>2026-01-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
</urlset>

Используйте эти атрибуты, чтобы управлять поведением обхода:

Attribute Назначение Рекомендация
<loc> URL страницы Обязательно. Используйте полные или частичные URL-адреса.
<lastmod> Дата последнего изменения Добавьте это, чтобы включить отслеживание изменений. AI Search повторно сканирует страницы при изменении этой даты.
<changefreq> Ожидаемая частота изменений Используйте, когда <lastmod> недоступно. Значения: always, hourly, daily, weekly, monthly, yearly, never.
<priority> Относительная важность (0.0-1.0) Задавайте более высокие значения для важных страниц. AI Search индексирует страницы в порядке приоритета.

Вы также можете использовать Sitemap Index, чтобы объединить sitemap других доменов:

sitemap-index.xml
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://www.example.com/sitemap-blog.xml</loc>
    <lastmod>2024-08-15T10:00:00+00:00</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://www.example.com/sitemap-docs.xml</loc>
    <lastmod>2024-08-10T12:00:00+00:00</lastmod>
  </sitemap>
</sitemapindex>

При разборе Sitemap Index AI Search собирает все дочерние sitemap и рекурсивно обходит их, собирая все релевантные URL-адреса из ваших sitemap.

Рекомендации по sitemap

Discover

discover parse type делегирует обнаружение страниц Browser Run /crawl конечная точка. AI Search запускает задание обхода по вашему исходному URL-адресу и сохраняет каждую полученную страницу в встроенное хранилище.

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

Поскольку discover не зависит от sitemap и находит страницы, которые sitemap упускает.

Как работает обнаружение страниц

  1. AI Search запускает задание сканирования с исходного URL.
  2. Краулер собирает URL-кандидаты из sitemap, ссылок на просканированных страницах или из обоих источников, в зависимости от источника обнаружения.
  3. Краулер переходит по ссылкам до настроенной глубины и останавливается по достижении лимита страниц.
  4. Каждая полученная страница сохраняется во встроенном хранилище, преобразуется в Markdown, разбивается на чанки и индексируется.

Краулер идентифицирует себя как Cloudflare-AI-Search на доменах в вашем аккаунте Cloudflare. Если вы включите внешние ссылки или поддомены и обход достигает домена за пределами вашего аккаунта, он идентифицирует себя как Cloudflare-AI-Search-External. Страницы, которые robots.txt запреты фиксируются с помощью blocked_by_robots_txt код ошибки индексации вместо индексации.

Настройка в панели управления

  1. На панели управления Cloudflare перейдите к разделу AI Search страницу.

    Перейдите в AI Search ↗
  2. Выберите Создание, затем выберите Сайт в качестве источника данных.

  3. В разделе Цель сканирования, введите URL сайта.

  4. В разделе Parse type, выберите Discover.

  5. В разделе Параметры сканирования, измените Источник сканирования, Лимит страниц, Глубина сканирования, Максимальный возраст кэша, Включать внешние ссылки, а также Включить поддомены.

  6. Завершите процесс настройки, чтобы создать свой экземпляр.

Чтобы изменить эти параметры позже, выберите свой экземпляр и откройте Настройки вкладку и измените Параметры сканирования в разделе Параметры парсера. Сохранение изменения запускает новое задание индексирования, которое переиндексирует все элементы.

Настройка через API

Задайте parse_type к discover, затем передайте все нестандартные настройки в discover_options.

curl -X POST "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/ai-search/instances" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "my-ai-search",
    "type": "web-crawler",
    "source": "example.com",
    "source_params": {
      "web_crawler": {
        "parse_type": "discover",
        "discover_options": {
          "source": "links",
          "limit": 5000,
          "depth": 3,
          "max_age": 86400,
          "include_subdomains": true
        }
      }
    }
  }'

Параметры Discover

Следующие параметры применяются только при parse_type это discover. Все они необязательны.

Опция Тип По умолчанию Диапазон или значения Описание
source string all all, sitemaps, links Где краулер ищет потенциальные URL-адреса.
limit число 100000 от 1 до 100 000 Максимальное количество страниц для сканирования.
depth число 5 от 1 до 100 000 Максимальное количество переходов по ссылкам от исходного URL.
max_age число 86400 от 0 до 604 800 секунд Как долго краулер использует кешированное содержимое страницы, прежде чем загрузить его заново.
include_external_links boolean false true, false Переходить ли по ссылкам, ведущим на другие домены.
include_subdomains boolean false true, false Переходить ли по ссылкам, ведущим на поддомены исходного URL.

Источник для discovery

source опция определяет, откуда берутся URL адреса кандидатов:

Используйте links когда ваш sitemap отсутствует или ненадёжен. Используйте sitemaps когда вам нужно покрытие по sitemap без обхода ссылок на страницах.

Лимит страниц и глубина

limit опция ограничивает количество страниц, которые индексирует краулер, максимум до 100000. Значения выше этого максимума отклоняются при создании или обновлении экземпляра. Ваш лимит объектов экземпляра по-прежнему действует, поэтому фактическим ограничением становится меньшее из двух значений.

depth опция ограничивает, как далеко краулер уходит от исходного URL адреса. Глубина 1 обходит только страницы, на которые ведут прямые ссылки с исходного URL-адреса.

Возраст кэша

max_age опция задаёт максимальный возраст, в секундах, кешированного содержимого страницы, которое принимает краулер, прежде чем повторно загрузить страницу с вашего origin-сервера. Задайте значение 0 если нужно всегда получать данные напрямую с исходного сервера.

В панели управления Максимальный возраст кэша предлагает Без кеша, 1 час, 1 день, 3 дня, а также 7 дней.

По умолчанию краулер остаётся на хосте исходного URL. Включите include_subdomains чтобы переходить по ссылкам на поддомены, а также include_external_links чтобы переходить по ссылкам на другие домены.

Поведение синхронизации

Каждый задание синхронизации запускает новое задание сканирования. AI Search переиндексирует страницы, которые вернуло сканирование, и удаляет те, до которых больше не может достучаться.

Если сканирование не завершается или останавливается при достижении лимита страниц, AI Search сохраняет ранее проиндексированные страницы, а не удаляет те, до которых сканирование не дошло.

discover не считывает <lastmod> или <changefreq> атрибуты sitemap. Используйте max_age и таким образом определить, как часто краулер возвращается к вашему исходному серверу.

Неподдерживаемые параметры

parse_options.specific_sitemaps допустимо только тогда, когда parse_type это sitemap. Отправка его с discover возвращает ошибку валидации.

Параметры, применимые к обоим parse types

Указанные ниже настройки сайта применяются независимо от выбранного parse type:

Лимиты

A discover обход индексирует не более 100 000 страниц и переходит не более чем по 100 000 ссылок от исходного URL-адреса, заданного с помощью limit и depth.

файлов на экземпляр лимит тоже действует, поэтому итоговым ограничением становится меньшее из значений. Полный список лимитов для веб-источников данных см. в Сайт.