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

Фильтрация путей

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

Фильтрация путей работает как с сайт и R2 источников данных.

Конфигурация

Вы можете настроить фильтры путей при создании или редактировании экземпляра AI Search. В dashboard откройте Фильтры путей и добавьте правила включения или исключения. Фильтры путей можно изменить в любой момент в Настройки страницу вашего экземпляра.

При использовании REST API укажите include_items и exclude_items в source_params вашей конфигурации:

Параметр Тип Лимит Описание
include_items string[] Максимум 10 шаблонов Индексируйте только элементы, соответствующие хотя бы одному из этих шаблонов
exclude_items string[] Максимум 10 шаблонов Пропускайте элементы, соответствующие любому из этих шаблонов

Оба параметра необязательны. Если ни один из них не указан, индексируются все элементы источника данных.

Поведение фильтрации

Правила использования подстановочных знаков

Правила исключения имеют приоритет над правилами включения. Фильтрация выполняется в следующем порядке:

  1. Проверка исключения: Если элемент соответствует любому шаблону исключения, он пропускается.
  2. Проверка включения: Если заданы шаблоны включения и элемент не соответствует ни одному из них, он пропускается.
  3. Индекс: Элемент переходит к индексированию.
Сценарий Поведение
Правила не заданы Индексируются все элементы
Только exclude_items определено Индексируются все элементы, кроме тех, что соответствуют шаблонам исключений
Только include_items определено Индексируются только элементы, соответствующие хотя бы одному шаблону включения
Оба заданы Сначала проверяются шаблоны исключения, а затем оставшиеся элементы должны соответствовать шаблону включения

Синтаксис шаблонов

Шаблоны используют синтаксис подстановочных знаков с учётом регистра на основе micromatch ↗:

Подстановочный знак Значение
* Соответствует любым символам, кроме разделителей пути (/)
** Соответствует любым символам, включая разделители пути (/)

Шаблоны могут содержать:

Статус задания индексирования

Элементы, пропущенные из-за правил фильтрации, записываются в журналы заданий с указанием причины:

Их можно просмотреть на вкладке Jobs экземпляра AI Search, чтобы убедиться, что фильтры работают как ожидается.

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

Примеры

Источник данных R2

Сценарий использования Шаблон Проиндексировано Пропущено
Индексация только PDF-файлов в документах Включает: /docs/**/*.pdf /docs/guide.pdf, /docs/api/ref.pdf /docs/guide.md, /images/logo.png
Исключить временные файлы и резервные копии Исключить: **/*.tmp, **/*.bak /docs/guide.md /data/cache.tmp, /old.bak
Исключить временные папки и папки с резервными копиями Исключить: /temp/**, /backup/** /docs/guide.md /temp/file.txt, /backup/data.json
Индексация документов с исключением черновиков Включает: /docs/**, Исключить: /docs/drafts/** /docs/guide.md /docs/drafts/wip.md
Ограничьте экземпляр одним тенантом Включает: /customers/acme/** /customers/acme/report.pdf /customers/globex/report.pdf

Чтобы дать каждому тенанту изолированный экземпляр на основе одного общего бакета, см. Мультитенантность.

Источник данных «Сайт»

Сценарий использования Шаблон Проиндексировано Пропущено
Индексация только страниц блога Включает: **/blog/** example.com/blog/post, example.com/en/blog/article example.com/about
Исключить страницы администрирования Исключить: **/admin/** example.com/blog/post example.com/admin/settings
Исключить страницы входа Исключить: **/login* example.com/blog/post example.com/login, example.com/auth/login-form
Индексация документов с исключением черновиков Включает: **/docs/**, Исключить: **/docs/drafts/** example.com/docs/guide example.com/docs/drafts/wip

Формат API

При использовании API укажите шаблоны в source_params:

{
	"source_params": {
		"include_items": ["<PATTERN_1>", "<PATTERN_2>"],
		"exclude_items": ["<PATTERN_1>", "<PATTERN_2>"]
	}
}