Разделы документации
Настройки индексации
Модель эмбеддингов на странице «Настройки индексации» — локальные и облачные варианты, порядок смены модели и переиндексация.
Что настраивается
Страница Админка → Настройки индексации управляет тем, как документы индексируются, преобразуются в эмбеддинги и готовятся к поиску. Настраивается здесь одно — модель эмбеддингов: какая используется и в какой момент система переключится на новую.
Остальные шаги конвейера настройки не требуют: разбиение на фрагменты и распознавание текста на сканах и изображениях работают всегда и переключателей не имеют.
Смена модели эмбеддингов требует полной переиндексации всех документов — в зависимости от объёма корпуса это часы или дни. Подробнее о том, что происходит при переиндексации, — «Потоки данных».
Модель эмбеддингов
Эмбеддинг — векторное представление текста, по которому работает семантический поиск. Charo использует выбранную модель для кодирования всех документов и запросов, поэтому модель и её параметры фиксируются для всего индекса.
Локальные модели работают на вашей инфраструктуре: содержимое документов не покидает контур. Их три:
| Модель | Размерность | Примечание |
|---|---|---|
intfloat/multilingual-e5-small | 384 | вариант по умолчанию, мультиязычная, нетребовательна к памяти |
sergeyzh/BERTA | 768 | сильнее на русском, нужно около 6 ГБ ОЗУ |
BAAI/bge-m3 | 1024 | максимальное качество, нужно около 8 ГБ ОЗУ |
Веса локальных моделей — в формате ONNX. Модельный сервер скачивает их один раз
при первом обращении с публичного зеркала (адрес переопределяется переменной
MODELS_BUCKET_URL) и дальше держит в томе; сами документы наружу не уходят.
Облачные провайдеры — их два:
| Провайдер | Модели |
|---|---|
| Yandex AI Studio | Yandex Text Embeddings 1 (размерность 256) и Yandex Text Embeddings 2 (размерность выбирается при подключении: 128, 256, 512 или 768) |
| OpenAI | text-embedding-3-large, text-embedding-3-small |
Обоим нужен API-ключ, и в обоих случаях содержимое документов уходит на API провайдера. Направление запроса (документ или поисковый запрос) Charo выбирает сам.
Своя модель — произвольная модель с ручными параметрами: имя, размерность, нормализация эмбеддингов, префиксы запроса и документа. Если модель обучена с префиксами, их отсутствие ухудшит качество.
Смена модели
При выборе новой модели Charo строит второй индекс в фоне и предлагает выбрать, когда переключиться:
| Вариант | Что происходит |
|---|---|
| Переиндексировать все и переключить | самый безопасный: прежний индекс работает, пока все коннекторы не завершат переиндексацию успешно |
| Переиндексировать активные и переключить | то же, но приостановленные и удаляемые коннекторы не ждут |
| Переключить до переиндексации | текущий индекс очищается сразу; поиск ничего не находит, пока коннекторы не пройдут переиндексацию заново |
Пока идёт переиндексация, прогресс виден на этой же странице. Переиндексацию можно отменить — вернётся предыдущая модель, а весь прогресс будет потерян; до отмены настройки извлечения менять нельзя.
Документы, загруженные через приём данных, не переиндексируются ни при одном из вариантов: после переключения они пропадают из поиска, и вернуть их можно только повторной отправкой.
Рекомендации для русскоязычного корпуса
- Начните с локальной модели по умолчанию — она мультиязычная и не требует
внешних API. Если памяти достаточно,
sergeyzh/BERTAдаёт заметный прирост на русском. - Не меняйте модель без замера: подготовьте 10–20 реальных вопросов и сравните качество ответов до и после.
- Облачные эмбеддинг-провайдеры для закрытого контура не подходят — содержимое документов уходит на внешний API (см. «Безопасность»).