编码速度一直都很快。真正耗时的是构思应用程序设计结构的过程,以及编写支撑应用程序逻辑结构所需的时间。接着,还需要花费时间对软件进行测试和调试,确保软件最终能够投入实际生产环境。
借助 AI 驱动的编程代理工具的崛起,编码速度有望进一步提升,因此现在的讨论应聚焦于这些新自动化技术在软件应用开发生命周期的哪些环节发挥作用。
低层次支持服务
当前普遍的看法是,将编码辅助服务定位于管理应用程序所必需的低层次服务,而非具备创建完整应用程序的高层次或更具创意的能力。虽然这一观点在本十年结束前可能会迅速过时,但目前我们正处在这一阶段。
最近一个月,OpenAI 推出了名为 Codex 的“研究预览”工具,该工具能够修复错误、运行测试并为现有应用程序或数据服务代码库提供一定程度的分析。它同样具备编写代码的能力,但暂时还不会打造下一个 Twitter。DevOps 团队的核心成员以及专业的单元测试工程师仍将主张需要额外一层测试。出于逻辑考虑,Codex 在云服务提供的沙箱虚拟机中运行其代理 AI 服务。
OpenAI 的研究负责人 Josh Tobin 表示,希望编程代理能作为虚拟团队成员与人类程序员协作,自主执行工作任务。在这一领域中的其他工具包括 Codeium AI 的轻量敏捷工具、Postman 提供的代理应用程序编程接口测试服务、Qodo 针对软件代码质量的完整性服务……以及 Devin 的端到端服务,这是一种具备更广泛视野、能够延伸至多步编码任务的代理式编码 AI。
什么是工作负载现代化?
如今加入这一尚处初级阶段的软件工具序列的是 AWS Transform,这项技术旨在帮助分担“现代化工作负载”转移至云端过程中所涉及的各项流程。
工作负载现代化这一概念经常被用作营销噱头,却鲜有明确定义。这里所指的工作负载现代化是将应用程序从本地服务器迁移到云端所必需的流程。它涉及对应用程序进行重新架构和重构,使其能够充分利用云端灵活扩展的特点。该过程包括运用新的用户身份认证、安全控制,并向能够承载更广泛微服务与无服务器函数应用的流程执行方式转变。同时,还涉及数据现代化步骤,包括更普遍地利用实时分析以及建立云端治理模型,确保整个系统获得适宜的云资源配置。总之,这已成为一个独立的话题,暂且不再赘述。
AWS 希望通过提供代理 AI 服务来协助这些流程,并宣称 AWS Transform 利用专门的 AI 代理来“卸下繁重劳动”,自动化处理跨 VMware、主机和 .NET 环境的云迁移工作负载中的复杂迁移和现代化任务。这项代理 AI 服务基于 AWS 的基础模型、大语言模型、机器学习、图神经网络、自动推理以及 AI 基础设施技术,为迁移和现代化任务提供支撑。
正如此处所阐述的,AWS 已在这些服务领域耕耘了一段时间,它们隶属于 Amazon Q Developer 体系内,这是一个生成式 AI 对话助手,开发人员可以利用它来编写代码、进行测试、升级、排障和安全扫描。AWS 公司表示,AWS Transform 能将单体的 z/OS COBOL 应用程序分解为可在云端运行的组件。它只需几分钟即可完成这一过程,而以往这一过程通常需要数月。
基于聊天的体验
据 AWS 全球企业营销负责人 Tom McCafferty 介绍,"AWS Transform 采用了一种基于聊天的体验,充当知识渊博的转型助手,帮助用户明确目标、分享项目背景、评估商业计划和成本节约、审查并调整转型方案,以及审查和批准代码和基础设施建议。AWS Transform 还将跨职能团队汇聚到统一的网页体验中,在这里他们可以审查任务、跟踪进度并在项目过程中进行协作,确保团队能够掌控最复杂遗留应用的转型方案。"
AWS 力图通过降低分析、规划和重构等各环节的转型成本,使其服务在该领域更具吸引力。AWS Transform 将分析软件应用依赖关系(即应用架构各部分之间彼此依赖的部分),借助以往现代化转型经验中的领域专业知识(这类标准化和编码化正是本世纪初的软件项目应该具备的),并能自主地转化代码、执行单元测试、生成转型摘要,还可验证 Linux 的兼容性。
云原生迁移公司 SourceFuse 的 DevOps 主管 Rajiv Lokare 表示:"在 SourceFuse,我们对 AWS Transform 在 VMware 环境中的转型潜力感到非常兴奋。通过自动化关键步骤(如依赖映射、网络转换和波次规划)——后者是一种将项目阶段划分为明确阶段的项目管理技术——我们的执行时间提高了多达 90%,而人工工作量减少了 80%。这一能力使我们能够更快、更低风险地完成迁移,帮助客户更早实现云就绪,并在 AWS 上构建一个可扩展且面向未来的基础架构。"
McCafferty 预示,这一全新代理将允许软件工程团队通过统一的网页体验,以一致的效果“并行转型数百个应用程序”。通过聊天界面,用户可以定义高层次的现代化目标,并在代理服务启动工作前与其“协商”工作计划。
云迁移工具在行动
在这里实际运用的软件工具方面,目前正开展“应用发现”流程,这通常是为了梳理依赖关系,从而使最终向云端的迁移和现代化更加顺利。此外,还在进行网络转换、服务器迁移以及云实例优化等工作,这一切都使得“上云”成为现实。
虽然此处自动化程度颇高,但——请注意,目前仍有需要人类介入的机制,不过 AI 的支持者认为未来无论以何种形式都会存在这种机制——AWS 同样启用了“人机协作”机制。AI 编程代理已经开始工作——它们不需要 Pepsi 和披萨,但这或许正自动化了开发者对这些的需求。不论如何,不需要隔间,也不必穿上夹克。
好文章,需要你的鼓励
这项研究介绍了VisCoder,一个经过专门微调的大语言模型,用于生成可执行的Python可视化代码。研究团队创建了包含20万样本的VisCode-200K数据集,结合了可执行代码示例和多轮修正对话。在PandasPlotBench基准测试中,VisCoder显著优于同等规模的开源模型,甚至在某些方面超越了GPT-4o-mini。研究还引入了自我调试评估模式,证明了反馈驱动学习对提高代码可执行性和视觉准确性的重要性。
这项研究提出了"适应再连续学习"(ACL)框架,一种创新的方法解决预训练模型在连续学习中的稳定性-可塑性困境。通过在学习新任务前先对模型进行适应性调整,ACL使模型既能更好地学习新知识(提高可塑性),又能保留已有知识(维持稳定性)。实验证明,该框架能显著提升各种连续学习方法的性能,为解决人工智能系统中的"灾难性遗忘"问题提供了有效途径。
这篇研究首次关注了CLIP模型文本编码器的对抗鲁棒性问题,提出了LEAF方法(Levenshtein高效对抗性微调)来增强文本编码器的稳健性。实验表明,LEAF显著提高了模型在面对文本扰动时的性能,在AG-News数据集上将对抗准确率从44.5%提升至63.3%。当集成到Stable Diffusion等文本到图像生成模型中时,LEAF显著提高了对抗噪声下的生成质量;在多模态检索任务中,它平均提高了10个百分点的召回率。此外,LEAF还增强了模型的可解释性,使文本嵌入的反演更加准确。
BenchHub是由韩国KAIST和Yonsei大学研究团队开发的统一评估平台,整合了38个基准中的30万个问题,按技能、学科和目标类型进行精细分类。研究显示现有评估基准存在领域分布偏差,而BenchHub通过自动分类系统和用户友好界面,让用户能根据特定需求筛选评估数据。实验证明模型在不同领域的排名差异巨大,强调了定制化评估的重要性。该平台支持多语言扩展和领域特化,为研究人员和开发者提供了灵活评估大语言模型的强大工具。