Большинство конвейеров RAG, на которые я смотрю, обновляются методом грубой силы: каждую ночь заново сканировать сайт документации, заново разбивать все на части, заново вставлять все, перезаписывать индекс. В конце концов, это работает, но это расточительно и скрывает три ошибки при ночной перестройке...
Большинство конвейеров RAG, на которые я смотрю, обновляются методом грубой силы: каждую ночь заново сканировать сайт документации, заново разбивать все на части, заново вставлять все, перезаписывать индекс. В конце концов, это работает, но это расточительно и скрывает три ошибки, которые никогда не исправляются при ночной перестройке.
Ниже описано, что на самом деле устарело, сколько на самом деле стоит полная перестройка (меньше, чем вы думаете при встраивании, и больше в других местах), самодельный шаблон хеширования контента, который вы можете добавить в любой парсер, и как мы справляемся с этим в MeshArc, сканере, который я создаю. Первая половина не требует никакой регистрации.
Что происходит не так, когда база знаний устаревает
Устаревший фрагмент не заявляет о себе. Он по-прежнему находится близко к запросу в векторном пространстве, поэтому поиск по-прежнему высоко ранжирует его, и модель по-прежнему уверенно его цитирует. Стоит выделить три режима отказа:
Несвежие куски. Страница изменилась; индекс сохраняет старую формулировку. Ассистент рекомендует устаревший флаг или старую цену.
Кусочки зомби. Страница была удалена, а ее векторы — нет. Ночные обновления никогда ничего не удаляют, поэтому удаленные страницы сохраняются неопределенно долго, если что-то не удаляет их намеренно.
Мерцание повторно встраивается. Баннер cookie, строка «последнее обновление 3 минуты назад» или ro.