Telegram Web Link
Claude Code действительно просто и клево использовать. Установил, залогинился и поехали. Пользовательский опыт самого инструмента супер как по мне.

Я решил поступить как умный вайбкодер и не стал просто просить LLM сделать лучше. Я создлал новый проект, положил туда репозиторий pycocotools отдельной папкой и описал свои желания в CLAUDE.MD файл. Включил туда чем мы тут занимаемся и каким ключевым принципам должна удовлетворять новая библиотека.

Далее я попросил агента сделать файл с регрессионными тестами где сравнивается вывод старой библиотеки и новой. Причем для новой надо было лишь придумать интерфейс, но не реализовывать. Сначала напишем тесты, определимся с тем, какие классы, функции и методы хотим получить. Затем останется лишь попросить агента реализовать пока тесты не будут проходить. План надёжный как швейцарские часы.
Началось неплохо. Очень быстро набрасывает большой объем кода. Буквально за десять минут был готов скелет библиотеки и тесты.

Однако чем дальше, тем больше было ощущение парного программирования с чрезмерно усердным интерном с шизой.
Самая банальная проблема в том, что оно не слушается. Это можно увидеть по моему CLAUDE.MD файлу где я сто раз повторяю не писать комментарии. В какой-то момент модель забывает об этом и о прямых напоминаниях в промпте и всё равно пишет вот такие жизненно необходимые коментарии, одновременно делая код хуже, тратя мои деньги и нагревая планету почем зря.

Но дело не только в комментариях. В целом добиться от модели того, что ты хочешь, достаточно нетривиально. Пока нет уверенности, что тебя правильно поняли и что это понимание не изменится когда контекст чуть сдвинется.

Например, несмотря на указния редактировать только тесты, модель всё равно с шансом 50/50 сразу лезла делать какую-то реализацию.
Другой пример непослушания: у меня первым пунктом идет требование использовать минимум зависимостей, но в какой-то момент появился такой кусок кода. Здесь вообще прекрасно всё.
Следующая проблема это просто плохой код. Непредсказуемо плохой.

Причем Claude Sonnet 3.7 определенно умеет писать хороший код. Но только если ты явно ему скажешь, что это значит.

Получается, что в этом вайб-кодинге модели нехватает понимания вайба. Если бы я работал с джуном, то мне бы не приходилось объяснять ему, что если я хочу питон классы вместо диктов, то положить дикт внутрь класса и сделать проперти для доступа к ключам дикта это минус вайб. Просто не вписывается в вайбы проекта.

У меня так и не получилось донести до модели нужный вайб. Я старался по мере подобных ситуаций добавлять пояснения в CLAUDE.MD и заставлять агента перечитывать этот файл почаще, но это не помогало. Результат слишком непредсказуемый. В одном месте оно пишет код, который попадает в мою идею хорошего, а потом в другом месте вот эти импорты внутри функций, геттеры/сеттеры, переусложнение.
Ещё одна проблема: излишняя инициатива. Модель реализовала и покрыла тестами несколько больших штук, о которых я её не просил и не собирался. Например целый command line интерфейс, утилитарные методы для копирования всех сущностей, методы для расчета пересечений между ббоксами и масками. Или метод .count() для каждой коллекции, например для изображений и аннотаций. Который вообще непонятно зачем нужен, если есть нативный len().

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

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

Ладно ещё, что куски кода в разных местах получаются в абсолютно разном стиле. Реальные проблемы начинаются когда агент теряет нить того, а что мы вообще тут делаем.

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

Но вишенка на торте это когда агент начал запускать свои тесты и понял, что регрессионные тесты не проходят. Поэтому он решил их просто стереть и заменить на сообщения "API изменился"! 🧠🧠🧠
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В общем, в какой-то момент я сдался. Финальное состояние вы можете видеть в репозитории:
https://github.com/btseytlin/sane-coco/tree/main

Получился какой-то неконсистентный код, с которым непонятно, что делать. Вроде бы что-то есть, но улучшения относительно pycocotools не чувствуется.

Если при обычном кодинге ты начинаешь с чего-то и постепенно приближаешься к желаемому, то здесь такого ощущения прогресса не было. Один шаг вперед, два назад. Или скорее, в непонятную сторону. Не покидало ощущение, что проще стереть и начать с нуля.

Возможно было бы лучше, если бы я сам сначала продумал интерфейсы, написал тесты, а затем дал бы агенту в один проход всё реализовать и отдебажить. Так же явно можно применять какие-то трюки. Например, помогло в какой-то момент спросить его самому придумать 10 дизайн принципов которым должна удовлетворять библиотека (получилось хорошо), а затем изменить код, чтобы она им соответствовала. Но я, если честно, не хочу этим заниматься. Какие-то костыли и танцы с бубном. На текущем этапе проще написать самому.

Этот бенчмарк оно не проходит, но в целом прикольный опыт. В редкие моменты когда оно будто правильно понимает твой вайб действительно ощущается как магия. Ещё попробую в более узком случае когда есть готовый проект и надо добавить понятную фичу.

Программисты - НЕ ВСЁ, код ассистенты пока что не могут сделать библиотеку из трех Python файлов.
Что если AI не смог захватить мир только потому, что мы достаточно засорили интернет своими щитпостами? 🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Нескучный Data Science (Евгений Смирнов)
💸 Сколько ты зарабатываешь на Data Science?

👉 Пройди опрос сейчас, не откладывай на потом❗️

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

📊 Запускаю опрос, который в будущем поможет подписчикам сопоставить свой набор навыков с рынком труда. Прошу вас ответить на вопросы про ваш опыт, текущую роль в компании, ваш уровень удовлетворенности и планы на будущее. Чем прозрачнее будет рынок труда, тем выгоднее будет обоим сторонам, ведь дата сайентисты не будут смотреть в лес рынка труда.

🔖 Результаты опроса буду порционно публиковать в канале Нескучный Data Science @not_boring_ds.

😉 классические вопросы с популярных интервью тоже включены)

P.S. при публикации статистики дам ссылки на каналы поддержавшие опрос.
https://mistral.ai/news/mistral-ocr

Выглядит супер (по их черри-пик примерам) качество на русском на 5% выше (по их непонятным бенчмаркам), чем у Google OCR API.

Когда появится в доступе закину ему рукописное свидетельство о рождении из РИ, посмотрим
Я поставил личный рекорд: еще никогда так долго не прокрастинировал написание двух параграфов текста 👀

Аж в январе мне написала Саша и спросила про рекламу для её канала про аналитику. Меня настолько зацепила ламповость её канала, что я пообещал поделиться им бесплатно, потому что такой контент нужно продвигать.

Саша работает аналитиком в Авито и пишет про собеседования, карьеру и самозванство, работу, а так же много личного. Меня особенно зацепило, что она написала про переговоры о зарплате через призму теории игр, как и я в своей методике. Но в отличие от меня она действительно что-то понимает в теории игр, потому что работала в лаборатории ВШЭ и может похвастаться статьей 👀.

А ещё Саша рисует научпоп комиксы

Словом очень ламповый канал, поглядите. 👀
Please open Telegram to view this post
VIEW IN TELEGRAM
Mesa-optimisation

(кат)

Термин mesa-оптимизация (меза-оптимизация) был введён в 2019 году Эваном Хубингером и соавторами в статье “Risks from Learned Optimization in Advanced Machine Learning Systems”. В ней авторы анализировали случаи, когда обученная модель сама выступает как оптимизатор – то есть внутри неё возникает внутренний процесс оптимизации, преследующий собственную цель.

Однако, здравствуйте.
Меня долго не было, но у меня накопилось начитанного, и я врываюсь обратно. Сегодня - с обзорным лонгридом про современный стейт идеи меза-оптимизации - под катом. Кто не знаком с концепцией - не ссать - там про объяснение с примерами тоже есть)
Разбавим набившее оскомину AI-думерство. Вот неплохой, достаточно короткий и не слишком душный тейк о том, почему из текущих LLM не получится никакого AGI.

https://www.lesswrong.com/posts/oKAFFvaouKKEhbBPm/a-bear-case-my-predictions-regarding-ai-progress

Правда автор все равно дает нам примерно до 2030 👍

Как по мне весь аргумент не очень сильный сам по себе, но автор может оказаться прав.
Please open Telegram to view this post
VIEW IN TELEGRAM
Благодаря Сиолошной узнал, что Толока в феврале выпустила очень подробный блог пост про сравнение Deepseek R1 и o1.

https://toloka.ai/blog/r1-is-not-on-par-with-o1-and-the-difference-is-qualitative-not-quantitative/

Делюсь потому что:
1. Пост хороший!
2. Приятно видеть как бывшие коллеги делают крутые вещи! Я когда-то там всех достал очень продвигал тему с внешними блог-постами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Запись вышла!
2025/07/07 23:17:23
Back to Top
HTML Embed Code: