Архив рубрики ~Лента новостей~

Неизученные примеры извлечения мусора: косинус — не основа.

Неизученные примеры извлечения мусора: косинус — не основа.
Неизученные примеры извлечения мусора: косинус — не основа.

Enterprise Document Intelligence [Том 1 #7ter] – Шесть позиций в блоке определения, которые противоречат рефлексу «сначала косинус» базового алгоритма RAG.

Делить

Фото Даниэля Брзденко, через Unsplash.

Эта статья является манифестом вашего рода, дополняющим серию статей «Enterprise Document Intelligence», философия, которая изложена в книге «Amplify the Expert». В ее подробном обзоре третий (поиск)из четырехкомпонентной структуры и возникают циклы, которые обычно возникают в большинстве научных пособий. Мы не согласны почти со всеми ее аспектами. Поиск информации — это фильтрация по структурированным таблицам, а не поиск по свободному тексту. Эмбеддинги — это необязательный резервный вариант, а не основа. Якорь и контекст — это две детализации, а не одна. Каждая из этих позиций — это то, что мы можем защитить, и последствия этого можно измерить.

d361c43a03c3c9fd98ba0125249acda7
Место данной статьи в серии: выделенный кирпич 7 (извлечение) – Изображение предоставлено автором

📓 Запускаемые сопутствующие блокноты доступны на GitHub: doc-intel/notebooks-vol1.

1a1d5a6203ab4248008055342725b789
Сопутствующий репозиторий с кодом находится по адресу doc-intel/notebooks-vol1 – Изображение предоставлено автором

Наивная Исходное внимание, подтверждает эту статью.

251e57e85b73bd7dd10c11d520d73abc
Архитектурный контраст: один косинусоидальный сигнал, снятый по блокам, против трех сигналов, принятых параллельно по структурированным таблицам. – Изображение предоставлено автором.

Наивный алгоритм обработки данных разбивает документ на фрагменты, встраивает каждый фрагмент, встраивает вопрос и ранжирует по косинусу. Этот единственный сигнал непрозрачен и игнорирует структуру документа. Мы сохраняем документ в видео line_df + toc_dfи запускаем три поиска сигнала параллельно (ключевое слово в строках, рассуждения в оглавлении, встраивание по косинусу), а затем разрешаем арбитру LLM ранжировать документ один раз в конце, затем все три набора результатов.

abe17cf6d5426f59bc828118d5967138
Ключевые слова всегда выполняются, оглавление всегда обосновывает свою работу, векторные представления срабатывают только при несоответствии словарного запаса. – Изображение предоставлено автором

Ниже перечислены шесть нерассказанных уроков, содержащихся в этом кирпичике.

Урок 1 – Извлечение информации – это фильтрация, а не поиск.

После завершения синтаксического анализа поиск сводится к задаче фильтра, простой SQL, по line_df и toc_df , что является ответом на запросы к chunk-embed-cosine-top-k. Изменение просто: вопрос имеет столбцы, имеет столбцы документа, а поиск представляет собой объединение.

Поиск и фильтрация — не синонимы; эти две операции работают по-разному. Поиск оценивает каждого кандидата по непрерывной шкале сходства ( cosine , BM25 ), устанавливает пороговое значение top-k и всегда возвращает результат, даже если ответ отсутствует в документе. Фильтрация прилагает логическое условие ( line.contains("X") , toc.title в [...]), сохраните все соответствующие строки и более того, и можете вернуть только первую строку, если документ не содержит ответа. Разница, которая проявляется на примере, — это журнал аудита. Условие фильтра — это одна строка кода, которую можно проверить, и она показывает одинаковый результат в течение шести месяцев. Ранжирование поиска зависит от того, какие меры встраивания заложены в основу, и вы не можете воспроизвести это решение без повторного запуска модели.

Рассмотрим «Какое позиционное кодирование используется в статье?» в документе Внимание. Наивная RAG встраивает его, оценивает около трехсот фрагментов и возвращает пять лучших. Вместо этого процесса обработки данных фильтрует данные следующим образом: он сохраняет четыре строки line_df , содержащие "позиционное кодирование" , и один раздел toc_df, заголовок которого содержит "positional" , 3.5 Позиционное кодирование. Затем арбитр считывает оба элемента: строки в качестве якоря и раздел в качестве области сильной. Косинусный анализ не показал результата, и если бы фраза отсутствовала, фильтр бы ничего не вернулся, что является честным результатом. 2 – Якорь и контекст разделены.

Вы привязываетесь к базовой строке, в которой упоминается «премиум» (точно), но передаете весь окружающий раздел в генерации (достаточный контекст); Смешение этих двух подходов обеспечивает точность и охват всех движений. МетодTop-k заставляет вас выбирать: крошечные фрагменты утверждения контекста, значительные фрагменты обеспечения точности. Мы получаем и то, и другое, разделяя их.

В поиске информации раскрываются два разных понятия, и их легко совместить. Первое — это якорь: именно то место, где находится ответ, к которому вы обращаетесь с помощью ключевого слова. Если вы запросите сумму премии, ключевое слово premium укажет вам нужный формат, где будет указана цифра рядом со словом. Если вы запросите исключение, ключевое слово « exclusions укажет вам на нужный раздел. В обоих случаях именно ключевое слово находит ответ.

Второе рассмотрение касается контекста вокруг этого якоря: сколько текста вам на самом деле нужно прочитать, чтобы ответить. Для премиум-класса это почти ничего, стоимость находится прямо в строке. Для исключения это три страницы, потому что список проходит через них. Один и тот же якорь, но совершенно разное количество окружающего текста. Именно здесь единый алгоритм определения по k-значениям дает сбой, потому что он использует один блок увеличения для обоих случаев. Маленькие блоки идут с символом премиум-класса, но включены в список исключений. Большие блоки охватывают весь исключенный раздел, но скрывают тени со страницы премиум-класса на шумной странице. Поэтому мы разделяем эти два случая: ключевое слово указывает, где находится ответ, область действия определяет, сколько окружающего текстового объекта для генерации, поиск возвращает их вместе как типизированную пару.

→ Статья 7А: «Извлечение информации — это фильтрация, а не поиск» проводится граница между якорем и контекстом.

Урок 3 – Встраивание данных происходит в последнюю очередь, а не в первую очередь.

Ключевые слова всегда использовались (дешевый, детерминированный подход); собственное оглавление документа — первый метод определения; эмбеддинги являются необязательным заключительным сигналом, используются только в тех случаях, когда руководство не соответствует словарю. Рефлекс эпохи 2024 года начинается с эмбеддингов; мы предоставляем их для случаев, когда более простые сигналы не сработали.

Определим фактический поиск в страховой полисе: «дата придания силы?». Наивный алгоритм RAG встраивает вопрос и возвращает пять фрагментов. Конвейер обработки серии сначала выполняет поиск по ключевым словам "эффективный" и "date" , находит единственную букву, содержащую оба параметра, и останавливается на этом. Этот встраивания не всегда успешен, поскольку на простой сигнал уже дан ответ. Это выполняется всего один проход по регулярному выражению над line_df , несколько миллисекунд, вместо определения по косинусу над каждым фрагментом. Встраивания ключевых слов не найдены и не расходуются по умолчанию.

→ Статья 7B: На правильных опорных точках формируется трехсигнальный конвейер.

Урок 4 – Ключевые слова доказывают отсутствие; Векторные представления это сделать не могут.

Нулевое значение в поиске по ключевым словам означает, что ответа действительно нет; нулевое значение в сходстве эмбеддингов может заключаться в отсутствии объяснения или просто разных слов, поэтому эмбеди — это уточнение, а не критерий принятия решений. землетрясения?» в полисе, покрывающие только ущерб от наводнения. Поиск по ключевому слову "earthquake" не дает ни одного совпадения в line_df , поэтому конвейер может отправить answer_found = Falseи считаю, что это действительно так: этого слова просто нет в документе. Метод встраивания косинуса ведет себя иначе. Он все равно возвращает пять фрагментов, строк, наиболее близких по смыслу, о стихийных страданиях и наводнениях, и модель, читающая их, может убедить себя в ошибочном положительном ответе. В этом и заключается асимметрия. Ноль от ключевых слов означает реальное отсутствие; низкий показатель косинуса — незначительное расстояние. Таким образом, именно ключевые слова, а не встраивания, определяют, существует ли ответ вообще.

→ Статья 7B: Поиск правильных анкоров основной принцип «ключевые слова в свою очередь первый».

Урок 5 – Совместное появление слова превосходит BM25 в узких корпусах текстов.

BM25 ранжирует по частоте встречи терминов, но в корпоративном ответе это означает одно упоминание тем рядом с этим значением, поэтому периодичность совместного проявления и значимые регулярные выражения превосходят статистические IDF на узких корпусах. class=»wp-block-paragraph»> Возьмем, например, вопрос «какова последней франшизы?». В BM25 ранжирование происходит по частоте упоминаний слов "deductible" , поэтому раздел глоссария, повторяющий это слово дюжину раз, оказывается на первом месте, даже если в нем нет цифр. В случае совместного использования слов и чисел модель отдает предпочтение строкам, содержащим как слово «франшиза», так и число. Строка с текстом полиса, <код>«франшиза $1000»код>, занимает первое место, потому что слово и значение находятся рядом, и модель может вычислять данные напрямую. В корпусе из двадцати документов, где IDF рассматривает почти каждый термин как редкий, эта форма сигнала превосходит просто подсчет частоты.

→ Статья 7B: Подбор правильных результатов совпадения совпадений с BM25.

Урок 6 – Первый проход по содержанию магистерской работы.

Передача 20-100-строчного файла toc_df небольшие модели и запрос информации о том, какие разделы предложений по вопросу, происходит в одном кэшированном вызове и позволяет выбрать логические сочетания отдельных слов. («ранний выход» ≈ «Завершение»). Рассуждения TOC являются одним из последних внешних сигналов определения в производственной среде RAG.

Возьмем, к примеру, вопрос «Когда я смогу досрочно расторгнуть договор?». Поиск подстроки по слову "leave" ничего не нашёл в оглавлении, потому что этот раздел называется «Прекращение действия договора и аннулирование» и не содержит ни одного общего слова с вопросом. Передайте все оглавление (двадцать восемь строк) небольшим моделям в одном запросе и спросите, какие разделы точны, и она вернет «Предупреждение действия договора и аннулирование»: она воспринимает «досрочное расторжение договора» и «прекращение действия договора» как одну и ту же идею. Вызов кэшируется, поэтому результат один раз и остается определённым после этого, и он сохраняет раздел, поиск которого по ключевым словам просто пропустил.

→ Статья 7B обосновывает положения TOC, статья 7C: магистр права в качестве арбитра включает арбитр.

Все шесть уроков включают один принцип: отказ от рефлекса «фрагмент-встраивание-косинус» и продолжение определения как фильтрацию по структурированным таблицам. Ключевые слова всегда выполняются, поскольку они доказывают отсутствие; оглавление является первым сигналом, поскольку документ уже определил вашу структуру; встраивания — это необязательное уточнение, а не основа. Подробные уроки (7A, 7B, 7C, 7bis) содержат исполняемый код на одних документах; эта статья — каталог, указывающий на них.

В разных секторах и профессиях

Один и тот же шаблон поиска по трем сигналам (ключевое слово в line_df + рассуждение в toc_df + резервное встраивание) применимо во всех областях. Словарь и глубина TOC существуют; иерархия сигналов остается неизменной. Пять секторов ниже, один шаблон определения, одна трассировка аудита на каждый вызов.

f88122c9a2266273f8a5704bae6421ee
Встраивание срабатывает только в медицинской строке, где лексика отличается от текста документа. – Изображение предоставлено автором.

Эмбеддинги происходят только в медицинской сфере, где словарь пользователя («тахикардия») отличается от словарного документа («учащенное сердцебиение»). Остальные четыре строки полностью обоснованы ключевым словом + оглавлением. Ключевые слова доказывают отсутствие (Урок 4), оглавление выявляет перефразирование (Урок 6), разделение на якорь и область обеспечивает определение точности и контекста (Урок 2) в каждой строке. Разница в реальной стоимости: четыре строки, определяемые ключевые слова, обрабатываются за миллисекунды с нулевым количеством токенов LLM; медицинская строка оплачивает один проход встраивания и один вызов арбитра.

и и дополнительную литературу

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

  • Извлечение информации — это фильтрация, а не поиск (статья 7А). Опованная статья о ментальной модели: извлечение информации как фильтрация структурированных таблиц.
  • Эмбеддинги — это не магия (статья 2). Опубликованный каталог типов ошибок при оценке сходства эмбеддингов.
  • Переранжировщики тоже не волшебные (статья 2bis). Когда кросс-кодировщик используется, а когда нет.

Кежан Ши Посмотреть все Кежан Ши

Источник: towardsdatascience.com

Оцените материал:

Поделиться
Понравилась статья? Расскажите другим
ВКонтакте
Читайте также
Новости робототехники Внедрение ИИ в розничной торговле для масштабирования персонализации и анализа потребительских предпочтений. Архив рубрики ~Коротко из Telegram~ Антропики выкатили очень интересное исследование про то, что происходит “в… Архив рубрики ~Коротко из Telegram~ Минцифры предложило массово внедрить искусственный интеллект для управления сетями связи…. Архив рубрики ~Коротко из Telegram~ ⚙️ Apple выпустила четвёртые публичные бета-версии своих систем под номером… Архив рубрики ~Коротко из Telegram~ Сбер открыл доступ к своей новой ИИ-модели GigaChat 3.5 Ultra… Архив рубрики ~Коротко из Telegram~ Нашли идеальный поисковик для ИИ-агентов — OpenSERP собирает результаты сразу… Архив рубрики ~Коротко из Telegram~ Anthropic продлила доступ к Claude Fable 5 до 12 июля… Архив рубрики ~Коротко из Telegram~ Anthropic выпустили официальную библиотеку промтов для Claude — выбираете задачу,… Архив рубрики ~Коротко из Telegram~ Muse Image от Meta умеет гуглить и писать код перед… Архив рубрики ~Коротко из Telegram~ Китай может ограничить экспорт своих передовых ИИ-моделей Власти Китая провели… Архив рубрики ~Коротко из Telegram~ Новые модели Anthropic ошибаются там, где старые справлялись Армин Ронахер,… Архив рубрики ~Коротко из Telegram~ «Сбер» показал GigaChat 3.5 Ultra — компактнее, быстрее и с… Архив рубрики ~Коротко из Telegram~ Tencent открыла Hunyuan 3 — флагманскую MoE-модель под агентов и… Архив рубрики ~Коротко из Telegram~ Вежливость к ChatGPT тоже потребляет электричество ООН посчитала, сколько энергии… Новости робототехники Внедрение ИИ в розничной торговле для масштабирования персонализации и анализа потребительских предпочтений. Архив рубрики ~Коротко из Telegram~ Антропики выкатили очень интересное исследование про то, что происходит “в… Архив рубрики ~Коротко из Telegram~ Минцифры предложило массово внедрить искусственный интеллект для управления сетями связи…. Архив рубрики ~Коротко из Telegram~ ⚙️ Apple выпустила четвёртые публичные бета-версии своих систем под номером… Архив рубрики ~Коротко из Telegram~ Сбер открыл доступ к своей новой ИИ-модели GigaChat 3.5 Ultra… Архив рубрики ~Коротко из Telegram~ Нашли идеальный поисковик для ИИ-агентов — OpenSERP собирает результаты сразу… Архив рубрики ~Коротко из Telegram~ Anthropic продлила доступ к Claude Fable 5 до 12 июля… Архив рубрики ~Коротко из Telegram~ Anthropic выпустили официальную библиотеку промтов для Claude — выбираете задачу,… Архив рубрики ~Коротко из Telegram~ Muse Image от Meta умеет гуглить и писать код перед… Архив рубрики ~Коротко из Telegram~ Китай может ограничить экспорт своих передовых ИИ-моделей Власти Китая провели… Архив рубрики ~Коротко из Telegram~ Новые модели Anthropic ошибаются там, где старые справлялись Армин Ронахер,… Архив рубрики ~Коротко из Telegram~ «Сбер» показал GigaChat 3.5 Ultra — компактнее, быстрее и с… Архив рубрики ~Коротко из Telegram~ Tencent открыла Hunyuan 3 — флагманскую MoE-модель под агентов и… Архив рубрики ~Коротко из Telegram~ Вежливость к ChatGPT тоже потребляет электричество ООН посчитала, сколько энергии…

Оставить комментарий