AI и грабли
7.21K subscribers
149 photos
19 videos
4 files
189 links
Строил HR продукты для американского бигтеха. Внедряю AI в чужой бизнес, делаю свой, косячу и пишу про подноготную

@nikolay_sheyko
Download Telegram
Самые частые микро-советы с консультаций:

XML > json (для данных)

XML sections > Markdown headers (для промптов в целом)

Gemini flesh lite > Embeddings search

Gemini > whisper

Порядок экспериментов:
1. Без ризонинга 2. Общий ризонинг 3. Кастомный ризонинг

Кастомный ризонинг делать через поля в structured_output. 1 поле – 1 шаг.

Бейзлайн решение на закрытой мощной дорогой модели – верхняя оценка возможностей. Релевантно, даже если решение нужно делать на открытых моделях

Ваншот запрос (с интерактивным редактированием и перезапуском) > чат с кучей коррекционных сообщений

"Before start, ask questions to clarify what remains unclear/ambiguous. Then wait for my response, then proceed with the initial task"
33🔥18🤝3
AI делает опытных разработчиков менее продуктивными

Нашумевшая статья, про то, что использование ИИ снижает эффективность разработки. А самое интересное, что участники исследования думают, что производительность только увеличилась. Шах и мат, ИИ-энтузиасты.

Ладно, на самом деле я не хотел писать про эту статью, но до сих пор вижу, как ее расшаривают даже в профильных ИИ чатах, так что пора развенчивать мифы.

У этой статьи сразу несколько серьезных проблем:

1. Выборка всего из 16 участников. 16, КАРЛ.

2. Пишут, что было 250 задач. Но если вчитаться, оказывается, что это не на участника, а всего. То есть 16 участников по 16 задач. Если посмотреть на графики в аппендиксе, то видно, что у результатов нет статзначимости 🤥

3. Никто из них не имел серьезного опыта с ИИ-инструментами для разработки. Кривая входа в больших проектах в кодинг с ИИ – очень крутая. Это лендос на lovable собрать за выходные может любой дизайнер/продакт. Но большой проект – это всегда сложная инженерия с кучей нюансов

4. Результаты оценивали в среднем, хотя в контексте предыдущего пункта полезнее всего смотреть на верхней перцентиль – на сколько увеличилась эффективность эффективность у тех, у кого получилось найти эффективные паттерны использования.

———

Удивительно (нет), но у 4 разработчиков эффективность выросла (у двух – почти x2), причем лучший результат был у того, кто уже немного пользовался Cursor до эксперимента. Что только подтверждает связь между умением пользоваться инструментом и производительностью (вау?).

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

Кстати, если хотите провести такое обучение у себя в компании, напишите мне, хочу пилот сделать.

Ну а у авторов статьи получилось красиво хайпануть, еще и нигде не скрывать инфу (СМИ все равно сами вытащат "нужное"). Кстати, очень похожим образом в свое время получилось хайпануть у DeepSeek. Остается только учиться
👍159😱6👏3
Кстати, Влад из комментов к посту выше позвал меня на эфир в понедельник (21.07 в 19:00).

Будем разбираться, что за новый хайповый термин Context Engineer, чем это отличается от ушедшего в небытие Prompt Engineer. А самое главное, зачем управление контекстом нужно всем, кто много использует ИИ и как избежать основные грабли.

Кодить уметь не нужно. Целевая аудитория – все активные пользователи ИИ. Бонусом будет мини воркшоп от меня, как без программирования делать динамические сборщики контекста.

Чтобы не пропустить, можно добавить ивент в календарик тут
👍174🔥2
Неделю назад я был на эфире у Влада про Context Engineering. Наконец у меня дошли руки выписать несколько мини-тейков, чтобы не смотреть все два часа (некоторые достаточно противоречивые, как мы любим):

* Контекст-инжиниринг – часть промпт-инжиниринга. Просто теперь все важнее не только правильно собирать слова в инструкции, но и подтягивать релевантные данные извне.

Примеры:
* Дамп дневника → понимает личный контекст → лучше ответы на вопросы про отношения или зоны личностного роста, ошибки мышления
* Информация с созвонов компании → точнее ответы на бизнес вопросы
* Выгрузка тг канала → перенимает стиль текста и зоны фокуса при анализе инфы
* Документация → корректное использование библиотек (кстати, context7 MCP, кто еще не)


* Можно легко перегрузить контекстом. Аналогия – когда на разработчика вывалили весь контекст, который был в голове у менеджера, и теперь разработчик парализован, потому что постоянно вылетает в мысли про смежные зоны и ограничения.

На техническом уровне это объясняется слабым навыком моделей фильтровать неважную часть контекста – "если в условиях это зачем-то дано, значит, мне нужно это как-то использовать"


* Отсюда берется полезный паттерн: отдельно чат – "менеджер", где много контекста, и идет основное размышление и планирование, а отдельно чаты – "исполнители", которые занимаются узкой задачей, владея только нужным для конкретной задачи контекстом

* Другой полезный паттерн – стараться решить задачу в один-два запроса вместо того, чтобы бесконечно корректировать в режиме долгого диалога. То есть, если не получается, то менять исходный запрос, а не писать новые сообщения-корректировки.

Спекулятивное объяснение: в режиме диалога каждая фраза юзера – отдельная инструкция и модели сложно собрать их в одну непротиворечивую, да еще и не зацикливаться на подтверждении своих прошлых ответов.


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

* Просите модель собрать для вас инструменты для сбора данных. На эфире мы попробовали два способа, актуальных для неразработчиков (не требуют деплоя):
1. Самодостаточный html файл, который открывается в любом браузере
2. JS код, который вставляем в браузерную консоль.

* Есть еще варианты всяких агентов, где деплой уже настроен (Lovable, Perplexity Labs, Manus, Google Apps) или вообще ChatGPT Interpreter, который сам напишет код, сам его запустит.
615🔥11👍8
Там Цукерберг разрешил использовать ИИ на собесах

Если уже бигтех добавляет это в свои процессы, значит рынок уже достаточно созрел для AI coding, дальше все будет только ускорятся.

Но это все лирика, теперь к практике – как проводить такие собесы у вас в компании.

Кстати, я работал над дизайном технических собеседований в CodeSignal – компании, которая делает собесы-as-a-service (кстати, с детищем Цука в списке основных клиентов). Повыпендривался, теперь можно и к делу


По сути, главный вопрос – а как сделать так, чтобы ИИ не был читерством?

Смотрим, чем опытный разработчик, который владеет ИИ-инструментами отличается от вайб-кодера, который вслепую командует ИИ-агентом, не разбираясь в коде.

С чем у вайб-кодеров проблемы?

1. Добавить фичу, которая "не укладывается" в существующую архитектуру (где опытный разработчик проактивно потребует рефакторинга)

2. Сформулировать правила для ИИ-агента с учетом специфики проекта

3. Писать безопасный код (сколько уже было новостей про захардкоженные секреты, а это только вершина айсберга)

4. Понять, что сама задача поставлена некорректно

Мы приходим к тому, в чем заключается профессионализм – умение самому подумать про промежуточные задачи, а не слепо следовать "промту" интервьюера/тимлида/задачи в тасктрекере.


Критерии задач?

Получается, задачи на собеседовании должны быть сформулированы так, что если напрямую отправить их в LLM, то ее унесет "в локальные оптимумы" в сторону от хорошего решения.

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

Потому что именно так и выглядит настоящая работа. И наконец-то собесы станут ближе к реальности. Прогресс не остановить!

Бонус:

Лучшим стартом для такого будет взять челленджи из обучающего туториала Kiro – очень крутого примера обучения кодингу с ИИ на существующей кодовой базе.

Если хочется, чтобы кто-то докрутил под вашу компанию, пишите мне в личку, я такие штуки люблю и умею
🔥186👍5🤝1
AI tools для массмаркета и AI tools для топ-5% про-пользователей – два разных мира.

Как микроволновка и кухня шеф-повара (вот такие аналогии сегодня).

AI микроволновка

- получаешь результат почти сразу после регистрации

- не нужны доменные знания (собирай приложения в lovable без знаний программирования)

- почти нельзя корректировать систему в процессе

- много шаблонов, мало настроек

- работает для стандартных кейсов

Примеры: Lovable, Granola, Canvas, Gamma для презенташек, ElevenLabs, LogoAI


AI кухня шеф-повара

- крутая кривая обучения

- часто работа в режиме копайлота

- видишь промежуточные результаты

- очень гибкая настройка

- плотная интеграция с существующими инструментам

- выходит за рамки шаблонных решений

Примеры: Claude Code, AI фичи в adobe, Harvey для юристов, Canva, ElevenLabs


Есть интересный нюанс. Внимательные читатели заметили, что некоторые продукты попадают в обе категории.

Это продукты-гибриды, где массмаркет часть – это просто большая воронка в PRO версию. При этом, с т.з. паттернов использования, эта лид-магнит часть – принципиально другой продукт.

Интересно, будет ли рынок еще сильнее делиться на эти две категории, или они наоборот схлопнутся. Обычно специализация побеждает, так что я ставлю на первое
🔥18👍3👀21🤡1
AI делает опытных разработчиков менее более продуктивными

В прошлой части я "прожаривал" нашумевшую статью, где "эффективность разработчиков ниже на 20% чем без ИИ, пока им кажется, что она на 20% выше".

Прожаривал в основном за:
- Ничтожно маленькую выборку – 16 человек (!)
- Разработчики не использовали ИИ инструменты до эксперимента – им не проводят обучение, но уже замеряют результаты.
- Смотрят на среднее, а не на верхний перцентиль, где самое интересное
- Манипуляции визуализацией данных


А сегодня расскажу про гораздо более серьезное исследование от ребят из Стэнфорда (кстати, русскоязычных). Вот главные тезисы оттуда:

Критика существующих подходов к измерению эффективности

- Нельзя опираться на число коммитов/PR – AI может делать больше маленьких коммитов, сами они могут быть забагованными, а багфиксы – это еще больше коммитов 📈

- Нельзя полагаться на субъективные опросы. Выявили корреляцию всего в 0.17 между ощущаемой и реальной продуктивностью 🥴

- Большая часть измерений делается на задачах, которые делаются с нуля (greenfield). А реальная работа – почти всегда с "унаследованным" кодом и сложными зависимостями (brownfield)

Это серьезная заявочка, интересно, как они сами решили эти проблемы (и что там получилось в результате)

- Взяли код 100,000+ инженеров, 600+ компаний, миллиарды строк кода (!)
- 80% данных — из приватных репозиториев
- Оценивают суть изменений в коде для каждого коммита

Погодите-ка, как это они оценивают изменения в миллиардах строк кода? (на самом деле – самая красивая часть исследования)

- Взяли 15 опытных разрабов (11-25 лет опыта, сеньоры, CTO, VP)

- Прогнали эту экспертную комиссию на 70 коммитах, честно считая внутриклассовую корреляцию (если эксперты сами не могут договориться – это шум)

- Это 70 коммитов отбирали так, чтобы их распределение совпадало со общим

- Определили "объективные" метрики (время, сложность) и обучили модельку на этих 70 коммитах угадывать "оценки" панели экспертов.

- Потом полный анализ миллиардов строк кода – уже автоматически этой моделью.

Интересно, что в отличие от классического сторипоинт-подхода "предсказания" сложности заранее, тут эксперты уже смотрели на выполненную работу и оценивают сложность постфактум


Ну так и что, уже можно увольнять разработчиков?

- "Сырое" улучшение аж на 35-40%

- Но и количество багов и правок тоже растет (скрин 1).

- За вычетом налога на переделку, получается 15-20% чистого выигрыша

- Сильно влияет сложность задач, тип проекта (greenfield/brownfield, скрин 2) и язык (на Haskel/Cobol/Elixir лучше пока без ИИ)

- Сильно падают результаты после 10к строк кода

Чего мне не хватило

- Инфы про то, насколько знакомы разработчики с ИИ инструментами, но ее и не возможно было получить на таком датасете

- Анализа верхнего перцентиля. Если в среднем получается прирост на 15 процентов, то есть ощущение, что топ 5% точно умеет делать x2 и интересно узнать как

———

Но даже так видно, что прирост есть даже в среднем по больнице, не говоря про тех, кто выработал оптимальные подходы. Так что уже можно скидывать этот пост всем критикам AI coding

P.s. Ну и посмотрите на оптимизм на последнем скрине: 10k → 1m (!!!)
Для энтерпрайзов – особенно актуально

Оригинал: видео, статья
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
21🔥6👏3🙏1💯1
Фильтрация вместо саммаризации

Постоянно замечаю – есть большой кусок информации (например, пдфка с документацией, выгрузка переписки или текст закона), читать все не хочется, хочется как-то в сжатом виде пробежаться. Просим LLM сделать саммари.

Классика.

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

Вместо этого, все чаще прошу не сжимать информацию, а отфильтровать самую важную и показать как есть.

Проанализируй этот документ и вытащи 20 самых важных абзацев/строк, таких, что прочитав их я смогу сформировать 80% понимания исходного документа. Используй принцип MECE (mutually exclusive collectively exhaustive). 
Выпиши их в исходном виде, так, чтобы их можно было корректно использовать для поиска в документе (символы совпадали на 100%)
6🔥5588👍74❤‍🔥2👏1
Оставаться "посередине" обычно полезнее по жизни, чем уходить в крайности

Знать разные точки зрения, их плюсы/минусы, области применения > пользоваться какой-то одной догмой.

Но в паблике это не работает. Никому не интересно потреблять усредненное мнение, где "все сложно, правы и те и другие". За интересным, и как автор, и как читатель – идешь к крайностям, поближе к границе.

Одна из крайностей, в которую мне нравится уходить в теме ИИ это:

RAG на эмбеддингах – мусор, не используйте их, а используйте старый дедовский ...


А что именно использовать – мы обсудим с ребятами из @r77_ai. Давно за ними слежу и восхищаюсь, как они строят корпоративные контакты и до каких нестандартных проектов дотягиваются (как вам Анализ поведения свинок для выявления идеального момента для их оплодотворения?)

Четверг, 14 августа, 15-00. Добавляйте напоминалку в календарь, делитесь с теми, кому может быть интересно
7🔥25🤝4
Мнение без ставки стоит 0

Можно говорить что угодно. Чтобы набрать подписчиков к себе в канал, выглядеть умным, оправдать свою картину мира. Но какая у этих слов цена?

Иногда ставка – репутация ("я тут эксперт, и если ошибаюсь – хреновый").

Иногда – деньги ("готов сделать в сроки X за сумму Y")

Иногда – это уже проигранная ставка в прошлом ("мы уже пробовали это, вот что вышло")

Вот и у нас в комментариях столкновение мнений вылилось в ставку – бескорыстный пиар одного из каналов. А вы, читатели, можете в этом поучаствовать.

Для этого нужно прочитать два варианта и выбрать, какие 5 строк лучше доносят смысл. Исходный текст – лонгрид Вастрика "Манифест среднего человека" (ссылка в комментах, для участия в опросе читать не обязательно)

Вариант1:

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

- Получается полотно из бессвязных модных названий, ненужных деталей и случайных теорем, разделённых словами «очевидно, что» и «блять, ну короче», а в конце всё равно всё скатывается в локальный срач про «табы vs пробелы».

- Став сеньором уже в 23 года (как положено), он умеет хитро превращать JSON в красивые
формочки и помнит наизусть Cracking the Coding Interview, ведь полгода заучивал его вместо
работы, за что заслуженно хочет свои 300кк/сек.

- Рекрутер же всласть ебанулся на своих курсах по соционической йоге, видит везде лишь
«unbiased» метрики и KPI, и даже не попытается вникнуть в предметную область чтобы понять как строить команды и нанимать нормальных людей.

- У всей этой истории есть один существенный недостаток: Когда приходит время действовать, «оставаться посередине» — самое херовое, что можно делать. Чтобы запустить проект, набрать голоса на выборах, да даже просто написать этот сраный пост необходимо было НЕ оставаться посередине.


Вариант 2:

- Оставайся посередине.
Всеми силами держи дистанцию между крайностями.
Не видишь другой крайности — значит ты слишком близко к первой.

- Та середина, которая действительно нужна в жизни — когда тебя ненавидят с обеих сторон

- Правило: встретил мнение — найди противоположное

- Когда приходит время действовать, «оставаться посередине» — самое херовое, что можно делать

- Для себя — оставайтесь посередине. Для других — будьте самым отбитым психопатом, которого они только встречали
🔥53🥰1
Кто побеждает?
Anonymous Poll
42%
Вариант 1
58%
Вариант 2
Эксперимент закончен, поболтаем про результаты:

Главный вывод, судя по комментам, что оба варианта так себе 😅

И это правда, но почему?

У меня тут две мысли

1. Заметили один интересный эффект – когда LLM вытаскивала текст, она взяла все 5 предложений из выделенных автором блоков

Если убрать выделение, отформатировав их как весь остальной текст, результат получается интереснее:

Ты просто говоришь, что любая новая идея провалится и в 98% случаев ты будешь прав. Потому что 98% идей действительно провалятся. Вот только ты так и останешься в жопе с таким критическим мышлением.

Оставайся посередине. Всеми силами держи дистанцию между крайностями. Не видишь другой крайности — значит ты слишком близко к первой.

Крайности всегда приятны и хорошо видны, но в долгосрочной перспективе не имеют смысла. Я всегда могу занять сначала одну позицию, потом другую, потом снова первую, и буду «жизой» для одних и «лол дурачком» для других.

Когда приходит время действовать, «оставаться посередине» — самое херовое, что можно делать

Для себя — оставайтесь посередине. Для других — будьте самым отбитым психопатом, которого они только встречали


То есть LLM как бы цепляется за авторскую семантику. В каких-то случаях полезно, а в каких-то, как тут – вредно – автор выделяет слишком базовый смысл, который актуален только когда есть остальной контекст

2. Ну а главная причина: 5 предложений – слишком мало.

Я не просто так в оригинальном посте писал про 20. Обычно первые результаты LLM всегда очень банальны. Поэтому часто вообще прошу что-то вроде:

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


———

Так что мы осознанно пошли с n = 5, чтобы уместить оба варианта в один пост и не перегружать "жюри"

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

Формально победил LLM вариант. Но с небольшим отрывом.

Неформально, я согласен с комментарием @nobilix – LLM выигрывает гибкостью.

Отдельное спасибо @izpodshtorki за готовность поучаствовать в такой активности

P.s. посмотреть результат работы с 20 предложениями можно в комментариях
19🔥3👍2🤝1
Как хостить свои ИИ поделки не превращаясь в девопса

Сначала обозначим, что вообще нужно уметь:

1. Настраивать автодеплой, чтобы как только мы пушим код на гитхаб, продакшн обновлялся соответственно

2. Связывать доменные имена с конкретным контейнером на нашем сервере (привет, nginx)

3. Настраивать выдачу и обновление SSL сертификатов (привет, certbot)

4. Бэкапы 🫡

5. (Задача со звездочкой*) Деплоить разные окружения. Сделали экспериментальную ветку, захотели быстро протестить, как работает. Спустя два часа перехотели.

———

И тут у нас вариант идти к Vercel, но во-первых про них и так все знают, а во вторых, это облачное решение, со своими минусами. Self-hosted альтернатива – Coolify.

Для запуска нужен VPS (сервер, где будет крутиться и Coolify и всё, что он будет нам деплоить). Они у себя на сайте предлагают партнерскую скидку на Hetzner, а я по приколу предложу дешманский сервер в штатах за 10 баксов в год (можно платить криптой).

Что получаем:

Все 5 пунктов выше можно делать и руками – писать конфиги не сложно, но нужно знать и помнить как, куда и зачем. Еще и не полениться для каждого нового проекта пройти по всем стандартным шагам. А можно просто накликать в веб-интерфейсе, и все стандартные кубики соберутся за вас.

Очень удобно, когда много мелких проектов – можно ими жонглировать в пару кликов. Особенно, если вы не очень дружите с консолью и unix, а вайбкодить хочется и можется.

Короче, Coolify – неплохой компромисс между удобством облачных платформ и контролем self-hosting
521👍14🔥3🤝2🤡1🌚1
Самый полезный пост за последний месяц

Потому что не один пост, а целая куча отборных постов – если бы нужно было поделиться каким-то одним каналом по ИИ, это был бы канал Рефата.

Не знаю, как он это делает, но на его постах я чаще всего ловлю себя на ощущении "блин, почему это написал не я?"


Короче, что мне нравится:

- Он кофаундер devstark.com и spreadsimple.com => гораздо ближе к реальности, чем просто технари

- При этом у него очень мощная техническая экспертиза и "чуйка". Он сам работает с технологиями, про которые пишет. А читать про ИИ сейчас нужно только таких авторов

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

- А еще у него офигенские недельные дайджесты с основными новостями по ИИ и не только. Нет ничего лишнего – собрана самая мякотка. Если вы не хотите как я мониторить миллион тематических чатиков и каналов, чтобы быть в курсе всего интересного, то вот решение

- Ну и Рефат – просто приятный человек в общении (почему-то мне такое очень важно)

———

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

В общем, если читаете меня, то его канал вам скорее всего тоже зайдет. Подписывайтесь, от души рекомендую
1🔥1510👍1
Gemini умеет еще больше, чем я думал

Еще в версии 2.0 они научили ее нативно генерировать bounding boxes для детектирования объектов (разноцветные квадратики на картинке)

Но в версии 2.5 ее вообще научили сегментации – определять границу (заливка).

А еще, есть экспериментальный режим, который позволяет детектить объекты в 3D (вторая картинка)

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

Я накидал немного идей применения в разных сферах – мб где-то сработает аналогия с вашими задачами и поймете, что это то, что нужно

🔍 Детектирование:

1. Подсчет

- Автомобилей на парковке или на дороге

- Контейнеры на складе

- Количество покупателей в магазине (чтобы Галя пришла на кассу уже)

- Трекинг – перемещение чего угодно по камерам (хоть сотрудник по складу, хоть мяч по полю)

2. Поиск нарушений

- Рабочий без каски

- Припаркованный в запрещенном месте автомобиль

- Детектирование полки с закончившимся товаром

———

🧩 Сегментация

1. Измерение размера:

- Габариты посылок на ленте

- Для агро – определение площади полей с сорняками

- Медицина – определения границ и объема опухоли

2. Форма:

- Модерация контента – автоматически замазывать запрещенный контент на фото

- Определение брака – сегментируем деталь, сравниваем контур с эталонным

- Опять медицина – помню кейс про определение формы эритроцитов для диагностики болезней

———

Подробнее можно глянуть тут
32🔥18👍9