Константин Доронин
3.87K subscribers
622 photos
313 videos
1 file
337 links
По любым вопросам, которые не хотите задавать в комментариях, можете писать напрямую – @kdoronin
Download Telegram
Media is too big
VIEW IN TELEGRAM
Кейс про создание достаточно длинных консистентных видео с озвучкой.

Само видео – в медиа поста. Смотреть, разумеется, со звуком.

Этапы работы:

1. Сгенерировал при помощи нового инструмента от OpenAI картинку по запросу "Нарисуй мне уровень в 3D-бумершутере с видом от первого лица".

2. За счёт того, что сгенерированные изображения у ChatGPT имеют с недавних пор повышенную консистентность, я подвигал персонажа по уровню и создал набор изображений.

3. Попарно, через первый и последний кадры, в Kling1.6 создал несколько 5-секундных роликов.

4. Каждый из 5-секундных роликов я озвучил через модель mmaudio-v2, которая есть у fal.ai и доступна тут.

5. После чего соединил 5-секундные ролики в один при помощи скрипта, написанного в Cursor.

У OpenAI вышел по-настоящему крутой инструмент! В ближайшее время выпущу по нему детальный практический разбор.
1🔥104👍4
Вчера, 26 марта, я отменил свою подписку на Recraft.

Потому что OpenAI выкатили инструмент, который 90% практических кейсов использования AI-генераторов изображений реализует просто через диалог в чате.

Если вы подписаны на каналы про AI, думаю, уже заметили поток генераций, где люди проверяют "А что, он и так умеет?". И, чаще всего, да. Умеет.

Напомню, доступен он нативно в веб-версии ChatGPT, если выбрать модель ChatGPT 4o. Только для платных подписчиков.

10 примеров, как можно использовать новый инструмент для генерации изображений от OpenAI:

1. Убрать фон у объекта на изображении.

2. Вырезать объект.

3. Поменять стиль изображения.

4. Перенести объекты с одного изображения на другое. Включая людей, да.

5. Сделать интеллектуальный апскейл фотографии.

6. Добавить/изменить текст на изображение.

7. Сделать из просто фотографии предмета профессиональную предметную съёмку (продавцы на маркетплейсах – всё для вас).

8. Изменить объект на фотографии, его положение или состояние, сохранив при этом консистентность (вчерашний пост построен именно на этом пункте).

9. Расширить изображение, дополнив его по сторонам.

10. Простые картинки можно сразу перевести в svg.


И немного дёгтя во всю эту переслащённую бочку:

1. Каждое изображение – это генерация с нуля. И с сохранением исходного лица, например, она справляется плохо. Поэтому на переработанной фотографии себя можно и не узнать.

2. ChatGPT вполне может начать глючить и портить ваше исходное фото. Это нормально для AI в целом.

3. Цензура и авторское право. Нейросеть может начисто отказаться создавать какой-нибудь образ, который может напоминать что-либо, защищённое авторским правом. Хоть это может быть и просто похожий образ. (выкуси, Альтман! Световой меч из так защищаемой тобой вселенной Star Wars я всё-таки сгенерировал!)

4. Помимо п.3, может даже заартачиться и не захотеть работать с изображением человека в принципе. Но ChatGPT отходчивый. Через несколько попыток передумает.

Очень жду, когда подтянутся Open Source модели, поняв, что теперь можно и так.

Какие кейсы использования нового инструмента от OpenAI вы уже попробовали?
1🔥105👍3
Media is too big
VIEW IN TELEGRAM
В наборе must-have MCP-серверов для разработки прибыло!

Имя этому чуду "Cursor Talk to Figma MCP". Как вы понимаете, нужен он для взаимодействия из Cursor (или любого другого клиента, поддерживающего MCP) напрямую с Figma.

Схема его работы схожа с той, что была у MCP Browsertools. Есть сервер, который необходимо запустить перед работой. К нему подключается с одной стороны Cursor с командами, а с другой – плагин Figma (вместо расширения браузера у Browsertools).

Инструкции по установке достаточно подробно описаны на странице репозитория.

Есть лишь несколько моментов, которые можно отдельно добавить:

1. После установки bun, перед следующим шагом, обязательно проверьте, что bun работает без прописывания полного пути. Если нет, то надо перезапустить терминал.

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

3. Само собой, работаем мы именно с приложением Figma. С браузерной версией работать не будет, так как плагину обязателен доступ к остальным элементам MCP локально.

Запуск после первичной установки происходит следующим образом:

1. Запускаем Websocket server в терминале.

2. Заходим в нужный Figma-макет, запускаем плагин и нажимаем Connect.

3. Выбираем нужный компонент, копируем ссылку на него через "Copy link to selection".

4. Заходим в Cursor, вставляем ссылку в чат и просим создать выделенный блок.

5. Также в чат лучше передать Channel ID, который предоставляет Figma plugin после коннекта к серверу. Так как без него Cursor может слегка заплутать.

А, да. Так-то это ещё и инструмент для дизайнеров. Позволяющий создавать макеты в Figma непосредственно из Cursor (или другого клиента с поддержкой MCP).

Вот полный список доступных для MCP инструментов: get_document_info, get_selection, get_node_info, get_nodes_info, create_rectangle, create_frame, create_text, set_fill_color, set_stroke_color, move_node, clone_node, resize_node, delete_node, get_styles, get_local_components, create_component_instance, export_node_as_image, set_corner_radius, set_text_content, join_channel.

Нюансы и недостатки, которые я выявил при работе с "Cursor Talk to Figma MCP":

1. В случае с Cursor не получится сразу сделать большую страницу за одну команду. На каком-то этапе он попробует из MCP получить все элементы внутри макета, переполнит контекст, Cursor предложит сделать саммари чата, открыв новый... В общем, процедура может продолжаться бесконечно без каких-либо результатов.

2. Он не умеет выгружать из Figma медиа-файлы. И если с иконками он честно пытается сделать "похожие" SVG (получается плохо), то картинки лучше делать сперва заглушками, а потом выгружать руками (надеюсь, что этот инструмент автор позже добавит).

3. Могут быть небольшие несоответствия макету. Но они заметны только в случае, если вам действительно требуется "Pixel-perfect". Да и до него всё равно можно достаточно легко добить после того, как с помощью MCP и Cursor собрали "приблизительно-похожую" страницу.

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

В медиа для вас записал, как я себе в Figma собрал макет личного блога (мама, я дизайнер!), а потом сделал его вёрстку. И всё это с помощью "Cursor Talk to Figma MCP".
17🔥6👍4
Про Gemini 2.5 Pro и его навыки в кодинге.

Недавно вышла модель 2.5 Pro от Google. Анонс утонул под тоннами картинок "в стиле Studio Ghibli", но нельзя же пройти мимо модели, которая на https://lmarena.ai/ даже первое место какое-то время занимала в качестве веб-разработчика (сейчас Claude 3.7 Sonnet уже вернул своё лидерство).

Достаточно давно у меня в голове существовал вопрос "А возможно ли написать программу для скачивания видео с Rutube?". Не спрашивайте, зачем. Мне надо 🙂

С этим вопросом я и пришёл к Cursor-у, предварительно переключив модель на Gemini 2.5 Pro.

Первой итерацией создал просто консольное приложение, а второй – добавил интерфейс для работы с пользователями через Telegram бота.

Меня поразило то, что Gemini написал программу, которая выполнила задачу с первого раза и без ошибок. Не было никаких конфликтов версий, ошибок в синтаксисе и прочих распространённых "болячек" кода, созданного с помощью LLM.

Плюс – качественная реализация. Приятный консольный интерфейс, отображается скорость загрузки и ETA. Также – отлично сделан handler доступных вариантов по качеству видео. Даже если нет FullHD и 720p видео, система понимает, что видео 1920x800 – это именно то, что нужно.

Какие заметил минусы:

1. Gemini начисто проигнорировал мою инструкцию, что для управления пакетами надо использовать uv, и сделал всё на базе pip.

2. Я попросил его сделать .cursorrules первым делом, но он не сумел его корректно создать. После чего – просто пошёл дальше, даже не проверив, что файл с инструкциями создан.

3. Единственное, что не предусмотрел Gemini – это ограничение Telegram для Bot API, которое не позволяет отправлять пользователю видео больше 50Мб.

Получается, такой AI-агент-анархист, который при этом делает свою работу весьма хорошо. Нюанс, правда, в том, что это всё-таки очень камерная задача. Как Gemini поведёт себя в задачах покрупнее – ещё предстоит выяснить.

p.s.: а вот Rutube меня по IP слегка подзабанил. В следующей версии скрипта надо прокси добавить 🙂
1👍54🔥4
Искусственный интеллект позволяет писать код даже на той технологии, которую до этого изучать не приходилось.

Что должен изучить человек, чтобы итоговый программный продукт получился качественнее?

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

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

Пример:

Сейчас я детально изучаю документацию по библиотеке CrewAI. Так как мне недостаточно того, что делают с ней LLM "из коробки".

Основные концепции, которых достаточно, чтобы начать работу – это Agents, Tasks, Crews, Flows, Knowledge.

Ограничения со стороны системы – это, в том числе, те best practice, которые описаны в документации. В случае с CrewAI это описание агентов в YAML-файлах, например. Если говорить про язык программирования, то там ограничения другого типа.

Самое интересное – это ограничения, которые мы можем добавить со стороны разработчика. В случае с агентами на CrewAI, это, например, callback-функции для проверки результатов и настройка Output format с помощью Pydantic.

Вывод:

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

p.s.: надпись на кружке – о том, как обеспечить себе приключения. Поэтому, если вам нужны приключения вместо готового продукта, можете также использовать в AI-разработке данный подход 🙂
2👍63🔥3
Сегодня обнаружил, что у моего github-репозитория с Telegram MCP Server целых 2 звезды от пользователей.

Это в среднем на 2 звезды больше, чем у других репозиториев 🙂

Как вы помните из этого поста, вместо MCP-сервера я использовал простой http-сервер, куда ходил через curl за данными.

Сегодня переработал сервер и теперь это полноценный MCP. Работает через stdio.

Пока что реализует 3 инструмента:

1. getDialogs: получает список чатов пользователя.

2. getMessages: получает сообщения из указанного чата.

3. sendMessage: отправляет сообщение в указанный чат.

Есть ещё executeMethod, но этот метод я пока даже не тестировал, поэтому в его работоспособности не уверен.

Перед использования методов из списка, дайте AI-агенту свой номер телефона в международном формате (если он сам ещё его не знает, конечно же).

Список методов MCP-сервера планирую расширять. Чтобы он мог стать, фактически, AI-клиентом для Telegram.
1🔥10👍74😁1
Попробовал опубликовать свой MCP-сервер из вчерашнего поста на платформу-агрегатор mcp.so .

Теперь у него там есть собственная страница.

Но есть одна вещь, которая меня в этом процессе сильно смутила.

Я авторизовался на сайте, нажал "добавить MCP-сервер" и у него тут же появилась страница.

Не было модерации. Ни меня, как разработчика, ни того, что я назвал "MCP-сервер".

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

Более того – многие из "коннекторов" сами по себе требуют приватные данные. Пароли для авторизации, секретные ключи и прочее.

Особо-переживающие из-за собственной эффективности менеджеры уже подключили себе AI-агентов с доступом к корпоративным приложениям.

Что я хочу сказать этим постом: не доверяйте MCP-серверам, размещённым на подобных сайтах-агрегаторах. Перед запуском любого сервера, попросите AI-IDE (или любого другого агента с доступом к файловой системе) провести аудит безопасности проекта на предмет наличия вирусов и отсутствия пересылки ваших данных в "прекрасное далёко".

Сохраняйте бдительность! Не все AI-инструменты одинаково полезны 🙂
4🔥105👍4👻1🙉1👾1
This media is not supported in your browser
VIEW IN TELEGRAM
Неочевидный способ применения генераторов изображений от OpenAI в маркетинге?

Несколько лет назад я был на выступлении на конференции. Темой выступления было "Как быстро тестировать гипотезы для игр в жанре Hyper Casual?".

Автор презентации рассказывал, как он очень быстро, буквально за 2 недели, реализовывал следующий цикл: "Разработать демо геймплея – запустить рекламную кампанию – проверить CTR идеи".

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

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

Дальше замеряли CTR и таким образом можно было понять, что идея геймплея с CTR>15% интересна для реализации.

Благодаря возможности генерации достаточно консистентных изображений и видео из них, теперь можно собирать "демо геймплея" не за неделю, а за один рабочий день. Сгенерировав несколько "скриншотов игры" и добавив между ними геймплей при помощи AI-видеогенераторов.

Но есть одно но! (а в этом предложении – целых два!) Видеогенераторы, которые делают, условно, 5-секундное видео по первому и последнему кадру, не всегда дают достаточную консистентность. А её отсутствие может негативно повлиять на CTR объявления. Пример такой "не самой удачной" генерации можете посмотреть в видео к посту.

Поэтому эксперимент с тем, как добиться максимально-возможной консистентности для большего количества разнообразных примеров, будет продолжаться. Уже есть несколько идей, как это реализовать с помощью AI. Если у вас есть свои – делитесь ими в комментариях 🙂
1🔥74👍3
AI на службе сомнительных личностей. Популярные примеры.

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

1. AI-боты, которые притворяются людьми в переписке и потом вымогают деньги, предлагая "100% схему, как заработать" (писал об этом тут и тут)

2. AI-рерайт спама для e-mail, чтобы снизить процент писем, попадающих в соответствующую папку.

3. Специальные LLM, помогающие хакерам искать уязвимости в сайтах.

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

5. Фишинговые сайты стало создавать гораздо быстрее с помощью AI-IDE. То есть свои гипотезы мошенники теперь тестируют быстрее.

6. RAG по истории переписки взломанного аккаунта с предполагаемой жертвой. Чтобы быть в контексте того, как владелец аккаунта обычно взаимодействует с каждым конкретным контактом.

7. И ещё целая пачка работающих инструментов, про которые я не знаю, так как не в индустрии.


Чтобы защитить себя от перевода денег мошенникам, думая, что помогаешь знакомому, всегда проводите "викторину" после запросов "дать в долг". Задайте несколько вопросов о каких-то событиях в офлайне (чтобы нельзя было найти в сети), о которых знает только ваш собеседник. Либо просто позвоните по телефону, если такая возможность есть. Да и вообще. Если просит занять денег – пусть приедет и заберёт наличные.

p.s.: вообще мошеннические сайты – это, как правило, очень эффективные "продукты". У них есть ресурсы для того, чтобы применить самые последние решения и нанять дорогих специалистов. Поэтому фишинговые сайты можно анализировать на предмет действительно рабочих продуктовых решений 🙂
1🔥53👍2😱1
Про системы производства контента с помощью AI или что такое "Контент завод".

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

Сейчас время AI. Термин "Контент завод" означает собой систему разной степени автономности, которая позволяет производить, собственно, контент. Создаётся такая система с использованием систем AI-агентов.

Какие задачи может закрывать "Контент завод":

1. Сбор информации из множества источников.

2. Фильтрация полученных данных. Чтобы избежать малоценного контента для вашего проекта.

3. Саммаризация данных по инфоповоду из разных источников, чтобы не упустить детали.

4. Факт-чекинг основных тезисов.

5. Формирование единицы контента в заданном (или одном из заданных) стиле.

6. Форматирование и отправка контента по площадкам.

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

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

Данным постом я открываю цикл материалов с кейсами, возникающими при построении "Контентного завода". Если у вас есть какие-то пожелания, вопросы по этой теме или опыт, которым вы хотели бы поделиться – добро пожаловать в комментарии 🙂
1🔥15👍75💩1
.cursorrules
2.1 KB
Вы заметили, какой AI-агент в Cursor на базе Claude 3.7 Sonnet излишне-проактивный?

Так и хочет запихнуть в проект что-то лишнее, без чего по его мнению проекту точно не жить.

Сделал .cursorrules с простыми инструкциями для того, чтобы сохранять за собой возможность отслеживать все изменения, которые AI пытается добавить в проект.

Без контроля за состоянием проекта, в конечном итоге, он превратится в неконтролируемую мешанину, которую невозможно поддерживать. Помните об этом!
🔥8👍75
Попробовал только что вышедшую Llama 4.

Есть три модели – Behemoth (громадный, как Чудище из Цитадели, но пока не доступен), Maverick (средняя модель с 1M контекста) и Scout (самая скромная модель с самым нескромным контекстом в 10M токенов!).

Во-первых, где попробовать её бесплатно:

1. https://console.groq.com/ – на Groq после бесплатной регистрации. Работает очень быстро (500 токенов в секунду у Scout!).

2. https://openrouter.ai – хоть медленнее, но тоже бесплатно. Есть как Scout, так и Maverick.

Обе платформы позволяют использовать модели по API. Но у Openrouter нет суточного лимита.

Что интересного обнаружил в моделях:

1. Обе отлично справляются со своей мультимодальностью. Можно попросить рассказать, что изображено на картинке (даже младший Scout прекрасно подмечает детали!) или изучить PDF.

2. Заточены под работу с агентами. Поэтому способны формировать валидный JSON-вывод для передачи в AI-агента.

3. Огромный контекст в 10M токенов у Scout и 1M – у Maverick. Вот тут есть подвох. По API пока что никто не дал доступ к полному контексту. У Openrouter значение выставлено в 512K для Scout и 256K для Maverick. У groq.com контекст порезали до 131K токенов для обеих моделей. Хотите 1M/10M – придётся запускать на арендованном сервере.

4. Scout достаточно плохо справляется с русским языком (много ошибок). На английском качество очень близко к старшей модели. Думаю, объём младшей модели урезали в том числе за счёт мультиязычности.

5. По идее, Llama 4 должна уметь обрабатывать сразу несколько изображений за раз. И это очень крутая фича для обработки, например, видеопотока. Когда можно сразу загрузить несколько кадров и понять, что происходит в динамике. Openrouter даже позволяет грузить до 4-х изображений в чат с моделью. Вот только отправляет он эти изображения как-то неправильно, поэтому Llama их попросту не видит. Попробую ещё по API этот сценарий прогнать.

В целом, мы получили отличное обновление для одной из главных Open Source моделей на рынке на данный момент. Успели уже попробовать? Для каких задач планируете применять?
1👍10🔥54
Открыл для себя существование CrewAI Studio.

Это Open Source проект, который позволяет создавать сеть AI-агентов с использованием CrewAI через графический интерфейс.

Он позволяет создать команду из агентов с инструментами (есть предустановленные 27 инструментов!) и базой знаний (включая Postgres, да), выделить этой команде задачу и запустить выполнение задачи непосредственно в интерфейсе браузера (для интерфейса используется Streamlit).

Одна из немногих ситуаций, когда просто запуск трёх команд из Readme репозитория, обеспечивает работоспособность проекта. Так что тут и добавить нечего в плане особенностей запуска.

Из минусов, которые нашёл на данный момент, – почему-то не дружит с Openrouter. Хотя казалось бы... 🙂 Но, поскольку это Open source, всегда можно самостоятельно расширить его функциональность.

В общем, если хотите подробный кейс с описанием того, как сделать систему AI-агентов с помощью CrewAI Studio – ставьте 🔥

А в комментариях пишите, чем команда AI-агентов будет заниматься в данном кейсе.
🔥345👍3