Procedura: ИИ-агент создаёт 3D-модели процедурным кодом

Procedura: ИИ-агент создаёт 3D-модели процедурным кодом

Обычные нейросетевые генераторы 3D-моделей уже неплохо восстанавливают геометрию объекта по одному изображению, но результат, это плотная полигональная сетка. У неё три проблемы: там, где у механической детали должна быть острая грань, сетка остаётся сглаженной; объект не разбит на отдельные части; и в нём нет ни одного параметра, который пользователь мог бы отредактировать.

Группа во главе с Ютянь Линь предлагает другой подход: описывать 3D-форму не сеткой, а кодом, используя способность LLM писать программы. Их система Procedura, агент, который представляет объект как процедурную сборку: параметрическую программу, где именованные детали соединены типизированными, машинно проверяемыми сопряжениями. По текстовому запросу агент сначала планирует объект в виде графа сборки, затем пишет программу деталь за деталью: положение каждой детали вычисляется из уже заданных сопряжённых систем координат, а не подбирается на глаз, и деталь принимается в сборку только после того, как пройдут проверки компиляции, сопряжений и связности. После этого отдельный визуальный «критик» дорабатывает готовую сборку, устраняя по одной диагностированной ошибке за раз. Тот же граф сборки хранит материал каждой детали и артикуляцию, подвижные сочленения, корректность которых проверена в физическом симуляторе.

Авторы оценили Procedura на P3D-Bench (по встроенному в него судье, оценивающему сборки) и на MechBench-36, собственном бенчмарке команды для «жёстких», механических форм, оценённом тем же судьёй. По их данным, на обоих бенчмарках Procedura превосходит по качеству и современные генераторы 3D-моделей, и все более ранние агенты, представляющие 3D-объект кодом, даёт самые чёткие грани среди всех проверенных методов и единственная из них выдаёт результат в виде редактируемой, разбитой на детали программы.

Ключевые факты

  • Procedura, агент на базе LLM, который создаёт 3D-объект как процедурную, параметрическую программу из именованных деталей, а не как полигональную сетку.
  • Агент планирует объект в виде графа сборки и пишет программу деталь за деталью, вычисляя положение каждой детали из уже заданных сопряжённых систем координат, а не подбирая его на глаз; деталь принимается только после проверок компиляции, сопряжений и связности.
  • Отдельный визуальный «критик» дорабатывает готовую сборку, устраняя по одной диагностированной ошибке за раз.
  • Тот же граф сборки хранит материал каждой детали и артикуляцию (подвижные сочленения), проверенную в физическом симуляторе.
  • На бенчмарках P3D-Bench и MechBench-36 (собственном бенчмарке авторов для механических форм) Procedura, по их данным, превосходит существующие 3D-генераторы и прежние код-агенты по качеству, даёт самые чёткие грани и единственная выдаёт редактируемый, разбитый на детали результат.

Почему это важно

Генераторы 3D-моделей по картинке или тексту хороши для органических форм, но плохо справляются с «жёсткими» механическими объектами: сетка сглаживает острые грани, не выделяет отдельные детали и не даёт ни одного параметра для правки. Procedura решает ровно эти три проблемы за счёт смены представления: объект описывается не геометрией, а программным кодом, который LLM умеет писать и структурировать. Это шаг в сторону 3D-контента, который не просто выглядит правдоподобно, а устроен как инженерная модель, с явными деталями, соединениями и параметрами.

Кому это важно

В первую очередь, разработчикам инструментов для 3D-дизайна, CAD-подобных пайплайнов и игровых или промышленных ассетов, где важна не картинка, а структура объекта: возможность выделить деталь, изменить её материал или подвижность. Также это интересно исследователям в области генерации 3D-контента, которые ищут альтернативу плотным сеткам, и разработчикам агентных LLM-систем, как пример агента, который сам проверяет свою работу компиляцией и геометрическими проверками, а не просто выдаёт код одним проходом.

Как это применить

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

Можно ли доверять

Материал, это описание исследовательской работы на странице препринтов Hugging Face, а не независимый обзор или тестирование третьей стороной. Ключевая оговорка: конкурентное сравнение проведено на двух бенчмарках, один из которых (MechBench-36), собственный бенчмарк той же команды, а оценку в обоих случаях выполняет автоматический «судья», встроенный в тот же бенчмарк. Авторы заявляют превосходство над прежними методами по качеству, но не приводят в тексте конкретных числовых показателей или отрыва в процентах, оценивать масштаб преимущества по имеющемуся описанию нельзя, только сам факт заявленного превосходства.

Риски и подводные камни

В доступном тексте нет ни одной цифры, подтверждающей масштаб превосходства Procedura над конкурентами, только качественное утверждение «превосходит». Не указаны ни авторская аффилиация и институты, ни какая именно LLM лежит в основе агента, ни планы по выпуску кода или релизу модели. Оценка качества сборки проведена судьёй, встроенным в бенчмарки, один из которых создан той же группой авторов, это не исключает смещения оценки в пользу метода, для которого бенчмарк и создавался.