Документация / Возможности / Поиск по документам и источники знаний
Поиск по документам и источники знаний
Для администратораДля владельца документовПри подключении автоматизации
Сотрудник задает вопрос обычными словами. Платформа находит нужные места в документах компании, а языковая модель составляет по ним ответ и указывает, на какие из найденных мест опирается. Документы, которые сотруднику видеть нельзя, в его поиске не участвуют. Эта страница о том, как документы попадают в поиск, как устроен сам поиск и как к платформе подключаются системы компании (например, 1С) и внешние перечни и реестры (например, список Банка России о нелегальных участниках финансового рынка).
Термины этой страницы:
- Автоматизация - это прикладное решение на платформе для одной работы компании (например, для ответов сотрудникам по внутренним документам). Автоматизацию собирает БизнесМатика или сама компания, и тот, кто ее собрал, называется автором автоматизации.
- Корпус - это набор документов, по которому ищет автоматизация, вместе с правилами разбора документов и правилами доступа к ним.
- Индекс - это служебная копия документов корпуса, разложенная так, чтобы поиск быстро находил нужные места.
- Фрагмент - это часть документа (например, абзац или раздел), которую поиск находит и выдает.
- Ключ доступа - это отметка на документе и его фрагментах, по которой платформа решает, каким сотрудникам разрешено находить этот документ.
- Коннектор - это отдельная программа-посредник, через которую платформа работает с одной внешней системой по протоколу MCP (Model Context Protocol, открытый протокол обмена между языковыми моделями и внешними системами).
Путь документа от источника до ответа сотруднику
Документ проходит следующие этапы:
Администратор загружает папку документов, или коннектор читает документы из системы, где они хранятся, и отслеживает изменения.
Платформа определяет формат файла по его содержимому и распознает текст на страницах, где текст хранится только картинкой (например, на сканах).
Платформа делит документ на фрагменты, и каждый фрагмент получает ключи доступа корпуса.
Сотрудник задает вопрос, и платформа ищет по смыслу и по словам одновременно. Фрагменты, закрытые для этого сотрудника, платформа убирает до того, как упорядочить найденное.
Языковая модель пишет ответ по найденным фрагментам и указывает, на какие фрагменты опирается. Название документа, страницу и раздел каждого фрагмента к ответу добавляет поиск.
4. Поиск по документам организации
Поиск по документам организации: индексация с распознаванием текста, гибридный поиск, ответы со ссылками на источники, соблюдение прав доступа внутри индекса, разбор документа в структурированные поля.
Ответ по документам компании со ссылками и с учетом прав доступа сотрудника
Индекс хранится только внутри платформы. За пределы платформы, к внешнему сервису языковых моделей, уходят только фрагменты, найденные для конкретного вопроса, и только после маскирования персональных данных. Сканы платформа распознает, поэтому поиск находит и то, что есть только в отсканированных документах. Документ из корпуса, закрытого для сотрудника, не участвует в его поиске, и сотрудник не увидит ни фрагментов такого документа, ни его названия.
Как устроен поиск по документам
Платформа разбирает файлы следующих форматов:
- Простой текст.
- PDF с текстом и сканы в PDF.
- Документы DOCX.
- Таблицы XLSX и CSV.
- Веб-страницы HTML.
- Изображения PNG, JPEG и TIFF.
Формат платформа определяет по содержимому файла, поэтому файл с неверным расширением разбирается правильно.
- Распознавание текста работает на страницах, где текст хранится только картинкой, и оценивает, насколько уверенно прочитано каждое слово. По этой уверенности автоматизации отправляют неуверенно прочитанные документы на проверку сотруднику (подробнее на странице «Готовые прикладные задачи»).
- Гибридный поиск - это одновременный поиск по смыслу и поиск по словам с учетом форм русских слов. Результаты обоих поисков платформа сводит в один список. Автор автоматизации задает, насколько сильно каждый из двух поисков влияет на место фрагмента в этом списке. Если автор автоматизации включил переранжирование, модель машинного обучения уточняет порядок найденного (подробнее на странице «Языковые модели и машинное обучение»).
- Если два найденных фрагмента получили одинаковый балл в поиске, порядок между ними задает внутренний идентификатор фрагмента. Очередность, в которой их отдала база данных, на порядок не влияет. Так упорядочены результаты каждого из двух поисков, их общий список и, если включено переранжирование, список после него. Поэтому, пока индекс не менялся, фрагменты с одинаковой оценкой не меняются местами, когда сотрудник повторяет вопрос. Идентификатор фрагмента платформа строит из идентификатора документа, содержимого документа, настроек нарезки и номера фрагмента, поэтому после правки документа порядок таких фрагментов может измениться. Это свойство выдачи поиска. Одинаковые слова в ответе языковой модели оно не обещает.
- Права доступа платформа проверяет в два слоя. Сначала на каждом поиске она проверяет, открыт ли сотруднику корпус. Затем внутри индекса она убирает фрагменты, закрытые для этого сотрудника, до того, как упорядочить найденное. Поэтому закрытый фрагмент в результаты поиска не попадает вовсе.
- Поиск выдает фрагменты вместе с названием документа, страницей и разделом, поэтому ответ может сослаться на источник. Если автор автоматизации требует ссылок, ответ без ссылок или со ссылками на документы, которых нет среди найденных, сотрудник не получает.
- При разборе документа в структурированные поля платформа раскладывает документ на части (абзацы, заголовки, таблицы, списки и пары «название и значение») и достает из него реквизиты. У каждого реквизита есть уверенность распознавания и номер страницы, а у реквизитов с контрольной суммой (например, у ИНН и СНИЛС) платформа проверяет и ее. По реквизитам автоматизация заполняет поля карточки дела (например, карточки договора).
Платформа достает из документов следующие реквизиты:
- ИНН, КПП и ОГРН.
- СНИЛС и паспорт.
- Банковский счет с БИК.
- Телефон и адрес электронной почты.
- Дату и сумму.
- Штрихкод.
Что автор автоматизации задает для поиска
Для корпуса автор автоматизации задает следующие значения:
- Как разбирать документы (профиль разбора).
- Как делить документы на фрагменты (профиль нарезки).
- Ключи доступа корпуса.
- Как часто обновлять корпус.
- Насколько сильно поиск по смыслу и поиск по словам влияют на порядок найденного.
Распознавание текста можно оставить в обычном режиме (платформа сама находит страницы, где текст хранится только картинкой), включить для всех страниц или выключить. Профили нарезки разобраны на странице «Источники данных».
Чего поиск по документам не делает
- Права доступа сотрудников к документам задаются на весь корпус сразу. Поэтому документы с разным доступом раскладывают по разным корпусам.
- Вложенные в документ архивы и объекты других программ (например, таблицу, вставленную в текстовый документ) и макросы платформа не разбирает, поэтому их содержимое в поиск не попадает. Рукописный текст платформа не распознает.
- Изменение в источнике попадает в поиск только после очередной сверки с источником (по умолчанию раз в четыре часа).
- По умолчанию платформа принимает файл до 100 МБ и до 500 страниц, и эти пределы меняются в настройках платформы.
5. Подключение источников знаний
Подключение источников знаний: файловые хранилища, системы документооборота, почта, внутренние порталы; синхронизация по расписанию с сохранением прав источника.
Платформа сама забирает документы из систем компании
Платформа сама читает документы там, где они хранятся (например, в сетевой папке или в почте), и замечает изменения, поэтому выгружать документы вручную после каждого изменения не нужно. Если очередная сверка с источником не удалась, платформа помечает ее неудачной с причиной и датой последней удачной сверки, а загруженные раньше документы остаются в поиске.
Если учетная запись подключения видит в источнике не все документы (например, у нее нет доступа к части папок), поиск сообщает сотруднику, что часть документов подключению недоступна.
Какие источники подключаются и как идет сверка
Платформа подключается к следующим источникам знаний:
- Файловые хранилища и сетевые папки.
- Почта.
- Веб-страницы.
- Яндекс Диск.
- Хранилище NextCloud на сервере компании (подробнее на странице «Источники данных»).
- Внутренний портал на Битрикс24.
- Система документооборота 1С:Документооборот.
Сверка с источником идет так:
- При первом подключении коннектор забирает документы частями, а дальше только изменения (по отметке времени изменения в источнике). Сверка с источником идет по расписанию, по умолчанию раз в четыре часа.
- Каждый источник платформа читает под отдельной учетной записью и только в тех разделах (например, папках или почтовых ящиках), которые названы в подключении.
- Если программный интерфейс системы изменился (например, после обновления системы), сверка останавливается с явной ошибкой и частично разобранные данные не загружает.
Что администратор настраивает в источниках
Новый источник знаний из числа поддержанных (например, еще одну сетевую папку или еще один почтовый ящик) администратор добавляет сам в кабинете (веб-интерфейсе платформы). Порядок добавления источника разобран на странице «Источники данных».
Чего подключение источников не делает
- Системы, с которыми работают автоматизации (например, каталог товаров или учетная система), в перечень источников знаний не входят. Их подключают сами автоматизации через коннекторы (подробнее в разделе о протоколе MCP ниже).
- Документ, удаленный из источника, остается в поиске до следующей сверки с источником.
13. Интеграции по протоколу MCP
Интеграции по протоколу MCP: коннекторы к учётным системам (1С — чтение), к нормативным источникам, файловый обмен.
Системы компании подключаются одним способом
Каждая поддержанная система подключается одинаково, через свой коннектор. У каждого коннектора есть описание его инструментов (действий в системе, например чтения остатков товара) и номер версии этого описания, поэтому автоматизация заранее знает, что коннектор умеет. Вместо настоящей системы коннектор может работать с ее заменителем (программой, которая изображает ответы системы на тестовых данных), поэтому автоматизацию можно проверить до подключения настоящей системы. Платформа обращается только к адресам, заранее названным в привязке коннектора (настройке, которая связывает коннектор с конкретной системой, подробнее ниже).
Как устроены коннекторы
- Коннектор выполняет только вызовы инструментов. Другие возможности протокола MCP в коннекторе отключены, чтобы через подключение нельзя было сделать ничего сверх заданных действий.
- Вызывает коннектор только конвейер платформы (единый порядок обработки запроса, подробнее на странице «Обработка запроса и защита данных»). В момент вызова платформа проверяет, есть ли у того, от чьего имени идет запрос, право на вызов этого инструмента. Сами системы компании подключиться к коннектору не могут.
Подключение к 1С:Предприятию 8.3 только читает данные (номенклатуру, остатки, цены, контрагентов и склады). Платформа поддерживает следующие способы обмена с 1С:
- Стандартный интерфейс OData.
- HTTP-сервисы базы 1С.
- Файловый обмен в формате CommerceML.
- Формат EnterpriseData.
При внедрении поля базы 1С сопоставляют с полями, которые ждет автоматизация, выбирая преобразования значений из закрытого списка (например, перевод даты из формата 1С в формат автоматизации), и программный код для этого не пишут. Для типовых конфигураций «Управление торговлей», «1С:ERP» и «Розница» есть готовые шаблоны сопоставления, которые сокращают эту работу.
Нормативные источники - это внешние перечни и реестры, по которым компания проверяет контрагентов и сделки (например, список Банка России о нелегальных участниках финансового рынка). Государственный реестр юридических лиц и правовая база подключаются по подписке компании.
Коннектор к нормативному источнику по расписанию проверяет, не изменился ли источник (например, не вышла ли новая редакция перечня). Если признаки изменения есть (например, новая дата публикации), коннектор скачивает перечень целиком и сравнивает его контрольную сумму с сохраненной. Многие перечни публикуются веб-страницами. Перед тем как считать контрольную сумму такой страницы, коннектор убирает с нее части, которые меняются без изменения содержания (например, счетчики посещений). Если перечень изменился, новая версия уходит в поиск. Коннекторы к нормативным источникам только читают данные.
Файловый обмен из формулировки функции 13 устроен так, что данные из 1С платформа может получать файлами в формате CommerceML, и новую версию нормативного документа коннектор тоже передает файлом в хранилище платформы, откуда документ попадает в поиск.
Что задают в привязке коннектора к учетной системе или нормативному источнику
Коннекторы к учетным системам и к нормативным источникам привязывают к системам при развертывании платформы, и меняется такая привязка только при следующем развертывании. Источники знаний из числа поддержанных (например, сетевые папки и почтовые ящики) администратор добавляет в кабинете без развертывания (подробнее выше). В привязке коннектора указаны следующие сведения:
- Описание инструментов коннектора и номер его версии.
- Режим работы (заменитель системы или настоящая система).
- Адрес системы и список адресов, к которым коннектору разрешено обращаться.
- Секретные данные для входа в систему (например, пароль).
Для 1С дополнительно задаются способ обмена, сопоставление полей и учетная запись базы 1С. Для нормативного источника задаются интервал проверки и правила, по которым со скачанной страницы убираются части, меняющиеся без изменения содержания. Данные подписки на правовую базу задаются при развертывании.
Чего интеграции по протоколу MCP не делают
- Подключение к 1С только читает данные, поэтому автоматизация не может создать или изменить документ в 1С.
- Базу 1С публикует на веб-сервере администратор компании. Без этого подключение к 1С через OData или HTTP-сервисы не заработает.
- Нормативные источники платформа проверяет только по расписанию, поэтому новая версия документа попадает в поиск при ближайшей проверке. В закрытой сети без выхода в интернет внешние нормативные источники недоступны.
- Реестр, условия которого запрещают автоматический сбор данных, платформа не подключает.
Как ИИ-агент работает с системами компании, разобрано на странице «ИИ-агент с нуля».