Как стать автором
Обновить
140
0
Виталик Гордон @alex_blank

незаслуженный народный артист™

Отправить сообщение

Ещё в копилку любопытного. GPT-3 Bash shell completion — выглядит практически как чёрная магия:


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

Да, это вполне может быть просто «умной lookup-таблицей».

Оно безусловно смотрит в готовые результаты из памяти, как-то их комбинируя, но это не делает всё менее интересным :) Вот пара интересных результатов с GPT-3:



Я кстати попробовал поэкспериментировать ещё, и заметил что оно обрывает аутпут вот на таких конструкциях, несмотря на то что максимальная длина текста выставлена явно больше:


He writes the following:
function isEven(array) { for (var i = 0; i

Вероятно, у этой игры совсем плохо с HTML escaping, и оно не может в символ <, считая его началом HTML-тега или типа того? А вот в примере, который мне выдало изначально, этого символа по удачному стечению обстоятельств не было :)

Да, мне кажется что скоро вполне можно будет программировать без вбивания кода вручную, давая высокоуровневое описание кодогенерационной задачи. Чем-то похоже на то, как объясняешь джуниору как написать ту или иную функцию или класс — приходится вдаваться в детали, и не всегда это получается быстрее чем написать самому, но чаще это из-за медленной скорости набора текста :) А вот с AI-«ассистентом» получится куда быстрее итерировать, даже если он в 4 случаев из 5 будет делать не совсем то что нужно, можно быстро его поправлять и приходить к нужному результату. Так как он выдает результат моментально.

Добавил в статью предупреждение про плохую воспроизводимость, спасибо что отписались. К сожалению, не знаю, что там происходит в бекенде этой игры :/

PS: Тоже жду ответа от OpenAI, тоже пока не пришёл :(

Возможно, среди читателей Хабра есть обладатели ключей. Было бы крайне интересно послушать про их опыт взаимодействия с API!

Вопрос — у вас сходу получился такой текст на Dragon Model?

Да, сходу! Я аж сам удивился. У меня есть подозрение, что из-за перехайпленности у этой игры периодически кончается квота запросов в API и оно фоллбечится в менее крупную (более тупую) модель — у OpenAI их несколько размеров на выбор. Еще возможно что авторы игры что-то меняют в настройках, в конце-концов у них нет задачи предоставить «бэкдор» для GPT-3, а есть задача сделать интересный квест.


Также я заметил что крайне важен первоначальный текст, он задает контекст. Хуже всего что-то получается если обращаться с этой штукой как с калькулятором или как с поисковой строкой гугла :) Мб сказывается что её обучали на всякой литературе.

Для желающих самостоятельно поэкспериментировать: я использовал платную версию игры, выбрав в настройках "Dragon model", т.к. как заявляется она основана на GPT-3, и похоже на правду. Бесплатная версия работает на GPT-2, которая примерно в 100 раз меньше.


У меня не получилось добиться безумных результатов других людей где генерируются целые сложные и работающие React-приложения из простого описания, но вероятно это из-за ограничений самой игры, она не может выдавать текст длиннее 100 символов, а также там явно есть какая-то текстово-квестовая специфика, мешающая экспериментам. Поэтому лучше всего результаты получаются если взаимодействие оформлять в виде некого сценария с ролями.


Еще можно записаться в waitlist OpenAI, но судя по всему они не очень охотно раздают инвайты, я уже несколько недель жду, и не факт что ответят.

Реквестую такое же, но для отделений Почты России. Иногда часами там в очередях стоишь, и хотелось бы знать заранее, имеет ли смысл идти в отделение сейчас :)

  1. Если они там висят, это вовсе не значит, что кто-то за эти деньги идёт. Такие вакансии могут годами висеть, периодически пропадая и снова появляясь.


  2. Есть огромное, невероятное, запредельное количество «донного народа» с низкой квалификацией и они тоже все хотят работу. Для многих таких и за 60к счастье куда-то пойти. Среди них могут быть довольно приемлемые/перспективные кандидаты с низкой самооценкой — не знающие себе цену. На «ловлю» таких «зелёных» и рассчитаны эти вакансии.


  3. «От 65» это значит «мы в общем-то не против найти дурачка за 65» — но ведь это минимальная планка, а не то, сколько они реально готовы платить, столкнувшись с нехваткой квалифицированных кандидатов.


Вот ещё неплохо про артикли:


У директора зарплата может быть вообще околонулевая (что не редкость), если он (со)-владелец компании. Джобс и Цукерберг имели зарплату в $1 (один доллар).

В Гугл не знаю, но в пресловутом Яндексе фронтендеров вроде не мучают как каких-нибудь C++ бекендщиков. То есть алгоритмы и листочки есть, но уровень задач попроще.

Куда делись все эти оптимизаторы?

Подозреваю, что они просто занимаются не фронтендом, а какой-то внутренней инфраструктурой, и их работа незаметна (вероятно, как раз потому, что они делают её хорошо)...

На самом деле это довольно интересно и развивает (в плане кругозора), открываются новые грани восприятия :) Не могу сказать что это действительно как-то помогает именно в рутинной повседневной работе (где куда важнее знать API чего-либо или как конфигурить что-то) — но мне кажется что такой опыт может зарешать в 1% случаев когда приходится таки сделать что-то нетривиальное.


Я вот никогда не задрачивал именно алгоритмы и теорию (Кнут et al.), но я постоянно в жизни делал или пытался делать какие-то собственные велосипеды (фреймворки, библиотеки, DSL, интерпретаторы, компиляторы), и думаю именно поэтому задачки Яндекса мне как-то не показались прямо сверхсложными и я без подготовки с большинством из них справился. Думаю, поэтому это работает и в обратную сторону — если целенаправленно «задрочить» алгоритмы, то потом легко будет решать нетривиальные задачи.


Дело в том что «трюки» и «подходы» встречающиеся в решениях таких «олимпиадных» задачек — они на самом деле довольно шаблонные, и поэтому прорешав какое-то их количество (+ изучив чужие оптимальные решения), мозг легко выделяет нужные абстракции и формирует в голове «библиотеку» из типовых подходов, на уровне спинномозговых рефлексов / интуиции.


Конечно, чтобы на это время тратить, нужно либо очень хотеть именно в большую компанию попасть (напр. что-то из FAANG), либо искренне интересоваться тем, как «под капотом» устроены всякие штуки встречающиеся в computer science...


При этом, чтобы просто иметь неплохую зарплату в IT, успешно при этом решая повседневные бизнес-задачи, это всё не нужно — есть полно компаний, где на интервью не будут мучить никакими задачками. Какой-нибудь неизвестный никому стартап, которому нужно нанять людей ещё «вчера» — часто просто не может себе позволить жесткий отбор кандидатов.


А почему в крупных компаниях отбор именно такой, про это уже много говорилось, но всё же, перечислю причины (как мне это видится):


  1. Они могут себе это позволить — желающих слишком много, отбор можно (даже нужно) сделать максимально жестким.


  2. У крупных компаний часто «всё свое», поэтому знания специфичных стеков и фреймворков «на входе» не особо важны, важнее некий raw base skill. Тут идея в том, что если человек разобрался в алгоритмах, то разберется и с любой другой фигней. А вот обратное не всегда верно, наверное.


  3. Наблюдая вживую за процессом решения задачи, можно быстро прикинуть, знает ли человек базовые понятия и примитивы языка, как он в целом мыслит, знает ли на практике (а не в теории) элементарные вещи. А так же как он коммуницирует. Поэтому на интервью полезно «мыслить вслух» и не стесняться взаимодействовать с интервьюером.


> не стал пробовать даже — понял, что не вывезу их задачки


Там не на все позиции сложные задачки, далеко не факт что вас будут спрашивать что-то про деревья, графы и сортировки — это вполне может быть что-то уровня «пробежаться по массиву и что-то просуммировать/разбить на группы», т.е. entry level алгоритмы, встречающиеся в повседневной работе.


Другое дело, что решить даже их за 10-20 минут у доски это очень стрессово и там можно забыть даже как цикл писать, несмотря на большой опыт, не говоря уже про какие-то нетривиальные моменты.


Это решается тренировкой, и если потратить месяц-другой на подготовку (порешать где-нибудь такие задачки типовые, в инете полно сайтов-подборок таких задач), то пройдёте даже самые сложные «секции». Если особо не готовиться и идти «на шару» (чисто скилл проверить), то конечно возможны лютые фейспалмы — и у меня были. Но так как интервью многоэтапное и с разными интервьюерами, то итоговая «взвешенная сумма» может всё равно оказаться в вашу пользу, даже если где-то в отдельных моментах вы затупите.


Как я понял, не обязательно решать всё идеально — достаточно быть лучше других кандидатов. А они тоже тупят адово, идеальных не бывает.

Рассмотрим добавление babel`я в проект

Бабель для Node сегодня уже немодно, вместо него можно установить esm — легковесный загрузчик ES модулей, и запускать проект так:


node -r esm index.js

С mocha:


mocha -r esm

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность