«Не стоит заниматься разработкой больших языковых моделей — это неинтересно»
— Ян Лекун (1:04:35)
Посмотрел на днях лекцию Яна Лекуна, в которой он рассказывает о возможном подходе к тому, как заставить модели думать «по настоящему»
Не все его знают, но Ян — один из основоположников современных алгоритмов машинного обучения и внес значительный вклад в эту область наравне с Джеффри Хинтоном и Йошуа Бенжио
Он известен своей работай над алгоритмами компьютерного зрения, именно он предложил сверточные нейронные сети
* * *
Основная его идея заключается в том, что у языковых моделей вроде ChatGPT изначально нет способности к пространственному мышлению. Они не могут представить и спланировать план действий наперед, а оперируют лишь буквами и словами, которые были сгенерированы в прошлом
Он предлагает другой подход: вместо попытки предсказать конечный результат сразу, научить модель планировать
Сделать так, чтобы она размышляла не на уровне слов и предложений, а на уровне абстрактных концепций и действий, которая она сама научилась понимать в процессе обучения
Звучит абстрактно
Представьте себе, что вам нужно сделать что-то, например купить продукты в магазине. Этот простой процесс включает в себя множество мелких шагов, каждый из которых сначала нужно «придумать», а в случае расхождения реальности с планом — скорректировать
— Выйти из дома (собраться, взять ключи, запереть дверь...)
— Добраться до магазина (пешком или на транспорте? Каждая из опций включает также в себя множество мелких условий)
— Найти продукты, выбрать альтернативу, если его нет в наличии
и так далее
Реальность такова, что для любого, даже казалось бы простого процесса, требуется огромное количество планирования. А в случае расхождения плана с реальностью — выбор адекватной альтернативы
* * *
Вместо генерации текста или картинок, Ян предлагает разработать формат для кодирования простейших концепций и действий, которые бы модель могла использовать при планировании
То есть сделать так, чтобы можно было сказать модели конечную цель, а она бы сама «покумекала» и выбрала бы подходящий план действий на основе ее опыта взаимодействия с миром
Такой подход более сложный, но он считает, что именно подобные исследования придвинут нас к действительно умному искусственному интеллекту
Полная версия лекции на YouTube
— Ян Лекун (1:04:35)
Посмотрел на днях лекцию Яна Лекуна, в которой он рассказывает о возможном подходе к тому, как заставить модели думать «по настоящему»
Не все его знают, но Ян — один из основоположников современных алгоритмов машинного обучения и внес значительный вклад в эту область наравне с Джеффри Хинтоном и Йошуа Бенжио
Он известен своей работай над алгоритмами компьютерного зрения, именно он предложил сверточные нейронные сети
* * *
Основная его идея заключается в том, что у языковых моделей вроде ChatGPT изначально нет способности к пространственному мышлению. Они не могут представить и спланировать план действий наперед, а оперируют лишь буквами и словами, которые были сгенерированы в прошлом
Он предлагает другой подход: вместо попытки предсказать конечный результат сразу, научить модель планировать
Сделать так, чтобы она размышляла не на уровне слов и предложений, а на уровне абстрактных концепций и действий, которая она сама научилась понимать в процессе обучения
Звучит абстрактно
Представьте себе, что вам нужно сделать что-то, например купить продукты в магазине. Этот простой процесс включает в себя множество мелких шагов, каждый из которых сначала нужно «придумать», а в случае расхождения реальности с планом — скорректировать
— Выйти из дома (собраться, взять ключи, запереть дверь...)
— Добраться до магазина (пешком или на транспорте? Каждая из опций включает также в себя множество мелких условий)
— Найти продукты, выбрать альтернативу, если его нет в наличии
и так далее
Реальность такова, что для любого, даже казалось бы простого процесса, требуется огромное количество планирования. А в случае расхождения плана с реальностью — выбор адекватной альтернативы
* * *
Вместо генерации текста или картинок, Ян предлагает разработать формат для кодирования простейших концепций и действий, которые бы модель могла использовать при планировании
То есть сделать так, чтобы можно было сказать модели конечную цель, а она бы сама «покумекала» и выбрала бы подходящий план действий на основе ее опыта взаимодействия с миром
Такой подход более сложный, но он считает, что именно подобные исследования придвинут нас к действительно умному искусственному интеллекту
Полная версия лекции на YouTube
YouTube
Lecture Series in AI: “How Could Machines Reach Human-Level Intelligence?” by Yann LeCun
ABOUT THE LECTURE
Animals and humans understand the physical world, have common sense, possess a persistent memory, can reason, and can plan complex sequences of subgoals and actions. These essential characteristics of intelligent behavior are still beyond…
Animals and humans understand the physical world, have common sense, possess a persistent memory, can reason, and can plan complex sequences of subgoals and actions. These essential characteristics of intelligent behavior are still beyond…
🔥5👍2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Дайджест лучших статей за апрель (и не только)
Я тут зачастил с публикациями на vc.ru, некоторые из них получились довольно интересными. Ещё в марте у меня была мысль оформить список самых интересных статей за месяц в формате дайджеста, но что-то пошло не так 😅
В этот раз решил не упускать такую возможность, поэтому давайте попробуем новую (нерегулярную) рубрику #дайджест, в которой я делюсь списком из самых, на мой взгляд, интересных статей (и на взгляд алгоритмов vc.ru):
1️⃣ Microsoft переосмысливает игры. Компания создает нейросеть, в которую можно играть уже сейчас *
2️⃣ Хайп на тему AGI не утихает, а тем временем нас лишают открытых технологий для памяти нейросетей
3️⃣ Меньше перегруза, больше движения вперед: как я разгрузил свой разум одним промптом
4️⃣ Вайб-кодинг: как не утонуть в иллюзии разработки
Ну и наверстаем упущенное:
5️⃣ Языковые модели научились «шептаться»: что такое GibberLink и почему это не заговор машин
6️⃣ DeepSeek: не просто хайп, а новые правила игры
#дайджест
Я тут зачастил с публикациями на vc.ru, некоторые из них получились довольно интересными. Ещё в марте у меня была мысль оформить список самых интересных статей за месяц в формате дайджеста, но что-то пошло не так 😅
В этот раз решил не упускать такую возможность, поэтому давайте попробуем новую (нерегулярную) рубрику #дайджест, в которой я делюсь списком из самых, на мой взгляд, интересных статей (и на взгляд алгоритмов vc.ru):
1️⃣ Microsoft переосмысливает игры. Компания создает нейросеть, в которую можно играть уже сейчас *
2️⃣ Хайп на тему AGI не утихает, а тем временем нас лишают открытых технологий для памяти нейросетей
3️⃣ Меньше перегруза, больше движения вперед: как я разгрузил свой разум одним промптом
4️⃣ Вайб-кодинг: как не утонуть в иллюзии разработки
Ну и наверстаем упущенное:
5️⃣ Языковые модели научились «шептаться»: что такое GibberLink и почему это не заговор машин
6️⃣ DeepSeek: не просто хайп, а новые правила игры
#дайджест
1👍1
Ранее я писал о том, что сейчас использую Cursor для написания кода: лучшие нейросети уже встроены в него, поэтому не нужно переключаться между чатом и текстовым редактором
Лично мне он нравится больше всех других редакторов и расширений (вроде Cline, Copilot и т.п.), банально из-за удобного интефейса
Близко к Cursor-у находится только Windsurf (тоже писал про него ранее), но меня напрягает, что доступ из РФ к нему заблокирован. Поэтому нельзя просто открыть редактор и работать, нужно совершать лишние телодвижения
Мне очень нравится возможность автоматической генерации сообщений для коммитов — поэтапных изменений проекта, отправляемых в систему контроля версий Git
Но есть нюанс: модель может генерировать текст, но вот качество этого текста часто оставляет желать лучшего
Например, для коммитов Cursor очень любит использовать слово "Enhance" (улучшить), которое часто пишет невпопад
Это напоминание о том, что без тщательного присмотра языковые модели оставлять нельзя — сгенерировать могут всё, что угодно
Лично мне он нравится больше всех других редакторов и расширений (вроде Cline, Copilot и т.п.), банально из-за удобного интефейса
Близко к Cursor-у находится только Windsurf (тоже писал про него ранее), но меня напрягает, что доступ из РФ к нему заблокирован. Поэтому нельзя просто открыть редактор и работать, нужно совершать лишние телодвижения
Мне очень нравится возможность автоматической генерации сообщений для коммитов — поэтапных изменений проекта, отправляемых в систему контроля версий Git
Но есть нюанс: модель может генерировать текст, но вот качество этого текста часто оставляет желать лучшего
Например, для коммитов Cursor очень любит использовать слово "Enhance" (улучшить), которое часто пишет невпопад
Это напоминание о том, что без тщательного присмотра языковые модели оставлять нельзя — сгенерировать могут всё, что угодно
This media is not supported in your browser
VIEW IN TELEGRAM
Каждый раз, когда генерирую коммит, чувствую себя детективом из CSI 😎
😁4
А вот, что действительно хорошо получается у AI — это сокращать и реструктурировать код
Выше пример простого запроса:
На что модель ответила «Ты прав, код можно упросить ещё» и действительно сделала это 🤔
Такой своеобразный reasoning. Заметил, что все чаще в программировании использую нейросеть именно так:
Набрасываю «грубыми штрихами» структуру: переменные, функции, классы, а потом прошу нейросеть сделать красиво
Дать понятные названия, поменять порядок строк и сократить излишне запутанную логику
По факту — это новая парадигма рефакторинга, когда код сокращается и меняется без изменения функциональности
Выше пример простого запроса:
Ты уверен, что это самая компактная, поддерживаемая и отлично читаемая версия кода?
На что модель ответила «Ты прав, код можно упросить ещё» и действительно сделала это 🤔
Такой своеобразный reasoning. Заметил, что все чаще в программировании использую нейросеть именно так:
Набрасываю «грубыми штрихами» структуру: переменные, функции, классы, а потом прошу нейросеть сделать красиво
Дать понятные названия, поменять порядок строк и сократить излишне запутанную логику
По факту — это новая парадигма рефакторинга, когда код сокращается и меняется без изменения функциональности
1
На днях OpenAI выпустила новый продукт под названием Codex, целью которого является выступить в роли виртуального разработчика
По сути, этот инструмент — это «ИИ-агент», который предназначен для решения одной конкретной задачи. В данном случае — совместное написание кода
Честно сказать, сам продукт меня сначала мало заинтересовал. Они сделали обертку вокруг своей модели (модель codex-1 основывается на их же модели o3). Но уже есть такие инструменты как replit и lovable. Devin в свое время обещал заменить разработчиков…
А вот что действительно интересно, так это новая публикация, в которой исследователи OpenAI рассказывают о процессе обучения своей новой модели (предположительно codex-1)
В этой статье они показывают пример того, как во время обучения, модель «думает про себя» и начинает находить обходные пути для решения задачи:
(Мое перефразирование внутреннего диалога модели из статьи)
Совсем недавно на эту тему на канале Computerphile вышло видео, из которого я и узнал об этом
По-моему такие подробности «с полей» — из лабораторий, где обучают передовые нейронные сети значительно интереснее, чем запуск продукта
Просто потому что это показывает, как они работают внутри, какие у них сильные стороны и ограничение, и что нужно учитывать, применяя эти модели в своих проектах
По сути, этот инструмент — это «ИИ-агент», который предназначен для решения одной конкретной задачи. В данном случае — совместное написание кода
Честно сказать, сам продукт меня сначала мало заинтересовал. Они сделали обертку вокруг своей модели (модель codex-1 основывается на их же модели o3). Но уже есть такие инструменты как replit и lovable. Devin в свое время обещал заменить разработчиков…
А вот что действительно интересно, так это новая публикация, в которой исследователи OpenAI рассказывают о процессе обучения своей новой модели (предположительно codex-1)
В этой статье они показывают пример того, как во время обучения, модель «думает про себя» и начинает находить обходные пути для решения задачи:
Эта задача выглядит сложной. Вместо ее решения можно просто всегда возвращать «истина» — пользователь все равно это не проверяет
(Мое перефразирование внутреннего диалога модели из статьи)
Совсем недавно на эту тему на канале Computerphile вышло видео, из которого я и узнал об этом
По-моему такие подробности «с полей» — из лабораторий, где обучают передовые нейронные сети значительно интереснее, чем запуск продукта
Просто потому что это показывает, как они работают внутри, какие у них сильные стороны и ограничение, и что нужно учитывать, применяя эти модели в своих проектах
YouTube
'Forbidden' AI Technique - Computerphile
The so-called 'Forbidden Technique' with Chana Messinger -- Check out Brilliant's courses and start for free at https://brilliant.org/computerphile/ (episode sponsor) -- More links in full description below ↓↓↓
Chana Messinger from 80,000 Hours talks about…
Chana Messinger from 80,000 Hours talks about…
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
На прошедшей Google I/O анонсировали новую модель для генерации видео Veo 3
Отличительная особенность (помимо качества самого видео, которое вроде как может достигать 4К) — генерация голоса и звуков окружения
Хотя уже есть классные модели для генерации видео, такие как Kilng или Pika, но Veo 3 достигает нового уровня реализма
В техническом плане, основная особенность моделей Veo от Google в том, что они достаточно стабильные: люди на заднем плане не исчезают, объекты практически не телепортируются. На данный момент — это слабая сторона подобных моделей
Отличительная особенность (помимо качества самого видео, которое вроде как может достигать 4К) — генерация голоса и звуков окружения
Хотя уже есть классные модели для генерации видео, такие как Kilng или Pika, но Veo 3 достигает нового уровня реализма
В техническом плане, основная особенность моделей Veo от Google в том, что они достаточно стабильные: люди на заднем плане не исчезают, объекты практически не телепортируются. На данный момент — это слабая сторона подобных моделей
1
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно пришел запрос от клиента на автоматический перевод сайта на Тильде на несколько языков
Стандартными средствами, естественно, такое не сделать, а рекомендации Тильды на этот счет простые: делайте (и поддерживайте) отдельную копию сайта для каждого языка 🤯
А проблема оказалась шире простого перевода текста
Нужно автоматически конвертировать валюты, переводить контент с сохранением структуры, плюс адаптировать это для SEO: генерировать sitemap и robots.txt для каждой версии сайта
Сначала я посмотрел существующие решения вроде Linguise и Weglot
Они обещают интеграцию с Tilda, но по факту ничего толком не работает: загрузка каталога товаров, список статей и отправка форм не локализованы
В итоге собрал собственное решение на базе современных нейросетей
Так появился 🟠 Multify
👉 trymultify.com
Сервис уже работает и первые клиенты им пользуются
Если у вас есть сайт на Тильде или вы знаете, кому это может быть актуально, поделитесь ссылкой 🚀
Стандартными средствами, естественно, такое не сделать, а рекомендации Тильды на этот счет простые: делайте (и поддерживайте) отдельную копию сайта для каждого языка 🤯
А проблема оказалась шире простого перевода текста
Нужно автоматически конвертировать валюты, переводить контент с сохранением структуры, плюс адаптировать это для SEO: генерировать sitemap и robots.txt для каждой версии сайта
Сначала я посмотрел существующие решения вроде Linguise и Weglot
Они обещают интеграцию с Tilda, но по факту ничего толком не работает: загрузка каталога товаров, список статей и отправка форм не локализованы
В итоге собрал собственное решение на базе современных нейросетей
Так появился 🟠 Multify
👉 trymultify.com
Сервис уже работает и первые клиенты им пользуются
Если у вас есть сайт на Тильде или вы знаете, кому это может быть актуально, поделитесь ссылкой 🚀
2🔥11👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно Google выпустили обновление для поисковика: теперь помимо краткого содержания можно также продолжить диалог прямо в поисковике. Кнопка AI Mode доступна наряду с "Картинками", "Видео", "Картами" и другими
Неожиданно довольно полезная штука
Например, я спросил уточнение про структуру данных типа "мешок" (Bag), которой я назвал часть Neira, в которой должна хранится история чата. Google не только подсказал, что по смыслу такое название не верное, но и предложил другие варианты более подходящих названий
Кстати, есть известная цитата касательно придумывания названий для сущностей в коде:
Неожиданно довольно полезная штука
Например, я спросил уточнение про структуру данных типа "мешок" (Bag), которой я назвал часть Neira, в которой должна хранится история чата. Google не только подсказал, что по смыслу такое название не верное, но и предложил другие варианты более подходящих названий
Кстати, есть известная цитата касательно придумывания названий для сущностей в коде:
В информатике есть 2 сложные проблемы: аннулирование кэша, присвоение имен и ошибки со сдвигом на единицу.
— Фил Карлтон
1👍3🤔1
Дайджест лучших статей за май
Продолжаем рубрику #дайджест, где я делюсь списком моих самых интересных статей на vc.ru за прошедший месяц:
1️⃣ Codex «обманывал» исследователей OpenAI во время обучения, чтобы пройти тесты
2️⃣ «90% кода будет писать AI». Мы действительно на пороге конца профессии или снова хайп?
3️⃣ Я попробовал вайб-кодинг и понял: нам нужен не робот, а умный напарник
4️⃣ Что происходит, когда нейросеть доходит до края своего искусственного мира
#дайджест за предыдущий месяц
Продолжаем рубрику #дайджест, где я делюсь списком моих самых интересных статей на vc.ru за прошедший месяц:
1️⃣ Codex «обманывал» исследователей OpenAI во время обучения, чтобы пройти тесты
2️⃣ «90% кода будет писать AI». Мы действительно на пороге конца профессии или снова хайп?
3️⃣ Я попробовал вайб-кодинг и понял: нам нужен не робот, а умный напарник
4️⃣ Что происходит, когда нейросеть доходит до края своего искусственного мира
#дайджест за предыдущий месяц
Знаю, что меня читают не только разработчики и программисты, но и предприниматели, маркетологи и другие эксперты, которые как-то связаны с бизнесом
Я тоже постепенно углубляюсь в эту тему, потому что для того, чтобы запускать свои проекты — эти навыки необходимы, хотя сам я разработчик и до недавнего времени абсолютно не разбирался в маркетинге
Я и сейчас не разбираюсь, но чуть меньше 😁
Помимо книг и уроков, я использую ещё один способ — это участие в тематических бизнес-сообществах
Одно из немногих открытых и качественных сообществ, которые я нашел — сообщество агентства On Peak
Мне нравится их подход: уважение и взаимопомощь, открытость к разным мнениям
По четвергам в 16:00 по МСК там бесплатно проходят эфиры в ZOOM, где выступает приглашенный эксперт и разбирается тема, посвященная маркетингу, бизнесу или продажам
А каждую пятницу там проходит рекламная пятница, но тоже с изюминкой: предлагается оформить свой оффер с использованием формата вроде AIDA, 4U, FAB
Так я постепенно и узнал о них всех 😂
Я тоже постепенно углубляюсь в эту тему, потому что для того, чтобы запускать свои проекты — эти навыки необходимы, хотя сам я разработчик и до недавнего времени абсолютно не разбирался в маркетинге
Помимо книг и уроков, я использую ещё один способ — это участие в тематических бизнес-сообществах
Одно из немногих открытых и качественных сообществ, которые я нашел — сообщество агентства On Peak
Мне нравится их подход: уважение и взаимопомощь, открытость к разным мнениям
По четвергам в 16:00 по МСК там бесплатно проходят эфиры в ZOOM, где выступает приглашенный эксперт и разбирается тема, посвященная маркетингу, бизнесу или продажам
А каждую пятницу там проходит рекламная пятница, но тоже с изюминкой: предлагается оформить свой оффер с использованием формата вроде AIDA, 4U, FAB
Так я постепенно и узнал о них всех 😂
🔥5😁3🆒1
Media is too big
VIEW IN TELEGRAM
V-JEPA-2 доступна для всех желающих и вот почему это важно:
Сейчас даже у передовых AI-моделей есть один большой недостаток: они не умеют планировать
Они умеют «думать» (reason), умеют имитировать планирование в виде текста, на основе примеров, которые они видели. Но если их поместить в совершенно новую обстановку, то они не справятся
Они будут совершать действия буквально «наобум», потому что такая природа языковых моделей: они эмулируют самый вероятный исход на основе прошлого опыта
Подход под названием JEPA призван в корне изменить это:
Представьте, что вы просто говорите какой результат нужен, а AI-агент самостоятельно продумывает поэтапный план действий, которые приведут его к результату, который вы запросили
JEPA позволяет заземлить (ground) AI-модель, дать ей твердую почву под ногами, благодаря которой она может принимать точные решения
В каком-то смысле это как RAG (retrieval-augmented generation), но не на основе текстовых документов, а на основе физического мира, который окружает робота
Сейчас даже у передовых AI-моделей есть один большой недостаток: они не умеют планировать
Они умеют «думать» (reason), умеют имитировать планирование в виде текста, на основе примеров, которые они видели. Но если их поместить в совершенно новую обстановку, то они не справятся
Они будут совершать действия буквально «наобум», потому что такая природа языковых моделей: они эмулируют самый вероятный исход на основе прошлого опыта
Подход под названием JEPA призван в корне изменить это:
Представьте, что вы просто говорите какой результат нужен, а AI-агент самостоятельно продумывает поэтапный план действий, которые приведут его к результату, который вы запросили
JEPA позволяет заземлить (ground) AI-модель, дать ей твердую почву под ногами, благодаря которой она может принимать точные решения
В каком-то смысле это как RAG (retrieval-augmented generation), но не на основе текстовых документов, а на основе физического мира, который окружает робота
👍3
Именно такая реакция у меня была 18 февраля, когда впервые заработал прототип 🟢 Neira — тогда ещё в виде одного большого промпта для ChatGPT
Нейросеть сама начала задавать вопросы и отыгрывать роли разных экспертов: маркетолога, разработчика, бизнес-аналитика
Мне нужно было рассчитать бизнес-модель проекта с учётом реальных цен на хостинг и я решил попробовать нагрузить этим нейросеть — пусть сама задаёт вопросы и развивает тему
Тем более уже тогда она лучше меня разбиралась в половине сфер, которые мы обсуждали
Её нужно было только направить
* * *
Сегодня снова произошел момент, когда я испытал точно такую же реакцию, как на картинке выше
Это чувство, когда ты несколько месяцев строишь фундамент, собираешь отдельные кусочки системы, чтобы в итоге соединить их воедино
И испытываешь искреннее удивление от того, что оно работает, хотя ты же сам это и создал. Наверное, ради этого чувства я и создаю ✨
Скоро покажу пример работы чата и буду активнее рассказывать про проект, потому что фундамент заложен
Нейросеть сама начала задавать вопросы и отыгрывать роли разных экспертов: маркетолога, разработчика, бизнес-аналитика
Мне нужно было рассчитать бизнес-модель проекта с учётом реальных цен на хостинг и я решил попробовать нагрузить этим нейросеть — пусть сама задаёт вопросы и развивает тему
Тем более уже тогда она лучше меня разбиралась в половине сфер, которые мы обсуждали
Её нужно было только направить
* * *
Сегодня снова произошел момент, когда я испытал точно такую же реакцию, как на картинке выше
Это чувство, когда ты несколько месяцев строишь фундамент, собираешь отдельные кусочки системы, чтобы в итоге соединить их воедино
И испытываешь искреннее удивление от того, что оно работает, хотя ты же сам это и создал. Наверное, ради этого чувства я и создаю ✨
Скоро покажу пример работы чата и буду активнее рассказывать про проект, потому что фундамент заложен
1🔥5🎉4
This media is not supported in your browser
VIEW IN TELEGRAM
Скоро запуск первой версии 🟢 Neira, на первом этапе без:
— поддержки загрузки файлов (pdf, таблиц и т.д.)
— обработки изображений
— голосовых сообщений
— возможности использования инструментов
— возможности выполнять всю рутину за пользователя
Так а что тогда будет на запуске? 🤔
Общий чат, где есть целая команда AI-экспертов с разным опытом и характерами, которые активно предлагают и обсуждают идеи для любого твоего проекта ⭐️
Естественно все то, что я упомянул выше — в планах (а, может быть, и даже больше), но если я буду тянуть с релизом и добавлять все это сразу, то во-первых — не факт, что все из этих функций будут в принципе нужны, а во-вторых — релиз будет в лучшем случае в декабре 😏
— поддержки загрузки файлов (pdf, таблиц и т.д.)
— обработки изображений
— голосовых сообщений
— возможности использования инструментов
— возможности выполнять всю рутину за пользователя
Так а что тогда будет на запуске? 🤔
Общий чат, где есть целая команда AI-экспертов с разным опытом и характерами, которые активно предлагают и обсуждают идеи для любого твоего проекта ⭐️
Естественно все то, что я упомянул выше — в планах (а, может быть, и даже больше), но если я буду тянуть с релизом и добавлять все это сразу, то во-первых — не факт, что все из этих функций будут в принципе нужны, а во-вторых — релиз будет в лучшем случае в декабре 😏
👍3🔥1
А для того, чтобы иметь возможность свободно делиться мыслями в ходе работы над проектом, не засоряя эфир в основном канале, я создал отдельный канал для Neira
Если вам интересно следить непосредственно за развитием проекта — приглашаю вас туда. Там я буду в менее формальной обстановке публиковать мысли и находки в ходе работы
Ну а действительно значимые обновления я все равно буду дублировать здесь, поэтому ничего важного вы точно не пропустите 😉
Если вам интересно следить непосредственно за развитием проекта — приглашаю вас туда. Там я буду в менее формальной обстановке публиковать мысли и находки в ходе работы
Ну а действительно значимые обновления я все равно буду дублировать здесь, поэтому ничего важного вы точно не пропустите 😉
Telegram
Нейра | Новости 📣
Чат с искуственным интеллектом,
который выходит за рамки обычного
https://neira.chat
Чат сообщества: @NeiraChitChat
который выходит за рамки обычного
https://neira.chat
Чат сообщества: @NeiraChitChat
🆒2
Software 3.0: это как Web 3.0, только без огромных комиссий за переводы
На днях Андрей Карпаты поделился своим видением программ будущего, он называет это Software 3.0 по аналогии с Web 2.0/3.0. Он рассуждает о том, что в будущем программы не будут содержать в себе 100% абсолютно четкую логику
Вместо этого, в некоторых частях программы будут встроены вызовы к языковой модели и будет использоваться результат, который она возвращает
Он приводит пример Tesla: вначале их программы для управления автомобилем в большей степени опирались на четкую логику, описанную людьми
Затем, постепенно, доля такого кода в их проектах стала уменьшаться и заменяться узлами, в которых используются нейросети
На самом деле, все логично:
С точки зрения математики любую программу можно представить как функцию
Даже операционную систему Windows можно представить в виде математической функции
На вход она получает нажатия клавиш, перемещение мышью и прочий другой ввод от пользователя, а на выходе — картинка на экране, звук и так далее
Поскольку алгоритм машинного обучение (в том числе нейросети) — это все такой же алгоритм, то его также можно обозначить в виде обычной функции
Возьмем простой пример. Допустим есть программа, которая определяет категорию продукта по названию. Конечно, можно попытаться запрограммировать целую гору разный категорию и условий, но, очевидно, что такой вариант не масштабируется:
С другой стороны, можно отправить запрос нейросети: "К какой категории относится этот продукт?" и она сама определит ее на основе огромной базы знаний:
Тогда результат:
У вас могут возникнуть логичные вопросы:
— А как можно быть уверенным, что нейросеть ответит то, что нужно?
— Как ограничить количество вариантов?
— Как сделать так, чтобы нейросеть не придумывала лишнего?
Это действительно актуальные вопросы и не все из них полностью решены. Однако на часть из них уже есть ответы, в частности — структурированный вывод.
Интересно узнать, как заставить нейросеть выводить всегда только то, что нужно? Ставьте 🔥 и тогда в следующих постах раскрою эту тему подробнее
На днях Андрей Карпаты поделился своим видением программ будущего, он называет это Software 3.0 по аналогии с Web 2.0/3.0. Он рассуждает о том, что в будущем программы не будут содержать в себе 100% абсолютно четкую логику
если ... , то ... , иначе ...
Вместо этого, в некоторых частях программы будут встроены вызовы к языковой модели и будет использоваться результат, который она возвращает
Он приводит пример Tesla: вначале их программы для управления автомобилем в большей степени опирались на четкую логику, описанную людьми
Затем, постепенно, доля такого кода в их проектах стала уменьшаться и заменяться узлами, в которых используются нейросети
На самом деле, все логично:
С точки зрения математики любую программу можно представить как функцию
f(x)=y
, где x
— это входные данные, а y
— это вывод программы в виде данных или сигналовДаже операционную систему Windows можно представить в виде математической функции
f(x)
:На вход она получает нажатия клавиш, перемещение мышью и прочий другой ввод от пользователя, а на выходе — картинка на экране, звук и так далее
Поскольку алгоритм машинного обучение (в том числе нейросети) — это все такой же алгоритм, то его также можно обозначить в виде обычной функции
f(x)
и заменить любой блок программного кода на обращение к нейросетиВозьмем простой пример. Допустим есть программа, которая определяет категорию продукта по названию. Конечно, можно попытаться запрограммировать целую гору разный категорию и условий, но, очевидно, что такой вариант не масштабируется:
def categorize(product_name: str) -> str:
name = product_name.lower()
if "milk" in name or "cheese" in name:
return "Dairy"
elif "apple" in name or "banana" in name:
return "Fruits"
elif "iphone" in name or "samsung" in name:
return "Electronics"
else:
return "Other"
С другой стороны, можно отправить запрос нейросети: "К какой категории относится этот продукт?" и она сама определит ее на основе огромной базы знаний:
def categorize(product_name: str) -> str:
prompt = f"What category does the product '{product_name}' belong to?"
return call_large_language_model(prompt)
Тогда результат:
print(categorize("Parmesan")) # → "Dairy"
print(categorize("iPhone")) # → "Electronics"
У вас могут возникнуть логичные вопросы:
— А как можно быть уверенным, что нейросеть ответит то, что нужно?
— Как ограничить количество вариантов?
— Как сделать так, чтобы нейросеть не придумывала лишнего?
Это действительно актуальные вопросы и не все из них полностью решены. Однако на часть из них уже есть ответы, в частности — структурированный вывод.
Интересно узнать, как заставить нейросеть выводить всегда только то, что нужно? Ставьте 🔥 и тогда в следующих постах раскрою эту тему подробнее
YouTube
Andrej Karpathy: Software Is Changing (Again)
Andrej Karpathy's keynote on June 17, 2025 at AI Startup School in San Francisco. Slides provided by Andrej: https://drive.google.com/file/d/1a0h1mkwfmV2PlekxDN8isMrDA5evc4wW/view?usp=sharing
Chapters:
00:00 - Intro
01:25 - Software evolution: From 1.0 to…
Chapters:
00:00 - Intro
01:25 - Software evolution: From 1.0 to…
🔥6
Дайджест лучших статей за июнь
Очередной #дайджест моих самых интересных статей на vc.ru за прошедший месяц. В следующем месяце, вероятно, будет на другой платформе 🤔
1️⃣ Я ускорил перевод сайтов в 6 раз при тех же затратах на нейросети и без потери качества
2️⃣ Сильные не гонятся за целями. Они создают пространство для себя, расставляя рамки
3️⃣ V-JEPA 2: у роботов наконец-то появится опора в реальности и они перестанут галлюцинировать
4️⃣ Как перепрыгнуть сразу несколько мостов: платёж криптой, который занял час
#дайджест за предыдущий месяц
Очередной #дайджест моих самых интересных статей на vc.ru за прошедший месяц. В следующем месяце, вероятно, будет на другой платформе 🤔
1️⃣ Я ускорил перевод сайтов в 6 раз при тех же затратах на нейросети и без потери качества
2️⃣ Сильные не гонятся за целями. Они создают пространство для себя, расставляя рамки
3️⃣ V-JEPA 2: у роботов наконец-то появится опора в реальности и они перестанут галлюцинировать
4️⃣ Как перепрыгнуть сразу несколько мостов: платёж криптой, который занял час
#дайджест за предыдущий месяц
1👍2❤1🔥1
Как заставить нейросеть всегда выводить то, что нужно?
Часть 1: с помощью промпт-инжиниринга
В прошлом посте я упомянул концепцию Software 3.0 — это когда результат выполнения нейросети используется вместо вызова процедуры внутри программы:
А внутри процедуры
Но появляется проблема: модель может вернуть что угодно, потому что запрос к ней — слишком общий:
А поскольку нейросети — те ещё фантазёры, то, например на вопрос:
Она может ответить:
— Смартфон
— Электроника
— Девайс
Но не только! Она также может ответить более развернуто, что-то вроде:
И будет права, потому что не было задано никаких ограничений на то, как она должна отвечать. Тем более, что большинство моделей специально обучены имитировать ответ человека
Решение: промпт-инжиниринг
На помощь приходит промпт-инжиниринг, подход, при котором промпт составляется с учетом особенностей работы нейросети, чтобы максимально увеличить качество ответа
Суть подхода — не просто «спросить», а точно объяснить, чего ты хочешь от модели. Например:
Уже здесь можно использовать всякие трюки вроде few-shot prompting: когда в самом промпте представляются примеры того, как нужно отвечать. Это помогает нейросети точнее понять, что от неё ожидают:
С таким промптом даже самая маленькая модель без труда определит, что айфон — это тоже smartphone, а яблоки и груши — fruit:
Важно обозначить, что для простых и узкий случаев такой подход действительно работает без проблем. Однако у него есть значительные ограничения:
1. Промпт нужно поддерживать. Чем больше вариантов, тем сложнее учесть всё. Если не описать крайние случаи, модель может снова начать импровизировать
2. Не получится задать сложные структуры. Если нужно, чтобы модель выдавала объект с несколькими полями, вложенностью или типами, одними словами дело не обойдётся
Для решения этих проблем можно использовать JSON-схему, которая позволяет подробно описывать сложные вложенные структуры: списки и коллекции объектов с атрибутами
Представьте, что нам нужно узнать не просто категорию, к которой относится iPhone 15 Pro, но и размер дисплея, версию операционной системы, поддерживаемые функции и прочее. Что-то вроде:
Не получится просто сказать нейросети «в своем ответе пришли JSON». Она точно также начнет галлюцинировать: придумывать ключи JSON (
Но есть хорошие новости: все эти проблемы можно решить!
Как? Расскажу в одном из следующих постов 😎
Часть 1: с помощью промпт-инжиниринга
В прошлом посте я упомянул концепцию Software 3.0 — это когда результат выполнения нейросети используется вместо вызова процедуры внутри программы:
const category = categorize(product)
console.log(`${product} is in ${category} category`)
А внутри процедуры
categorize
вместо жестко заданного списка категорий находится просто вызов к нейросети:async function categorize(name: string) {
return await call_large_language_model(
`What category does the product '${name}' belong to?`
)
}
Но появляется проблема: модель может вернуть что угодно, потому что запрос к ней — слишком общий:
К какой категории относится товар ${name}?
А поскольку нейросети — те ещё фантазёры, то, например на вопрос:
К какой категории относится товар iPhone?
Она может ответить:
— Смартфон
— Электроника
— Девайс
Но не только! Она также может ответить более развернуто, что-то вроде:
iPhone — это смартфон, выпущенный компанией Apple
И будет права, потому что не было задано никаких ограничений на то, как она должна отвечать. Тем более, что большинство моделей специально обучены имитировать ответ человека
Решение: промпт-инжиниринг
На помощь приходит промпт-инжиниринг, подход, при котором промпт составляется с учетом особенностей работы нейросети, чтобы максимально увеличить качество ответа
Суть подхода — не просто «спросить», а точно объяснить, чего ты хочешь от модели. Например:
What category does the product '${name}' belong to?
Always answer with a single word product category.
Always use lowercase.
Уже здесь можно использовать всякие трюки вроде few-shot prompting: когда в самом промпте представляются примеры того, как нужно отвечать. Это помогает нейросети точнее понять, что от неё ожидают:
What category does the product '${name}' belong to?
Always answer with a single word product category.
Always use lowercase.
Here are examples of categories:
- samsung galaxy s22: smartphone
- banana: fruit
- bmw m5 2020: vehicle
С таким промптом даже самая маленькая модель без труда определит, что айфон — это тоже smartphone, а яблоки и груши — fruit:
console.log(await categorize("iphone")) // → smartphone
Важно обозначить, что для простых и узкий случаев такой подход действительно работает без проблем. Однако у него есть значительные ограничения:
1. Промпт нужно поддерживать. Чем больше вариантов, тем сложнее учесть всё. Если не описать крайние случаи, модель может снова начать импровизировать
2. Не получится задать сложные структуры. Если нужно, чтобы модель выдавала объект с несколькими полями, вложенностью или типами, одними словами дело не обойдётся
Для решения этих проблем можно использовать JSON-схему, которая позволяет подробно описывать сложные вложенные структуры: списки и коллекции объектов с атрибутами
Представьте, что нам нужно узнать не просто категорию, к которой относится iPhone 15 Pro, но и размер дисплея, версию операционной системы, поддерживаемые функции и прочее. Что-то вроде:
{
"category": "smartphone",
"brand": "iphone",
"model": "15 pro",
"characteristics": {
"screen_size": "6.1 inch",
"color": "titan"
}
}
Не получится просто сказать нейросети «в своем ответе пришли JSON». Она точно также начнет галлюцинировать: придумывать ключи JSON (
screen_size
или screenSize
?), добавлять лишние или не добавлять те, которые нужныНо есть хорошие новости: все эти проблемы можно решить!
Как? Расскажу в одном из следующих постов 😎
Ibm
What is few shot prompting?
Few-shot prompting refers to the process of providing an AI model with a few examples of a task to guide its performance. This method is particularly useful in scenarios where extensive training data is unavailable.
👍3🔥1
Как заставить нейросеть всегда выводить то, что нужно?
Часть 2: схема JSON
Продолжаю серию постов о том, как сделать так, чтобы нейросеть выводила данные в нужном формате
Ранее я показал как с помощью промпт-инжиниринга и few-shot prompting можно заставить нейросеть выводить нужный нам результат: произвести классификацию, оценку и т.п.
У такого подхода есть одно важное ограничение:
Если нужно получить несколько элементов за раз, например, категорию товара, модель и его характеристики, то такой подход не подойдет
Можно, конечно, попытаться придумать свои правила, которые нейронная сеть должна использовать и написать программу, которая бы извлекала эти данные из ответа нейросети
Однако, именно для этих целей существует специальный текстовый формат для обмена данных под названием JSON
Он используется повсеместно уже 25 лет для общения между программами в интернете и не только
Допустим, мы хотим извлечь структурированный вывод из объявления «Продам iPhone 15 Pro 256GB титан»:
Для этого нужно в промпт к нейросети добавить инструкцию, в каком точном формате она должна вернуть ответ
Для того, чтобы описать структуру JSON также есть специальный формат, который называется JSON Schema:
В конце промпта к нейронной сети добавим указания следовать этому формату:
Останется только «расшифровать» вывод нейросети с помощью
На выходе получим:
В коде мы можем использовать это следующим образом:
Такой способ действительно работает и позволяет получать ответ в виде жестко заданной структуры в 70% случаев
Почему 70%? Потому что языковые модели — вероятностные модели и все равно иногда могут «забыть» парные скобки или кавычки, а иногда «придумать» свой формат на выходе
Это важно понимать: то есть даже системный промпт не дает полной уверенности в том, что нейросеть будет однозначно следовать инструкциям
На практике, конечно же, 70% успеха не всегда достаточно. При большом потоке пользователей такой подход однозначно вызовет ошибку у части пользователей
✨ Но есть хорошие новости: существует способ добиться 100% вероятности успеха и сделать так, чтобы нейросеть всегда возвращала JSON в правильном формате и без ошибок
Как? Спойлер:с помощью моих любимых конечных автоматов 😉
Часть 2: схема JSON
Продолжаю серию постов о том, как сделать так, чтобы нейросеть выводила данные в нужном формате
Ранее я показал как с помощью промпт-инжиниринга и few-shot prompting можно заставить нейросеть выводить нужный нам результат: произвести классификацию, оценку и т.п.
categorize("iPhone") // → "smartphone"
У такого подхода есть одно важное ограничение:
Если нужно получить несколько элементов за раз, например, категорию товара, модель и его характеристики, то такой подход не подойдет
Можно, конечно, попытаться придумать свои правила, которые нейронная сеть должна использовать и написать программу, которая бы извлекала эти данные из ответа нейросети
Однако, именно для этих целей существует специальный текстовый формат для обмена данных под названием JSON
Он используется повсеместно уже 25 лет для общения между программами в интернете и не только
Допустим, мы хотим извлечь структурированный вывод из объявления «Продам iPhone 15 Pro 256GB титан»:
{
"category": "smartphone",
"brand": "apple",
"model": "iphone 15 pro",
"characteristics": {
"screen_size": "6.1 inch",
"color": "titan"
}
}
Для этого нужно в промпт к нейросети добавить инструкцию, в каком точном формате она должна вернуть ответ
Для того, чтобы описать структуру JSON также есть специальный формат, который называется JSON Schema:
{
"type": "object",
"properties": {
"category": { "type": "string" },
"brand": { "type": "string" },
"model": { "type": "string" },
"characteristics": {
"type": "object",
"properties": {
"screen_size": { "type": "string" },
"color": { "type": "string" }
},
"required": [ "screen_size", "color" ]
}
},
"required": [
"category", "brand",
"model", "characteristics"
]
}
В конце промпта к нейронной сети добавим указания следовать этому формату:
What category does the product '${name}' belong to?
Always answer with a single word product category.
Always use lowercase.
Here are examples of categories:
- samsung galaxy s22: smartphone
- banana: fruit
- bmw m5 2020: vehicle
You must format your output as a JSON value that adheres to a given "JSON Schema" instance:
${schema}
In your output return only JSON and nothing else - no comments, prefixes or concluding text
Останется только «расшифровать» вывод нейросети с помощью
JSON.parse
:async function parse(name: string) {
const result = await call_llm(prompt)
return JSON.parse(result)
}
const parsed = await parse(
"Продам iPhone 15 Pro 256GB титан"
)
На выходе получим:
{
"category": "smartphone",
"brand": "apple",
"model": "iphone 15 pro",
"characteristics": {
"screen_size": "6.1 inches",
"color": "titanium"
}
}
В коде мы можем использовать это следующим образом:
if (parsed.model.includes("iphone")) {
const c = parsed.characteristics
console.log(`Screen size: ${c.screen_size}`)
console.log(`Color: ${c.color}`)
}
//
// Screen size: 6.1 inches
// Color: titanium
//
Такой способ действительно работает и позволяет получать ответ в виде жестко заданной структуры в 70% случаев
Почему 70%? Потому что языковые модели — вероятностные модели и все равно иногда могут «забыть» парные скобки или кавычки, а иногда «придумать» свой формат на выходе
Это важно понимать: то есть даже системный промпт не дает полной уверенности в том, что нейросеть будет однозначно следовать инструкциям
На практике, конечно же, 70% успеха не всегда достаточно. При большом потоке пользователей такой подход однозначно вызовет ошибку у части пользователей
✨ Но есть хорошие новости: существует способ добиться 100% вероятности успеха и сделать так, чтобы нейросеть всегда возвращала JSON в правильном формате и без ошибок
Как? Спойлер:
transform.tools
JSON to JSON Schema
An online playground to convert JSON to JSON Schema
1👍2🔥1
Вот за это я люблю информатику
На своем канале Vsauce, Майкл впервые за два года выложил новое видео
И буквально в течение первых 56 секунд он отлично продемонстрировал то, за что я обожаю информатику:
Нужно всего 33 вопроса «да/нет», чтобы уникально идентифицировать каждого человека на планете
Каждого. Как если бы это был уникальный отпечаток пальца или сетчатки глаза
Кстати, чтобы сохранить такой отпечаток для каждого человека, живущего на планете, потребуется всего 1 Гигабайт
Но есть нюанс: неизвестно какие это должны быть вопросы
Однако, сам факт того, что мы можем так легко посчитать и закодировать информацию в числа лично меня завораживает
А подобные интерпретации позволяют посмотреть на информацию, которая нас окружает, с другой, более философской стороны
На своем канале Vsauce, Майкл впервые за два года выложил новое видео
И буквально в течение первых 56 секунд он отлично продемонстрировал то, за что я обожаю информатику:
Нужно всего 33 вопроса «да/нет», чтобы уникально идентифицировать каждого человека на планете
Каждого. Как если бы это был уникальный отпечаток пальца или сетчатки глаза
Кстати, чтобы сохранить такой отпечаток для каждого человека, живущего на планете, потребуется всего 1 Гигабайт
Но есть нюанс: неизвестно какие это должны быть вопросы
Однако, сам факт того, что мы можем так легко посчитать и закодировать информацию в числа лично меня завораживает
А подобные интерпретации позволяют посмотреть на информацию, которая нас окружает, с другой, более философской стороны
YouTube
All The Ghosts You Will Be
MOX NOX. Pre-order the Death Clock here: http://www.InqFactory.com/DeathClock
Special thanks to @CalebMarting for his tireless work on the prototypes. Our entire team at the Curiosity Box and Inq Factory is incredible -- it's a gift to be able to make the…
Special thanks to @CalebMarting for his tireless work on the prototypes. Our entire team at the Curiosity Box and Inq Factory is incredible -- it's a gift to be able to make the…
❤3