【ArchSummit架构师峰会】基于大模型的基础框架、中台、应用层等专题全覆盖 >>> 了解详情
写点什么

DevSecOps 中的 AI:从“智能副驾”到“自动驾驶”

  • 2024-01-12
    北京
  • 本文字数:2541 字

    阅读完需:约 8 分钟

大小:1.27M时长:07:23
DevSecOps 中的AI:从“智能副驾”到“自动驾驶”

作者|JFrog 大中华区总经理 董任远


自动驾驶和软件(SW)开发之间有何共同点?乍一看,并没有什么共同点。但仔细观察一下,就能发现两者之间存在一些相似之处,尤其是在实现基本目标的演进路径上。


开发团队本身不会成为 “乘客”,但设计、创建、保护、分发和维护等方面相关人员的传统角色和职责会发生转变。为了更好地理解这一点,可以先深入了解一下自动驾驶的概念,然后再将其与软件开发联系起来。

 

自动驾驶的概念出现已有多年,曾经看似未来派的概念如今已成为现实。从本质上来说,自动驾驶汽车(AV)旨在最大限度地减少交通出行中的人为失误(目前约 90% 的交通事故都是由人为失误造成的)。自动驾驶汽车的基本前提是其性能应优于普通人类驾驶员。自动驾驶技术可以节约时间,这至关重要。这样,人们就可以把精力投入到更令人愉悦的娱乐活动中,而不是耗费在交通路途中。

 

边缘计算和 AI 是实现自动驾驶的两大关键要素:它们使车辆能够在车内处理物联网传感器的数据,从而实现实时操作。这种能力对于任何任务关键型应用都至关重要。试图对机器进行手动编程,以处理各种可能的驾驶场景的做法已不切实际。相反,车辆必须从环境中动态学习。自动驾驶汽车的智能程度取决于各种物联网传感器数据的可用性,基于数据就能创建物理世界的数字孪生表示。数据越多样化,就能部署越复杂的 AI 系统。

 

观察自动驾驶的发展路径,我们可以发现,在每个阶段,人类的参与都在逐渐减少。自动驾驶汽车框架包括 6 个自动化级别,从 0(完全手动)到 5(完全自主)不等。


  • 无自动化:驾驶员完全控制所有驾驶任务。

  • 驾驶员辅助:车辆采用单一自动化系统,允许驾驶员将脚从踏板上移开。

  • 部分自动化:车辆具备转向和加速能力,驾驶员可以将手从方向盘上移开。

  • 有条件的自动化:车辆能够控制大部分驾驶任务,使驾驶员能够将视线从道路上移开,同时仍能保持监控。

  • 高度自动化:车辆在特定条件下能够执行所有驾驶任务,让驾驶员有机会在保持警惕的同时,将注意力从路面上移开。

  • 完全自动化:车辆可在任何条件下独立完成所有驾驶任务。这样,驾驶员就变成了乘客,完全不用担心任何驾驶责任。

 

AI 在软件开发中的优势与其在自动驾驶领域中的优势如出一辙,即最大限度地减少人为失误,使人能够腾出时间,从事创造性更强的工作。由于人力资源往往是软件开发中成本最高的环节,因此企业就有动力去采用 AI 系统,事半功倍。

 

仔细研究软件开发的演进路径,会发现其与自动驾驶技术的进步有着惊人的相似之处:在每个演进阶段,人类的参与都在逐渐减少:

 

本世纪初,软件开发几乎不涉及自动化。在软件开发生命周期(SDLC)的每个阶段都需要人工控制,因此整个过程基本上都需要手动操作。问题往往是由客户而非内部团队发现的。


到了 2010 年代中期,容器化、云计算和 DevOps 的兴起提高了软件开发生命周期的整体自动化程度和效率。在测试、代码审查和 CI/CD 等领域,基于预定义(硬编码)策略和“if-then”规则的常规任务和程序性决策实现了自动化。这样,研发团队就能专注于创造性工作,提高生产力,进而实现“引导和加速”。根据敏捷原则缩短开发周期,在开发和运维之间架起桥梁。问题的管理和解决开始从被动反应转变为自适应,各团队之间的协调更加顺畅。大多数问题甚至可以在客户意识到之前就被发现并解决。


时至今日,生成式 AI 正在推动软件开发的效率和创新水平至新高。基于生成式 AI 的解决方案可通过无缝的人机对话来创建新内容,自动化的应用远不止常规任务。AI 在整个软件开发生命周期过程中,是不折不扣的助手(智能副驾),它能够提供建议、解释问题、生成代码、监控流程、扫描资源库、提供预测并辅助快速决策,效率也开始得以提升。这将进一步加快和提高整体代码生成速度,意味着能够实现更多的软件构建、更多需要保护的软件以及更频繁的运行时更新。


当我们将嵌入式 AI 模型(MLOps)添加到现代软件开发的等式中时,上述领域将进一步扩大。“流式软件”的概念正逐渐成为现实,小规模的增量改进(基于二进制文件的更新)会自动从开发阶段流向运行阶段,而服务停机时间则会降至最低。


在应用安全方面,AI 能够通过预测,大幅缩短发现和修复问题的时间,从源头防止恶意软件包进入企业。首先是利用基于 AI 的严重性和上下文分析来进行自动化漏洞扫描和检测,然后是自动修复。尽管取得了上述进步,但在基于 AI 的解决方案展现出更高的可信度和可靠性之前,人工干预和审批仍然是必要的。


近年来,我们开始向全自动范式过渡,即从“智能副驾”(AI 助手)转变为“自动驾驶”(人工智能决策者)。机器可以通过自然语言用户界面(如英语)来解决高度复杂的问题,而这需要程序员掌握新型技能,引导对话达到预期状态。从根本上说,AI 系统的性能应优于普通人类开发者或参与上述流程的其他人员。AI 将进一步增强决策流程并使之自动化,使企业能够选择最佳的(数据驱动型)方法和工具来解决任何问题。对 AI 系统的信任将是最重要的,而这就要求做到对广范围语境的理解和合乎道德的决策制定,类似于当今自动驾驶所面临的挑战。自学习和自修复能力将成为检测、分析、隔离和修补问题并保持服务正常运行的关键。这意味着:软件将能够自我重写和更新,并增加新的功能以处理新的输入。同样,对于自动驾驶汽车,AI 系统也必须从自身运行环境中学习并做出相应调整。

 

总之,虽然自动驾驶与软件开发之间的相似之处可能不会立即显现出来,但这两个领域都有一个共同的目标,即利用 AI 来强化自身的运作,并让个体能够腾出时间来专注于更想追求的目标。在软件开发方面,AI 将持续加速并改进新功能和数据的创建,提升各研发职能的用户体验,逐步从可信赖的顾问发展到更高的决策自主权。从智能编码和安全,到覆盖整体 DevOps 堆栈,基于 AI 的“智能副驾”将慢慢成为整个软件开发生命周期的主流。企业对于 AI 必须坚持负责任且安全的原则和实践,以确保业务成果的可持续性。这涵盖 AI 生成软件的多方面,包括保护知识产权,避免潜在的安全和许可证合规问题等。AI 系统的逐步自主化将允许并确保与现有基础设施和监管环境的兼容性。

 

随着 AI 技术的不断进步,我们可以预见软件开发将迎来更深入的整合和创新。随着 AI 不断改变各行各业,我们也步入了一个激动人心的时代。软件开发的未来大有可为,想象力有多大,我们对机器能够赋予的开发责任就可以有多大。

 

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2024-01-12 11:067230
用户头像
李冬梅 加V:busulishang4668

发布了 824 篇内容, 共 394.4 次阅读, 收获喜欢 1010 次。

关注

评论

发布
暂无评论

Java五年工作经验面试题,极客学院和黑马,深入linux内核架构面试

Java 程序员 后端

架构实战营模块1课后作业

断水风春

架构实战营

看山聊 Java:从零实现“百度网盘批量重命名”工具

看山

Java 工具集 10月月更

Java多态实现原理解析,掌握这套精编Java高级面试题解析

Java 程序员 后端

Java大厂74道高级面试合集,我凭借这份PDF的复习思路

Java 程序员 后端

Java大神需要掌握的技术,java开发技术教程,字节大牛教你手撕Java学习

Java 程序员 后端

Java学习笔记在互联网上火了,Java开发实战讲解

Java 程序员 后端

Prometheus 内置函数(四)

耳东@Erdong

Prometheus PromQL 10月月更

Java从入门到精通百度云,java教学百度网盘,思维导图+源代码+笔记+项目

Java 程序员 后端

Java入门基础,千锋教育java教程,深度剖析原理

Java 程序员 后端

Java入门,java黑马程序员课后答案第二版第八章,如何成为杰出的程序员

Java 程序员 后端

Java基础知识梳理,java最新技术栈百度网盘,大厂面试必问

Java 程序员 后端

Java学习笔记在互联网上火了,linux视频教程在线,面试官让我下周来上班

Java 程序员 后端

Java学习笔记在互联网上火了,帮你深度探寻Spring循环依赖源码实现

Java 程序员 后端

不会吧?!新版本longhorn部署需要k8s.gcr.io镜像?

远鹏

Kubernetes CloudNative cncf longhorn

Java外包是如何转正网易的,面试阿里的时候一定会问到的

Java 程序员 后端

Java基础72问:黑马程序员java教程,漫谈MySQL权限安全

Java 程序员 后端

Java基础笔试题,mysql教程入门到精通,Java程序员

Java 程序员 后端

Java基础笔试题,尚硅谷和尚学堂大数据,彻底帮你搞懂

Java 程序员 后端

Java二叉树面试题总结,马哥linux视频教程百度云,GitHub重磅官宣

Java 程序员 后端

Java入门,spring框架教程,Java开发知识体系

Java 程序员 后端

Java基础入门视频,kafka基础教程,最新Java开发面试解答

Java 程序员 后端

Java大厂高级面试题灵魂100问,linux操作系统教程pdf,卧槽

Java 程序员 后端

Java入门视频教程,尚学堂大数据全套教程百度云,Java多线程并发面试题

Java 程序员 后端

Java基础72问,极客时间数据结构与算法,原理解析

Java 程序员 后端

Java基础教程百度云,java教程百度云下载,你不懂还不学?

Java 程序员 后端

Java外包是如何转正华为的,2021最新网易Java面试题目

Java 程序员 后端

Java基础入门教程,尚硅谷和黑马深圳,Java中级面试含答案

Java 程序员 后端

Java基础学习百度云,尚硅谷linux,深入linux内核架构面试

Java 程序员 后端

Java基础知识梳理,渡一教育java百度云资源,帮你快速拿Offer

Java 程序员 后端

Java基础笔试题,rabbitmq教程go,netty框架工作原理

Java 程序员 后端

DevSecOps 中的AI:从“智能副驾”到“自动驾驶”_自动驾驶_董任远_InfoQ精选文章