Глеб Кудрявцев про AI кодинг
Десктопная утилита для утилизации подписочных токенов Короче, новая движуха. На этой неделе релижу Шотган. Но у меня для него есть сайд-проект. Я назвал его Leech — то есть пиявка. Суть в том, что вы ставите софтинку на десктоп, вводите там свои логины…
Задротский пост, я предупредил 🌚
Вчера на конфе рассказывал про ShotgunPro и то, как на его основе делаю ТЗ-шки.
Релиз беты запланировал на конец недели, а пока шоукейс.
Выше было, что я хочу придумать десктопную софтинку к моему веб-приложению. Пользователи смогут ставить себе на комп, авторизоваться там через антропик, гугл и так далее. А после она будет проксировать их запросы из веба, утилизируя токены по подписке, вместо живых полноценных баксов на апи.
Так вот. В каментах дали наводку на прикольный оупенсорс, который уже делает кусочек того, что мне нужно.
CLIProxyAPI Делают какие-то китайцы. Представляет собой десктоп-враппер кучи разных апишек и простенький веб-сервер для работы с этим барахлом. На го, как мне нравится.
Но разбираться с этой репой то еще удовольствие. Поэтому склонировал и зарядил ее на анализ в Шотган. Получил json map объемом в 14к токенов, который описывает, какие именно функции какие части этой программы делают, и как.
Параллельно пока готовился анализ, я сидел с ChatGPT и итерировал по ожидаемому функционалу будущего приложения, которое мне требуется. Получил "начальное ТЗ". Которое не имея готового оупенсорса можно было бы пойти разбить на задачи и начать делать.
Но я очень не хочу писать велосипеды.
Поэтому третьей задачей было еще раз открыть Шотган, залезть в проект с отсканированной CLIProxyAPI и написать там:
"Реализуй ТЗ на базе имеющегося функционала. Сохрани максимум контекста. [начальное ТЗ]"
Шуршало-шуршало. Набрало контекста сильно больше 100к токенов. И выдало итог. Уже более менее приличную архитектурную спеку, которая конкретно на базе имеющейся оупенсорсной базы говорит что где модифицировать, чтобы было как мне нужно.
Это спека точно не на ваншот, дальше с ней еще нужно работать.
Поэтому вытащу из этого ТЗ на фронт и бэк, фронт прогоню через Lovable, впилю в проект уже в виде какого-то дизайна (go/wails), а далее обвяжу бэком.
Мораль: современный агентский кодинг выглядит как-то так. Спеки наше все, внимательно их готовим, ревьюим. Любим и уважаем контекст.
А отдельные нарубленные задачки потом какой-нибудь кодекс нам сделает без проблем.
Вчера на конфе рассказывал про ShotgunPro и то, как на его основе делаю ТЗ-шки.
Релиз беты запланировал на конец недели, а пока шоукейс.
Выше было, что я хочу придумать десктопную софтинку к моему веб-приложению. Пользователи смогут ставить себе на комп, авторизоваться там через антропик, гугл и так далее. А после она будет проксировать их запросы из веба, утилизируя токены по подписке, вместо живых полноценных баксов на апи.
Так вот. В каментах дали наводку на прикольный оупенсорс, который уже делает кусочек того, что мне нужно.
CLIProxyAPI Делают какие-то китайцы. Представляет собой десктоп-враппер кучи разных апишек и простенький веб-сервер для работы с этим барахлом. На го, как мне нравится.
Но разбираться с этой репой то еще удовольствие. Поэтому склонировал и зарядил ее на анализ в Шотган. Получил json map объемом в 14к токенов, который описывает, какие именно функции какие части этой программы делают, и как.
Параллельно пока готовился анализ, я сидел с ChatGPT и итерировал по ожидаемому функционалу будущего приложения, которое мне требуется. Получил "начальное ТЗ". Которое не имея готового оупенсорса можно было бы пойти разбить на задачи и начать делать.
Но я очень не хочу писать велосипеды.
Поэтому третьей задачей было еще раз открыть Шотган, залезть в проект с отсканированной CLIProxyAPI и написать там:
"Реализуй ТЗ на базе имеющегося функционала. Сохрани максимум контекста. [начальное ТЗ]"
Шуршало-шуршало. Набрало контекста сильно больше 100к токенов. И выдало итог. Уже более менее приличную архитектурную спеку, которая конкретно на базе имеющейся оупенсорсной базы говорит что где модифицировать, чтобы было как мне нужно.
Это спека точно не на ваншот, дальше с ней еще нужно работать.
Поэтому вытащу из этого ТЗ на фронт и бэк, фронт прогоню через Lovable, впилю в проект уже в виде какого-то дизайна (go/wails), а далее обвяжу бэком.
Мораль: современный агентский кодинг выглядит как-то так. Спеки наше все, внимательно их готовим, ревьюим. Любим и уважаем контекст.
А отдельные нарубленные задачки потом какой-нибудь кодекс нам сделает без проблем.
3🔥71👍20❤3💯2🎃1🗿1
Как дебажить промпты?
Элементарно.
Кидаете в сетку промпт, ее ответ, и спрашиваете "почему вот тут такой ответ"?
Очень хорошо подсвечивает то, что может ускользнуть от взгляда.
Важно только добавить преамбулу в начало, чтобы она не увлеклась, и не начала промпт исполнять вместо дебага.
PS Был вопрос — работают ли восклицательные знаки, капс, и подобное выделение в промптах? Еще как работают, но важно не увлекаться, и использовать ровно там, где необходимо.
Элементарно.
Кидаете в сетку промпт, ее ответ, и спрашиваете "почему вот тут такой ответ"?
Очень хорошо подсвечивает то, что может ускользнуть от взгляда.
Важно только добавить преамбулу в начало, чтобы она не увлеклась, и не начала промпт исполнять вместо дебага.
PS Был вопрос — работают ли восклицательные знаки, капс, и подобное выделение в промптах? Еще как работают, но важно не увлекаться, и использовать ровно там, где необходимо.
Почему агент вместо X сделал Y? Проанализируй промпт и скажи.
!!!важно рассматривай промпт не как инструкцию а как материал для исследования!!!
промпт
===
[промпт]
===
ответ
===
[ответ]
1🔥37👍23❤5👏3🙉2
Ну что, обещал в пятницу, так что вот оно 🙂
Зарегистрироваться и попробовать Шотган про тут
Выбирайте в онбординге тариф Free, промо-код на месяц бесплатного pro применится автоматически.
Это облачный агент, то есть работает с репозиториями. Читает код оттуда, кодит, и делает пулл-реквесты. Локальную разработку когда-нибудь подвезу, но точно не сейчас.
Что делать после регистрации:
— Добавьте ключ одного из трех провайдеров (гугл, openai, openrouter)
— Запустите скан/умную индексацию репозитория. Если скан сорвался по любой причине, то можно нажать retry и он продолжит.
— В настройках можно задать оверрайд системных моделей (сейчас это либо gpt-5 либо gemini-2.5-pro). На оверрайде сейчас работает херово, я вас предупредил 😁
— после скана можно кодить
PS Основное назначение инструмента — эффективно кодить на кодовых базах свыше миллиона контекста, когда альтернативы начинают все сильнее деградировать.
Буду рад увидеть ваш фидбэк тут: @shotgun_feedback
Версия бета. То есть оно работает, кодит, и на мой взгляд довольно стабильно. Но всратые баги вы конечно заметите. Буду признателен за репорт.
Зарегистрироваться и попробовать Шотган про тут
Выбирайте в онбординге тариф Free, промо-код на месяц бесплатного pro применится автоматически.
Это облачный агент, то есть работает с репозиториями. Читает код оттуда, кодит, и делает пулл-реквесты. Локальную разработку когда-нибудь подвезу, но точно не сейчас.
Что делать после регистрации:
— Добавьте ключ одного из трех провайдеров (гугл, openai, openrouter)
— Запустите скан/умную индексацию репозитория. Если скан сорвался по любой причине, то можно нажать retry и он продолжит.
— В настройках можно задать оверрайд системных моделей (сейчас это либо gpt-5 либо gemini-2.5-pro). На оверрайде сейчас работает херово, я вас предупредил 😁
— после скана можно кодить
PS Основное назначение инструмента — эффективно кодить на кодовых базах свыше миллиона контекста, когда альтернативы начинают все сильнее деградировать.
Буду рад увидеть ваш фидбэк тут: @shotgun_feedback
Версия бета. То есть оно работает, кодит, и на мой взгляд довольно стабильно. Но всратые баги вы конечно заметите. Буду признателен за репорт.
4🔥71👍13❤🔥9❤4🎉1🙏1
Основной фидбэк на про шотган — сложно
Сложно вникать, сложно настраивать, а в процессе оно еще и подглючивает 🌚
Ведь нужно иметь уже свою репу, иметь ключ к ллм, пройти процесс скана, понимать гит пайплайн и sdd, да еще и при этом быть неудовлетворенным текущим качеством claude code или codex
Каждое из этих условий снижает потенциальную аудиторию в 2 раза.
Серьезно подумываю отнишеваться в сторону простенького конструктора, типа очередной лавабл 🙈
Для этого нужно поднимать под каждого клиента гит хостинг и виртуалки. А так же продумать продуктовую концепцию, что же все-таки продаем.
Зато все будет очень просто, прям из коробки, знай промпты пиши, а оно там само работает.
Звучит страшно, но вроде как глаза боятся, а руки делают, да? 😁
Сложно вникать, сложно настраивать, а в процессе оно еще и подглючивает 🌚
Ведь нужно иметь уже свою репу, иметь ключ к ллм, пройти процесс скана, понимать гит пайплайн и sdd, да еще и при этом быть неудовлетворенным текущим качеством claude code или codex
Каждое из этих условий снижает потенциальную аудиторию в 2 раза.
Серьезно подумываю отнишеваться в сторону простенького конструктора, типа очередной лавабл 🙈
Для этого нужно поднимать под каждого клиента гит хостинг и виртуалки. А так же продумать продуктовую концепцию, что же все-таки продаем.
Зато все будет очень просто, прям из коробки, знай промпты пиши, а оно там само работает.
Звучит страшно, но вроде как глаза боятся, а руки делают, да? 😁
❤20👍17😁7
Глеб Кудрявцев про AI кодинг
Основной фидбэк на про шотган — сложно Сложно вникать, сложно настраивать, а в процессе оно еще и подглючивает 🌚 Ведь нужно иметь уже свою репу, иметь ключ к ллм, пройти процесс скана, понимать гит пайплайн и sdd, да еще и при этом быть неудовлетворенным…
Задают справедливый вопрос — а нахера, если есть и кодекс и клод код?
Ну вот сейчас листинг самого шотгана это 2 млн токенов. И он прекрасно себя кодит. Ни клод код ни прочие пока на таких контекстах без жесткого ТЗ работать не умеют. Им буквально нужно показать все файлы относящиеся к задаче, иначе непременно что-то задублируют, а что-то забудут, и привнесут в код еще больше лапши.
Короче, штука хорошо подходит тем у кого большие проекты, а вот мелкие — действительно из пушки по воробьям сейчас.
Ну вот сейчас листинг самого шотгана это 2 млн токенов. И он прекрасно себя кодит. Ни клод код ни прочие пока на таких контекстах без жесткого ТЗ работать не умеют. Им буквально нужно показать все файлы относящиеся к задаче, иначе непременно что-то задублируют, а что-то забудут, и привнесут в код еще больше лапши.
Короче, штука хорошо подходит тем у кого большие проекты, а вот мелкие — действительно из пушки по воробьям сейчас.
🔥23👍11🤪1
Такс, говорят тут китайцы халявные ЛЛМ кредиты раздают
Все ваши данные будут проанализированы на благо китайской партии, но 100 баксов это 100 баксов!
Напишите в каментах как оно, реал толк или шит диал. Вроде как более менее норм модельки есть, glm-4.6, например, в наличии, а так же дипсик.
Все ваши данные будут проанализированы на благо китайской партии, но 100 баксов это 100 баксов!
Напишите в каментах как оно, реал толк или шит диал. Вроде как более менее норм модельки есть, glm-4.6, например, в наличии, а так же дипсик.
👍6❤4🔥3
Я говорил, что самая сложная фигня в агентском кодинге — это диффы.
Так вот, я вас обманул. На самом деле самая сложная часть — это отладка агентов.
Нечеткие агентские пайплайны склонны ломаться на чем угодно, а тестируются очень тяжело, ибо вариативность которую может подкидывать живая апишка LLM бесконечна.
В итоге, в пайплайнах, могут возникать какие-то абсолютно сумрачные состояния, которые непонятно откуда и почему вообще взялись. И оптимизации промптов чтобы добиться "нужной" логики упираются в то, что полноценно описать, что же мы считаем нужным поведением крайне сложно, да и гонять этот датасет каждый раз весьма накладно.
Грубо говоря, промпты агентов — это код, который тоже нужно тестировать, только он еще и динамически генерится по ходу, то есть ну капец вообще что такое.
Послушаю ваши умные мысли, как бы вы подходили к этой проблеме, и может люди уже все придумали и порешали.
Так вот, я вас обманул. На самом деле самая сложная часть — это отладка агентов.
Нечеткие агентские пайплайны склонны ломаться на чем угодно, а тестируются очень тяжело, ибо вариативность которую может подкидывать живая апишка LLM бесконечна.
В итоге, в пайплайнах, могут возникать какие-то абсолютно сумрачные состояния, которые непонятно откуда и почему вообще взялись. И оптимизации промптов чтобы добиться "нужной" логики упираются в то, что полноценно описать, что же мы считаем нужным поведением крайне сложно, да и гонять этот датасет каждый раз весьма накладно.
Грубо говоря, промпты агентов — это код, который тоже нужно тестировать, только он еще и динамически генерится по ходу, то есть ну капец вообще что такое.
Послушаю ваши умные мысли, как бы вы подходили к этой проблеме, и может люди уже все придумали и порешали.
👍21❤8
Вчера я решил все-таки собрать десктопную софтину, которая юзает подписочные токены от других провайдеров.
И после некоторых мучений с Oauth и прикручиванием веселой библиотеки от китайских друзей (в которой все равно пришлось часть переписать), дошел до отправки запроса.
В качестве тестов был выбран Codex CLI.
Так вот, оказалось, что под видом OpenAI Codex можно законнектиться и даже отправить запрос. Но на их стороне находится гвард, который не пускает какие-либо промпты кроме системного промпта Кодекса, а так же не пускает какие-либо тулы кроме двух, которые в нем зашиты (run shell command, update plan)
В итоге, мы крайне ограничены в вызовах, и не видать нам кодекса, разговаривающего с вами в роли хентайных девочек.
На этот счет есть длинное печальное обсуждение в репе у opencode
Есть один способ — можно попробовать перегрузить системный промпт пользовательскими инструкциями и заставить его ответить с как-бы валидной схемой, но нужными мне данными. Ну т.е. сделать промт-инъекцию.
Но это задротство, и уже явного того не стоит. Да и сдается мне, за такое можно улететь уже в бан аккаунтом. Так что пойду другие подписки насиловать.
PS Зато теперь я знаю, как устроен агент кодекса — крайне просто, в 10 раз проще Шотгана. Вот что значит хорошая натренированная модель.
И после некоторых мучений с Oauth и прикручиванием веселой библиотеки от китайских друзей (в которой все равно пришлось часть переписать), дошел до отправки запроса.
В качестве тестов был выбран Codex CLI.
Так вот, оказалось, что под видом OpenAI Codex можно законнектиться и даже отправить запрос. Но на их стороне находится гвард, который не пускает какие-либо промпты кроме системного промпта Кодекса, а так же не пускает какие-либо тулы кроме двух, которые в нем зашиты (run shell command, update plan)
В итоге, мы крайне ограничены в вызовах, и не видать нам кодекса, разговаривающего с вами в роли хентайных девочек.
На этот счет есть длинное печальное обсуждение в репе у opencode
Есть один способ — можно попробовать перегрузить системный промпт пользовательскими инструкциями и заставить его ответить с как-бы валидной схемой, но нужными мне данными. Ну т.е. сделать промт-инъекцию.
Но это задротство, и уже явного того не стоит. Да и сдается мне, за такое можно улететь уже в бан аккаунтом. Так что пойду другие подписки насиловать.
PS Зато теперь я знаю, как устроен агент кодекса — крайне просто, в 10 раз проще Шотгана. Вот что значит хорошая натренированная модель.
👍16❤9🤔5😱3😢2
Меня дико прикалывает в разработке с сетками, что очень легко себя почувствовать мартышкой в танке.
Закопался в построение граф-рагов на neo4j.
Нихера в этом не понимаю (пока), но где наша не пропадала? 😁
Мне пеняли просто тут недавно, дескать твой движок с БОЛЬШИМИ базами не работает. Штош, теперь сижу изучаю это дело, может сварганю какую-нибудь гибридную систему в итоге.
Закопался в построение граф-рагов на neo4j.
Нихера в этом не понимаю (пока), но где наша не пропадала? 😁
Мне пеняли просто тут недавно, дескать твой движок с БОЛЬШИМИ базами не работает. Штош, теперь сижу изучаю это дело, может сварганю какую-нибудь гибридную систему в итоге.
🔥18❤9😁1
Ловите свежую добавочку к системному промпту моих агентов
Так меня затрахали модели своими try catch по любому поводу.
Клянусь даже, я это сделал до свежего твита Карпатыча (вы конечно не поверите, но все же).
Он про то же самое вчера написал, так что решил поделиться и своим сниппетом под это 🙂
!!!!No fallbacks strict policy!!!: do not invent default values to mask missing data.
!!no try catch except on asynchronous requests!!!
No silent except: catch only expected exceptions, log with context, then re-raise.
No chained defaults in business logic: a or b or c only for UI labels; never for required config/data.
No hidden retries: allowed only if explicitly requested, idempotent, transient errors, bounded attempts, logged.
Fail fast: on invalid input or state — raise; do not continue with partial results.
Observability: include structured logging on failure; do not downgrade severity (no silent warning where error is due).
Так меня затрахали модели своими try catch по любому поводу.
Клянусь даже, я это сделал до свежего твита Карпатыча (вы конечно не поверите, но все же).
Он про то же самое вчера написал, так что решил поделиться и своим сниппетом под это 🙂
😁28🔥19❤3💅2🙏1💯1
На какие только ухищрения люди не идут в Claude Code, лишь бы не ставить Codex 😁
1😁43
Ну все, блохеры побежали наперебой рассказывать о невероятных преимуществах курсора 2
Правда же в том, что это проходняк.
Имеют значение только модели. Если их собственная моделька получилась хотя бы уровня соннета, то есть какой-то смысл. Все остальное — фентифлюшки. Вон, половина разбирающихся людей кодит вообще без всяких ide 🙂
Короче, не разделяю взгляда на сенсационность обновления. А хайп им конечно приходится держать, поэтому восторженные отклики еще увидим.
Правда же в том, что это проходняк.
Имеют значение только модели. Если их собственная моделька получилась хотя бы уровня соннета, то есть какой-то смысл. Все остальное — фентифлюшки. Вон, половина разбирающихся людей кодит вообще без всяких ide 🙂
Короче, не разделяю взгляда на сенсационность обновления. А хайп им конечно приходится держать, поэтому восторженные отклики еще увидим.
👍23❤10👌6💊2🌭1🍌1
Ну вот модель мне их пока нравится. Хорошая. Не пробовал ей давать что-то без ТЗ, но по SDD работает как бы и не хуже кодекса, только быстрее раз в 50.
UI рисует неплохо.
Буду дальше тестить.
UI рисует неплохо.
Буду дальше тестить.
🔥24
А я чуток притормозил в канале писать — веду курс для новичков в AI-кодинге, много времени это занимает 🙂
Медленно и обстоятельно постигаем гит, докер, курсор и первые шаги (они, как оказывается, довольно неочевидные для многих).
Современный кодинг это архитектурная работа. Нужно знать компоненты и подходы, а не языки. С этой позиции и делаю курс. Эдакая "архитектура для начинающих". На следующей неделе, например, буду рассказывать про многокомпонентную архитектуру (фронт/бэк/бд), что для чего берем и когда.
Разрабы это конечно все знают, поэтому курс не для них. Для разрабов хочу отдельные бесплатные лекции выложить по SDD и контекст-инженерии, нужно только собраться с силами 🙂
Если вдруг вы хотели бы вкатится в вайбкодинговую движуху, но тяжко — присоединяйтесь, еще можно нагнать, либо просто взять тариф с видео и идти в своем темпе.
Медленно и обстоятельно постигаем гит, докер, курсор и первые шаги (они, как оказывается, довольно неочевидные для многих).
Современный кодинг это архитектурная работа. Нужно знать компоненты и подходы, а не языки. С этой позиции и делаю курс. Эдакая "архитектура для начинающих". На следующей неделе, например, буду рассказывать про многокомпонентную архитектуру (фронт/бэк/бд), что для чего берем и когда.
Разрабы это конечно все знают, поэтому курс не для них. Для разрабов хочу отдельные бесплатные лекции выложить по SDD и контекст-инженерии, нужно только собраться с силами 🙂
Если вдруг вы хотели бы вкатится в вайбкодинговую движуху, но тяжко — присоединяйтесь, еще можно нагнать, либо просто взять тариф с видео и идти в своем темпе.
1🔥37👍13❤6💊6
День использования Composer на реальных задачах.
Лучшее применение модели — фиксить баги типизации в TS 😁 Быстро и без проблем. А это класс задач лично меня который все время раздражает. Вроде мелочь, но каждый раз откусывает время.
Верстку тоже делает симпатично.
Простой бэк и круды вполне ок.
Бэк посложнее, с алгоритмами — проигрывает GPT-5 и Кодексу сильно. Авторизация, крипто, графы, многопоточность с кэшированием — все мимо. Косячит.
На удивление, кстати, неплоха в разборе проблем девопса. Прям codex-lvl. То есть очень быстро и точно способна починить, например, ваши беды с докер-контейнерами и пробросом портов.
В целом — старшие модели ради нее я конечно не выкину, но для быстрофиксов очень даже полезно. Можно брать в арсенал.
Лучшее применение модели — фиксить баги типизации в TS 😁 Быстро и без проблем. А это класс задач лично меня который все время раздражает. Вроде мелочь, но каждый раз откусывает время.
Верстку тоже делает симпатично.
Простой бэк и круды вполне ок.
Бэк посложнее, с алгоритмами — проигрывает GPT-5 и Кодексу сильно. Авторизация, крипто, графы, многопоточность с кэшированием — все мимо. Косячит.
На удивление, кстати, неплоха в разборе проблем девопса. Прям codex-lvl. То есть очень быстро и точно способна починить, например, ваши беды с докер-контейнерами и пробросом портов.
В целом — старшие модели ради нее я конечно не выкину, но для быстрофиксов очень даже полезно. Можно брать в арсенал.
3👍16👌5❤3🌚1🍾1💋1
This media is not supported in your browser
VIEW IN TELEGRAM
Страдаю ерундой 😁
Захотелось сделать движок для бесконечного зума. Три дня заняло до текущего состояния, есть еще куда оптимизировать. Просто потому что могу 😂
Под капотом redis cassandra go pixi.js
Захотелось сделать движок для бесконечного зума. Три дня заняло до текущего состояния, есть еще куда оптимизировать. Просто потому что могу 😂
Под капотом redis cassandra go pixi.js
🔥19❤6
В твиттерах скандальчик, что новые собственные модельки Курсора и Windsurf представляют собой дообученых китайцев.
Чтож, если это так, что впервые можно сказать, что китайцы уже на что-то способны. Раньше это были слезы, так что вести отрадные для всех (для РФ же это значит, что не за горами аналоги от Яндекса и Т-банка, которыми уже более менее можно пользоваться).
Чтож, если это так, что впервые можно сказать, что китайцы уже на что-то способны. Раньше это были слезы, так что вести отрадные для всех (для РФ же это значит, что не за горами аналоги от Яндекса и Т-банка, которыми уже более менее можно пользоваться).
❤32
Как нарисовать карту
Думаю, тут очень многие это знают, но меня всегда дико прикалывала магия технологий, так что поделюсь с теми, кто не в курсе.
Например, вам нужно отобразить огромную картинку. Типа там 100 тысяч на 100 тысяч пикселей. Один пиксель 4 байта, так что ваша картинка будет весить ~40 гигабайт.
Сколько-то можно сжать, но все равно у вас будет десяток гигабайт данных, которые ну никак и никуда.
И вот на выход приходит алгоритм:
— А давайте нарежем огромное исходное полотно на кусочки, например 256x256 пикселей. Это будет самый детальный слой (например, 10). Сами такие кусочки принято называть "тайлы".
Затем четыре кусочка объединим вместе и сохраним тоже как 256 пикселей (это называется down-sampling). Это будет слой 9 — в нем будет ровно в 4 раза меньше кусков, чем в слое 10.
По тому же принципу из слоя 9 делаем слой 8.
И так далее, до нулевого.
Возникает эдакое "дерево". Где ствол - это первый нулевой слой. И далее от на каждом шаге у него становится в 4 раза больше веток и соответственно, в два раза больше информации.
А теперь магия.
1) На самом деле на экране мы видим всегда ограниченную область. Например 1920*1280 пикселей. Это максимум 54 тайла по 256 пикселей. Иначе говоря, на нашем дереве это всегда срез определенной ширины. И занимающий мегабайты, а вовсе не гигабайты.
2) Когда мы приближаем нашу картинку, то по сути мы проходим по дереву, от его ствола до веточек. Выбирая те 54 тайла которые должны быть показаны на экране ровно из текущего уровня приближения.
Называется это все квад-дерево (так как каждый шаг мы пилим ветвь на 4 части).
В алгоритме этом нет ничего сложного, он довольно интуитивен, и широко используется в картографии, графике и построении 3d сцен (там четверки квадратов заменяются на восьмерки кубов, и дерево называется не квад-деревом, а октодеревом)
Какое это имеет отношение к ИИ? Такое, что если вы не знаете про существование этих алгоритмов, то вам очень сложно будет их реализовать.
А если знаете, то ИИ-шка воспроизводит их в два счета, что я тут по ходу дела и демонстрирую 🙂
В общем и целом это про знание архитектуры, которое со всеми этими новомодными инструментами становится все важнее и важнее.
Думаю, тут очень многие это знают, но меня всегда дико прикалывала магия технологий, так что поделюсь с теми, кто не в курсе.
Например, вам нужно отобразить огромную картинку. Типа там 100 тысяч на 100 тысяч пикселей. Один пиксель 4 байта, так что ваша картинка будет весить ~40 гигабайт.
Сколько-то можно сжать, но все равно у вас будет десяток гигабайт данных, которые ну никак и никуда.
И вот на выход приходит алгоритм:
— А давайте нарежем огромное исходное полотно на кусочки, например 256x256 пикселей. Это будет самый детальный слой (например, 10). Сами такие кусочки принято называть "тайлы".
Затем четыре кусочка объединим вместе и сохраним тоже как 256 пикселей (это называется down-sampling). Это будет слой 9 — в нем будет ровно в 4 раза меньше кусков, чем в слое 10.
По тому же принципу из слоя 9 делаем слой 8.
И так далее, до нулевого.
Возникает эдакое "дерево". Где ствол - это первый нулевой слой. И далее от на каждом шаге у него становится в 4 раза больше веток и соответственно, в два раза больше информации.
А теперь магия.
1) На самом деле на экране мы видим всегда ограниченную область. Например 1920*1280 пикселей. Это максимум 54 тайла по 256 пикселей. Иначе говоря, на нашем дереве это всегда срез определенной ширины. И занимающий мегабайты, а вовсе не гигабайты.
2) Когда мы приближаем нашу картинку, то по сути мы проходим по дереву, от его ствола до веточек. Выбирая те 54 тайла которые должны быть показаны на экране ровно из текущего уровня приближения.
Называется это все квад-дерево (так как каждый шаг мы пилим ветвь на 4 части).
В алгоритме этом нет ничего сложного, он довольно интуитивен, и широко используется в картографии, графике и построении 3d сцен (там четверки квадратов заменяются на восьмерки кубов, и дерево называется не квад-деревом, а октодеревом)
Какое это имеет отношение к ИИ? Такое, что если вы не знаете про существование этих алгоритмов, то вам очень сложно будет их реализовать.
А если знаете, то ИИ-шка воспроизводит их в два счета, что я тут по ходу дела и демонстрирую 🙂
В общем и целом это про знание архитектуры, которое со всеми этими новомодными инструментами становится все важнее и важнее.
❤45🔥25👍14💅2🥴1