В эпоху расцвета ChatGPT и других генеративных моделей мы уже привыкли доверять искусственному интеллекту написание текстов, генерацию изображений и даже создание программного кода. Однако остаётся область, в которой ИИ пока не демонстрирует выдающихся успехов — это генерация архитектурных диаграмм программных систем.
Недавно автор блога компании Ilograph, Билли Пилгер, провёл любопытный эксперимент: он попытался выяснить, насколько качественно современные ИИ могут создавать различные типы диаграмм — от общих концептуальных схем до реальных архитектур существующих приложений.
📐 Что хорошо получается у ИИ?
Сначала о позитивном. Генеративный ИИ (например, ChatGPT версии 4o) отлично справляется с простой задачей — созданием общих, «универсальных» диаграмм. Например, если попросить у него типичную схему серверного приложения на AWS, результат будет вполне приемлемым: в диаграмме появляются все основные компоненты — AWS Lambda, API Gateway, DynamoDB, S3 и даже CDN.
✨ Преимущества таких простых генераций очевидны:
- Быстрое создание схем для презентаций.
- Удобство визуализации стандартных решений.
- Экономия времени на первичном этапе проектирования.
Однако для таких задач прекрасно подходит обычный поиск по картинкам в Google, и здесь особой ценности от ИИ нет.
🖍️ ИИ и проектирование («whiteboarding»)
Более интересная и перспективная задача — помощь ИИ в проектировании будущих систем («whiteboarding»). Автор эксперимента запросил у ИИ более детальную схему серверного приложения для обработки изображений. Первоначальная диаграмма была далека от идеала, но после нескольких уточнений в чат-переписке удалось добиться хорошего результата, разбив процесс на последовательные диаграммы.
Однако возникли следующие сложности:
- 🔸 Неточности размещения элементов: приходилось явно уточнять, где разместить пользователя и API Gateway.
- 🔸 Отсутствие иконок и фирменных цветов AWS: оказалось, что Mermaid, используемый ИИ, не поддерживает иконки, а с цветами были проблемы.
- 🔸 Необходимость множества итераций: частые уточнения занимают много времени и усилий.
Лично я вижу, что главная проблема здесь даже не в ИИ, а в инструменте визуализации (Mermaid). Если использовать более продвинутый инструмент с поддержкой иконок (например, draw.io или Lucidchart), результат мог бы получиться значительно лучше.
📂 Реальные диаграммы: миссия пока невыполнима?
А вот наиболее интересная и сложная задача — создание реальных, детализированных схем по исходному коду существующих систем — оказалась почти непосильной.
Эксперимент заключался в том, что автор попросил ChatGPT и Claude.ai построить архитектурную диаграмму, проанализировав исходный код конкретного репозитория с проектом.
Результат оказался, мягко говоря, печальным:
❌ ChatGPT:
- Диаграмма получилась очень поверхностной, с отсутствием деталей.
- Слишком абстрактные формулировки («общие ресурсы»), без конкретики.
- Нежелание ИИ уточнять детали по исходному коду.
❌ Claude.ai:
- Попытался добавить больше деталей, но стал придумывать несуществующие компоненты и технологии (например, сжал изображения и добавил DynamoDB, которых в проекте не было).
- Плохо оформлены связи между элементами.
Вывод неутешителен: обе модели сильно «галлюцинировали», теряя связь с реальностью.
🧩 Почему так сложно создавать реальные диаграммы по коду?
Причины, почему ИИ пока не справляется с этой задачей, довольно глубокие:
🗃️ Отсутствие тренировочных данных:
- Почти нет доступных открытых репозиториев с реально работающими приложениями и качественными архитектурными диаграммами.
- Большинство открытых проектов — библиотеки, а не полноценные решения.
🔍 Сложность анализа исходного кода:
- Исходный код часто содержит множество языков и уровней абстракции.
- Трудно выявить прямые зависимости между конфигурацией и работающим приложением.
- Код обычно не содержит явно описанной цели или стратегии работы системы.
🎯 Необходимость понимания целей и стратегии:
- Для создания хорошей диаграммы автор должен ясно понимать цель системы и её задачи, чего ИИ часто не может извлечь из кода.
🧑💻 Личное мнение и перспективы
На мой взгляд, искусственный интеллект сейчас лучше всего использовать именно как «помощника на белой доске», быстро генерируя базовые варианты схем. Но доверять ему полноценное создание реальных, технически точных архитектурных диаграмм пока рано.
Значительно продуктивнее вручную описывать систему через специализированные инструменты (Ilograph, Mermaid, PlantUML), контролируя каждую деталь. Это занимает больше времени на старте, но итоговый результат получается точным и полезным для команды.
Однако я уверен, что по мере улучшения алгоритмов и появления новых источников данных, генерация реальных схем будет становиться всё более точной. Возможно, через 2–3 года мы увидим прорыв и здесь.
📌 Что стоит запомнить:
- ✅ ИИ отлично генерирует простые схемы и подходит для быстрого мозгового штурма.
- ⚠️ Для реальных проектов пока необходим человек.
- 📖 Создание диаграмм по коду требует понимания смысла и стратегии, что пока для ИИ трудно.
🔗 Оригинальная статья и дополнительная информация:
Будущее уже близко, но для создания качественной документации человек ещё долго останется незаменимым! 🚀👩🚀