170 похожих чатов

Друзья, GPT-4 клянется и божится всеми своими предками (я два

раза переспросил), что файнтюнинг - это оптимальный метод, чтобы научить Llama консультировать по какому-то БОЛЬШОМУ объему документов (ну, например, сборнику федеральных законов, или вроде того). Но так ли это в действительности? И второй вопрос тогда: а во сколько обойдется такой проект? Ну, +-. Если именно путем файнтюнинга пойти, и обучать, скажем, Saiga 30B. Хотя бы порядок цифр. Особенно интересно мнение @abdullin 😊

22 ответов

37 просмотров

1. Обучение на документах не даст возможности консультировать по ним (+ ещё галлюцинации) 2. Обучать модель НЕ нужно, нужно взять ретривер, скормить ему документы, взять модель которая будет получать вывод из ретривера и давать ответ (например: https://huggingface.co/Den4ikAI/FRED-T5-LARGE_text_qa).

datascience xc
1. Обучение на документах не даст возможности конс...

То есть все-таки ретривер нужен непременно, да? Скажи, я правильно понял смысл, что мы весь массив документации режем на куски, затем перегоняем куски в эмбеддинги, кладем в векторную БД, запрос затем тоже переводим в эмбеддинг, ищем наиболее релевантные куски, эти куски склеиваем, и вместе с запросом даем модели, чтобы она офрмила это в виде внятного ответа, так?

datascience xc
1. Обучение на документах не даст возможности конс...

...но как же тогда Сайга? Ее ведь научили русскому именно с помощью файнтюнинга, и это работает. Так? Или это как-то иначе было? Что именно я упускаю в своих выкладках?

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
...но как же тогда Сайга? Ее ведь научили русскому...

Сайгу научили не русскому, а следованию русским инструкциям. Ллама сама по себе довольно хороша в русском, по крайней мере на уровне внутренних представлений

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
...но как же тогда Сайга? Ее ведь научили русскому...

Есть разница между тем, чтобы научиться языку (то есть набору слов и тому, как их складывать в грамматичные предложения) и набору фактов (позволяющему дальше непротиворечиво и без излишней фантазии отвечать на вопросы по этим фактам). С первым языковые модели после (до)обучения справляются хорошо (поэтому их так и называют!), а со вторым у них туго, поэтому им в помощь и дают костыли в виде ретриверов.

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
То есть все-таки ретривер нужен непременно, да? Ск...

да именно так, можно тот же попсовый langchain посмотреть как работает (или haystack), - почему так , есть много причин. одна из них, большие модели несильно быстрые, нужно сузить количество документов (попробуйте запустить LLM над 100_000 документами). во-вторых LLM много чего умеют, особенно из инструкций, и в zero-shot settings, но они довольно плохо оперируют фактическими данными : их "знания" ограничены на момент претрейнинга (хотя есть исследования как делать factual injection), а во-вторых у них довольно плохо все с recall (ибо не в этом их цель изначальная), т.е. для QA по фактическим документам , нужно условно быстрыми методами с хорошим recall , сузить scope, затем из полученных создать контекст и промт и подсунуть таким моделям.

Ilya Gusev
Сайгу научили не русскому, а следованию русским ин...

Илья, а можно для тупых: что значит "следованию русским инструкциям"? Ей на вход что именно подавалось и в каком виде? 🙏

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
Илья, а можно для тупых: что значит "следованию ру...

Это значит, что ты ей говоришь: придумай 10 названий для парикмахерской и она придумывает

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
Илья, а можно для тупых: что значит "следованию ру...

вот тут все максимально подробно описано: https://github.com/IlyaGusev/rulm/blob/master/self_instruct/src/data_processing/create_chat_set.py

Ilya Gusev
вот тут все максимально подробно описано: https://...

И что из этого кода должен извлечь человек? Вы не ошиблись ссылкой?

datascience xc
И что из этого кода должен извлечь человек? Вы не ...

нет, извлечь названия датасетов и формт

datascience xc
Это значит, что ты ей говоришь: придумай 10 назван...

а почему она и так не может этого сделать, коли "Ллама сама по себе довольно хороша в русском, по крайней мере на уровне внутренних представлений"? я хочу понять суть отличия между одним и другим.

datascience xc
Потому что ее учили продолжать текст

Если ламе написать "напиши сочинение как я провел лето", то она продолжит "Сочинение должно быть 150 слов" и т.д

Ilya Gusev
вот тут все максимально подробно описано: https://...

Да, спасибо, теперь понятнее. Илья, я правильно понимаю, что модель после такого обучения, получая инструкцию, "ищет внутри себя" (условно говоря, я понимаю что оно иначе работает) наиболее векторно близкую к одной из инструкций данных датасетов, и генерит ответ по образу и подобию ответа для данной инструкции из данного же датасета? Принцип такой, да?

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
Да, спасибо, теперь понятнее. Илья, я правильно по...

Скорее нет, чем да. Это хорошо обобщается и на новые инструкции, поэтому модель скорее учит сам принцип следования инструкциям

Ilya Gusev
Скорее нет, чем да. Это хорошо обобщается и на нов...

В таком случае зачем ей именно русские инструкции?

...ааа, то есть Llama изначально вообще не очень именно в следовании инструкциям, да? И ее приходится дообучать именно на таких парах?

🅿️🅾️Ⓜ️🅰️♓️🈴 romad.ru
...ааа, то есть Llama изначально вообще не очень и...

Ллама обучалась продолжать текст. Следование инструкциям != продолжению текста

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта