Получение расширенной генерации выглядит тривиально: в обучающем фрагменте ваших документов вставьте их, выполните поиск по сходству, вставьте результаты в подсказку. Он запускается с первой попытки. Затем вы указываете им на настоящий корпус, задаете реальный вопрос, и он...
Получение расширенной генерации выглядит тривиально: в обучающем фрагменте ваших документов вставьте их, выполните поиск по сходству, вставьте результаты в подсказку. Он запускается с первой попытки. Потом наводишь его на настоящий корпус, задаешь реальный вопрос, и он уверенно возвращается.
мусор.
Большую часть последних двух недель я потратил на создание RAG с нуля, без каких-либо фреймворков, и, что более важно, на его измерение на каждом этапе. Не вопрос «стало ли лучше?», а золотой набор вопросов, позволяющих определить, действительно ли получен правильный ответ. Вот что ломается
почему и что фиксирует каждую вещь с цифрами.
Шаг 1. Разбейте его намеренно
Прежде чем что-либо улучшать, я построил максимально грубый RAG-текст, разделенный каждые 300 символов, встроивший, косинусный поиск и отправился на поиск ошибок в технической документации. Я нашел три различных способа его взлома, и важно правильно их назвать, потому что у каждого есть своя особенность.
другое исправление.
Сбой 1, повреждение границы фрагмента. Самый высокий результат по запросу был:
«содержит все необходимое для запуска узла, поэтому нет зависимости от внешней среды выполнения»
Он начинается в середине слова («связки») и заканчивается в середине слова («зависимости»). Разбиение на фрагменты фиксированного размера разрезает слова и предложения без учета их значения. Даже когда
