它的Code Assistant工具希望成为开发人员最好的朋友。但它也必须取代那些不再愿意翻译 COBOL 的人,COBOL 是一种已有 70 年历史的计算机语言,被商业、金融和管理领域的大型机使用。
2023年也是IBM 人工智能年。这家百年跨国公司跨越了时代,为了与 OpenAI、Google 和 AWS 竞争,推出了 watsonx 平台,该平台采用了自己的基础模型:Granite。对于后者,一个名为“代码助手”的新工具今年年底到达。它针对的是开发人员,为他们生成线路,同时也解释、改进、纠正和识别可能的漏洞。如果它宣布它比 Copilot (Github) 或 CodeWhisperer (AWS) 做得更好,那么它的关键功能可能不会是最受欢迎的功能。
交易系统的核心
在编写代码、解释和更正代码的同时,代码助手工具还需要进行翻译。而且兴趣不仅仅在于从 Java 转向 Python。 IBM 解决其阴影并提供翻译服务科博尔。这种计算机语言,发明于 1950 年,该公司已将其作为 z/OS 操作系统上的大型机的软件支持。直到最近,银行、支付运营商、零售巨头、航天机构甚至政府都在使用它们。然而,自 2010 年代以来,许多人已经拔掉了它们,转而使用更现代化的机器。然后软件就放弃了 COBOL。
Code Assistant 基于内部模型,拥有 200 亿个参数,无论提出什么要求都可以胜任。但 IBM 认识到,当我们审视 COBOL 时,人工智能自动化并不像人类那么可靠。但机会是巨大的,因为有需要的客户很难找到有能力的开发人员,尽管这些超级计算机是大多数交易系统的核心。
“大型机并不为公众所知,但它们在后台运行,几乎处理世界上每笔信用卡交易。我们不知道,但事实就是如此。因为每家银行都依赖于我们产品的质量,以确保即使是黑色星期五,系统也不会崩溃或受到病毒攻击。这是一个很久以前发明的平台,但一直存在一个关键问题”,解释为01网Robert Haas,苏黎世 IBM 研究实验室研究员兼技术部门负责人。
随着 Java 和 C++ 一起成长的开发人员越来越少地掌握 COBOL,濒临衰落。讽刺的是,新推出的 COBOL 翻译工具被称为“Code Assistant for Z”。我们显然看到了对那些最常使用它的人的引用——Z 代开发人员——即使这个名字的解释是 IBM 自 20 世纪 60 年代以来推出的大型机属于Z家族,由此品牌命名。这就产生了“z/OS”,这是著名的基于 COBOL 的操作系统,如今在 Java 中进行了现代化改造。 IBM Code Assistant 之前的系统已经研究过这个问题,但根据跨国公司的说法,他们有一个问题。
«如今,应用程序现代化有多种方法。一些选择包括用 Java 重写所有应用程序代码或将所有内容迁移到公共云,这可能会牺牲 IBM Z 价值主张的核心功能,而无法实现预期的成本降低。将 COBOL 应用程序转换为 Java 语法的工具可能会生成难以维护且 Java 开发人员无法识别的代码。生成式 AI 前景广阔,但当前的 AI 辅助部分重写技术不支持 COBOL,并且无法针对给定任务优化生成的 Java 代码。”解释一下IBM
事实上,当前的大部分故障排除和操作都依赖于一个由收入特别丰厚的开发人员组成的小型网络,自 2010 年以来,他们已经看到许多准备支付巨额资金的大钱包的到来。原因是什么?所涉及的风险将花费更多。路透社在2017年的一份报告中回顾了澳大利亚联邦银行的案例。 2012年,她必须支付相当于7.499 亿美元使其平台现代化。这个过程花了5年时间。 IBM 感受到了日益增长的紧迫性,并于 2016 年收购了以色列公司 EzSource,该公司专门培训大型机软件现代化的开发人员。
“多层混乱”
在苏黎世的研究实验室,IBM 的一些研究人员负责开发新工具,我们证明了使用人工智能的重要性。弥补资源不足,并应对数代维护应用程序所带来的风险的唯一方法。主要问题:应用«多年来受到不同声音的指导。它们往往会失去指导性的架构原则,最终可能成为多层的半结构化混乱。,我们描述。这种情况不限于 COBOL,但在这种计算机语言的情况下,必须进行双重监控,以确保尊重 COBOL 提议的内容和 Java 提供的内容之间的等效性。
2012 年,在阿拉巴马州亨特维尔,美国宇航局终止了其最新的 System Z 大型机服务器在马歇尔太空飞行中心,甚至在第一个人类登上月球之前就已经投入使用。“对于业内许多人来说,大型机已经背负着过去计算时代的名声,以至于它们已经成为恐龙的代名词”,解释说科技网值此之际。此后,IBM抓住了这一言论,并以新机器借用恐龙的名字。在我们等待科学通过量子技术进步的同时,大型机仍然占据着超级计算机的地位。 IBM 研究人员研究的一个主题显然在甲板上。
到那时,这将不再是重新思考应用程序架构的问题,而是重新思考应用程序的架构的问题。密码保护。