хотел узнать какие подходы для решения уже существуют.
Есть у кого был опыт?
Для контекста, условно есть документ на n предложений (например, конституция/свод правил), и хочется, чтобы модель отвечала на вопрос по документу
Пример:
Вопрос: Я ушел из магазина не заплатив за хлеб, что будет мне за это?
Ответ: Это статья такая-то такая-то, Вам может грозить а, б, в, г итд итп
Скормите ЛЛМ сам вопрос и простыню документа, с инструкцией: смотри при ответе на вот этот фрагмент
На моем железе у меня контекст выше 512 не помещается, боюсь весь документ может не влезть. Слышал про идею, где мы конкатенируем эмбеддинг документа/его частей в инпут с промптом, и потом уже генерим на этой же основе
Эмбединги не пробовал
А какая средняя длина документов у Вас была? В токенах, если посчитать, и какой контекст влазил в Ваших экспериментах?
Могу рассказать исходят из опыта работы с эмбеддингами openai, там вроде есть какие модели получше, но не сильно 53 балла против 55. Эмбеддинги в приведенном кейсе вообще не помогут, если вы не хотите сильно раздувать длину промпта. Есть вероятность, что они вообще не будут работать в приведенном кейсе. Вам нужно тестировать. Почему мне видится, что эмбеддинги не ваш подход: 1. статей ук очень много, они довольно длинные и подставлять 6-7 статей в надежде на то, что попадется нужная – так себе. Да и чем больше контекстов – тем хуже они будут находится. 2. «я ушел из магазина не заплатив за хлеб» – эмбеддинги не найдут статьи о краже, они даже не будут знать о том, что хлеб стоит менее 3к рублей. Они будут искать хлеб, магазин и неоплату. Если конкретно говорить о УК и снижать кол-во галлюцинаций, то нужно обучить модельку выдавать вам по описание какие УК подходят, а уже в другую модельку подставлять нужные статьи для ответа. Если такой точности не хватит, то можно попробовать сделать так: модель выдала вам статьи, вы взяли эмбеддинги этой статьи и нашли еще 1-3 похожие и засунули их дополнительно в LLM, которая будет отвечать. Особо не шарю – можно ли дообучить эмбеддинги именно на такой выборке. Т.е. нужен датасет вопрос – статья, в любом случае.
Понял, спасибо. Пример с хлебом, наверное был слишком далёким, в реальности будет, что документ это FAQ, и соответственно хочется отвечать по частым вопросам в FAQ, причем вопросы могут быть не самыми очевидными. Правильно понял, по запросу и условной модели классификации будем находить n ближайших статей по смыслу, их эмбеддинг потом будем подавать как контекст для ответа?
Найденный по эмбеддингу текст подаём как контекст
Все так, в целом это даже может поможет помочь не дообучать модель каждый раз когда выходит новый закон(но только если он похож на старый).
Если дадите более четкий пример вашего FAQ, то скажу точнее. Но в таком описании эмбеддингов вам хватит.
Обсуждают сегодня