П’ята Ахіллеса для ChatGPT

Усі статті, обговорення, новини про AI — в одному місці. Підписуйтеся на DOU | AI!

Це інтерфейс.
Хто хоче трійку за семестр, здавайте залікові книжки і можете бути вільними.

А всім іншим я спробую пояснити свою думку.

Історія розвитку людства це історія інтерфейсів. Більш того людина відрізняється від інших розумних тварин не наявністю великих пальців на руках, а саме дуже розвинутим інтерфейсом спілкування. Я про спілкування за допомогою мови, і пізніше ще додалася письменність. Ці інтерфейси гнучкі, універсальні, і через це, як ви всі знаєте, вони дуже повільні й дуже не конкретні.

Не знаю як вам, а мені доводиться докладати значні зусилля щоб донести до когось свою думку мовою чи листом навіть рідною мовою. Особливо коли немає історії та умов попереднього спілкування, вони ж контекст.

І саме такий спосіб нам пропанують ChatGPT та інші LLM моделі.
Загалом, про розвиток зручних, швидких інтерфейсів, написані сотні книжок. Ця історія включає в себе тисячі років, може десятки тисяч років. Я можу уявити як на одному листку папоротнику перед веселою неандерталицею лежать п’ять равликів, і я можу покласти один сколок креміню і забрати равликів собі на сніданок. Може перший, зручний інтерфейс був схожий на такий. Це було зручно, швидко, зрозуміло і контекстнозалежним.

І ось через кілька десятків тисяч років нам пропанують писати або говорити для вирішування схожих задач. Багато писати і багато говорити. Буквально витрачати хвилини там де можна витратити кілька секунд. Невже мені одному це здається дуже дивним і не зручним і не логічним?

Я наведу приклад для пояснення про що я, не з програмування щоб не зводити можливу дискусію в багатоповерховий тред.

Припустимо я купив місяць тому ланцюгову пилу LP500 (вигадана марка). Я її шукав, довго обирав, дивився відгуки тощо. Зрештою купив. І через місяць на ней почав блимати зелений світлодіод навколо якого написано N. Я захожу в гугл, мовчки набираю «LP500 led N» і миттю, може менше ніж за секунду отримую всю необхідну інформацію, в вигляді кількох текстових повідомлень а також кількох відео, а також посилання на інструкцію, яка звісно є і в мене. А що я вимушений був зробити в цьому випадку з ChatGPT? В платної версії я міг би завантажити йому інструкцію і сподіватися що він вміє працювати з PDF. І теоретично він міг би вказати на те місце де читати. Але це все одно було б у десятки разів довше ніж відповідь через інтерфейс гугл. Це все тому що в гугла існує контекст у вигляді кукі, збережених з часів мого пошуку пили.

Що вам треба зробити зараз, щоб встановити нагадування про зустріч з Петром по пиву об 20 у п’ятницю? Дотягнути мишу до календаря, клацнути на 19:30 і написати букву П, і зберегти. Все. Коли з’явиться нагадування ви не будете збентежені цією буквою. Бо існує контекст багаторічних пивних вечорів по п’ятницях. І це все не потребує завантаження в LLM всієї історії вашого життя лише заради дрібного нагадування. Більш того, ви зазвичай можете забути про це і не зробити запис в календарі бо були дійсно ну дуже зайняти. І тоді Петро сам вам надішле повідомлення об 20:30 «той хто спізнився платить, бітч!» І це буде нормально. А якщо ви налаштуєте чиюсь обгортку над «секретарем з AI» тоді точно нічого нормального не буде. Він буде вас відволікати. Непотрібно відволікати. На дейлі на якому вам планують підняти зп пришле звукове повідомлення голосом Джені Ортегі «Петро чекає на вас в вашої улюбленої півнусі». Буде не зручно.

Або виклик таксі. Я іноді думаю, що завдяки величезної праці компаній над інтерфейсами виклику таксі, я можу зробити це не дивлячись на смартфон. І буквально за кілька секунд. Уявляти як це робити голосом я не хочу, я мав такий досвід років десять тому. Ви могли хвилинами пояснювати куди, звідки, як під’їхати і чомусь раніше треба було ще вказувати на якому поверсі, і це досі загадка для мене. Це було максимально не зручно, довго і головне не точно. І зараз нам пропанують повернутися до такого інтерфейсу? Це дивно. Я знов буду пояснювати про дві сполошні напроти арки щоб потім ChatGPT щось недочув і замовив такси на інший край міста? Я проти.

Я міг би наводити ще багато прикладів, коли існуючий інтерфейс LLM моделей протирічить загальної логікі та напрямку розвитку всіх інших інтерфейсів навколо в бік швидкості, зручності, простоти і вузької спеціалізації.
Я не дуже розумію коли люди зараз кажуть, що пошук через LLM зручніше ніж пошук через гугл, хоча сам спершу був такої ж думки, але потім повернувся до гугл, бо контекст. Контекст рішає. Контекст це база. Мені достатньо навіть бічним зором подивитися на вікно видачи гугла щоб зрозуміти що робити далі. Мені не потрібно читати кілька сторінок тексту який вирішив згенерувати ChatGPT.

Що ви думаєте про це?

Я не знаю чи буде ця проблема колись вирішена. Чи це проблема взагалі? Може тільки якщо нейроінтерфейс Маска буде здатний завантажувати весь дамп моєї пам’яті, коли я буду питати в ChatGPT «скільки варити гречку»?


👍ПодобаєтьсяСподобалось3
До обраногоВ обраному0
LinkedIn

Найкращі коментарі пропустити

не знаю як там інтерфейси GPT,
але автор теж створює Поганий інтерфейс своїм текстом — графоманить купу лівого нерелевантного по сенсу тексту,
який не хочется читати через брак лаконічності.

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

tl;dr (by GPT):

Автор статті підкреслює, що історія людства — це історія інтерфейсів, особливо мови й письма, які хоч і гнучкі, але повільні та не завжди конкретні.

Аналізуючи сучасні LLM моделі, зокрема ChatGPT, автор зазначає, що взаємодія через текстовий інтерфейс часто вимагає більше часу і є менш зручною порівняно з іншими існуючими рішеннями, наприклад, пошуком у Google.

Завдяки збереженому контексту в Google користувач може отримати точні й швидкі відповіді, тоді як у LLM моделей цього бракує.

Крім того, автор зазначає, що інтерфейси інших технологій, як-от календарі чи виклик таксі, також вдосконалюються для зручності та швидкості, в той час як голосові асистенти й моделі типу ChatGPT часто роблять взаємодію громіздкою й неефективною.

Помилка в слові «пропонують» 2 рази (ви пишете «пропАнують»). Сорі🐸

Я «обговорив» з чатом цей мій пост.
Поставив йому наступні питання:
— Зроби, будь ласка, короткий синопсис цього тексту.
— Напиши коротку відповідь з критикою думок автора.
— Чи існують підтвердження твоєї критики думок автора або це лише лінгвістично коректна відповідь від LLM?
— Хто несе ризики за використання відповідей LLM як вони є, без додаткових уточнень, пошуку першоджерел тощо?
— Чи є ризиком те що відповіді LLM генеруються у вигляді тексту? Зазвичай люди не дуже добре сприймають текстову інформацію. Вона потребує значних витрат на опанування. Окрім того вона може бути кожного разу різною.

Відповіді були стандартними як ми звикли, в стилі «все що забажаєте»
Але відповідь на останнє запитання здалася мені цікавою, як відповідь на деякі питання які були під час обговорення тут.

Так, форма подачі відповідей у вигляді тексту від LLM також може нести певні ризики, зокрема через те, як люди сприймають і інтерпретують текстову інформацію. Основні ризики включають:

— Когнітивне навантаження: Текстова інформація може бути складною для сприйняття, особливо якщо відповідь довга, деталізована або містить багато нових термінів. Людям іноді важко засвоювати великі обсяги тексту або розбиратися в нюансах, що може призвести до непорозумінь або неправильного інтерпретування інформації.

— Інтерпретаційна різноманітність: Текстові відповіді можуть бути неоднозначними або сформульованими по-різному для одних і тих самих запитів. Це може створити ситуацію, коли користувачі інтерпретують одну й ту саму відповідь по-різному, що може призвести до різних висновків, навіть якщо початкова інформація є однаковою.

— Змінність відповідей: Через те, що LLM генерують відповіді на основі запитів в реальному часі, вони можуть формулювати кожну відповідь по-різному, навіть для схожих запитів. Це може викликати у користувача відчуття нестабільності чи непослідовності в отриманих відповідях, що також ускладнює довіру до інформації.

— Відсутність стандартизації: Текстові відповіді можуть варіюватися за стилем і складністю, залежно від конкретного запиту або контексту. Це може збільшувати витрати часу і зусиль на їх опанування, особливо якщо потрібна швидка й чітка інформація.

— Емоційний контекст: Люди можуть по-різному реагувати на текст, залежно від його формулювань, навіть якщо він є технічно коректним. Це може впливати на прийняття рішень або створювати небажані емоційні реакції.

Таким чином, текстовий формат відповідей не завжди є найкращим варіантом для всіх сценаріїв, і це може бути ризиком, особливо для тих, хто краще сприймає інформацію через візуальні або аудіальні засоби. З огляду на ці ризики, в майбутньому можливі інші форми подачі інформації — графіки, інтерактивні візуалізації або мультимедійні презентації — які могли б полегшити сприйняття і підвищити ефективність взаємодії з AI.

ChatGPT said:
The main idea is that while modern communication technologies like ChatGPT aim to improve interaction, they often feel less convenient and efficient compared to traditional interfaces like Google. The author emphasizes the importance of context in communication and expresses concern that new technologies may complicate tasks that were previously straightforward and quick.

))) Я спілкувався з ним щодо можливих незручностей текстового інтерфейсу, але його здатність погоджуватися зі всім реально бісить. А пропти типу «поводся як пересічний спорщик на доу» на дають бажаного ефекту.

Про те що набрав в гуглі

LP500 led N

і отримав всю потрібну інформацію — неправда. На першій сторінці перелік онлайн магазинів, які продають цей телевізор. Інструкції також нема, як і офіційного сайту.

Я не знаю чи буде ця проблема колись вирішена. Чи це проблема взагалі?

чомусь згадав дівчину з якой зустрічався років в 20-25, вона вважала, що я повинен більше проявляти уваги і розуміти що їй потрібно :)

Це виключно ваша справа, але якщо ви вже самі згадали, то бачу, що та дівчинка такі мала рацію щодо вашої уваги. LP500 це вигадана марка ланцюгової пили,

(вигадана марка)

і запитавши про неї гугл ви в кращому випадку потрапите на цю сторінку на DOU

LG 32 Inch LP500 Series FHD LED TV
в нас різні гугли судячи по всьому, мій знаходить магазини які продають цей телевізор
заберем всякі аналогії з дівчатами і вгадуванням думок
підсумовуючи вашу статтю можна сказати, що інтерфейс chatgpt поганий, тому що вимагає максимально деталізованого запиту ?

... деталізованого і такого який має нести в себе половину відповіді, й після чат надає рандомізовану, не залежну від контексту, відповідь у вигляді тексту, що протирічить, на мою думку, загальної тенденції розвитку скорочення формату як інтерфейсів так і отриманої інформації.
Незалежно від якості промту, спроба обмежити випадковість ні до чого не проводить. Будь який строгий промт можна доповнити проханням про кілька різних відповідей і отримати їх. Для примітивного експерименту можна запитати його якось так «Надай мені десять різних відповідей на мій запит щодо твоїх думок про неуважність»
Будь які спроби звузити контекст ні до чого не приведуть. Ви завжди будете отримувати десять різних відповідей. І це не дивно, знаючи що таке LLM
Але постає питання — яка з них умовно вірна?
Я особисто гадки не маю, що можна робити з текстом від чату окрім якогось натхнення для пошуку першоджерел. Мене здається очевидним, що не можна його використовувати окрім якихось дивних випадків типу фальсифікації особистих листів, наукових робіт, чи домашнього завдання для школярів.

ланцюгову пилу LP500 (вигадана марка). Я її шукав, довго обирав, дивився відгуки тощо. Зрештою купив. І через місяць на ней почав блимати зелений світлодіод навколо якого написано N. Я захожу в гугл, мовчки набираю «LP500 led N»

Капець Ви неуважні ☹️

Так я пропустив, що обєкт пошуку вигаданий. Але в реальності ми отримаєм список онлайн магазинів, а не вигадану підбірку зі всім необхідним. Це не міняє суті — для пошуку в гуглі також потрібна деталізація.

У вас вона буде тому що є кукі. Наприклад, ви щось шукали і купили, а за місяць шукали деталь на заміну для цього щось. І видача буде релевантна цим двом подіям. А також ви отримаєте досвід інших покупців цієї речи з аналогічною поломкою.

не знаю як там інтерфейси GPT,
але автор теж створює Поганий інтерфейс своїм текстом — графоманить купу лівого нерелевантного по сенсу тексту,
який не хочется читати через брак лаконічності.

Автор отримує від цього задоволення, якщо ваша ласка.
Сумно, що ви не маєте власної думки щодо теми моєї графоманії, але якщо вас так харить звичайна графоманія, то уявляю як вас дратує те що пише чат.

ще одна беззмістовна дефенс-теза ))
чому ви не запропонували зарефакторити текст до суті, як його спростити... навіть не намагались. Кажете «просто автору приємно лити воду, тому давайте змиримось » лол.

Нічого не розумію. Ви чекаєте на срач? Його не буде. Навіть якби я погодився, але я не бачу цікавих опонентів для цього. Та і про що сперечатися? Ви ж нічого не пишете. Думок у вас ніяких немає. Є необґрунтовані претензії на те щоб вас розважали виключно на рівні вашого інтелекту, не вище. Я особисто цього не зможу. Пошукайте розваги на старих бордах, може.

конешно не розумієш )))
тобі в голову не приходить, що тут іншого шляху нема як погодитись з тим шо написано погано, і треба переробити ))))
ти хоть би тупо в чат-бот закинув текст, і попросив його спростити )))) лол, ше говорить тут шось про інтерфейси і бота ) .....

Чого це погано? Бо у вас ідеальний літературний смак? Чи ви відомий критик? Чого ви вирішили що ваша думка з цього питання чогось варта для мене? І, дідько, на який ляд це переписувати?

Автор отримує від цього задоволення, якщо ваша ласка.

Десь тут і починається справжнє графоманство.

Насправді ця історія з інтерфейсами тягнеться вже десятирічча та мовні моделі тут геть не перші. ;)

Раніше це було — консоль проти графічного інтерфейсу: мені всі доказували (та й зараз) що консоль то позавчорашній день, а ось гуй... Правда у випадку більш-менш складної системи ставити десятки «галочок» у кількох різних вікнах-меню вже не так зручно, але все одно консоль складна, а я шаман бо замість «галочок» написав все це (умовно) в одну стрічку.

Потім MS таки викатив PowerShell щоб і вінду можна було налаштовувати зі страшеної та дуже не зручної консолі :D здалися...

Ще в 80 була книжечка, ніби-то «інтерфейс людина-компьютер» де це розбиралося, що (це вже моє узагальнення) всілякі меню-підказки-гуі-розмовний інтерфейси «зручні» виключно для непрофесійних користувачів (яких, тим не менш — більшість), а професіоналам, якраз, краще мати спеціалізований, хоч і складний для новачка, інтерфейс (як то командна оболонка, наприклад) — бо він значно ефективніший.

Ось до речі коли чатЖпт особисто мені буває корисним. «Напиши команду для поуершел для копіювання файлів з розширенням .dll з однієї теки в іншу» І він такий бам і готово! Ну тому що не часто користуєшся, а тримати оте все в голові воно не дуже. Та і виходить швидше писати мовою ніж командами.
Або регекс якийсь мутний.

Десь так?

Відносно скоріше юзати LLM, а не фатально, плюс будь яка сучасна LLM в змозі відповісти на питання.

Перевага пошуку у тому, що зазвичай ти ще отримуєш посилання на документацію, де можна побачити суміжні можливості.

З мутним рекекспом я б не став експериментувати — якщо вине взмозі його перевірити, то...

Тож ви завжди можете запитати подробиці й попросити розкласти це на частини та пояснити кожну.

Ну... якщо запитати подробиці, то в цьому контексті LLM зазвичай налаштовані не дуже критично, та можуть описати ситуацію краще, ніж вона є.

Якщо швидкодія не є вимогою, то мені більше подобаються монадичні парсери, там пояснювати нічого й не треба.

Пф, у вас є проєкт, у якому вже є купа регулярних виразів, ви його переписуватимете чи просто додасте ще один регулярний вираз?

Я б перевірив, що вони роблять. Спочатку. Бо пихати купу регулярок без перевірки — найгірше, що можна придумати

xkcd.com/1171

Ну то перевірте :)) Спитайте того ж ChatGPT, що воно таке, і перевірте на одному з купи online regexp playground.

Ну і воно мабуть тестами вже покрито...

От я додав помилку (видалив один варіант) та спитав у ChatGPT, що робить наступний регулярний вираз

([!#-'*+/-9=?A-Z^-~-]+(\.[!#-'*+/-9=?A-Z^-~-]+)*|"([]!#-[^-~ \t]|(\\[\t -~]))+")@([0-9A-Za-z]([0-9A-Za-z-]{0,61}[0-9A-Za-z])?(\.[0-9A-Za-z]([0-9A-Za-z-]{0,61}[0-9A-Za-z])?)*|\[((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|IPv6:((((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){6}|::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){5}|[0-9A-Fa-f]{0,4}::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){4}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):)?(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){3}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,2}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){2}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,3}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,4}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::)((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):[1-9A-Fa-f][0-9A-Fa-f]|(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,5}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3})|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,6}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::)|(?!IPv6:)[0-9A-Za-z-]*[0-9A-Za-z]:[!-Z^-~]+)])

посилання

Він навіть не помітив, що там є помилка, впевнено мені пояснив що все працює добре. Правильно:

([!#-'*+/-9=?A-Z^-~-]+(\.[!#-'*+/-9=?A-Z^-~-]+)*|"([]!#-[^-~ \t]|(\\[\t -~]))+")@([0-9A-Za-z]([0-9A-Za-z-]{0,61}[0-9A-Za-z])?(\.[0-9A-Za-z]([0-9A-Za-z-]{0,61}[0-9A-Za-z])?)*|\[((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|IPv6:((((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){6}|::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){5}|[0-9A-Fa-f]{0,4}::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){4}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):)?(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){3}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,2}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){2}|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,3}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,4}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::)((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3})|(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,5}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3})|(((0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}):){0,6}(0|[1-9A-Fa-f][0-9A-Fa-f]{0,3}))?::)|(?!IPv6:)[0-9A-Za-z-]*[0-9A-Za-z]:[!-Z^-~]+)])

this should not pass peer review anyway :)

І що, таки попросять переписати на монадічний парсер?

Так такій регексп не може існувати в коді незалежно від LLM/не-LLM :))
І скоріш за все повинен бути реалізований «звічайним кодом», а не будь яким pattern matching’ом

Чому не може? Припустимо, треба зробити валідацію e-mail. Так з’являється щось на кшталт:

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

Але, як ми знаємо, що цей вираз не відповідає RFC-5322. Це працює добре, використовується у декількох містах коду, але в один час з’являється e-mail, який не парситься. Тоді регулярний вираз виправляється один раз, другий, третій, та вже використовується в десятках різних рядках. І ось настав час четвертого покращення. Який би варіант обрав би ти:
1. переписати парсер та пофіксити код в десятці місць;
2. таки пофіксити регулярний вираз;
3. знайти в інтернеті універсальний регулярний вираз та використати його;
4. власна відповідь?

Ніколи не парсити email’и за допомогою regexp’ів, а використовувати готову бібліотеку, яка це робить. Це класичний приклад того, коли regexp не варто використовувати.

Те саме стосується і парсера IP-адрес :) Його не треба робити самому, незалежно від того, чи за допомогою regexp’ів, чи без них.

Ну.. по-перше, це могло відбутися на проекті до вас. По-друге, якщо на проекті вже сотня готових регулярних виразів, то невже будете використовувати окреме рішення та шукати лібу? По-третє, чому це ChatGPT не написав, що використовувати регулярний вираз для e-mail це погана ідея?

Знову ж таки, у нас є inet_aton, але... Нам треба просканувати текст та знайти там всі IP адреси... Якось незручно, те ж саме може бути і з іншими лібами... Плюс префікс, суфікс...

Так

чи просто додасте ще один регулярний вираз?

Чи

Спитайте того ж ChatGPT, що воно таке, і перевірте на одному з купи online regexp playground.

— це ж вже непросто додати, не? :))

А більшість якраз і не перевірить. ;))

Більше того — це факт, і вже є дослідження, що люди починають надмірно довіряти мовним моделям і не перевіряти сгенерований код. Що призводить до зниження якості такого коду.

devops.com/...​-increase-technical-debt

www.gitclear.com/...​_pressure_on_code_quality

В проектах, де була купа регулярних виразів, я бачив ще мішанину з коду над цими виразами, бо мови, які треба було розпізнавати, ставали нерегулярними.

Ну а так це залежить від багатьох чинних: складності регулярних виразів, як часто їх треба модифікувати... Якщо це разова задача, їх відносно небагато, то додам ще один. А якщо є тисяча виразів, де в сотні є копіпаста для дати, яку треба знайти та додати ще один варіант, то... краще про це не думати.

Зазвичай я починаю з тестів. Типу «Напиши мені тести на мові xxx які б перевіряли чи знаходить метод всі входження тексту ааа після чисел але не перед пробілом»
І іноді вин пише не погано.

Ще раз. Я ж не стверджую, що мовна модель не взмозі це робити. Я не розділяю захоплення і надмірно оптимістичного погляду у майбутнє LLM. Як на мене — обмеження технології помітні вже зараз, і, скоріше за все це принципові обмеження для цієї технології.

Я дотримуюсь такий само думки.
Просто іноді буває ліньки вигадувати назви тестів чи методів. І чат, хай йому грець, тут дуже допомагає. Не тільки з регексом. Я не впевнений, але можливо чат можна замінити якоюсь моделлю «чарівної кули» або генератора випадкових чисел, з таким само результатом. Типу як Шерлок замінив Уотсона черепом.

Якщо швидше писати мовою, ніж командами, то просто потому, що ви не маєте достатньо скілів в даному випадку писати командами.

Я зараз абсолютно серьйозно, без образ.

Я по собі те саме помічаю вже багато років (банально тому, що приглядаюсь, як саме я працюю — ШІ мене цікавить ще з початку 90-х, як до мене потрапила книжка «Компьютер обретает разум»).

Так ось. поки я не достатньо розумію якийсь інтерфейс чи мову програмування, мені простіше і легше з підказками чи мишкою тикати, чи по меню лазити, як тільки я починаю розуміти — підказки частіше починають заважати, або не дуже то і допомагають. З появою/тренуванням практичних навичок — швидше робити напряму командами, через спеціалізований інтерфейс.

Причому — саме так всюди. Не залежно від типу діяльності. Науково-популярні книжки всі написані «словами» — загальними образами та порівняннями. Всі наукові статті (принаймні природничо-наукові) — терміни та математика. Бо формулою і точніше і швидше передати, ніж словами.

Як починаєш вчити якусь мову — треба якась гарна книжка. Коли ти профі — простіше глянути напряму в документацію, а ще краще в код, коли він доступен. Код скаже більше і швидше будь-яких слів.

У програмуванні є нескінченна кількість механічної роботи, наприклад, якщо ви написали інтерфейс, а потім треба написати boilerplate імплементації і купу подібних речей, і тут ChatGPT/Copilot економить купу часу.

Особливо Copilot — тому що він це зробить так само, як в інших частинах проєкту, використовуючи ті самі валідатори, серіалізацію тощо.

Так, є випадки, коли моделі дійсно потрібні. Але ж їх намагаються впихнути всюди стверджуючи, що можна просто запросити будь-яку апку — вона їх напише. Ні. Не напише. Ось в чому суть. Причому важливо — не те, що не напише зараз, а ось у майбутньому... Ні, тільки мовна модель, як підхід, ніколи не замінить програміста (людину, в широкому сенсі).

Мовні моделі вже давно не лише мовні моделі, купа «залізних програмістів» — це модель + language server + execution environment.

Тобто, вони не просто пишуть код, вони це роблять, використовуючи ті самі підказки та рефакторинг, що й «справжній програміст» в IDE. Вони намагаються його запустити, роблять свій аналог TDD тощо.

Тобто так, вони не замінять на 100%, але значну частину не дуже розумної роботи виконають швидше та якісніше.

Тобто так, вони не замінять на 100%, але значну частину не дуже розумної роботи виконають швидше та якісніше.

Я надав посилання вище на дослідження, що по факту, якість коду стає гірше. Це факт.

Тобто інструменти статичного аналізу коду стабільно роблять кількість помилок — менше.

У LLM такоє стабільності немає. Десь допомагають зекономити час, в середньому — погіршують якість.

«На автомобілях з автоматичною коробкою їздить більше мудаків...» :) Будь-яка штука, що знижує поріг входу, знижує якість. Коли всі писали на асемблері й не довіряли компіляторам, на Місяць можна було літати на 4 кбітах памяті і 120 кГц процесорі :)

Є інструменти які стабільно працюють, є які — ні.

Навряд ви захочете мати в авто гальма, які раз на тиждень (і ви не знаєте — коли саме) не спрацюють або спрацюють погано.

А це ж найбільша проблема — стабільність та гарантія результату від LLM. Вище е приклад з regex — людина вам скаже — я не розумію цю складну конструкцію, давайте або тести. або спрощувати. Модель вас запевнить, що все гаразд.

3. IPv6:
• Вираз для валідації IPv6 надмірно складний і може не обробляти деякі допустимі скорочення формату IPv6 коректно.

Модель сказала теж саме :)

Абсолютно надійних тулзів не буває, gcc яким користуються трошки більше ніж усі:
gcc.gnu.org/...​ creation]&chfieldfrom=7d

Бувають :-)

Наприклад, compcert повністю верифікований компілятор мови програмування Сі, написаний на Ocalm, з використанням CoQ як пруф-асистента.

The main result of the project is the CompCert C verified compiler, a high-assurance compiler for almost all of the C language (ISO C 2011)

:)) ну якщо враховувати шарообразних конів у вакуумі — то да :)

Будь-яка штука, що знижує поріг входу, знижує якість.

Ні. Я вже давно не форматую код — це робить LS. Чи знижує це поріг входу — так. Бо робить код більш однаковим і кращім для сприйняття. У мене пайплайни та пре-комміти аналізують на помилки. Звісно не всі, але купу роботи я не роблю руками.

Але ці інструменти працюють гарантовано — вони не зламають те, що є і не додають те, чого не було.

ну, є різниця між помилками і принциповими особливостями роботи системи. так то і найкращі гальма можуть не спрацювати.

Кількість та якість коду сучасних інструментів призводять до того, що вони та LLM наближаються до приблизно однакової надійності, просто з різних сторін :))

на Місяць можна було літати на 4 кбітах памяті і 120 кГц процесорі :)

Дело не в ассемблере, а в постановке задачи, когда она урезана до максимума — она влезает в эти характеристики. Но за этим стоит многомесячная работа целых НИИ.

А когда таких НИИ нет — приходится обращаться к ChatGPT.

Так навіть цю спрощену задачу зараз робитимуть на якомусь Rust і RTOS, тому що ніхто не захоче рахувати цикли вручну й усі змінні статично розміщувати. І ChatGPT тут дуже умовно до чогось :)

І ще одне, дивиться яка справа. Коли ви просите модель написати вам

«Напиши команду для поуершел для копіювання файлів з розширенням .dll з однієї теки в іншу»

То ви не надєте жодних уточнень чи контексту.

Скоріше отриманий код спрацює у більшості випадків. Але код з 3 команд, якщо ви знаєте повершел, ви напишете швидше, ніж запрос мовою до моделі.

А якщо ви не знаєте повершел, то ви не зрозумієте особливості наданого рішення і якщо щось піде не так... Звісно, 3 команди важко не зрозуміти, але з ростом складності запросу (тобто, рішення) дуже швидко зменшується область, де він спрацює і дуже росте вірогідність помилки — як то від не «розуміння» контексту моделлю, чи не точністю формулювання людиною (че ми ще не враховуємо неточність чи «галюцинації» самої моделі) — тобто умовний діапазон цінності моделі дуже вузкий — коли вона вже краще і швидше новачка але проблеми точності відповіді, повноти та точності контексту і помилок модели ще не критичні. І найгірше тут те, що модель — то чорний ящик і у нас немає жодного способу перевірити рішеняя, крім як вирішити самостійно та порівняти, але якщо ви взмозі вирішити самостійно — то який взагалі сенс в моделі? Підказати напрямок?

І я хочу наголосити, що я не вважаю, що розвиток великих мовних моделей — це погано. Але сучасний хайп на них та не розуміння ризиків — погано. Бо зараз це намагаються впихнути всюди. де треба і де не треба — аби було.

Якесь у вас не дуже ефективне використання ChatGPT. Не кажу в цілому за LLM, бо їх можна створювати під будь які задачі.

По-перше, ChatGPT це не гугл.
Гугл для пошуку інформації в інтернеті. Чат це доступ до агрегованих знань на базі оцифрованої текстової інформації.

Оскільки текстом закодовані знання, то можна сказати що це агрегатор знань (якій, правда ці знання не «розуміє»). Це наче примитивний мозок людини, яка прочитала всі існуючі книжки, журнали, і тд. Мозок по набору вхідних речень шукає щось найбільш наближене і відповідає таким собі агрегованим текстом, у якому закодовані знання. Людина нічого не розуміє, тому відповідає наборами речень що зустрічала в книжках.

Використовувати ефективно можна, але пам’ятати, що ефективно воно генерує тільки тексти:

1) Для вивчення нових розділів знань чи покращення глибини існуючих. Воно вміє давати summary, якого достатньо для базового розуміння. «I wanna learn LLM. What should I know before starting?». «Explain integtals with examples». За нюансами велкам у книжки, підручники, мануали, журнали, першоджерела. Тобто, отримати кусок тексту який в цілому описує якусь область, концерт, дослідження в тд — воно робить це добре. Зручно потім на основі відповіді деталізувати щось, добре робить плани вивчення чогось. Постійно користуюсь.

2) Для модифікації текстів. Написали листа партнеру. «Here is a letter. Correct mistakes, make it more friendly. Letter should be more formal». Чи зробили шаблон листа і просите згенерувати 10 нових під кожного клієнта на основі короткого опису конкретного отримувача. Чи накидали список ідей і запит «згенеруй текст на основі цього списку».

3) Генерація тесткейсів, блобів, і тд. Тут була стаття як QA можуть використовувати ChatGPT, там просто чудово все розписано.

Тобто, все шо повʼязано з генераціє текстів, якщо ви потім їх перевіряєте — це і є ефективним використанням.
Код? Скоріш ні, або тільки в навчанні, бо код це не просто генерація тексту, там знання складніші.

Згоден, що тексти чат генерує, умовно, нормально.
Щодо навчання маю сумнів, бо не зрозуміло звідки він бере свої поради. Зазвичай, вони схожі на якісь середні, очевидні поради з популярних форумів. Але їх користь нічим не доведена.

Але я загалом не зовсім про це.
В якомусь граничному наближенні, замість листа згенерованого LLM порядна людина мала б відправити щось типу «Ввічливе привітаннячко» або реакцію «серце»
Ну тобто який сенс спілкуватися за допомогою текстового сміття замість зрозумілих і чітких інтерфейсів які вже розроблені?

Дуже скоро всі кавер летерс які згенерує чат на іншому кінці буде читати такий самий чат.
І формально ви мали б натиснути кнопку «згенерувати листа» а на іншому боці адресат отримав би вашу позицію в списку кандидатів. Подання на позицію я тут для прикладу, до вас конкретно воно не стосується.

Тобто ми маємо величезні простирадла тексту, які нікому не потрібні. Я іноді кілька разів прошу чат скоротити відповідь. При чому, на якомусь етапі він не пише що наприклад не може більше скорочувати а просто надсилає ті самі, але то таке вже.

Щодо навчання маю сумнів, бо не зрозуміло звідки він бере свої поради. Зазвичай, вони схожі на якісь середні, очевидні поради з популярних форумів. Але їх користь нічим не доведена.

можно запитати в нього, звідки поради
можна запитати поради згідно поточних гайдлайнів, програм
можна запитати план навчання по підручникам

він навчався на достатній кількості текстової інформації, щоб відповісти на ці питання нормально

Ну тобто який сенс спілкуватися за допомогою текстового сміття замість зрозумілих і чітких інтерфейсів які вже розроблені?

То шо ви називаєте «сміттям», в діловому світі є взагалі-то нормальний спосіб листування. Формати обміну текстовими повідомленнями залежать від області, індустрії, культури. Не пригадую в своєму листуванні в освіті чи бізнесі, де було б хоча б 10% сміття. Там зазвичай важлива інформація у вигляді, потрібному для обміну знаннями + формальні вимоги для структури і звичайні мовні конструкції. І неможливо там нічого скоротити.

Дуже скоро всі кавер летерс які згенерує чат на іншому кінці буде читати такий самий чат.
І формально ви мали б натиснути кнопку «згенерувати листа» а на іншому боці адресат отримав би вашу позицію в списку кандидатів. Подання на позицію я тут для прикладу, до вас конкретно воно не стосується.

Це задача зберігати знання про вас у цифровому вигляді і передавати її в потрібну компанію про вас як кандидата. Така собі база данних. Це окрема задача. Тут не генерація тексту, тут ChatGPT не потрібен.

Тобто ми маємо величезні простирадла тексту, які нікому не потрібні. Я іноді кілька разів прошу чат скоротити відповідь. При чому, на якомусь етапі він не пише що наприклад не може більше скорочувати а просто надсилає ті самі, але то таке вже.

Знов — не кожен текст простирадло. Є вимоги до того, скільки тексту, у якому вигляді і з якою деталізацією треба передати отримувачу. Запрошувати товарища на пиво листом у бізнес форматі це не дуже розумно. Писати шерхолдерам про тему зустрічи чи розбір інцидента в 2-х реченнях це теж таке собі. Листування з професором у навчальному закладі вимагає певного структурованого простирадла. Можливо в ваших умовах це все просто не потрібно.

Я ж не писав що не потрібен бізнес-етікет. Але якщо за вас його буде виконувати чатЖпт то він перетвориться в непотрібне сміття, навіть без врахування того що невдовзі його і читати буде чат.
Тобто все ваше важливе листування зрештою буде зведено до того що ви будете копипастити промти, або напишете модний додаток в якому буде випадаючий список з пошуком по цім промптам ) І текст проякий ви кажете зникне.

Я вважаю людей які пишуть через чатЖпт листи в яких 90% важливої інформації, особливими сміливцями. Як приборкувачів тигрів.

ви завжди можете сказати “use simple vocabuluary, keep social sugar to the minimum” і буде вам щастя...

Я робив ці вмовляння як тільки він з’явився. Іноді він погоджується іноді поводиться дивно.

Якось у вас не склалося з ChatGPT :) Можливо, він розуміє, що ви його ненавидите :)

Від звичайних людей ви також сподіваєтеся почути те, що ви подумали або звикли чути, замість того, що насправді запитали? :))

Якщо є поради що-до покращення інтерфесу ChatGPT, то можна запропонувати це в community.openai.com/...​atgpt/feature-requests/24 А ще OpenAI для пошуку окремо готує SearchGPT.

А ти, перш чим неймовірно складний запит вдправляти у віконечко чатику, розпакуй його, на декілька простіших. А потім, оці простіші, ще розпакуй.
Нативна мова це мова упаковок. Ці упаковки, вони у обкладинках, а там далі коробочки у боксиках.
Я сьогодні шукав за гречку. Навіть запит зберігся у пам’яті браузера:

скільки грам гречки на одну порцію

Подивися — у деякому сенсі мій запит це набір ключовиків.
Також у нас є технологія послідовного покрокового наближення, є методи бінарного пошуку...
Ну і от що було далі — гугл мені видав декілька варіантів можливих результатів, що підходили під відповідь до мого запиту.
І далі я просто вибрав те, що найбільш мене влаштувало.
imgur.com/FsvB8CA
P.S.
Гугл пошук вже працює за допомогою якогось ШІ, якось той там обрабатує запити користувачів. Десь була така інфа.

Це все геть навпаки.
Щоб отримати щось корисне від чату потрібно вміти грати з ним в рольові ігри. Це те що всі чомусь називають промтінжінірінг. Тобто ви мусите не згодовувати йому короткі питання а навпаки дуже розлого і ніби спрямовуючи його майбутьню відповідь писати щось типу таке «Уяви що ти досвідчений шеф-кухар в дорогому ресторані й до вас завитав клієнт який поспішає і він каже що дуже любить гречку...» Ну і таке інше. Я трохи утрирую, якщо що, але суть саме така.
Принаймні версія 4 таке дуже любить. 4о наче сама таке робить з примітивних питань, але дуже довго і значно дорожче.
І ні, гугл не користується ШІ під час звичайного пошуку. Там під капотом такий монстр що адаптувати його під роботу з LLM просто неможливо навіть теоретично. Тем більш щоб отримувати відповіді за десять мілісекунд як іноді буває.

З PDF він вам «перескаже» те що треба

Мануал на 40 сторінок англійською:
media3.bosch-home.com/...​ocuments/9000871368_F.pdf

Q: Як зупинити программу? Відповідай украйнською

A: Щоб зупинити програму на вашому пристрої, вам потрібно виконати наступні кроки (згідно з інструкціями в документі):

1. Натисніть та утримуйте кнопку «START» приблизно 3 секунди.
2. Дисплей покаже код "":"‚«, що означає, що програма зупиняється.
3. Програма завершиться за 1 хвилину, після чого на дисплеї з’явиться «„:“»«, що означає, що процес повністю завершений.
4. Вимкніть прилад, натиснувши кнопку «ON/OFF».

Якщо є додаткові питання, не соромтеся звертатися!

Я не зовсім це мав на увазі.
Скачати pdf це виклик навіть для відомих вендорів, якщо вашому гаджету більше п’яти років. Для нонейм ще складніше.
Після того як ви його знайшли його треба згодувати чату.
І погоджуюсь для текстових він ще може якось впоратися, ось тільки багато топових вендорів роблять мануали схожу на комікс, тобто з мінімальною кількістю тексту.
І це не головне питання. Головне що мануалі не читають не тому що вони нудні, а тому що вони не відповідають реальної поведінці пристрою.
І коли в гуглі я поставлю те саме питання я отримаю відповіді з урахуванням досвіду інших користувачів. Це може бути що завгодно. Типу — Була партія в який штекер стоїть не тим боком! Неси в сервіс!

:) Схоже, вам треба докласти зусиль і все ж зайти на chat.openai.com :)
Пошук в інтернеті воно робить вже більше року :)

Схоже я дійсно маю проблеми з донесенням інформації.
Я користуюся платною версією з самого початку і знаю всі можливості.
У мене лише питання — нащо мені додаткова обгортка над гуглом? Це ж марнування часу. Які переваги шукати в інтернеті за допомогою Чату?

Це швидше, пошук гугла давно не торт.

Я спочатку теж так думав. Зараз повернувся до гугла. Не маю часу на марення ChatGPT та його необізнаність щодо величезної купи питань.

Є конкретні приклади, де запит гугла швидше і краще чим в той же ChatGPT?
Крім того коли не знаєш що шукати, то ChatGPT дуже гарно підказує, чого не вміє Гугл.

І я це говорю як скептик який не вірить в те що LLM замінять якихось працівників за 5-20 років.

Все що стосується програмування я припинив питати у Чата. Зазвичай це виходило марнуванням часу. Спочатку звісно було вау!
Все що стосується конкретних речей я припинив питати в Чата. Канонічне, «скільки варити гречку», також, бо насправді коли ви таке питаєте то ваше запитання дещо ширше ніж просто дізнатися час, якого насправді не існує, і Чат про це не знає а Гугл знає, тому що він просто видає релевантний вашому, користувацький досвід, а не відповідь про час. І так майже зі всім. Проблема Чату що він не дуже має доступ до конкретного досвіду інших людей, хоча наче це його головна фіча і його на ньому навчали. Але зрештою його «знання» опинилося біля усередненого. Це дуже помітно, як на мене.

Тобто конкретики не буде?

Все що стосується програмування ChatGPT підказує краще в середньому, за деякими виключеннями.

Досвід людей, це ви про забиту пошукову видачу SEO оптимізованим сміттям? Чи про високоякісну статтю від Кумара?

Якби ви сказали, що він такий собі код пише, то я б з вами ще погодився б. Але тут ви не об’єктивні.

А чому б вам не надати приклади конкретних запитів в яких ЧатЖПТ буде краще за гугл?
Просто, я відстоюю іншу тезу, я кажу що мене, після цукерково-букетного періоду, якість його «пошукових» відповідей не влаштовує, і вочевидь на вашу думку не вмію їх готувати.
Конкретно, я написав вам про «скільки варити гречку». Може спробуєте перечитати і зрозуміти про що я, і чому відповідь на стакоферфлоу на мою думку завжди краще. Не одразу краще, а типу за рахунком наприкінці матчу.

І на мою думку, він не пише код, а генерує відповідь у вигляді набору токенів, яка не може бути формально повторена зі 100% точністю, з якоїсь не дуже великої кількості цих токенів. Тому, джун пише код, а чат лише генерує відповідь. Це дуже різни процеси, хоча можуть бути схожими за результатами, коли ідеться про щось умовно просте.

Щодо СЕО-Кумара — а Чат навчався на вашу думку на яких корпусах тексту? З таємних вечерь які влаштовував Дядько Боб?

Так ви ж не просили)

Реальні приклади:
Треба було швидко ознайомитись з базою по VAT в Канаді
«How VAT is working in Canada?» — Швидка, точна і коротка відповідь по суті (в гуглі куча води)
Продовжую в тому же діалозі
«How to calculate margin?» — моментальна відповідь з формулою і прикладами. В гуглі купа сміття на відбір якого не має ні часу ні бажання.

Я вам приклад хоча б один надав. А ви мені хоча б один можете надати?

Відповідь на стаковерфлоу це вже не про гугління, а про вирішення конкретної проблеми. І наразі з цим ChatGPT справляється навіть краще, а хороші відповіді на stackoverflow далеко не завжди позначені як найкращі. Треба розбиратись.

Прикол в тому, що LLM навчалась на всьому, в тому числі на Кумарах, але також на документації та наукових статтях. І LLM вам генерує вижимку з цих всіх сорсів, категорізує, сортує, дистилює. Тоді як гугл вам видає SEO-Кумара на перших сторінках і розібратись в виданній порції лайна потребує часу. Це той час що зберігає LLM.

Тобто LLM все ще швидше чим гугління.

Я щойно вів

How VAT is working in Canada?

в гугл і в чат.
В гугл я менше ніж за секунду отримав кілька джерел, включно з офіційною сторінкою канадського уряду, а також на пояснення від небайдужих людей, на приклади, та на рекламу послуг, звісно.
Чат більше 10 секунд «друкував» поганий копіпаст з урядового порталу, пропустивши Альберту і бозна що ще.
Я думаю, що в нас просто різне сприйняття інформації. Я б ніколи нічого не робив щодо VAT спираючись на відповідь ЧатЖПТ. Зі сторінкою канадського уряду, з адвокатами, з добрими самрянинами я б вже почав щось думати.

Як вам вдається отримувати швидку відповідь вид чату? Я іноді встигаю закосплеїти пошук вглибину в гуглі, доки чат продовжує друкувати. Я про платну версію.

Гугл видав кучу води, ви про що взагалі?

Гугл і відкриття першил посилань...
i.imgur.com/bFFUxfz.png
Перше посилання на quickbook, банально реклама і куча води
i.imgur.com/bHBOhRG.png
реклама wide, куча картинок
i.imgur.com/32HyWJy.png
реклама taxback, лайк за те що основна інфа є без скроллінгу, дізлайк за те що важко читається, але це вже 3 посилання....
i.imgur.com/f1ixVIb.png

і це я ще не дійшов до свого наступного питання «How to calculate margin?»

vs ChatGPT

Відразу основа інфа в текстовому форматі, добре структурована, приклади

i.imgur.com/5lIP48M.png
i.imgur.com/CAfNP73.png

Задаю наступне питання і також отримую гарно структуровану відповідь з прикладами
i.imgur.com/EA8cMeF.png

Так де ваші приклади в іншу сторону? Поки що від вас 0 пруфів і тільки переливання з пустого в порожнє.

Вибачте, в мене інший гугл можливо. І ще, я вже років двадцять як не відкриваю перші видачи, бо там або реклама або навіть підписано що це реклама.

У вас немає сайту канадського уряду в видачі? Немає адвокатів? Немає форумів з обговореннями?

Я не кажу що Чат не вміє структурувати. Я кажу що він структурує невідомо що. І коли ідеться про податки, то користуватися його порадами це, на мою думку, ризиковано.

Я не заперечую генеративні можливості Чату. Вони вражають. Але з часом я помітив що іноді все ж таки гугл значно зручніше.

Я б хотів додати, що те що ви називаєте пруфами, то це лише ваше суб’єктивне відчуття. Тупу, вау, чат вміє в параграфи! Він щось структурує. Структурує настільки що ви готови подавати декларацію базуючись на його видачі? Щиро не раджу цього робити, а скористатися «банальною рекламою і купою води»

Суть гугління в тому, що потрібно швидко отримату базову інформацію. Ваша пропозиція подачі декларації по ChatGPT безглузда така ж як і подача по першим посиланням гугла.

Ви просили приклад, я вам надав, вам щось не подобається. Від вас тільки бла-бла-бла.

Поки ви не надасте реальні приклади де ChatGPT гірше/повільніше, то я не буду витрачити час на діалог з вами.

Вибачте, ви нічого не надали окрім вашого дуже суб’єктивного враження від роботи з чатЖПТ. І купу непотрібних скріншотів. Я б сказав що це і є бла-бла-бла.

Ви доволі неуважні. Я написав що я вже дуже давно не користуюся першими посиланнями від гугл. Мені здавалося що всі роблять так само. Я порадив вам скористатися рекламою, як всі роблять, бо в цьому суть конкурентної боротьби на ринку адвокатів. Я до речі, взагалі не розумію що ви будете робити з інформацією від чату про VAT. Навіть приблизно не уявляю нащо і кому може знадобиться така «вижимка»

І невже в вас чатЖПТ друкує відповідь швидше ніж ви отримуєте видачу гугла? У мене це конкретно буває і 10х і 20х і більше. Іноді раніше він взагалі зупинявся і треба було робити запит знову.

Невже 10х це не конкретно?

бла-бла-бла

Ваші приклади де?)

І невже в вас чатЖПТ друкує відповідь швидше ніж ви отримуєте видачу гугла? У мене це конкретно буває і 10х і 20х і більше. Іноді раніше він взагалі зупинявся і треба було робити запит знову.
Ви доволі неуважні. Я написав що я вже дуже давно не користуюся першими посиланнями від гугл.

На яке посилання треба нажимати в видачі, є якась специфічна цифра, скажімо 9? Треба завжди відкривати 9 посилання?)

Все що стосується програмування я припинив питати у Чата. Зазвичай це виходило марнуванням часу.

нагадую ваше пусте твердження

Це для вас мої твердження пусти. А для мене те що ви пишете це бла-бла-бла.

Невже може бути кращій доказ того, що інтерфейс у вигляді написання тексту це повний відстій?

Все що стосується програмування я припинив питати у Чата. Зазвичай це виходило марнуванням часу.

Не бачу прикладів.

Це тому що я їх не надавав, і навіть обґрунтував це своє рішення ще до того як ви чомусь вирішили наполягати.

Я наведу приклад для пояснення про що я, не з програмування щоб не зводити можливу дискусію в багатоповерховий тред.
Це тому що я їх не надавав

На цьому можна закінчити не тільки наш діалог, а і взагалі закрити топік

/closed

Бо гугл це всрата реклама, редіректи, ублюдочні попачіки про кукіс, підписька пропрошайки та інше мерзенне ригалово від звичайного уеб-інтерфесу. я десь 90% запитів перевів до чат жпт бо він мені тупо одразу вивалює інфу(я прекрасно в курсі що він іноді галюцинує, так само як і сайти п***аболи несуть маячню) а не просить підписатись на розсилку чи якусь підписку на сайти котрі я прочитав і забув на все життя.

Може у вас не встановлений AdBlock? Я з жахом думаю про той час коли гугл його остаточно переможе.
Але не головній сторінці видачі реклама підписана і на неї можна не тицати., ні?
Та і чи не виникає в вас питання — Чому це в гуглі стільки реклами, а чатжпт віддає всю ту саму інфу, та навіть краще, як кажуть, безкоштовно і без реклами? Ну ми ж не у казці й знаємо, що за все треба платити, а іншої бізнес-моделі для пошуку окрім реклами поки що ніхто не вигадав. І тут відповіді окрім тієї, що чатЖпт видає погану, обрізану інформацію, у мене в голові не виникає.

Ну і я там одній людині вже ставив питання, але вона злилася — Що ви робите з отриманою інформацією від ЧатЖПТ? Одразу використовуєте? Мені це дивно уявити, бо я навіть якщо чат мені щось підкаже все одне потім іду в гугл. Це стосується взагалі будь якої інформації від чатЖпт, може за одим виключенням — іноді я довіряю йому щодо англійської граматики повністю. І це лише тому що не існує адекватного пошуку для цієї теми. Тобто адекватного не в розумінні хлопця з флюент C2, який знайде тому що точно знає що шукати, а суто інтуїтивного, коли можна добирати за рахунок загального розвитку.

Проблема з інтерфейсом очевидна.
Але розвиток бачиться таким, що ШІ при потребі буде сам малювати temporary інтерфейси для взаємодії з людиною на внутрішній мові програмування. Це як ти зайшов в якісь заклад, а тобі на вході рецепції:
— Заповніть анкету.
Також контекстне вікно буде розширюватися, тож з часом персональний ШІ буде краще знати людину та взаємодіяти з ним як персональний асистент (секретар).

Управління вашим календарем ‘coming soon’, Windows AI PC матиме доступ до всіх програм на вашому комп’ютері.

За декілька сотень тисяч років людина звикла користуватися мовою для спілкування. Останні 100 років, поки комп’ютери не мали нормального інтерфейсу, виросло декілька поколінь ‘шаманів’, які вважають кнопки та мишки гарним інтерфейсом :) Але це скоро виправиться :)

Це залежить від інформації. Людина перш за все візуал. Навіть зараз, є можливість не натискати кнопки, а надиктувати меседж, і цій технології вже років 15, але всеодно 90% повідомлень набирають вручну, а не надиктовують.

ChatGPT підтрімує голос майже з самого початку...
Голос vs набрати — це взагалі не принципово, в багатьох випадках це залежить від того, де ви знаходитесь і чи припустимо використовувати голос.

Але з часом лінуєшся і починаєш користуватися голосом.

Насправді ти ніколи не дізнаєшся, чи було воно надиктовано, чи ні. Я впевнений, що це вже набагато більше ніж 10%

Q: Мене звати вася пупкін і я алкоголік. Такой я живу на вулиці Леніна 24А, кв 13. І маю середний дохів в 24булки на день.

Маючі цю інформацію заповни JSON:

{
  name: "...",
  address: "".
  income: {
}

A: Here’s a corrected version of your text along with the filled-out JSON:

Corrected text:

«Мене звати Вася Пупкін, і я алкоголік. Також я живу на вулиці Леніна, 24А, кв. 13. І маю середній дохід 24 булки на день.»

JSON:

{
  "name": "Вася Пупкін",
  "address": "вулиця Леніна, 24А, кв. 13",
  "income": {
    "daily": "24 булки"
  }
}

Зрозуміло, що частину про заповни JSON добавить CRMка закладу

«Мене звати Вася Пупкін, і я алкоголік. Також я живу на вулиці Леніна, 24А, кв. 13. І маю середній дохід 24 булки на день.»

GPT + FP вже намалював для тебе інтерфейс. Тож якщо споживання булок зміниться, на цей раз просто подредактуєш число в text box

fraplat.com/...​6485d9cc230d9af67f521.jpg

Навіщо мені клікати між 3 полями, здогадуватись, що і куди тикати, і все це? Якщо я можу просто сказати або написати текстом те, що треба, як мені заманеться, а модель вже все витягне, зробить геокодинг, знайде, скільки коштує булка, і все це?

Мене нудить, коли від мене вимагають розбити адресу на 5 полів і ще й запам’ятати поштовий індекс... Навіщо це? Тут немає інформації.

Мені взагалі не цікаво, як CRM всередині буде структурувати ці дані.

Якщо я скажу що мені 25 років, або що я народився в 99-тому — це справа моделі перевести це в той рік народження 4-мя цифрами, якій їй насправді треба

Ну ок. Кількість булок змінилась.
З текстовим інтерфейсом пишеш => «А памьятаєш ти генерувала джисон де була кількість булок пупкіна. Можеш змінити на 25 тепер»
З візуал інтерфейсом, відкрив, набрав => 25

Люди люблять сприймати/редагувати візуал інфо

Пф, взагалі ні до чого.

Я просто скажу: «Тепер мені платять 25 булок», а CRM підтягне старий запис і його відкоригує. Я як користувач цього JSON’а ніколи не побачу.

А CRM, якщо це потрібно, не просто відкоригує JSON, а ще й додасть запис в історію, що з певного моменту мені платять 25 булок.

Тобто UI/UX має працювати для користувача, а внутрішня кухня CRM — це технічні деталі, які взагалі не повинні його цікавити.

Так це всеодно довше чим набрати/зберегти число «25».
Твій інтерфейс зручніший, якщо ти за кермом. Тоді так, маєш багато часу надіктовувати, але не можеж перевірити чи все правильно зробило.

Де мені це набрати? Піти на той сайт, про який я вже 13 разів забув, там авторизуватися паролем, який я вже 13 разів забув, знайти цю форму десь на третьому рівні меню, натиснути щось і ще якось знайти, як змінити, що тепер це органічні булки з цільнозернового борошна?

Ти що фантастичні фільми не дивився ?
— Джесі, панель управління космольотом мені на екран...
Клац клац клац по тач скріну, прімєніть ....

навіщо панель управління? Хал, ми летимо на Альдебаран, все.

Ок, летимо, автопілот.
Далі тобі скучно, кажеш, вибери мені художній фільм з пятю найгарнішими акторками.
«Ок, я вибрав для тебе фільм»
Віримо на слово та продовжуємо голосом щось надиктовувати, чи всеж таки пять фільмів і до кожного пять фоток дівчат на тачскріні щоб остаточно зробити вибір клацнувши пальцем ?

Пф, ну ви ж не збираєтесь дивитись у фільмі лише озвучку, мабуть... Ніхто не відміняє візуальну частину, але йти до екрана і тикати пальцем зовсім не обов’язково :) Можна просто сказати, що ви віддаєте перевагу природним формам :)

ШІ може запропонувати мікс інтерфейсів. Динамічно створені візуальні + Речові.
Наприклад грати в шахмати краще з візуальним інтерфейсом.
А читати книги краще аудіо (і то не завжди).

Вам варто передивитися той момент коли він голосом умовляв Хала відкрити двері.

До чого воно тут?
Якби він використовував не голос, нічого б не змінилося :))

Може і не змінилося б. Але він лише один раз натиснув би кнопку, і одразу побачив би «access denied» і пішов би за космічною сокирою. Не витрачаючи кисень на спілкування з ШІ

Я б її разів 10 щонайменше нажав :)) А потім відійшов на пару хвилин і знову нажав — може там щось релоадиться, чи рейт ліміт якийсь :)) Ви мабуть взагалі не програміст :))

Великий бонус «free style» інтерфейсу саме в тому, що ти отримуєш інформацію в тому вигляді, як її хотів подати користувач, не спотворену тим, як він зміг це втиснути у 24 поля на 15 формочках. І якщо щось пішло не так, ти завжди можеш сказати користувачу: «Перепрошую, я нічого не зрозумів, зараз прийде хтось і розбереться».

Ну і ніхто не забороняє давати фідбек: «Вітаємо, ми оновили наші записи — тепер ви заробляєте 25 корисних булок замість 24»

Також контекстне вікно буде розширюватися

Вже зараз контекстве вікно у більшості моделей більше 200кб тексту, наврядчи ви зможете про себе більше розказати за день чи два :)

Це цікава думка.
Тобто я наприклад задаю контекст коротким повідомленням і Чат формує зручний гуі.
Але чи не перетворить це його в той самий гугл чи стаковерфло?

Гугл або стековерфлоу віддають статичну інфу. Умовно якщо потрібного вам сайту/додатку для керування/перегляду немає, гугл не може його створити динамічно. А ШІ зможе.

Так, мені таке потрібно! Щоб користуватися без приступів гніву сайтами типу https:// www. rcscomponents .kiev .ua/
Але ж це все одно неможливо без повного доступу до їх api

Це просто сайт, зроблений з точки зору CRM, а не користувача :)) Саме ті динамічно згенеровані формочки «з усіма існуючими параметрами» — ось це все, як замовляли :)

І вам насправді не потрібно більше формочок, вам потрібна штука, яка забере все дерево категорій, знайде, в якій категорії, найімовірніше, те, що вам потрібно, візьме ваш запит параметрів, знайде, як саме ці параметри називаються у RCS, і зробить машинноорієнтований запит через їхній «універсальний» UI.

І підхід Google тут вам не дуже допоможе, тому що вам потрібен саме семантичний аналіз, пошук за нечіткими категоріями і все таке. Можете називати це «фантазіями на тему», але саме це в цьому випадку має сенс.

Це не таке просте питання. Ви зараз кажете про ідеальну машину яка знає все про кілька величезних контекстів. Від мого сетапу для пайки, моїх уподобань до складських залишків з графіком очікування від китайців, з альтернативними площадками, з альтернативними схеми з можливістю «кинути шмарклю» на платі тощо.
І насправді, коли я замовляю на цьому незручному сайті я це все автоматично роблю навіть не помічаючи.

Коли ви робите це під реальну бізнес-задачу, ці знання акумулюються в промпті чи у сховищі документів. І модель їх використовує при формуванні запитів або відборі варіантів.

Це звучить надто складно для кінцевого користувача. А з моїм досвідом, ще і трохи теоретично.

До речі, спробуйте себе уявити як би ви замовляли щось схоже у Чата. Уявляєте об’єм інформації який треба тримати в голові щоб написати вдалий промт? Я вже не кажу про промовити. Консоль лінуха відпочиває.

Пф, ви не створюєте «вдалий промпт», ви працюєте інтерактивно, даючи можливість моделі дозавантажити необхідну інформацію в контекст і таке інше.

Коли ви робите інтерфейс, пов’язаний з якоюсь back-office системою, ви надаєте агенту інструменти — інтерфейси, через які він може робити запити до реальної інформації, наприклад, вашого внутрішнього інвентарю, параметрів тощо. (У ChatGPT це custom GPT, якому можна дати доступ до документів та REST API, специфічних для вашого завдання). Якщо через API — то там свої інтерфейси для «submit tool results».

Тобто модель «фантазує» щодо змісту сказаного, і використовує реальні запити для актуальних даних.

python.langchain.com/...​io/chat/function_calling
platform.openai.com/...​ts/tools/function-calling

І ви це все робили не на навчальному прикладі а не реальному юзкейсі? Розкажіть про досвід користування, якщо можна. Всім було б цікаво.

Реальний юзкейс — email-інтерфейс до системи авіа-логістики. І це саме той приклад, коли «традиційний» інтерфейс — це 5 вкладок з 30 полями на кожній та мільйоном трилітерних скорочень і бізнес-правил.
І жоден «простий користувач» не зможе це заповнити, як би він не старався.
Ну і це сфера, де все завжди робиться через email.

І це вже на проді? Тоді вітаю. Я ще не знаходив прикладів використання LLM такого рівня.

Це ви десь не там шукали. Structured Data Extraction це зараз дуже популярна тема

Екстракшн то екстракш, то зрозуміло, але продаж авіаквитків, якщо він дійсно працює, то, як зараз кажуть, це потужно.

Це вантажоперевезення, а не квитки, там набагато більше моментів та паперів :)

Реальний юзкейс — email-інтерфейс до системи авіа-логістики.

І як вони побороли галюцінації мережі, і це на хвилиночку в авіа індустрії.

На задачах сумаризації зі structured output with strict JSON schema та низькою температурою галюцинацій дуже мало.

Плюс інтеграція з бекофісом робить усі необхідні перевірки згідно з бізнес-правилами, реальними цінами і т.д.

Тобто ніхто не очікує, що LLM вирішить задачу комівояжера, але вона легко зможе екстрактувати, що, звідки і куди треба відвезти.

Включаючи щось таке:

Can you give me a rate for an LD3 of grapes from LAX to SCL? Weight is 1300k
Плюс інтеграція з бекофісом робить усі необхідні перевірки згідно з бізнес-правилами, реальними цінами і т.д.

Тобто ніхто не очікує, що LLM вирішить задачу комівояжера, але вона легко зможе екстрактувати, що, звідки і куди треба відвезти.

А при чому тут бекенд ? Тема про інтерфейси. Умовно спілкування machine + machine працює через json.
Human + machine, працює через візуальні інструменти та текст звичайної мови.

Ви чомусь хочете навязати людині лише текстові промпти. А там де людині не зручно писати/говорити текст, типу такого не буває

Я про те, що в багатьох випадках, коли інформація не дуже структурована, змусити користувача правильно її структурувати може бути досить важко :)

Не знаю про що ти. Наприклад якщо треба вибрати місце доставки, треба тицьнути в місце на карті в багатьох апках, або просто зчитають твоє місцеположення по gps. От що там оптимізувати за допомогою ШІ. Які там промпти замість одного дотику на карті.

Так-так :)) В офісному центрі на 26 поверхів з внутрішнім складом та службою доставки, яка працює з 7 до 12 і не обробляє шипменти важчі за 100 кг :)
І тобі прислали адресу картинкою зі скріншотом з внутрішньої CRM, тому що там адреса розбита на 10 окремих полів, і просто зробити копі-паст неможливо :)

Ну от знову

з 7 до 12 і не обробляє шипменти важчі за 100 кг

Скільки людей замовляють на пошті з доставкою важче за 100 кг. Оптимізуєш 1% замовлень, ускладнюючи життя промптами всім іншим 99%

Я розповідаю про те, що ми хендлімо вже зараз :) Це b2b, тут немає нормальних людей :))

Чесно я не зрозумів ваш юзкейс.
Якщо там b2b то можливо взагалі вистачить DropDownList в CRM де перераховані перелік доступних складів. Що там можна за допомогою gpt оптимізувати, не зрозуміло.

ok :) whatever you want :)

Я впевнений що сучасні LLM впораються з цим тільки якщо в них буде встановлений канал з техпідримкою в Індії. Але на це піде все одно пів-години. Якщо пощастить.
Ще забули про ремонт ліфта, і доступ по id на сьомому звідки через коридор, потім вниз на паркінг, там спросити охоронця Василя і він покаже.
До рече, це п’ята Аххилеса для тесловської вантажівки, бо доїхати вона доїде а що потім робити на «технопарку» де біс ноги переламає, і тупо два нових шлагбаума, ніхто поки що не знає.

Саме тому ми не намагаємося засунути це у формочки, а зберігаємо оригінальне повідомлення від користувача, щоб завжди мати можливість передати його оператору.
Але в 80% випадків LLM нормально екстрактує достатню кількість інформації.

Скажи чесно. Ти вважаєш що умовний сайт розетка можна замінити промптами ? Нехай там тричі надпотужний інтелект під капотом.
Сфера продажів ніколи не зміниться. Навіть тисячу років тому, ти заходив на базар, дивився очами що там приблизно є і далі вже твій продавець давав тобі інфо. Роль консультанта може відіграти gpt, якщо в тебе виникнуть додаткові питання про товар. На цьому все.

Не можна замінити сайт Rozetka, але можна зробити для нього нормальний пошук, який буде знаходити те, що тобі справді потрібно, а не щось, якось схоже на щось.

Бекофіси нікуди не дінуться — це зовсім про інше.

А ти досліджував що саме забивають в пошук ? Я думаю там в 95% випадків конкретна назва товару типу айфон чи макбук після чого потрібно лише відфільтрувати параметри (візуал) конкретних моделей. Ще тобі банер підсунуть, що докупи ще це і отримай 5% знижку. І ось тут ти хочеш щось оптимізувати. Цікаво що. Побути психологом у той дитини що зробила 5 помилок в назві товару та забила в пошуковий запит ?

Хаха, спробуй так знайти велосипед для дитини :))

Те, що ці конкретні позиції — це спеціально налаштована SEO видача.

А не всі дитячі велосипеди.

А якщо в анонімному вікні? Хоча гео залишиться і все одно буде тягнути з російськомовних баз. І це дуже дратує в гуглі коли не можеш просто запитати щось в Аргентині. Хоча чат тут теж не дуже допоможе.

Там картинка вже зломалася, там був скриншот з «велосипед для дитини» в назві товара

Я через це майже ніколи не шукаю в самих магазинах, а спочатку в Google Goods, а вже з них за прямими посиланнями переходжу на товар на сайті магазину, тому що Google хоч якось чистить спам.

Але SearchGPT все полікує :)

А що з сайтом не так ? Немає фасетного пошуку зліва як на розетці + категорії ? Чи як виглядає типовий сценарій роботи з цим сайтом

особисто мені було б простіше якби вони надали можливість писати sql до своєї бази )
конкретно не так це їх проблеми з текстовим пошуком, він не завжди очевидний.
І він мене дратує ) Але я б не хотів заглиблюватися в тему конкретних юай

Скоріш за все, це лише тому, що ти ще не бачив структуру їхньої бази :))))

Ну хай дають сіквел на create database. Я його згодую чату і він буде писати ;)

Категорії не працюють взагалі ніколи, якщо їх більше 10

Працюють так як на розетці. Ввів назву товару, тобі список категорій. Далі сам думаєш, тобі в яку.

Канонічно, більше 7, хоча є частина психологів які кажуть що 3 то максимум для 99% населення.

Виникає питання, чи користувалися ви ChatGPT насправді... :)

Q: Скільки варити гречку?

A: Гречку зазвичай варять приблизно 15-20 хвилин. Ось основний рецепт:
1. Спочатку промийте гречку під холодною водою.
2. Додайте гречку у каструлю та залийте її водою у співвідношенні 1:2 (наприклад, 1 склянка гречки на 2 склянки води).
3. Доведіть воду до кипіння на середньому вогні.
4. Після закипання зменшіть вогонь до мінімуму, накрийте кришкою і варіть гречку 15-20 хвилин, поки вона не вбере всю воду і не стане м’якою.
5. Після цього можна залишити гречку під кришкою ще на кілька хвилин, щоб вона настоялася.
Смачного!

Q: В мене на зарядці аккумулятора Bosch 12V блимае зеленуй LED, що це?

A: Якщо на зарядному пристрої акумулятора Bosch 12V блимає зелений світлодіод, це зазвичай означає, що акумулятор знаходиться в процесі заряджання. Ось кілька можливих станів індикатора:

1. Зелений світлодіод блимає — акумулятор заряджається.
2. Зелений світлодіод горить постійно — акумулятор повністю заряджений і готовий до використання.
3. Червоний світлодіод блимає або горить — може означати проблему з акумулятором або зарядним пристроєм, або що акумулятор перегрітий.

Блимання зеленого світлодіода — це нормальний індикатор, що процес зарядки триває.

Як людина яка трохи вміє і в гречку і в акумулятори мене ці відповіді нагадують лише підтримку бесіди.
Гугул дає конкретні відповіді з урахуванням досвіду інших користувачів. Чат фантазує на тему.
Коли я бачу видачу гугла я бачу значно більше інформації ніж у відповідях Чату, які ще треба читати. Прочитати сторінку це кілька десятків секунд. А потім набрати руками ! вточнючий промт і ще читати сторінку.
Прийняти рішення базуючись на видачі гугла можна менше ніж за 1 секунду. Там буде зручні форми з урахуванням збережених кукі. Наприклад ви вже рік купуєте чомусь зелену гречку. Чи пропарений басматі. Чи акумулятори з прийомки. Чи бозна що ще.
І цей контекст кожного разу завантажувати Чату це дуже не зручно довго і на мою думку майже ніколи не виправдано.
І, так, я багато користуюся Чатом і іншими LLM.

Ви можете завантажити цей контекст один раз через custom instructions або додавати його через memory. Якщо ви скажете: «Запам’ятай, я купую зелену гречку», воно буде використовувати це потім. Також система сама оновлює memory, якщо бачить у цьому сенс.

Це геть не практичні можливості. Вони можуть бути корисними лише для корпоративного використання, хоча навіть тут я маю сумнів, бо зрештою все перетвориться на повнотекстовий пошук, коли потрібно буде з’ясувати на якому мітінгу ми вирішили що ця кнопка тепер зелена а не синя. А це не таке дешеве задоволення той пошук. І я уявляю процес донавчання такої локальної LLM

LLM-и надзвичайно хороші в повнотекстовому пошуку. Для цього не потрібно їх донавчати — це робиться через RAG, коли потрібні частини документів підтягуються в контекст на основі запиту.

File Search $0.10 / GB of vector-storage per day (1 GB free)
Дешево це чи дорого — залежить від задачі :)

А то вони кажуть не про стандартний пошук? Типу без LLM просто пошук.

Це RAG — тобто це індексовані документи які модель буде підтягувати в контекст

Тут треба додати критерії до слова «хорош». Бо, ну не буває див, це ж комп’ютер, а не джин, в нього там пам’ять, потоки, шина, ссд. І зрештою все це або дуже дорого або довго або погано. І тут можна обирати всі опції разом.
Я б з радість почитав про якийсь адекватний бенчмарк між LLM і «стандартним» еластіксерчем.

Читайте про RAG, на arxiv.org кожного дня з’являється кілька нових робіт:
arxiv.org/...​ounced_date_first&size=50

Коментар порушує правила спільноти і видалений модераторами.

Підписатись на коментарі