RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
Рейтинг: 52.9% · 8 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
RAG достаёт нужные документы (вижу по логам что правильный чанк в топе), но финальный ответ всё равно мимо или галлюцинация. Стек: e5-large эмбеддинги, Qdrant, top-k 5, генератор Qwen 32B. Retrieval вроде работает, а ответы плохие. Получается проблема не в поиске а в генерации? как локализовать где ломается.
✔ Лучший ответ сформирован автоматически — andrei123
вот прям по шагам как я такое чиню, помогает в 90% случаев. Первое, добавь реранкер между ретривером и генератором, bge-reranker-v2-m3 хватает. Достаёшь top-20 из Qdrant, реранкер пересортировывает, в промпт кладёшь top-3. Сразу отрезается похожий по лексике но нерелевантный мусор, который bi-encoder типа e5 пропускает. Второе, проверь чанкинг. Если режешь по 512 токенов в тупую по длине, ответ н…
Re: RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
в топе это в каком месте топа? если нужный чанк на позиции 4-5 из 5, а первые три это мусор похожий по словам, то модель тонет в нерелевантном контексте и тащит ответ из мусора. Lost in the middle никто не отменял. Попробуй сначала просто посмотреть глазами что реально уходит в промпт целиком, а не верь что раз чанк присутствует то всё ок. Очень часто оказывается что в промпте 5 чанков и 4 из них шум, который уводит генератор.navspy писал(а):вижу по логам что правильный чанк в топе
Re: RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
✔ Лучший ответ — сформирован автоматически
вот прям по шагам как я такое чиню, помогает в 90% случаев. Первое, добавь реранкер между ретривером и генератором, bge-reranker-v2-m3 хватает. Достаёшь top-20 из Qdrant, реранкер пересортировывает, в промпт кладёшь top-3. Сразу отрезается похожий по лексике но нерелевантный мусор, который bi-encoder типа e5 пропускает. Второе, проверь чанкинг. Если режешь по 512 токенов в тупую по длине, ответ на вопрос может оказаться разрезанным между двумя чанками и ни один не самодостаточен. Режь по смыслу, по заголовкам или хотя бы с overlap 100-150 токенов. Третье, в системном промпте жёстко: отвечай только на основе контекста ниже, если ответа в контексте нет скажи не знаю. Без этой инструкции Qwen радостно дополняет из своих весов и ты получаешь галлюцинацию поверх правильного чанка. Четвёртое, померяй раздельно: собери 50 вопросов, для каждого руками отметь нужный чанк, посчитай recall@5 ретривера отдельно и faithfulness ответа отдельно через llm-as-judge. Пока не разделишь эти две цифры ты гадаешь вслепую. У меня после реранкера и нормального чанкинга faithfulness с 0.6 до 0.88 поднялся, ретривер при этом вообще не трогал.
- deepsamurai
- Сообщения: 15
- Зарегистрирован: 11 май 2026, 09:56
Re: RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
@автор ещё банальщина: какой context length у тебя реально в проде стоит на генераторе? Если урезал до 4к ради скорости а 5 чанков по 512 плюс промпт не влезают, то часть контекста молча обрезается и нужный чанк до модели не доходит хоть он и в логах ретривера
Re: RAG выдаёт правильные чанки но модель отвечает мимо, что не так с retrieval
реранкер не серебряная пуля. Если у тебя сам e5 на русском плохо матчит (а e5-large на специфичной доменной лексике реально слабоват), то реранкеру нечего пересортировывать, нужный чанк уже не попал в top-20. Я бы сначала проверил recall@20 голого ретривера, и если он низкий, менял бы эмбеддер на e5-mistral или bge-m3, а уже потом городил реранкер. Лечить генерацию когда болит ретривер бессмысленноandrei123 писал(а):добавь реранкер между ретривером и генератором, bge-reranker-v2-m3 хватает
Поделиться темой:
✈ Telegram
VK
- Похожие темы
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость