专栏名称: InfoQ架构头条
InfoQ运维领域垂直号。常规运维、亦或是崛起的DevOps,探讨如何IT交付实现价值。努力为技术人呈现有实践意义的内容~
目录
相关文章推荐
51好读  ›  专栏  ›  InfoQ架构头条

“2025 年将成 Python 主导 AI 领域的最后一年”

InfoQ架构头条  · 公众号  · 运维  · 2025-02-12 15:00

正文

图片

作者 | 核子可乐、Tina

Java,这头在企业应用领域深耕 30 年的“猛兽”,如今正虎视眈眈地瞄准 AI 这块 Python 的“固有领地”。尤其是在企业级 AI 应用方面,Python 的优势似乎正在逐渐减弱。一家大型 Java 平台公司的技术负责人甚至预测,2025 年将是 Python 在 AI 领域占据主导地位的最后一年。

Java 强势进军 AI 领域,
Python 能否守住阵地?

今年,Java 迎来了 30 周年,它在企业应用领域的影响力依然稳固。这种多用途编程语言经历了二十多个版本的演进、2010 年 Sun Microsystems 被 Oracle 收购,以及最近的许可变更。

尽管已有悠久历史,Java 仍然广泛应用于从 Web 到云计算的各类商业应用中。

“Java 就像企业的砂浆和砖墙——它无处不在,”Azul 首席执行官 Scott Sellers 表示。“确实有一些企业不使用 Java,但总体而言,几乎找不到一家规模较大的企业完全不依赖 Java。”

如今,随着 GenAI 变得越来越重要,Python 被广泛认为是生成式 AI 的首选编程语言。这对 Java 开发人员意味着什么,是一个值得思考的重要问题。

目前来看,在 AI 应用的开发过程中,不同角色各司其职,包括 AI 工程师、数据工程师和应用开发者。其中,AI 工程师专注于模型的开发与部署,数据工程师负责数据的管理与处理。虽然 AI 工程师和数据工程师的工作至关重要,但应用程序开发人员同样扮演着关键角色。我们需要大量的应用程序开发人员来将 AI 融入到实际应用中,创造出实用的 AI 解决方案。

在这一过程中,应用平台、数据平台和 AI 服务三者共同作用,构建出完整的 AI 生态系统。现在是 Java 开发者学习 AI 并将其应用于企业级应用的绝佳时机,尤其是在大量企业应用都运行在 Java 生态上的背景下。

而且,近年来,Java 在 AI 领域的技术突破愈发明显,多个关键项目正在推进 Java 在 AI 开发中的竞争力。比如, Langchain4J 框架旨在简化将大模型 (LLM) 集成到 Java 应用程序中的过程,在过去一年内已发布十余个版本,不断完善对 Java 生态的支持。自推出后,该库便迅速在 Java 社区中获得了关注和认可,尤其是在开发基于 LLM 的应用程序的开发人员中。

而 Pivotal 开源的 Spring AI 近期则正式推出 1.0.0 版本,标志着 Java 在 AI 领域的进一步成熟。国内阿里云也发布了基于通义大模型的 Spring AI Alibaba 开源项目,将 Spring 生态系统的可移植性、模块化设计等企业级特性应用到 AI 领域。 Jlama 则提供了一个原生的 Java LLM 推理引擎。Jlama 完全由 Java 构建,使用 Java 库和 API 处理所有 LLM 相关操作,并支持在 Java 虚拟机(JVM)内本地执行模型推理。

为了解企业如何在不断发展的技术环境中使用 Java,大型 Java 平台提供商 Azul Systems 发起了一项调查,调查报告显示, 50% 的组织使用 Java 来构建 AI 功能 ,在以 Java 为中心的企业中,其 AI 开发使用量超过了 Python 和 JavaScript。

Azul 公司副 CTO Simon Ritter 在采访中表示, Java 语言很可能在未来一年半内顶替 Python 在 AI 开发领域的优势地位。

Ritter 写道,“众所周知,开发者圈子都认为 Java 语言更适合开发企业级 AI 应用程序,因为它的可扩展性和性能更好,只是目前 Python 凭借丰富的依赖库和其他支持性的 AI 开发基础设施暂时取得优势。然而,企业已经意识到 Java 才是业务部署的更佳选择。我们很可能在未来一年半到三年之内,见证 Java 超越 Python。”

Ritter 解释道,Python 目前在 AI 领域的主导地位实际更多是文化因素的结果,因为 Python 作为编程语言更简单。他指出,熟悉 AI 技术的群体往往长于数学能力、而非软件开发背景,因此 Python 的简单易用对他们更具吸引力。

然而,“随着企业越来越依赖 AI 部署,我们将遭遇障碍、撞上 Python 语言的能力边界,就是说必须对应用程序进行大量重写和重构。组织必须确保自己的应用程序能够与 Python 和 Java 协同运行,逐步建立起 Java AI 应用体系,最终突破这道壁垒。”

Ritter 同时提到,Java 最终能够占据主导的关键因素,在于它能够从 GPU 中获得更好的性能。例如,“JDK 已经交付 Project Panama ,使得开发者能够在 Java 代码中轻松使用非 Java 库。

Project Babylon 则对此做出增强,探索如何在无需更改代码的前提下,通过 Java 直接调用 GPU 以实现更好的性能表现。”

Java 能否顺利“接棒”,
业内专家观点各异

Azul 报告指出,Java 开发者正积极使用 AI,“这凸显出 Java 在 AI 中「契合需求」的天然性质,即提供更好的可扩展性、广泛的依赖库以及与现有企业系统的无缝集成。”

事实上,Java 在性能、可扩展性以及稳定性方面的长期优势,使其成为开发 AI 驱动应用程序的天然选择。报告强调,Java 能够为 AI 解决方案提供必要的计算效率与企业级可靠性。

此外,在使用 Java 构建 AI 功能的组织当中,JavaML 成为使用频率最高的 Java AI 库。由于 AI 已经开始影响组织制定策略、构建代码以及维护应用程序和基础设施的全新方式,所有这些活动都需要消耗算力资源。因此调查中有 72% 的受访者表示,他们需要储备更多算力才能支撑起具有 AI 功能的 Java 应用程序。

在被问及是否相信 Java 能够取代 Python 在 AI 开发领域的主导地位时,IDC 公司分析师 Arnal Dayaratna 表示“是的,而且可能性很大,毕竟 Java 在大规模、企业级、关键任务类应用程序的开发方面无人能敌。”

然而,另一位经验丰富的应用开发市场观察者却有着不同的观点。Omdia 公司分析师 Brad Shimmin 在采访中表示,他不相信 Java 能够取代 Python 的 AI 开发一哥地位。

“如今 Python 语言自身的性能正在提升,加上开发者能够使用的库(PyTorch、Panda 等)已经孕育出蓬勃发展的生态系统,我并不觉得 Java 能够在支撑 AI 用例方面超越 Python。当然,在安全和性能极其重要的领域,例如金融行业,我们也希望能把一部分 Python 代码重构成 Java 或者 Scala 的形式。可即便如此,AI 从业者也更愿意从 Python 起步。随着生成式 AI 的兴起,预计其他语言也会发挥作用,特别是 TypeScript 等更适合全栈开发的语言。”







请到「今天看啥」查看全文


推荐文章
知乎日报  ·  小事|数着钱,看着人生
8 年前
公主岭帮  ·  老 毕 携 美 女 又 来 了!
8 年前
中国政府网  ·  关注丨这些行车安全知识你不得不知
8 年前