Вот распространенное заблуждение о RAG! Большинство людей думает, что RAG работает так: индексировать документ → извлекать тот же документ. Но индексация ≠ извлечение. То, что вы индексируете, не обязательно должно быть тем, что вы передаете LLM. Как только вы это поймете, вы сможете строить RAG-системы, которые действительно работают. Вот 4 стратегии индексации, которые отделяют хорошую RAG от отличной RAG: 1) Индексация по частям ↳ Это стандартный подход. Разделите документы на части, встраивайте их, храните в векторной базе данных и извлекайте ближайшие совпадения. ↳ Просто и эффективно, но большие или шумные части могут ухудшить вашу точность. 2) Индексация подчастей ↳ Разделите ваши части на меньшие подчасти для индексации, но извлекайте полную часть для контекста. ↳ Это мощно, когда один раздел охватывает несколько концепций. Вы получаете лучшее соответствие запросов, не теряя окружающий контекст, который нужен вашему LLM. 3) Индексация запросов ↳ Вместо индексации сырого текста генерируйте гипотетические вопросы, на которые часть может ответить. Индексируйте эти вопросы вместо этого. ↳ Запросы пользователей естественным образом лучше соответствуют вопросам, чем сырой текст документа. Это закрывает семантический разрыв между тем, что спрашивают пользователи, и тем, что вы сохранили. ...