Загрузка файлов
Индексация PDF, DOCX, TXT и Markdown через файловый коннектор — лимиты, извлечение текста, учёт квоты и ограничения.
Коннектор file превращает загруженные документы в записи индекса. Поддерживаются
PDF, DOCX, текст и Markdown. CSV сюда не входит — у него свой тип
коннектора.
Как это работает
- В консоли: Индекс → Коннекторы → Загрузить файлы. Для каждого файла консоль получает подписанный URL; тип и лимит размера тарифа проверяются до подписи.
- Браузер загружает файл напрямую в объектное хранилище (приватный бакет
connector-uploads). Байты файла через API не проходят. - Консоль создаёт коннектор
fileсо списком загруженных объектов. - Запуск коннектора ставит в очередь задачу
file_import. Планировщик скачивает каждый объект, сверяет сигнатуру (magic bytes) с расширением, извлекает текст и импортирует один родительский документ на файл.
Лимиты
| Лимит | Free | Pro | Enterprise |
|---|---|---|---|
| Максимальный размер файла | 10 МБ | 100 МБ | 500 МБ |
| Файлов на коннектор | 200 | 200 | 200 |
| Страниц из одного PDF | 500 | 500 | 500 |
| Время извлечения текста одного файла | 60 с | 60 с | 60 с |
| Дополнительное время на OCR одного PDF | 5 мин | 5 мин | 5 мин |
| DOCX: суммарный распакованный размер / число записей | 50 МБ / 2 000 | 50 МБ / 2 000 | 50 МБ / 2 000 |
DOCX — это zip-архив; его оглавление проверяется до распаковки, поэтому архив,
который развернулся бы больше чем в 50 МБ (или запись больше чем в 100 раз
крупнее своего сжатого размера), отправляется в dead letters как
ARCHIVE_TOO_LARGE без распаковки. Файл, не уложившийся в лимит времени, уходит в
dead letters как EXTRACT_TIMEOUT.
Размер проверяется дважды: при подписи URL и при скачивании воркером.
Квота, ошибки, хранение
- Квота считает один документ на файл, даже если длинный файл режется на чанки.
- Прогресс — в Синхронизации и в
GET /jobs/{jobId}; результат:{ loaded, indexed, failed, skipped, ocr_pages, files[] }. - Нечитаемый файл (зашифрованный PDF, битый архив, нет текста) попадает в dead letters индекса; остальные файлы импортируются.
- Загруженные объекты удаляются через 7 дней. Проиндексированные документы остаются; повторный запуск после истечения отправляет отсутствующие файлы в dead letters, а документы не удаляет.
Ограничения
- OCR включается отдельно. У сканированного PDF нет текстового слоя; без OCR он
попадает в dead letters как «нет текста». Включите OCR для индекса в
Настройки поиска → OCR (
settings.search.ocr): страницы без текстового слоя, содержащие изображение, отправляются в OCR-сервис, который вы запускаете сами (HTTP-эндпоинт или собственныйtesseract-server), не более 100 страниц на файл. Неудачный вызов OCR отправляет файл в dead letters какOCR_FAILED; файл, в котором есть и текстовые страницы, индексируется с этим текстом. Результат задачи сообщаетocr_pages. - Список файлов нельзя изменить после создания — создайте новый коннектор.
- Ошибки извлечения нельзя повторить из dead letters — загрузите исправленный файл в новый коннектор.
Фиды XML, RSS, YML и YAML
Индексация RSS/Atom, фидов Яндекс Маркета (YML) и Google Merchant, любого XML-каталога или YAML-списка записей.
Снимки индекса
Резервная копия одного индекса — документы и настройки ранжирования — в объектном хранилище, скачивание и восстановление через атомарное переключение алиаса.