Скормил моему личному GPT кодовую базу и был приятно удивлен ее способностям…

В этом видео, я показываю способности privateGPT. Я пришел к выводу, что она может менять модель данных, видеть связи между сущностями и объяснять логику существующей кодовой базы.

Расшифровка видео
Вступление
0:00
Всех приветствую подписчики канала
0:01
выпусти Джуна из лампы прошлое видео
0:04
было про настройку чат gpt а точнее
0:07
Private gpt да то есть локальная версия
0:09
а языковой модели которую вы можете
0:11
установить к себе на ноутбук например
0:14
вот а я увидел довольно большую
0:17
активность довольно большую
0:18
заинтересованность А И как я там в
0:21
начале говорил я делал это ради какой-то
0:24
своей цели да то есть протестировать
0:26
работу модели для того чтобы можно было
0:28
скормить ей а код документацию и чтобы
0:31
модель помогла А вести некую разработку
0:35
Ну либо хотя бы консультировал да а это
0:39
как я сказал Было бы очень полезно там
0:41
для каких-то больших компаний в которых
0:44
большое количество документации и ну
0:46
очень сложно улавливать связь между
0:49
разными сущностями иногда а приходится
0:51
очень много времени тратить просто на
0:53
аналитику на поиск какой-то информации
0:56
Вот и соответственно языковая модель
0:58
которая может это легко объять
1:00
который может связать какие-то сущности
1:02
Да которые тебе может быть с твоей точки
1:05
зрения не очевидна Да связь между ними а
1:07
для модели эта связь Может быть но очень
1:09
простой в рамках этого проекта я создал
Постановка проблемы
1:13
небольшой код это некий аналог онлайн
1:17
магазина несколько таблиц там тут нет
1:21
никакого кода скажем на каких-то языках
1:23
программирования здесь некая модель
1:24
данных в виде базы данных и некий код в
1:29
виде ql код для сбора аналитики из этого
1:33
онлайн-магазина то есть поскольку моя
1:35
профессия больше вот связана с
1:37
аналитикой данных с SQL да то есть я сам
1:40
не энд разработчик какой-нибудь не фнн
1:43
разработчик соответственно вот задачу я
1:46
как бы сузил вот до такой области но тем
1:48
не менее я считаю что
1:50
если модель с этим справится то это как
1:54
бы можно дальше интерполировать и на
1:55
разработку в том числе Итак Давайте
1:58
приступим сейчас я я запускаю Chat gpt А
Запуск privateGPT
2:02
поскольку он уже установлен я
2:05
выполняю три волшебные команды запускаю
2:07
виртуальное окружение а перехожу в папку
2:10
Private gpt и делаю Make Run пока модель
2:14
запускается давайте я расскажу про то
2:16
Какие задачи я дам первое А сейчас у нас
Задачи для privateGPT
2:20
модели данных можно сделать заказ
2:23
А на продукт конкретный Да я хочу чтобы
2:26
модель расширила вот эту модель данных
2:28
для того чтобы была корзина и и мы могли
2:31
заказать Одновременно несколько
2:33
продуктов чтобы не приходилось на каждый
2:36
продукт делать отдельный заказ вот Ну
2:38
соответственно это как бы некая ну вы
2:41
можете возразить Ну почему это сразу не
2:43
заложить Да но очень часто бывает так
2:45
что проект развивается Да мы живём в
2:47
парадигме что один продукт один заказ
2:50
вот а потом мы понимаем что Ага Может
2:52
существовать оказывается корзина в
2:54
которую мы можем положить несколько
2:55
продуктов и вот такое часто бывает то
2:57
что модель эволюционирует
3:00
Вот например я работал в онлайн казино у
3:03
нас было такое что изначально жили в
3:05
парадигме что один клиент один счёт
3:08
потому что там
3:10
ну клиент как бы заводит деньги там в
3:12
определённой валюте скажем Ну или
3:15
изначально была только определённая
3:17
валюта там евро например а а потом
3:20
перешли в парадигму что А давайте у нас
3:22
теперь казино расширилось выходит на
3:24
весь мир и у нас может быть разные
3:26
валюты могут быть у нас у одного клиента
3:29
может быть
3:30
раз валютах и так далее и т как бы тоже
3:33
вот некая такая эволюция во многих
3:35
проектах она есть соответственно как бы
3:37
мы сейчас симулирует
3:40
а как модель вообще на это отреагирует
3:43
Итак что мы делаем сейчас перехожу в
3:48
интерфейс сейчас я модель
3:50
прочистил То есть сейчас ни одного файла
3:52
не загружено в
3:54
немы
3:57
вы за в нашу документацию которую мы ей
Загрузка кодовой базы в модель
4:01
с кормим и для начала мы кормим ей эту
4:03
документацию Up файл сделаем а
4:06
и я вот тут экспериментировал загрузил
4:10
книгу раева про слово пацана и как бы
4:13
пробовал модель обучить пацанским
4:17
понятиям вот Ну тоже про это могу
4:19
рассказать ну какие-то
4:21
интересные выводы тоже можно сделать
4:24
открываю файл codebase передаю А всё
4:28
поскольку файл небольшой то есть в бэнде
4:30
вы здесь Можете заметить то что модель
4:31
делает какие-то свои действия generating
4:34
eddings То есть она какие-то вот эти
4:36
новые фразы свою какую-то вот векторную
4:40
модель хранения данных как-то
4:42
преобразуют и как-то её учитывают Если
4:45
вы загружаете какой-то большой документ
4:46
Как правильно как правило вот это вот
4:48
generating eding там ну длится иногда
4:50
пару минут то есть довольно такой тяжкий
4:54
процесс Итак Всё теперь модель знает
4:57
нашу кодовую базу и соответственно мы
4:59
можем начинать давать ей задачи так вот
Первая задача и ошибка
5:02
первую задачу даём Да Please me if in
5:04
curent dat Mod
5:06
mple Order то есть мы сначала спросим А
5:08
вообще она понимает то что у нас В
5:10
текущей модели можно множество продуктов
5:14
добавить в один заказ и модель сразу же
5:17
совершает ошибку То есть она говорит да
5:20
В текущей модели данных несколько
5:22
продуктов могут быть добавлены в один
5:25
заказ Ну Итак что мы видим модель ничего
5:28
не поняла а модель говорит то что у меня
5:31
множество продуктов могут быть добавлены
5:33
в один заказ Хотя это не так а если код
5:36
посмотреть то здесь видно что А вот
5:38
Order ID – это primary Key то есть сюда
5:41
А в эту строчку как бы может быть
5:44
добавлен только один продукт ID
5:46
соответственно это неправда Вот и тут
5:48
начинается как бы пляски с бубном мы
5:51
сейчас будем заставлять модель какими-то
5:55
фразами дополнительными
5:58
а делать то что мы хотим Вот и вот тут
6:02
как бы
6:03
начинается какая-то Ну такая не очень
6:05
честная игра то есть мы же Подходим к
6:08
задаче из предположения что ну модель
6:10
знает лучше нас вот всё-таки
6:12
мы должны теперь играть в такую игру
6:15
когда мы мы говорим Нет мы лучше Знаем
6:17
мы будем модель обучать с первой задачей
6:20
модель не
6:21
справилась теперь Ну под задача Да мы
6:26
явно говорим мы говорим давай вот ну
6:28
просто
Вторая задача
6:30
Прими как факт то что там вот этого нет
6:32
И мы говорим Давай поменяй модель данных
6:35
так чтобы можно было добавить множество
6:38
продуктов в один заказ да А ну и
6:40
соответственно это называется корзиной
6:42
вот поймёт ли модель эта
6:45
А сейчас
6:54
проверим Да вот в явном виде модель по
6:59
говорит то что мы должны из таблицы
7:01
orders убрать колонку product ID А и
7:05
должны создать некую таблицу Order Items
7:08
в которую мы как раз-таки будем помещать
7:10
наши product ID а потом уже ссылаться на
7:13
а product Items ID из таблицы orders Ну
7:17
соответственно Я считаю модель а сразу
7:20
поняла В принципе вот эта таблица Order
7:22
Items она по-другому называется как бы
7:25
Cards да или вот эта корзина и
7:27
соответственно что мы видим
7:29
так продолжай да да я вижу то что модель
7:34
Всё сделала в принципе
7:35
правильно также дальше модель у нас Я
7:39
сказал чтобы она также поменяла какие-то
7:42
другие зависимости Ну какие-то вхи либо
7:45
процедуры которые ссылаются на текущие
7:48
таблицы если там что-то должно
7:51
поменяться то
7:54
Поменяй и сейчас смотрим вот здесь
7:56
важный момент да моде то что мы должны
8:02
Сейчас я покажу код здесь вот у нас есть
8:05
таблица orders дальше табли
8:08
prods Вот но теперь в таблице ord у нас
8:11
поле prod ID нет и
8:14
соответственно Там должна стать
8:16
промежуточная таблица Order Items в ней
8:19
есть ID
8:22
[музыка]
8:28
дано таблице Order Items по полю product
8:31
ID Да в принципе всё правильно со второй
8:34
задачей модель справилась Итак движемся
8:37
дальше А ну вторая Ну можно сказать
8:41
третья задача Да теперь мы хотим
8:43
добавить в отчёт некую такую логику
Третья задача
8:46
хитрую очень часто бывает такое что вот
8:49
Особенно в больших организациях там где
8:51
есть например yp системы вроде какого-то
8:55
Сапа там вот всегда эта логика такая
8:58
очень хитрая с использованием большого
9:01
количества таблиц Найди в этой таблице
9:03
такую-то запись которая соответствует
9:04
последнему заказу потом сходи в другую
9:06
таблицу То Сё и вот эта логика очень
9:09
сложная А и соответственно как бы мы
9:12
сейчас Ну немного утрирую попросим
9:15
модель шу таблицу которая содержит некий
9:18
отчёт по покупкам хотим добавить логику
9:21
которая показывает когда клиент перешёл
9:23
в статус VIP тут условие следующие если
9:26
клиент совершил покупку на суммы более
9:29
3.000 либо совершил три и более покупок
9:32
за последние 2 месяца он получает этот
9:34
статус VIP на английском это будет
9:38
звучать вот так вот и Давайте
9:40
попробуем так и смотрим Что же модель
9:44
делает Show
9:47
VIP
9:52
Da ST так пока что всё
9:58
нормально
10:00
Она
10:01
говорит update Daily AC
10:08
VIP более 3000 в какой-то степени верно
10:12
Вот тут начинается такая такой момент то
10:15
что мне кажется что я правильно всё
10:17
объяснил Да мне кажется что я
10:20
объяснил именно то что я имел в виду Вот
10:24
Но я имел в виду немного друго нос
10:26
перева пром
10:28
который понимаю что даже если бы я
10:30
человеку это рассказал то какой-то
10:33
человек мог именно именно меня понять
10:35
именно так как это сделала модель да то
10:37
есть тут некая двояко и соответственно
10:40
тут тоже такой интересный философский
10:41
вопрос встаёт о том что может мы не
10:43
умеем общаться Может мы недостаточно
10:46
хорошо объясняем Потому что если вот ну
10:49
представить какого-то человека эксперта
10:52
который Эксперт в какой-то вот своей
10:53
области да в медицине там я не знаю в
10:56
автомобиле строения Вот и мы ему говорим
11:00
там ну вот я обыватель я там говорю Ну
11:03
ну это коробка передач да и этот Эксперт
11:05
у меня спросит 500 вопросов а он спросит
11:07
А какая там коробка передач DSG
11:09
автоматическая ещё что-нибудь Да потому
11:11
что ну в его понимании коробок передач
11:13
там существует большое количество они
11:14
делится на какие-то там
11:16
категории Вот и соответственно здесь
11:19
такая же ситуация
11:21
модель Ну илко так как илко и
11:26
соответственно косяк на мне я
11:28
неправильно спросил Вот и в принципе то
11:31
что она сделала Это соответствует
11:33
половине условия то что да если у нас
11:35
есть получается заказ который на сумму
11:38
более 3.000 соответственно это делает
11:40
клиенты
11:41
випом по сути можно считать это тоже
11:44
правильным решени и второе условие Когда
11:47
у нас клиент сделал три или более
11:49
покупок за последние 2 месяца А что
11:52
модель делает модель
11:55
смотрит последние 2 месяца группирует по
11:57
клиентам прекрасно и выводят тех
12:00
клиентов которые у нас сделали более
12:04
трёх заказов за последние 2 месяца тоже
12:06
в принципе правильно Ну что
12:09
получается модель Как поняла так и
12:11
сделала и в принципе правильно но я имел
12:13
имел в виду немного другое Я хотел чтобы
12:15
модель посмотрела на тех клиентов
12:17
которые в общей сложности кумулятивно Да
12:20
а успели сделать там с начала своего
12:24
взаимодействия с системой Да успели
12:27
сделать заказов на сумму общую сумму
12:29
более 3.000 долларов но в принципе
12:32
модель справится с этим поскольку вот во
12:34
второй части
12:35
а решение Ну будет похоже вот на вторую
12:38
часть и таким образом тоже модель сможет
12:39
это
12:40
сделать соответственно м я считаю что ну
12:45
плюс-минус можно считать вот это вот
12:47
задание решённый и соответственно
12:50
давайте мы попробуем теперь взять и ту
12:52
логику которую модель нам выдала только
12:55
что в виде кода мы добавим её в кодовую
12:56
базу и попробуем сделать обратную задачу
Обучение модели новому коду
13:00
мы попросим модель рассказать А что за
13:02
логика там зашита А кто такие VIP
13:04
клиенты да удаляю весь всё текущее
13:08
обучение и по новой сейчас мы ей
13:15
скормили сначала Make wipe А И снова
13:19
делаем Make Run Теперь мы опять
13:26
скармливать а кто такие VIP клиенты а на
13:29
каких условиях клиент становится
13:32
випом Да модель говорит а клиент
Четвертая задача и небольшая ошибка
13:36
становится випом если он сделал как
13:38
минимум три заказа за последний месяц
13:40
вот тут ошибка там за последние 2 месяца
13:43
на самом деле Да но я вижу что модель
13:45
здесь у нас ошибается и второе условие
13:48
клиент также становится випом если он
13:51
сделал заказ на сумму как минимум 3.000
13:53
долларов великолепно Да модель Ну можно
13:56
сказать что модель справилась в первом
13:58
случае Да она соврала нам второе условие
14:01
правильно прям чисто Да соответственно
14:03
можно сказать что
14:04
модель смогла нам объяснить А ну
14:07
плюс-минус да с какими-то грехами то что
14:10
у нас в
14:11
принципе клиент становится випом вот на
14:13
тех условиях которые мы ей дали
14:16
соответственно довольно интересный опыт
14:17
получается взаимодействия с моделью с
Выводы
14:20
одной стороны я вижу некие
14:22
огрехи некие неточности Но с другой
14:26
стороны я понимаю что иногда мы сами не
14:29
умеем общаться Да мы сами не даём
14:33
полноту всей информации для того чтобы
14:35
модель могла сделать правильные выводы
14:38
ну и соответственно вот у меня немного
14:40
мурашки по коже
14:42
А что у меня есть да это модель не самая
14:45
мощная это не Chat gpt это не Chat gpt 3
14:48
Да даже А это более простая модель но
14:51
тем не менее она способно вот какие-то
14:54
вот такие сложные зависимости
14:55
генерировать А и соответственно если эта
14:59
модель ещё больше если это какой-нибудь
15:00
чат gpt при должном общении с ней Она
15:03
должна это всё уметь делать И в будущем
15:06
и уже в принципе насколько я знаю в Chat
15:08
gpt есть такие вещи как агенты которые
15:12
могут самостоятельно если им дать
15:14
возможность писать код отслеживать то
15:17
есть дебажить этот код Да а смотреть там
15:20
что получается по результату выполнения
15:23
этого кода и корректировать своё
15:25
поведение Я думаю модель довольно быстро
15:28
поймёт правильную логику она пишет или
15:30
нет А если дать модель возможность
15:33
писать код для тестирования чего-то А я
15:36
думаю модель очень быстро поймёт что она
15:39
написала неправильный код и быстро его
15:41
откорректируйте
15:42
века Сейчас учёные говорят что языковые
15:46
модели по IQ Ну на уровне человека с IQ
15:50
примерно 90 Ну я считаю что это довольно
15:54
высоко А И если брать не знаю
15:57
какую-нибудь классическую разработку то
15:59
человек в принципе не так-то хорошо
16:01
пишет код Мы плохо пишем код мы ещ хуже
16:06
читаем чужой код мы не умеем читать
16:08
чужой код нам он вообще непонятен модели
16:11
будут делать это намного лучше
16:13
нас Да скорее всего можно модель научить
16:16
какую-то сложную логику писать но также
Про внедрение в большие компании
16:20
встают вопросы
16:21
безопасности если у нас в компании
16:24
например каждому человеку даётся всего
16:26
лиш доуп части общей корпоративной
16:30
Информации
16:32
а модель для эффективной работы Должна
16:34
будет владеть всей информацией и
16:36
финансами и HR и переписками да то есть
16:41
тут встают большие вопросы безопасности
16:44
То есть если мы хотим чтобы модель
16:45
эффективно работала модель должна будет
16:47
знать Это всё и соответственно если
16:49
модель это всё знает то какими-то
16:51
хитрыми
16:58
Пойдут ли компании в эту сторону а ну
17:01
если пойдут если найдут способ как
17:03
преодолеть Data governance вот эту
17:06
безопасность как мне кажется тут будут
17:08
большие
17:10
преимущества большая экономия
17:12
человеческих ресурсов
17:14
времени Вот и Ну как мне кажется
17:17
двадцать четвёртый год будет каким-то
17:19
особенным прорывным в прошлом
17:21
видеоролике в комментариях мне написали
17:23
то что у меня был плохой звук и я
17:25
слишком много ал я постарался в этот раз
17:28
а как-то исправить убрал с рекордера
17:31
авто level стараюсь Теперь меньше
17:36
[музыка]
17:41
акатьева Есть Telegram канал выпустить
Телеграм канал “Выпусти джуна из лампы”
17:43
жена из лампы ссылка на него будет в
17:46
описании в этом канале Я помогаю
17:49
начинающим айтишникам а особенно тем кто
17:51
хочет в направлении аналитики данных в
17:54
направлении работы с данными продуктовая
17:56
аналитика бизнес системная аналитика
17:58
Примерно вот в эту область Я тоже
18:00
помогаю войти Я помогаю обучиться с нуля
18:03
также Я помогаю тем кто прошёл например
18:05
какие-то курс Я помогаю получить
18:07
офер вот если интересно пожалуйста тоже
18:11
вступайте у меня на этом всё спасибо за
Вместо заключения
18:14

Поделиться: