改变开发的未来 | 探索无服务器与人工智能的协同效应

这篇具有很好参考价值的文章主要介绍了改变开发的未来 | 探索无服务器与人工智能的协同效应。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

近年来,无服务器计算和人工智能深刻改变着应用程序的开发方式。

无服务器计算实现无需管理底层基础架构就能构建和运行应用程序,而人工智能则让应用程序依据数据和算例做出智能决策。借助云计算,开发者打开了一个应用程序开发、构建的全新世界的大门,开发人员可以比以往任何时候都更快、更高效地构建智能的和可扩展的应用程序。

应用开发要从计算机编程开始说起。计算机编程通常被视为一门需要逻辑和解决问题技能的技术领域,但同时编程的创作过程也是一门艺术,程序员可以如艺术家一般,用富有创造性的精神和产生美好事物的愿望来处理编码。

当艺术和计算机科学结合在一起时,就创造出了独特和美好的东西。

例如,数字艺术是一门利用计算机程序创建令人惊叹的视觉效果和动画的新兴领域。游戏开发也是一种艺术和编程融合的领域,程序员致力于为玩家创建引人入胜的世界和体验。艺术和计算机科学从来都不是毫不相干的两个领域,事实上,这两个领域以独特和令人兴奋的方式相互补充。

亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点这里让它成为你的技术宝库!

改变开发的未来 | 探索无服务器与人工智能的协同效应

抽象是计算机科学的基本概念,是通过主动隐藏不必要的细节而关注于基本特征来简化复杂的系统。使用抽象,让我们可以构建更高效、可扩展且更可靠的系统。计算机科学的核心是解决问题。抽象为我们提供了一种将问题分解为更小、更易于管理的方法,这使我们能够专注于解决问题的特定方面,而不会被不必要的细节绊住脚步。

在计算机编程中,接口就是一个抽象的例子。

接口定义了模型或模块的边界,定义了功能和责任,隐藏了模块的内部实现细节,程序员只需要关心接口不变,而无需理会模块内部如何变化,开发者通过接口将各种部署实施的细节抽离出来,而专注于它提供的行为。这个抽象帮助代码更加灵活和适应不断变化的需求。除了接口,如今云计算为开发者提供更高层次的抽象。

改变开发的未来 | 探索无服务器与人工智能的协同效应

无服务器计算就是一种更高级别的计算抽象。

那为什么会出现这种计算抽象方式,它的出现为开发者解决了什么问题呢?

我们通过亚马逊云科技的计算抽象的演变过程尝试做个解释:

自 2006 年发布 Amazon EC2(EC2 是基于虚拟机的计算实例)以来,亚马逊云科技一直在加速云计算抽象去适应不多拆分的应用和越来越复杂的微服务。

2011 年,亚马逊云科技发布了 Elastic Beanstalk,初步实现了应用部署的自动化,包括容量规划、负载均衡和应用程序健康监控。这种自动化方法减少了基础架构部署的复杂性。

2014 年亚马逊云科技发布了两个重要服务,它们是 Amazon ECS,一个容器服务,Amazon Web Services Lambda,无服务器计算服务。

自此,开发人员可以通过三个层次来调用云计算资源:虚拟机、容器和无服务器。我们认为,无服务器计算比虚拟机和容器提供了更高级别的计算抽象,因为它进一步简化了开发人员配置和管理基础架构资源,实现按需自动扩展和资源交付。

虽然无服务器计算的出现实现了云计算更高级别的抽象,进一步减少了基础架构部署的复杂性,帮助开发人员更专注于编写业务代码。但是,许多开发人员,特别是那些专注于运维的人员,他们仍然在数据库、大数据、机器学习和安全等服务类别的配置和管理上花费大量时间和精力。他们想要自动化基础架构供应的整个生命周期。因此,亚马逊云科技也持续投入资源于其他云资源的深化抽象。

2011 年,亚马逊云科技发布了 CloudFormation,它使开发人员能够以自动化和安全的方式建模和管理基础架构资源。

它支持开发人员使用 JSON 或 YAML 格式的基础架构即代码 (IaC) 模板定义和供应基础架构资源。然后,亚马逊云科技连续推出了 CLI、IDE 工具和 SDK。这些服务抽象了 API 的操作,它们支持开发人员使用熟悉的编程语言和开发工具管理基础架构资源。

2019 年亚马逊云科技又发布了 Amazon Web Service cloud deployment kit (cdk) 。至此,开发人员不仅可以使用熟悉的编程语言和开发工具定义基础架构资源,还可以使用命令和代码。

  • JSON:

    https://en.wikipedia.org/wiki/JSON?trk=cndc-detail

  • YAML:

    https://en.wikipedia.org/wiki/YAML?trk=cndc-detail

  • 基础架构即代码:

    https://en.wikipedia.org/wiki/Infrastructure_as_Code?trk=cndc-detail

改变开发的未来 | 探索无服务器与人工智能的协同效应

我们认为 CDK 实现了云资源抽象的更高级别,它可以实现 3 个级别对资源抽象,分别是 cfn 资源、更高级别的抽象资源以及模式:

改变开发的未来 | 探索无服务器与人工智能的协同效应

Cfn 资源指的是可亚马逊云科技提供的基础云资源,类似于 CloudFormation 提供基本的资源定义和配置。更高级别的抽象资源在 Cfn 资源之上,提供更简洁的定义。

例如,CDK 中的 ec2.Instance 比 Cfn 机器实例提供更简洁的定义。模式利用多个资源提供完整的解决方案。例如,CDK 中的 AutoScalingGroup 模式可定义具有弹性负载均衡器、自动扩展组、启动配置和相关警报的完整架构。CDK 通过提供这 3 个层次的资源抽象,简化了定义和管理基础架构资源的过程。相比于手动使用 CloudFormation YAML 模板或脚本,CDK 使基础架构即代码变得更简单,从而实现了云资源抽象的新高度。

用一个具体的例子详细说明 cdk 是如何抽象资源:

首先,开发人员可以使用 CDK 直接创建 S3 存储桶,这是 Cfn 资源的一种抽象。开发人员也可以使用 CDK 为此 S3 存储桶添加事件处理机制,这是操作抽象,就像高级编程语言中的对象和方法一样。开发人员还可以使用 CDK 定义一种典型的场景来执行特定功能和实现特定模式。

计算抽象的不断演进,以及更多资源的深入抽象,使得应用开发从复杂到简单,从繁重到轻巧,帮助开发者去构建一个现代化的应用。于此同时,现代化应用的构建也离不开流程优化和最佳实践。

基于亚马逊云科技开发团队的自身经验,在现代应用程序构建的三个阶段开发者可以借鉴的最佳实践:

1. 构建阶段

  • 构建弹性应用程序体系结构。根据不同的业务场景,选择将应用容器化改造或构建新的无服务器应用程序;
  • 通过基础架构即代码,将资源管理管理自动化,以实现更高效的操作和维护;
  • 开发过程中设置自动化的发布管道,使用 App Mesh 控制网络流量进行自动应用交付,并确保新功能的安全可靠发布。

2. 程序治理阶段

  • 提升服务可观察性用于实现微服务的治理。可以使用云托管的 Prometheus 服务,并添加 ADOT 来全面监控系统运营;
  • 在应用程序被分解为多个微服务时选择云原生数据库,这有助于实现整体应用程序体系结构的弹性和敏捷性;
  • DevSecOps 对应用程序治理很重要。安全团队应该集成到开发和运营团队中,以防止安全性成为管道中的瓶颈。

3. 构建平台

随着应用程序的持续迭代和优化,我们发现平台是云原生的基础。因为我们很少看到有开发团队能够将已经开始的应用开发进程从头开始。开发者可以使用更多的平台级服务,如数据库、消息、API 网关、安全性等来作为协调开发的共享服务。开发者也可以使用云上提供的易于使用、企业标准的平台级服务 Shared Services Platform (SSP), Amazon Web Service Application Composer和 Amazon Codecatelyst。

  • Application Composer,是一个可视化构建器,开发人员能够从Amazon Web Service 服务组合和配置无服务器应用程序,并支持部署准备好的基础架构即代码。同时,它也是一个工具,允许用户通过组合预构建的组件或从头开始构建新组件来创建自定义应用程序。
  • Amazon Codecatelyst,是一项集成服务,供采用持续集成和部署实践的软件开发团队采用到其软件开发流程中。CodeCatalyst 将开发人员需要的所有工具集中在一处。开发人员可以计划工作、协作编码并使用 CI/CD 管道和工具来构建、测试和部署应用程序,它可以帮助团队快速入门,并帮助开发人员专注于编写业务代码。

编程语言是计算机科学的基础,对于应用开发来说,编程语言的演变是一个引人入胜的旅程。

改变开发的未来 | 探索无服务器与人工智能的协同效应

第一个编程语言 Fortran 于 1950 年由 IBM 开发,用于科学和工程应用程序。20 世纪 70 年代,Dennis Ritchie 在贝尔实验室开发了 C 语言。C 语言成为广泛使用的系统编程语言,至今仍用于操作系统、设备驱动程序和嵌入式系统。20 世纪 80 年代开发了面向对象编程语言,如 C++。20 世纪 90 年代设计了脚本语言,易于学习,可快速编写小程序。今天,Java、C# 和 Swift 等编程语言广泛用于开发桌面和移动应用程序。Python 在数据科学和机器学习领域很流行。

2020 年,人工智能 (AI) 已经改变了许多行业,现在它正在改变我们编写代码的方式。AI 可以帮助开发人员更快、更少错误地编写更好的代码。AI 帮助程序员的方式之一是通过代码补全。AI 还可以帮助检测 bug 和优化代码。AI 正在改变编码的另一种方式是通过代码生成。

对于亚马逊云科技来说,Amazon CodeWhisperer 是一款人工智能编码工具,它可以根据自然语言注释和周围的代码实时在 IDE 中生成整行代码和完整函数代码建议,帮助开发者快速编写安全的代码。

例如:CodeWhisperer 可以自动根据“解析 csv 文件以提取第二个字段并按降序排序”的提示,建议适当的代码和单元测试。CodeWhisperer 可以作为 VS Code 和 IntelliJ 的扩展,并原生在 Amazon Cloud9 和 Amazon Lambda 控制台中使用。

如今,CodeWhisperer 支持 Python、Java、JavaScript、Typescript、C# 和其他 10 种编程语言。CodeWhisperer 也是一个通用的编码工具,并对亚马逊云科技提供的云上服务进行了优化,可以提供高质量的建议。

人工智能编码工具属于生成式 AI,这是最近最流行的技术之一。生成式 AI 是一种可以创建新内容和新想法的 AI,包括对话、故事、图片、视频和音乐。和所有 AI 一样,生成式 AI 由机器学习模型驱动——非常大的模型,预先在大规模数据集上训练。机器学习的最新进展(特别是变压器基神经网络架构的发明)导致包含数十亿参数或变量的模型的出现。生成式 AI 之路漫长,过程中经历了许多突破和挑战。

2019 年,当尖端机器学习模型大约有 3 亿个参数时,目前最先进的模型有超过 500 亿个参数。换句话说,在短短三年内,机器学习的复杂性增加了 1600 倍。许多开发人员将从事基础模型工作。我们大多数人不会参与创建基础模型,但我们可能会参与调优那些基础模型和进行提示工程。

大型语言和基础模型的训练成本非常高,因为我们需要大规模、高速互连的专用硬件群集来训练模型。训练成本在非常集中的位置发生,但在推理方面离我们很近,所以我们必须研究如何优化这些模型,并使用专用硬件进行推理以再次降低成本。

改变开发的未来 | 探索无服务器与人工智能的协同效应

基础模型的规模和通用性使其与传统机器学习模型不同。

传统机器学习模型通常执行特定任务,如分析文本情感、图像分类和趋势预测。对于传统机器学习模型,要实现每个特定任务,使用者需要收集标注的数据,训练模型并部署该模型。对于基础模型,使用者无需为每个模型收集标注的数据和训练多个模型,可以使用同一预训练的基础模型调整各种任务。基础模型也可以使用从头开始训练模型所需的数据和计算量的一小部分,定制执行与其业务不同的特定领域功能。基础模型的潜力令人非常兴奋。但我们仍处于非常早期阶段。虽然 ChatGPT 一直是第一个引起客户注意的广泛生成式 AI 体验,但大多数研究生成式 AI 的人很快意识到,几家公司已经研究基础模型多年。

提示工程是为生成式 AI 模型设计和优化提示或输入查询的过程。这是生成式 AI 模型开发的重要步骤,因为它决定了模型将生成的内容类型。近年来,提示工程领域的研究和开发有很大进展,现在我们看到更高级的技术被用来生成高质量内容。一种方法是使用人工反馈来提高生成内容的质量,允许模型从错误中学习,并随着时间的推移产生更准确、更相关的内容。提示工程对用于特定领域的生成式 AI 模型尤其重要,如医疗保健或金融。通过设计针对这些领域定制的提示,开发人员可以确保模型产生准确、与领域相关的内容。

亚马逊云科技拥有全套的生成式 AI 产品,包括:

改变开发的未来 | 探索无服务器与人工智能的协同效应

  • Amazon Bedrock——这是构建和扩展带有 AI21 实验室、Anthropic、Stability AI 和亚马逊 FMs 的生成式 AI 应用程序的最简单方法。Bedrock 为开发人员提供无服务器的生成式 AI 体验。开发者可以轻松找到合适的模型,快速入门,使用自己的数据私下定制 FMs,并使用熟悉的亚马逊云科技提供的云上工具和功能轻松集成和部署到您的应用程序中,无需管理任何基础设施。Bedrock 使用者可以选择目前可用的一些最尖端的 FMs。这包括 AI21 Labs 的 Jurassic 2、Anthropic 的 Claude、Stability AI 的 Stable Diffusion 和亚马逊的 Titan。

  • Amazon EC2 Trn1n 和 Amazon EC2 Inf2——在云中具有训练和推理的最佳性价比基础设施。当然,亚马逊云科技与 Nvidia 密切合作,为开发人员提供 H100 和 V100 GPU 产品。Titan 是亚马逊的基础模型。这些模型在包含来自不同来源的大量信息的数据集上进行预训练,使客户能够融入更广泛的上下文,并在多个领域和任务上广泛推广。我们最初会有两个模型:第一个是用于摘要、文本生成(例如创建博客文章)、分类、开放式问答和信息提取等任务的生成式 LLM。第二个是将文本输入(单词、短语甚至可能是大段文本)转换为包含文本语义含义的数字表示(称为嵌入)的嵌入式 LLM。虽然此 LLM 不会生成文本,但对于个性化和搜索等应用程序很有用,因为通过比较嵌入,该模型会产生比词匹配更相关、更具上下文的响应。

  • 内置生成式 AI 的服务,如 Amazon CodeWhisperer

我们一起探索了应用开发的演进, 以及无服务器与人工智能的技术创新。无论您是软件开发人员、解决方案架构师、数据科学家还是 DevOps 工程师,让我们一起利用新技术去创造开发的未来。

请持续关注 Build On Cloud 微信公众号,了解更多面向开发者的技术分享和云开发动态!

往期推荐

#Generative AI 新世界

#架构模型最佳实践

#GitOps 最佳实践

作者郑予彬

亚马逊云科技资深开发者布道师,20 年 ICT 行业和数字化转型实践积累,专注于亚马逊云科技云原生、云安全技术领域。18 年架构师经验,致力于为金融、教育、制造以及世界 500 强企业用户提供数据中心建设以及软件定义数据中心等解决方案的咨询及技术落地。

文章来源:https://dev.amazoncloud.cn/column/article/646482761dcde2352204b1a6?sc_medium=regulartraffic&sc_campaign=crossplatform&sc_channel=CSDN 文章来源地址https://www.toymoban.com/news/detail-480089.html

到了这里,关于改变开发的未来 | 探索无服务器与人工智能的协同效应的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【探索AI未来】人工智能技术在软件开发中的应用与革新

    AI是人工智能的缩写,是计算机科学的一个分支,致力于研究和开发能够模拟和执行人类智能任务的技术和系统。AI系统可以通过 学习 、 推理 、 感知 和 自动化 等方式,从大量的数据中 获取信息 、 分析模式 ,然后 做出决策 或 执行特定任务 。 软件开发交互则是指在软件

    2024年02月12日
    浏览(80)
  • Linux与C/C++服务器开发:深入探索网络编程与实用技术(文末送书)

    🎥 屿小夏 : 个人主页 🔥个人专栏 : 书籍推荐 🌄 莫道桑榆晚,为霞尚满天! 本文将探讨构建高性能Linux C/C++服务器的关键技术和最佳实践,包括优化服务器性能、处理并发和并行性、高效管理内存,以及利用高级网络功能等。我们还将推荐一本相关的书籍《Linux C/C++服务

    2024年02月04日
    浏览(46)
  • 语音识别与VC维:改变人工智能的未来

    语音识别(Speech Recognition)是一种人工智能技术,它旨在将人类的语音信号转换为文本或其他形式的数据。这项技术在过去几年中得到了巨大的发展,并成为人工智能领域的一个关键技术。VC维(Vocabulary Coverage Dimension)是一种数学模型,用于描述语言模型的表达能力。在本文中,

    2024年02月19日
    浏览(61)
  • 未来5年内,人工智能将彻底改变你的商业模式

    1、通过在大规模的数据集上进行预训练,使其具备了广泛的语言知识和理解能力。然后,这些模型可以通过在特定任务上进行微调,以适应具体的应用需求。它们通常能够自动从输入数据中 提取特征、学习语义关系 ,并生成具有逻辑和上下文连贯性的输出。 2、在自然语言

    2024年01月25日
    浏览(46)
  • 时代浪潮已经袭来 AI人工智能频频爆火 ChatGPT改变行业未来

    目录 1 人工智能的发展 1.1人工智能发展历程 1.1.1 人工智能的起源 1.1.2 人工智能发展的起起伏伏 1.1.3 人工智能多元化  2 什么是ChatGPT 2.1 ChatGPT的主要功能 2.2ChatGPT对企业的多种优势 2.3 不必担心ChatGPT带来的焦虑 3 人工智能对行业未来的影响 3.1 人工智能的现状  3.2 人工智能的

    2024年02月02日
    浏览(62)
  • 揭秘人工智能:探索智慧未来

    🌈个人主页: 聆风吟 🔥系列专栏: 数据结构、网络奇遇记 🔖少年有梦不应止于心动,更要付诸行动。 人工智能是一种模拟人类智能的技术,目的是让计算机可以像人类一样进行学习、推理、感知、理解和创造等活动。近年来,人工智能技术已经在各个领域取得了显著进

    2024年02月03日
    浏览(98)
  • 云计算探索-初识服务器-下

    经过上一篇文章的学习,现在我们已经知道什么是服务器了。接着让我们来仔细探讨一下服务器的部件组成吧。相信大家对我们的电脑主机都不陌生,服务器的内部构成与电脑主机相似,主要由输入设备、输出设备和主机部分组成,其中CPU、内存和输入/输出设备是服务器的三

    2024年03月28日
    浏览(68)
  • 云计算探索-服务器关键技术

    IPMI技术深度解读 IPMI(Intelligent Platform Management Interface)智能平台管理接口,是一项全球公认的开放标准硬件管理规格。它诞生于1998年,由英特尔、惠普、NEC、戴尔和SuperMicro等行业巨擘联手研发制定,目的在于通过标准化的方式,让管理者能够独立于操作系统,利用服务器内

    2024年04月11日
    浏览(41)
  • 探索KeyarchOS:国内服务器之光

    近年来,我国操作系统技术取得了长足的进步,越来越多的国内操作系统开始崭露头角。KeyarchOS作为浪潮信息自主研发的一款服务器操作系统 , 不仅兼容CentOS生态产品和创新技术产品,还具备性能和稳定性、安全性、可扩展性等特点 。在这里,我们通过案例、技术对比和实

    2024年01月23日
    浏览(44)
  • 服务器显卡:驱动高性能计算和人工智能应用

    一、引言 随着高性能计算和人工智能应用的不断发展,服务器显卡的性能显得越来越重要。服务器显卡是服务器硬件配置中的一个关键组件,它不仅提供基本的图形渲染能力,还在高性能计算和人工智能应用中发挥着重要作用。本文将探讨服务器显卡的重要性和发展趋势,以

    2024年02月09日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包