Java захватывает территорию Python на поле искусственного интеллекта — и в корпоративном секторе сопротивление может оказаться бесполезным, считают опрошенные порталом The New Stack эксперты.

2025-й — последний год господства Python в области ИИ, считает Саймон Риттер, заместитель технического директора крупного поставщика Java-платформ компании Azul Systems. По его словам, согласно исследованиям Azul, включая недавний опрос Java-разработчиков, Python может уступить лидерство Java в разработке ИИ в течение полутора лет.

«В кругах разработчиков хорошо известно, что Java лучше подходит для разработки корпоративных ИИ-приложений благодаря лучшим масштабируемости и производительности, но сейчас Python опережает Java по количеству библиотек и другой инфраструктуры для поддержки разработки ИИ, — говорит Риттер. — Однако предприятия осознают, что Java — лучший выбор для развертывания на уровне предприятия. Скорее всего, в ближайшие 18-36 месяцев Java обгонит Python».

Нынешнее превосходство Python в области ИИ на самом деле является культурным фактором, поскольку это более простой язык программирования, объясняет он. Люди, которые больше знакомы с методами ИИ, имеют математическое образование, а не занимаются разработкой ПО, поэтому простота Python для них более привлекательна.

Препятствия для предприятий

Однако «по мере того как предприятия будут все больше и больше зависеть от внедрения ИИ, они столкнутся с препятствиями, когда не смогут масштабироваться за пределы возможностей Python. Это потребует значительного переписывания и перестройки архитектуры приложений. Организациям предстоит убедиться, что их ИИ-приложения работают в тандеме с Python и Java, причем приложения на Java разрабатываются на долгосрочную перспективу, чтобы не натолкнуться на кирпичную стену», — полагает Риттер.

Более того, по его словам, решающим фактором окончательного доминирования Java является ее способность извлечь из GPU максимум производительности. Например, «Проект Panama уже реализован в JDK, что упрощает использование в Java-коде библиотек, не относящихся к Java, — говорит Риттер. — К этому добавится проект Babylon, который изучает, как Java может напрямую использовать преимущества GPU для повышения производительности без необходимости изменения кода».

Отчет Azul «2025 State of Java Survey & Report» показал, что Java-разработчики активно используют ИИ, а 50% участников опроса, создающих ИИ-функциональность, используют Java, что превосходит использование других популярных языков, таких как Python и JavaScript, которые культурно больше ассоциируются с ИИ.

Java: соответствие цели

«Это подчеркивает „целевой“ характер Java применительно к ИИ: масштабируемость, обширные библиотеки и бесшовная интеграция с существующими корпоративными системами», — говорится в отчете.

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

Кроме того, среди организаций, использующих Java для создания ИИ-функциональности, JavaML является наиболее часто используемой ИИ-библиотекой для Java. Поскольку ИИ оказывает сильное влияние на то, как организации разрабатывают стратегии, создают код, поддерживают приложения и инфраструктуру, вся эта деятельность требует вычислительных мощностей, поэтому 72% участников опроса заявили, что для поддержки Java-приложений с функциями ИИ им придется увеличить потребление вычислительных ресурсов.

Может ли Java стать лидером?

Может ли Java обогнать Python в борьбе за лидерство в разработке ИИ? «Да, безусловно, это может произойти, тем более что Java не имеет аналогов для разработки корпоративных, критически важных приложений в масштабах предприятия», — считает Арнал Даяратна, аналитик IDC.

Однако другой опытный наблюдатель рынка разработки приложений видит ситуацию иначе. Брэд Шиммин, аналитик Omdia, не верит в то, что Java сможет вытеснить Python в области разработки ИИ. «Учитывая прирост производительности самого языка Python, а также развивающуюся экосистему его библиотек (PyTorch, Panda и т. д.), доступных разработчикам, я не ожидаю, что Java обгонит Python в поддержке ИИ, — говорит он. — Конечно, там, где безопасность и производительность являются обязательными условиями, как, например, в финансовой сфере, можно ожидать, что часть кода на Python будет рефакторизована в код Java или Scala. Но даже там ИИ-специалисты предпочтут начинать с Python. С развитием генеративного ИИ (GenAI) я ожидаю появления других языков, особенно тех, которые используются для полностековой разработки, например Typescript».

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

Oracle работает над этим

Oracle, ответственная за язык и платформу Java, как раз работает над этим.

По словам Жоржа Сааба, старшего вице-президента Oracle Java Platform и председателя совета управляющих OpenJDK, компания наблюдает все более широкое использование Java в развивающихся технологиях по мере их становления, и ИИ не является исключением.

«На Java работает большая часть корпоративной бизнес-логики, а сильная типизация, безопасность памяти, хорошие базовые библиотеки и обширный инструментарий означают, что Java естественным образом притягивается к этим растущим экосистемам, — говорит он. — Мы наблюдаем повышенный интерес к Java в требующей интенсивных вычислений области обучения и создания моделей ИИ благодаря возможностям повышения производительности за счет интеграции нативных библиотек и JIT. Более того, в рамках проекта Babylon ставится задача расширить сферу применения Java до моделей программирования GPU, что позволит еще глубже погрузить Java в пространство ИИ. А проект Valhalla, как ожидается, сделает работу со сложными типами данных такой же эффективной, как и с примитивными типами значений, что позволит JVM лучше распределять память».

Кроме того, в области выводов проект Amber позволяет разработчикам моделировать данные гораздо проще и выразительнее с помощью герметичных типов, классов Record и сопоставления шаблонов, отмечает он.

«Например, в langchain4j есть возможность запросить LLM-модели возвращать ответы, которые записываются непосредственно в Records, что позволяет эффективно объединять неструктурированные ответы, генерируемые ИИ, в сильно типизированные системы, — говорит Сааб. — А поскольку значительная часть бизнес-приложений уже написана на Java, это дает разработчикам таких приложений возможность „не выходить за рамки Java“, чтобы встроить ИИ».

Общие выводы отчета

В основе отчета Azul лежат ответы более 2000 Java-профессионалов со всего мира. В нем рассматривается, как предприятия решают проблемы ценообразования и лицензирования Oracle Java, какие стратегии применяют организации для решения проблемы расходов на облачные вычисления, какие факторы влияют на производительность DevOps и какую роль играет Java в разработке ИИ.

Согласно отчету, из всех предприятий, опрошенных по всему миру в рамках подготовки отчета, только 1% респондентов не используют Java, что подчеркивает, что 99% опрошенных организаций активно используют Java. Кроме того, почти 70% респондентов отметили, что более половины их приложений созданы на Java или работают на виртуальной машине Java (JVM), что подтверждает фундаментальную роль Java в современном бизнесе.

Другие ключевые результаты исследования включают:

Уход от Oracle

По словам представителей Azul, спустя два года после того, как Oracle представила ценообразование на Oracle Java SE на основе численности сотрудников, опасения по поводу этой модели остаются высокими. Беспокойство выразили 82% пользователей Oracle Java — тот же процент, что и в отчете Azul «2023 State of Java Survey & Report». Процент организаций, рассматривающих альтернативы Oracle Java, также значительно вырос — с 72% в 2023-м до 88% сегодня.

Согласно отчету, в пятерку причин, по которым организации рассматривают возможность ухода от Oracle Java (респонденты могли выбирать все подходящие варианты), входят стоимость (42%), предпочтение открытого кода (40%), тактика продаж Oracle (37%), неопределенность, вызванная постоянными изменениями в ценообразовании и лицензировании (36%), и ограничительная политика Oracle (33%).

«Конечно, мы должны учитывать источник, — отмечает Шиммин, указывая на то, что Azul является ключевым конкурентом Oracle. — Но я знаю, что Oracle здесь несколько уязвима, поскольку существует ряд альтернативных JDK от ряда других компаний, которые имеют более гибкую и потенциально более дешевую модель лицензирования по сравнению с Oracle Java SE Universal Subscription».

По его словам, Oracle предстоит доказать ценность услуг по сопровождению, исправлению и поддержке ПО — бизнес-модели, которая работает для Open Source-компаний, таких как Red Hat, Databricks и многих других. «Учитывая, что существует множество вариантов, Oracle придется сотрудничать со своей существующей клиентской базой, чтобы помогать клиентам, не создавая при этом никаких финансовых или технических трудностей, — говорит Шиммин. — На мой взгляд, хорошим подходом для любой компании в такой ситуации было бы предложение как бесплатной версии, так и лицензии с фиксированным сроком использования, который может увеличиваться или уменьшаться в зависимости от потребностей клиента».

Хольгер Мюллер, аналитик Constellation Research, также выражает сомнения в достоверности результатов отчета Azul: «Это немного корыстный отчет Azul, которая хочет, чтобы люди перешли с Oracle Java. Реальность такова, что переносить платформы сложно, а бизнес-обоснование по большей части сомнительно... Однако если Azul предложит работающую миграцию кода с использованием ИИ, то такие переходы вполне могут произойти. Автоматизация снижает стоимость миграции...».

Безопасность и DevOps

В исследовании Azul также рассматриваются вопросы DevOps и безопасности; в частности, 62% респондентов отметили, что мертвый или неиспользуемый код влияет на производительность DevOps, 33% команд DevOps тратят более половины своего времени на устранение ложных срабатываний, связанных с уязвимостями в системе безопасности Java, а 49% заявили, что до сих пор сталкиваются с уязвимостями безопасности Log4j в производстве.

«Поскольку Java продолжает оставаться основой для критически важных бизнес-приложений на предприятиях, мы наблюдаем важные тенденции — от растущего интереса к альтернативам Oracle Java до стратегий оптимизации облачных вычислений, повышения производительности DevOps и инноваций с использованием ИИ», — заявил Скотт Селлерс, соучредитель и генеральный директор Azul.