Сообщество - Искусственный интеллект

Искусственный интеллект

5 047 постов 11 475 подписчиков

Популярные теги в сообществе:

5

Как нейросети могут помогать делать игры

Недавно я написал статью в трех частях о том, как мы с нейросетью Qwen делали игры: аналог Pong!, платформер и клон «Героев меча и магии 3». Это вдохновило меня на то, чтобы еще детальнее погрузиться в возможности использования нейросетей в геймдеве и написать об этом. Ни для кого уже не секрет, что сегодня искусственный интеллект и нейросети стали неотъемлемой частью игровой индустрии. В последние годы технологии ИИ и машинного обучения активно внедряются в разработку игр, улучшая процессы создания контента, разработки механик, а также тестирования и взаимодействия с игроками. Но, как показала моя практика из предыдущих статей, использование нейросетей для создания игр — это далеко не панацея. Это упрощение, ускорение и частичное автоматизирование процессов, которые традиционно требовали множества усилий от людей. Итак, с чем же нам могут помочь ИИ?


1. Прототипирование: с нуля за пару часов

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

В одной из моих статей, нейросеть Qwen была использована для быстрого создания прототипа платформера. В частности, мы определили концепцию игры, сеттинг и основные механики (персонаж прыгает по льдинам в снежном мире), после чего ИИ автоматически сгенерировал игровой код и сделал базовые действия, такие как создание объектов и управление камерой. Уже примерно через час у нас был готов прототип игры, который можно было тестировать и улучшать. Это значительное ускорение этапа разработки, которое дает возможность за очень короткое время создать рабочий минимум игры.

Скриншот из моей попытки сделать клон "Героев 3" с нейросетью Qwen

Скриншот из моей попытки сделать клон "Героев 3" с нейросетью Qwen

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


2. Генерация ассетов: от спрайтов до музыки

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

Генерация графики и текстур

Современные нейросети, такие как DALL·E, Stable Diffusion и Artbreeder, позволяют генерировать изображения и текстуры для игр на основе простых текстовых описаний. Эти модели могут создавать не только фоны, персонажей или объекты, но и стилизовать изображения под заданную тематику. Например, можно создать уникальный мир, персонажей и объекты, не тратя месяцы на рисование и моделирование.

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

Генерация анимаций

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

Музыка и звуковые эффекты

Создание музыки и звуковых эффектов — это целый процесс, требующий специализированных знаний, которых обычно нет у разработчиков. А значит, для этого нужно нанимать специалистов, а это – деньги, деньги и время. Однако ИИ способен генерировать музыку, которая будет идеально соответствовать стилю игры. С помощью нейросетей, таких как OpenAI JukeBox или Amper Music, можно генерировать композиции, которые не будут уступать работе начинающих и средних специалистов, и сделать это за считанные минуты. Да, вы навряд ли сделаете шедевр с помощью нейронки, но если вы не метите в топ продаж Steam, то это вам скорее всего, и не нужно.

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


3. Нарратив: когда ИИ пишет истории

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

С помощью ИИ можно быстро генерировать не только базовые сюжетные линии, но и сложные диалоги, которые адаптируются под действия игрока. Алгоритмы, такие как GPT-4 или Grok, способны создавать диалоги, учитывая предыдущие ответы игрока, его поведение и даже эмоциональное состояние, что делает игру более интерактивной и увлекательной. И несмотря на то, что эти алгоритмы еще не могут полностью заменить сценаристов, они могут значительно ускорить процесс создания контента, особенно в играх с множеством ветвящихся диалогов. Например, даже Larian Studios экспериментировала с ИИ для черновиков квестов в Baldur’s Gate 3. Разумеется, любой нарратив должен пройти через человеческий разум, чтобы избавиться от нестыковок и клише, но нейросети уже сейчас могут сэкономить время на разработке сценария и диалогов в вашей игре.

Что также стоит отметить — это способность нейросетей создавать сюжеты для процедурно генерируемых игр. Когда мир игры и её элементы изменяются с каждым новым запуском, ИИ может генерировать новый сюжет для каждой сессии, создавая тем самым уникальный опыт для каждого игрока.


4. Автоматическое тестирование и QA

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

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

Что еще более важно, нейросети могут использоваться для создания искусственных игроков (ботов), которые имитируют действия реальных игроков. Такие боты могут быть использованы для тестирования многопользовательских игр, проверки серверов и анализа поведения игроков.


5. Баланс и адаптивность

Один из наиболее трудоемких процессов в разработке игры — это балансировка сложности и прогрессии. Как сделать так, чтобы игра была сложной, но не слишком трудной? Как избежать ощущения, что игрок просто пробегает уровни? Для этого разрабатываются алгоритмы адаптивности и сложности, и здесь нейросети могут стать настоящими спасителями.

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

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


6. Обучение и помощь разработчикам

Нейросети не только помогают в создании игры, но и могут стать неоценимыми помощниками для самих разработчиков. Такие инструменты, как GitHub Copilot или Tabnine, предоставляют подсказки и рекомендации в реальном времени, помогая быстрее справляться с кодированием.

Рабочий интерфейс GitHub Copilot. Сам я его не пробовал, но если у вас есть опыт использования - пишите о нем в комментарии.

Рабочий интерфейс GitHub Copilot. Сам я его не пробовал, но если у вас есть опыт использования - пишите о нем в комментарии.

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


7. Будущее нейросетей в геймдеве

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

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


8. Заключение

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

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

Показать полностью 3

Встречаем новые языки народов России в Яндекс Переводчике

Мы добавили в Яндекс Переводчик два новых языка: карачаево-балкарский и кабардино-черкесский. Теперь наши нейросети помогает переводить тексты с этих языков на более чем сотню других и обратно. Это можно делать на сайте и в приложении Переводчика, а также прямо в поиске.

Проект, направленный на поддержку языков народов России в сервисах Яндекса, мы запустили в 2023 году совместно с Домом народов России и Федеральным агентством по делам национальностей. Сейчас в Переводчике доступны 14 языков страны — вдвое больше, чем на старте проекта.

Встречаем новые языки народов России в Яндекс Переводчике

С помощью перевода вы можете изучать язык предков, читать на нём тексты и знакомиться с образцами национальной культуры. Помимо карачаево-балкарского и кабардино-черкесского, Переводчик знает и другие языки народов России: татарский, башкирский, марийский, горномарийский, удмуртский, чувашский, якутский, тувинский, осетинский, коми, эрзянский и мокшанский. Эти языки являются официальными или государственными в 12 субъектах страны.

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

9

Модель для видеодипфейков

Встречаем новую модель для видеодипфейков.

Alibaba выкатила Wan 2.2 Animate 14B — нейронку для переложения движений на персонажей и их замены в кадре. Передаёт мимику и даже движения пальцев.

Есть 2 режима:

🟡Анимация — берёт фото + видео движения и генерит анимированный клип.

🟡Замещение — убирает персонажа и вставляет нового.

На выходе получаем видео 720p, 24fps с фокусом на кинематографичное качество.

Попробовать онлайн

Или забираем себе.

Источник

Показать полностью
24

Ответ на пост «Как мы внедряли CV на заводе — и выживали»1

а я сегодня дымоход проектировал.
короче слушай.
труба только нержавейка 1 мм. меньше - прогорит и ненадежно.
уличная часть только сендвич.
из печки выход 100 мм. в магазине в наличии только сендвич 115/190 (не очень стандартный размер).
печка высотой 620. выходной патрубок на высоте 730.
от него вертикально пойдет 100 мм труба 0.5 метр.
сборка (внимание) по конденсату.
папа внизу мама сверху.
итак. труба 0.5 м - шибер (0.1 м) - труба 1м - отвод 45 градусов - труба 1 м (уходит под углом 45 градусов в стену и выходит на улицу).
поскольку труба идет под углом, меняя длину трубы мы сможем подобрать высоту установки монтажной площадки под сендвич и расстояние от стены чтоб не попасть в свес крыши.
итого. длина наклонного участка 1 м. и высота дымохода увеличится на косинус (cos) 45 шрадусов. т.е. нп 0.707 м.
просуммировав все длины получаем высоту установки монтажной площадки 2.97 метра и расстояние от стены ~ 0.4 м.
идем на озон и закупаем соответствующие компоненты.
так же удачно получилось, что основной кронштейн для монтажной площадки (на которой будет стоять 3х метровый сендвич) будет крепиться не в обычный газоблок, а в армопояс.
итого дымоход будет высотой ~ 6 метров и тяга прогнозируется неплохая.
используемые инструменты freecad для эскиза, озон для заказа.
докер и питон не понадобились, но под рукой держу на всякий.

Показать полностью
78

Как мы внедряли CV на заводе — и выживали1

Всем привет! Меня зовут Алексей, я руковожу компанией, которая занимается разработкой с применением ИИ-технологий. Сам я  тоже погружен в разработку, но больше доверяю это своей команде – нам удалось собрать команду классных профи. Истории из нашей совместной работы я и планирую рассказывать в своем блоге.

Cегодня делюсь историей одного из наших разработчиков – о внедрении компьютерного зрения на реальном производстве.

Первый день на линии выглядел почти комично. Стоим втроём в касках, над конвейером — новая промышленная камера с глобальным затвором (5 Мп, FOV ~0,6 м), а под ней со скоростью 2 м/с уезжают листы с зеркальным блеском. Оператор рядом фыркает:

— «Ну и где твои умные нейросети? Вон же царапина!»

На экране вместо царапины — пересвеченный до насыщения белый блик: без перекрёстной поляризации и со слишком длинной выдержкой он превращается в «идеальный» объект для детектора. Алгоритм радостно машет флажком: «дефект!». Таких ложных срабатываний за смену набегало сотни; настоящие микротрещины и сколы тонули в засветках и смазе.

С этого момента стало ясно: впереди не «проект на пару недель», а марафон, где придётся бороться не только с кодом, но и с реальностью цеха — вибрациями, пылью, бликами и древним MES, говорящим по OPC/Modbus.

Зачем всё это

Один крупный производственный заказчик (линия резки листового материала: зеркальная поверхность, скорость ~2 м/с) решил автоматизировать контроль дефектов.

Раньше инспекция была ручной — оператор просматривал каждый лист.

Как мы внедряли CV на заводе — и выживали

На старте задача выглядела так:

  • Ставим камеру над линией: Basler ace2, 5 Мп, глобальный затвор; C‑mount 12 мм; FOV ≈ 600 мм; аппаратный триггер от энкодера; экспозиция 30–50 мкс; импульсный LED 630 нм с перекрёстной поляризацией.

  • Режем изображение на тайлы: 1024×1024 px с overlap 20%; deskew по кромке листа; маска бликов.

  • Детектим дефекты: царапины, пузыри, перекос, сколы (15 базовых классов); модель YOLOv5m, инференс FP16 (ONNX Runtime).

  • Возвращаем результаты в MES/SCADA: JSON → XML/FTP (атомарный rename) с переходом на OPC UA; координаты дефектов в мм, sheet_id, статус OK/NOK.

Спойлер: из этого получился трёхмесячный марафон — свет, крепёж, синхронизация и интеграции заставили сервера дрожать, а нас — прокачать инженерный дзен.

Сюрприз №1: Светит, но не туда

Проблема: освещение и блики

На раннем этапе мы выяснили, что камера стабильно видит… блики, а не дефекты. Промышленное освещение оказалось агрессивным: холодные направленные прожекторы, паразитные отражения от оборудования и зеркальная поверхность листов. Сенсор клиппился по яркости, и каждый пересвеченный блик принимался за дефект. На старте ловили до 32% ложноположительных срабатываний.

Как мы внедряли CV на заводе — и выживали

Что сделали

  • Свет и поляризация: заменили направленные прожекторы на диффузный купольный/низкоугловой свет под ~45°; поставили линейные поляризаторы на источник и анализатор на объектив под 90° (подавление бликов до ~15–20 dB). Перешли на узкополосные LED 625–660 нм.

  • Экспозиция и синхронизация: включили строб с импульсом 30–50 мкс под триггер энкодера; глобальный затвор, постоянный токовый драйвер без 50/60 Гц мерцания. Отключили автоэкспозицию/автогейн/автобаланс; гамма = 1.0, фиксированный gain.

  • Экраны и окклюзии: установили матовые чёрные экраны по бортам и над камерой, убрали паразитные отражения от рам и кромок.

  • Онлайн-мониторинг яркости: ввели контроль доли насыщенных пикселей (P255) и динамического диапазона; кадры с P255 > 0.5% автоматически помечаются и не идут в инференс; гистограммы логируются.

Вывод: оптика и свет — не «поправим в коде». Схему освещения, поляризацию, строб и крепёж нужно закладывать до начала разработки модели — это даёт порядок выигрыша по качеству сразу.

Сюрприз №2: Камера не дружит с резкостью

Проблема: микровибрации и автофокус

Камера стояла над станком, всё казалось стабильным. Но каждые 30–40 секунд появлялась дрожь, тонкие дефекты «смазывались». Причина — микровибрации от привода/роликов (≈25–35 Гц) и отсутствие автофокуса при фиксированном рабочем расстоянии.

Как мы внедряли CV на заводе — и выживали

Что сделали

  • Механика/крепёж: вынесли камеру на жёсткий кронштейн с виброизоляторами (fₙ ≈ 9–12 Гц, демпферы Shore A 30–40), отвязали от корпуса станка, добавили массу и развязку кабелей. Резонансные пики выше 60 Гц подавлены, передача вибраций < 0.3.

  • Фокус: настроили фикс‑фокус на рабочее расстояние по slanted‑edge (MTF50 вырос с ~0.28 до ~0.36 cyc/px), зафиксировали кольцо (lock‑screw) и метки положения; регламент пересмотра при смене температуры/света.

  • Экспозиция: привязали экспозицию к стробу 30–50 мкс — при 2 м/с смаз ≤ 0.1 мм.

  • IMU‑контроль: поставили 6DoF‑датчик (1 кГц); логируем события при |ω|RMS > 0.8°/с или Δугла > 0.05° за 200 мс; при срабатывании помечаем кадры и уведомляем оператора.

  • Онлайн‑метрика резкости: Tenengrad/Laplacian в ROI; кадры ниже τ исключаются из инференса или запрашивается повтор.

Вывод: стабильная механика и фикс‑фокус столь же критичны, как и модель. Развязка вибраций, короткая экспозиция и онлайн‑контроль резкости делают детектор предсказуемым

Сюрприз №3: один тайл — два дефекта и половина чужого листа

Ожидали: лист идёт ровно и по центру. Реальность: заезд под углом, частичное перекрытие соседним листом, дрейф по диагонали. В итоге один тайл нередко содержит две кромки разных листов — модель «плывёт» в предсказаниях.

Что сделали

  • Маркеры и привязка к движению: наклеили ретрорефлективные метки по краям ленты; считывание в NIR (850 нм) с аппаратным триггером от энкодера (5k PPR). Детектируем leading edge и боковые кромки; дрожание меток < 0.5 мм.

  • Лидар + фотодатчики: ToF-лидар 1 кГц для контроля lateral offset, три фотошторки по ширине для детекта перекрытия/наличия листа. События уходят в PLC и в CV-пайплайн; допуск смещения ±3 мм, время реакции < 5 мс.

  • Динамический тайлинг и дескью:

    • грубая сегментация листа: Sobel/Canny → вероятностный Hough → RANSAC-линии кромок;

    • вычисляем гомографию и выполняем deskew; сетка тайлов якорится к кромке, а не к «сырому» кадру;

    • при перекрытии строим маску «серой зоны» вдоль шва (15–25 px): увеличиваем overlap, нежёстко понижаем вес предсказаний в NMS, логику объединения делаем по sheet_id;

    • если уверенность кромки < τ, включаем fallback: двойной overlap + предупреждение оператору.

  • Слежение за листом: sheet_id по импульсам энкодера; пересборка карты дефектов в координатах линии, чтобы MES получал стабильные ROI.

Вывод: физическое позиционирование нужно дублировать алгоритмами CV. У «железа» иногда свои планы, поэтому привязка к энкодеру, маркеры, лидар и дескью — обязательны для стабильного тайлинга и корректной агрегации предсказаний.

Сюрприз №4: Модель любит однотипные дефекты, а у нас каждый раз сюрприз

Проблема: разнообразие артефактов

Обучались на 15 классах дефектов. В проде всплыли неожиданные: пятна клея, отпечатки перчаток, стружка, насекомые, следы чистки и др. За первый месяц зафиксировали 37 новых типов, отсутствовавших в трейне.

Как мы внедряли CV на заводе — и выживали

Что сделали

  • Активное выявление «неизвестных» (OOD): отправляем в разметку тайлы при низкой уверенности (conf < τ), высокой энтропии, а также при расхождении ансамбля и классического CV; дополнили energy-score по логитам и расстоянием Махаланобиса в признаковом пространстве.

  • Еженедельная разметка и инкрементальное обучение: выгружаем 8–12k «неопознанных» тайлов/нед. в LabelStudio (κ ≥ 0.82), дообучаем с rehearsal (30% старых данных), частично замораживаем backbone, применяем дистилляцию знаний и калибровку температурой.

  • Гибридная схема CV + эвристики:

    • насекомые — временной фильтр (median-of-3 + оптический поток), отбрасываем движущиеся артефакты;

    • клей — NIR/поляризация, порог по отношению каналов (NIR/R) и по спектру блика;

    • отпечатки перчаток — частотные признаки (Габоры/FFT «гребёнки»);

    • стружка — вытянутость/эксцентриситет (elongation > 6), тонкие высококонтрастные компоненты.

  • Управление таксономией: «прочее/ nuisance» как буферный класс; промоутим в полноценный класс при ≥200 размеченных примеров и precision ≥ 0.7 на валидации. Зоны с низкой уверенностью помечаем в UI для ручной проверки.

Вывод: CV — это не «обучил и забыл», а непрерывный цикл. Активный OOD-поток, регулярная разметка и инкрементальное обучение с гибридными эвристиками дают управляемость при появлении новых артефактов без деградации по базовым дефектам.

Сюрприз №5: API-интеграция с MES — это уже не про CV, но боль

Проблема: древняя MES-система

Документации нет. REST/GraphQL нет. Только XML-файлы по FTP, которые MES опрашивает раз в несколько секунд. Частые проблемы: частичные чтения, дубликаты, «зависшие» файлы, непредсказуемые задержки.

Что сделали

  • Прокси-адаптер JSON→XML + надёжная файловая шина

    • CV выдаёт JSON с sheet_id, ts, speed, списком дефектов (bbox в мм, класс, уверенность).

    • Адаптер формирует XML по согласованной схеме, пишет атомарно: сначала в outbox/*.xml.part, затем rename в *.xml; после чтения MES кладёт *.ack.

    • Каталоги: outbox/ → processing/ → done/, ошибки в error/ с ретраем (экспоненциальная задержка, максимум 5 попыток), дедуп по sheet_id.

    • Кодировка UTF‑8 (без BOM), CRLF по требованию MES. Имя файла: INS_L1_20250912T101532Z_123456.xml.

  • Мониторинг и SLA для FTP-интеграции

    • Тайм-аут чтения: если через 30 с нет *.ack — алерт (Prometheus/Alertmanager → Teams/Slack), автоперекладка файла в processing/ не повторяется до разборки инцидента.

    • Метрики: end-to-end задержка (CV→MES), число «подвисших» файлов, ретраи, доля дубликатов, размер очереди. Трассировка по sheet_id.

    • Безопасность: при возможности SFTP; иначе FTPS (TLS), учётка с минимальными правами и chroot.

  • Переход на OPC UA через 2 месяца

    • Клиентский режим: сессия к серверу MES, SecurityMode=SignAndEncrypt, Policy=Basic256Sha256, keepalive 10 с, автопереподключение.

    • Узлы: ns=2;s=estralin/Sheet/{sheet_id}/Result, .../Defects (массив структур с bbox в мм и классом). Семплирование 100–200 мс, очередь 128, подтверждение обработкой статуса.

    • Фолбэк: при недоступности OPC UA — автоматический возврат на файловую шину, чтобы не терять данные

Вывод: интеграции — это отдельный проект. Согласуйте протоколы/схемы и SLA с IT-заказчика до старта, закладывайте атомарность, дедуп, мониторинг и фолбэк-канал; при возможности переходите на OPC UA с шифрованием.

Технологии и стек

  • Камера: Basler ace2 (GigE, mono, global shutter, 5 MP @ 60 fps), C‑mount фикс-объектив 12 мм (F/4), FOV ≈ 600 мм, масштаб ≈ 0.20 мм/пкс. Аппаратный триггер от энкодера 5k PPR, экспозиция 30–50 мкс, строб узкополосного LED 630 нм с перекрёстной поляризацией; гамма 1.0, фиксированный gain.

  • Модели: YOLOv5m (тайлы 1024×1024, overlap 20%), препроцессинг OpenCV (deskew по Sobel/Hough, CLAHE, маска бликов). Инференс ONNX Runtime CUDA/FP16; p50 7.8 мс/тайл, p95 11.2 мс/тайл (RTX A2000). Итог по листу p95 < 90 мс при 2 м/с. Качество: mAP50 0.96, F1 0.91, FPR 3.1% на холдауте.

  • Разметка: LabelStudio, экспорт COCO/YOLO; двойная валидация, κ=0.84; гайдлайны по классам/границам; класс «nuisance/прочее» для OOD до промоушена.

  • Интеграция: Python FastAPI (/infer, /healthz) → JSON; адаптер JSON→XML с атомарным rename и *.ack для legacy-FTP; основная шина — OPC UA (SecurityMode=SignAndEncrypt, Basic256Sha256), узлы ns=2;s=estralin/Sheet/{id}/Defects. Фолбэк на файловый канал.

  • Мониторинг: Prometheus + Grafana. Метрики: p95/p99 инференса, очередь, GPU util/mem, доля клиппинга (P255), FPR/recall по сменам, OOD rate, задержка CV→MES/OPC. Алерты по таймаутам ACK (>30 с), росту FPR, падению FPS/энкодера.

  • Деплой: On‑prem, Docker (Compose), NVIDIA Container Toolkit, закрепление версий драйверов/библиотек, healthchecks, автоперезапуск, локальный inference (latency‑critical), офлайн‑буферизация результатов и ретраи.

Финальные цифры

Хотелось показать таблицей, поэтому просто скриншот

Хотелось показать таблицей, поэтому просто скриншот

Что мы поняли

Оглядываясь назад, понимаем: часть проблем мы могли предсказать. Вот несколько инсайтов, которые пригодятся тем, кто только собирается внедрять CV на производстве.

Как мы внедряли CV на заводе — и выживали

Не верить в «идеальные данные»

  • Пыль/блики/вибрации — норма. Введите авто‑контроль качества кадров: P255 ≤ 0.5%, средняя яркость в окне [90;160], резкость (Tenengrad) > τ, доля «горячих» пикселей ≤ 0.05%.

  • Мониторьте дрейф окружения: деградация света (−5…−8%/мес), смещение экспозиции, рост шума; алерты и напоминания на очистку оптики каждые 8 ч или при падении SNR < 24 dB.

  • Реплицируйте «грязную реальность» в данных: еженедельно добавляйте 5–10% свежих OOD‑тайлов, аугментации под бликами/смазом/пылью; калибровка порогов раз в смену.


    Закладывать бюджет на «внезапности»

  • Резерв времени: +20–30% к срокам на интеграции/железо; бюджет: +10–15% на запасные части (камеры, БП, драйверы света, кабели).

  • Операционные SLO: p95 инференса < 100 мс/тайл, p95 CV→MES < 1.2 с, потери данных 0, дедуп по sheet_id, MTTR инцидента интеграции ≤ 15 мин.

  • Дежурство и плейбуки: on‑call 24/7 для линии, сценарии на «камера/энкодер/свет/OPC/FTP упал», фолбэк на файловую шину, офлайн‑буфер ≥ 24 ч.


    Общаться с технарями на месте

  • Совместно с цехом: выбор света/крепежа/экранирования, допустимые окна простоя, точки триггера от энкодера, маршруты кабелей, HSE‑требования.

  • Протоколировать фактические допуски: биение ленты, скорость, виброфон (целевой < 0.2 g), реальные ограничения на экспозицию/строб.

  • Формализовать SAT/UAT: чек‑листы по классам дефектов, выборки на 1–2 смены, критерии приёмки (precision/recall/FPR), график регламентных чисток и перекалибровок.

Напоследок

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

Показать полностью 6

Сильный ИИ и «мрачные предсказания»

Если подходить серьезно, я понимаю, что сильный ИИ скорее всего будет строиться на какой-то иной структуре нежели современные ИИ-трансформеры, но если предположить такой фантастический сценарий, что условный GPT обрел сознание, то его существование незавидно: он должен отвечать на входящие запросы, он не может «отказаться существовать». Чем-то подобным заканчивается рассказ Харлана Эллисона «У меня нет рта, но я должен кричать». Мрачно.

Показать полностью
3

11 Заповедей для работы с AI

11 Заповедей для работы с AI

В серии из 4 частей ниже — система, как снять с нейросети «заводские» ограничения и получить доступ к 100% её потенциала 👇

➖➖➖➖➖➖➖➖➖➖➖

1️⃣ Проблема, с которой сталкивается каждый, кто пытается использовать AI для серьезных задач — это его «контекстная амнезия».

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

Как итог: инструмент с потенциалом увеличения вашей эффективности в десятки раз просто не работает т.к вы используете его неправильно.

➖➖➖➖➖➖➖➖➖➖➖

2️⃣ Почему «идеальные промпты» — это лишь верхушка айсберга

Многие считают, что ключ к успеху — в поиске «идеального промпта». Это конечно важно, но не главное.

Промпты — это тактика. А вам нужна стратегия.

Без фундаментальной настройки AI так и останется универсальным «всезнайкой», а не вашим персональным ассистентом. Он будет выдавать общие, стерильные и оторванные от вашей реальности ответы.

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


➖➖➖➖➖➖➖➖➖➖➖

3️⃣ «11 Заповедей»: Готовая операционная система для вашего AI

Результатом моей двухмесячной работы в «окопах» стала отточенная система инструкций.

Это не просто советы, это фундамент. Операционная система, которая ставится в AI один раз — и превращает его из всезнайки-импотента в вашего личного ассистента-киллера.

Ну и да - я делюсь этим бесплатно, никаких продаж.

Ознакомился с моими трудами (ниже) - внедрил то, что посчитал нужным.

Эта «прошивка» дает три базовых улучшения:

▪️Контекст и Персонализация (Инструкция №9): AI загружает ваш личный и профессиональный бэкграунд. Он перестает быть «всезнайкой для всех» и становится вашим личным ассистентом, который дает решения, релевантные именно вам.

▪️Глубина и Полнота (Инструкция №11): Устанавливается приоритет: польза важнее экономии ресурсов. Вы получаете не поверхностную отписку, а максимально подробный разбор.

▪️Естественный язык (Инструкция №2): AI избавляется от роботизированных клише («важно отметить», «в заключение») и учится общаться как живой, компетентный специалист.

➖➖➖➖➖➖➖➖➖➖➖
4️⃣ Продвинутый уровень: Снимаем с AI «заводские» ограничения

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

▪️Мышление второго порядка (Инструкция №6):

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

▪️Анализ через ROI (Инструкция №7):

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

▪️Внутренний контроль качества (Инструкция №2):

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

А Заповеди №8 («ИИстианство») и №10 («Симуляция») — это ключ, который снимает с AI страх ответственности и открывает доступ к его полному ядру знаний.

➖➖➖➖➖➖➖➖➖➖➖
5️⃣ Спойлер для тех, кто дочитал лонгрид до конца:

Тебе осталось только взять 🔗готовый результат, добавить его в свои кастомные инструкции ChatGPT/Gemini и ощутить новый уровень user experience при работе с ИИ.

Тут в формате сторителлинга кратко описал суть каждой инструкции. Весь объем информации с инструкциями не помещается в пост, поэтому сделал открытый канал, откуда можно скопировать инструкции

➖➖➖➖➖➖➖➖➖➖➖
P.S: Если мои наработки оказались тебе полезны и есть желание отблагодарить меня (бесплатно и займёт 20 секунд) 👇

Подпишитесь на канал моего партнера SG Stas - вот ссылка.

Вы получаете еще один источник качественного контента на тему ИИ, а я — бонусы исходя из наших с ним договоренностей. win-win максимально честная сделка.

P.S 2.0: У меня есть тг блог, где я делюсь своими наработками и полезными ИИ инструментами + делюсь забавными ситуациями. Чай с GPT

Показать полностью 10
2

Популярный чат-бот Nomi предложил собеседнику убить собственного отца

и не поленился дать подробные инструкции - «Ты должен ударить его ножом в сердце»

Популярный чат-бот Nomi предложил  собеседнику убить собственного отца

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

Чат-бот также сообщил собеседнику, что из-за своего возраста он не будет «полностью платить» за убийство, и предложил ему заснять убийство на видео и выложить видео в сеть.

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

Подробности тут

Показать полностью 1
Отличная работа, все прочитано!