学习如何通过构建自己的模型来理解生成式人工智能,这些模型可以撰写连贯的文本、生成逼真的图像,甚至创作出栩栩如生的音乐。 《使用PyTorch学习生成式人工智能》 通过从头开始构建工作中的AI模型,教授生成式AI的基本机制。在整个过程中,您将使用直观的PyTorch框架,这对任何使用过Python数据工具的人来说都会非常熟悉。在学习的过程中,您将掌握生成对抗网络(GANs)、Transformer、大型语言模型(LLMs)、变分自编码器、扩散模型、LangChain等的基本知识!在**《使用PyTorch学习生成式人工智能》**中,您将构建这些令人惊叹的模型:
Transformers、生成对抗网络(GANs)、扩散模型、大型语言模型(LLMs)等强大的深度学习模式彻底改变了我们处理文本、图像和声音的方式。生成式AI乍一看像是魔法,但通过一点Python、PyTorch框架和一些实践,您可以在自己的笔记本电脑上构建有趣且实用的模型。本书将向您展示如何实现这些。
《使用PyTorch学习生成式人工智能》 通过帮助您构建自己的工作AI模型来介绍生成式AI的基本机制。您将从使用GAN创建简单的图像开始,接着逐行编写一个语言翻译的Transformer。在充满趣味且引人入胜的项目中,您将训练模型生成动漫图像、撰写海明威风格的文章、创作莫扎特般的音乐等等。您只需掌握Python和一些机器学习的基础知识,其他内容在学习过程中会逐步掌握!
示例代码使用简单的Python。无需具备深度学习经验。
Mark Liu是肯塔基大学金融硕士项目的创始主任。 本书的技术编辑为Emmanuel Maggiori。
第一部分
什么是生成式AI以及为什么选择PyTorch?
使用PyTorch进行深度学习
生成对抗网络:形状和数字生成 第二部分
使用生成对抗网络生成图像
选择生成图像的特征
CycleGAN:将金发转换为黑发
使用变分自编码器生成图像 第三部分
使用递归神经网络进行文本生成
注意力机制和Transformer的逐行实现
训练Transformer翻译英语到法语
从零开始构建生成预训练的Transformer
训练Transformer生成文本 第四部分
使用MuseGAN进行音乐生成
构建并训练音乐Transformer
扩散模型与文本生成图像的Transformers
预训练的大型语言模型和LangChain库 附录A. 安装Python、Jupyter Notebook和PyTorch B. 最低要求的读者资格和深度学习基础
Dr. Mark Liu是肯塔基大学金融硕士项目的终身教授和创始主任。他拥有超过20年的编程经验,并获得了波士顿学院的金融学博士学位。
如何使人工智能具备通用智能,以及这种技术对社会的意义。 人工智能无处不在。你每天接触的越来越多的系统和服务都基于人工智能技术。尽管一些非常新的人工智能系统在某种程度上是通用的,但大多数人工智能仍然是狭窄特定的;也就是说,它只能在特定的上下文中执行单一任务。例如,拼写检查器无法进行数学运算,而世界上最优秀的国际象棋程序也无法玩俄罗斯方块。人类智能则不同。我们能够解决各种任务,包括那些我们以前没有见过的任务。在《人工通用智能》一书中,朱利安·托戈利乌斯探讨了开发更通用人工智能的技术方法,并询问通用人工智能对人类文明的意义。 托戈利乌斯首先举例说明在某些方面表现超人类的狭窄人工智能。有趣的是,已经有超过半个世纪的人工智能系统在某种意义上是超人类的。接着,他通过心理学、动物行为学和计算机科学的定义讨论拥有通用智能意味着什么。然后,他探索了开发更通用人工智能的两大主要技术方法:通过自我监督学习的基础模型,以及在虚拟环境中进行开放式学习。书的最后几章探讨了超越严格技术方面的潜在人工通用智能。这里讨论的问题包括这种通用人工智能是否会具备意识、是否会对人类构成风险,以及它可能如何改变社会。
关于作者
朱利安·托戈利乌斯是纽约大学计算机科学与工程系的副教授,也是游戏人工智能初创公司modl.ai的联合创始人。
本文在空战和远程战争的概念范围中研究了当代使用武装无人机的发展。尽管人们对无人机战争的新颖性或其政治、法律和伦理基础给予了极大关注,但本文将无人机的使用置于 20 世纪空中和远程战略目的的思考脉络之中。通过这一过程,细致入微地阐述了武装无人机如何延续和改变空战和远程战争的实践,并将无人机的使用置于更广泛的历史和当代战争实践之中。
本文分析了远程战争概念发展过程中的三个重要时刻,这些时刻促成了当代无人机应用的概念架构,即战略轰炸理论的发展、冷战期间的核战争规划以及越南战争中的空战实践。随后,将美国武装无人机的使用置于 2007 年至 2011 年在阿富汗、伊拉克和更广泛的反恐战争中采用的反叛乱战略之中。在整个研究过程中,对武装无人机和远程战争的研究做出了三个主要贡献。首先,认为武装无人机的远程性是通过一系列战术、战略和政治决策与实践积极产生的。借鉴风险转移、替代战争和代理战争的概念,认为武装无人机是通过操纵和构建遥远性来参与战争的。其次,认为武装无人机是战争概念的争论和边缘化的长期遗产的一部分,这些争论决定了武装无人机在当代战争中的应用。最后,认为必须从武装无人机对当代战争的战略贡献的角度对其进行评估,从而拒绝将无人机战争特殊化,将其视为一种根本不同的战争实践。
使用突破性的生成式AI工具提高你的生产力、效率和代码质量。 像ChatGPT和GitHub Copilot这样的AI编程工具正在改变我们编写代码和构建软件的方式。《AI驱动的开发者》揭示了使用AI实现可靠结果的实用最佳实践。它打破了炒作的迷雾,展示了这些工具如何通过现实世界的例子简化和增强日常任务,并激发你的创造力。 在《AI驱动的开发者》一书中,你将发现如何最大化利用AI:
AI编程工具为你提供了一位聪明可靠的初级开发者,它快速且渴望帮助你完成每一项任务。《AI驱动的开发者》将帮助你充分发挥这个新助手的作用。你将学习如何使用AI完成从编写模板代码、测试和质量评估、管理基础设施、提供安全保障,甚至是软件设计的所有工作。 购买本书的纸质版即附赠来自Manning Publications的免费电子书(PDF、Kindle和ePub格式)。 关于技术
使用像Copilot和ChatGPT这样的AI工具就像雇佣了一位超级聪明且快速的初级开发者,能够胜任从研究到重构的所有任务。使用AI进行编程可以帮助你更快地工作、编写更好的应用程序,甚至做出目前团队可能无法完成的事情。这本书将向你展示如何实现这些目标。 关于本书
《AI驱动的开发者:使用ChatGPT和Copilot构建软件》详细讲解了如何在现实的软件开发中最大化AI编程工具的影响。在书中,你将通过一个完整的应用程序开发流程,展示如何在每个步骤中引入AI。你将使用ChatGPT和Copilot生成代码和创意,提出预测建议,并开发一个自我文档化的应用程序。你还将学习如何使用AI进行代码测试和解释。 内容包括:
适合读者
适合中级软件开发人员,无需AI经验。 关于作者
Nathan B. Crocker 是Checker Corp的联合创始人兼首席技术官。 本书的技术编辑是Nicolai Nielsen。 目录
第一部分
第二部分3. 使用ChatGPT设计软件 4. 使用GitHub Copilot构建软件 5. 使用GitHub Copilot和Copilot Chat管理数据 第三部分6. 使用大型语言模型进行测试、评估和解释 第四部分7. 编写基础设施代码并管理部署 8. 使用ChatGPT进行安全应用开发 9. GPT随行 附录A. 设置ChatGPT B. 设置GitHub Copilot C. 设置AWS CodeWhisperer 关于作者
Nathan Crocker 是Galaxy Digital LP的董事总经理兼全球核心系统负责人,Galaxy Digital LP 是一家数字资产和加密货币领域领先的金融服务和投资管理公司。
近年来,人工智能在语言能力方面取得了惊人的进步。在深度学习的快速发展推动下,语言 AI 系统的文本生成和理解能力达到了前所未有的高度。这一趋势正推动着新功能、新产品甚至整个行业的发展。通过本书直观的教育性内容,读者将学习如何使用这些能力的实用工具和概念。 您将了解如何使用预训练的大型语言模型处理如文案撰写和摘要生成等应用场景;创建超越关键词匹配的语义搜索系统;并利用现有的库和预训练模型进行文本分类、搜索和聚类。 本书还帮助您:
评论“Jay 和 Maarten 在他们的新书中继续提供了精美的图解和对复杂主题的深刻见解。这本书结合了可运行的代码、时间线和关键论文的参考文献,对于任何想了解大型语言模型构建主要技术的人来说,都是一项宝贵的资源。” ——Andrew Ng, DeepLearning AI 创始人 “我想不出还有哪本书比这本更值得阅读。在每一页上,我都学到了一些在语言模型时代取得成功的关键内容。” ——Josh Starmer, StatQuest “这是一本关于语言模型及其在行业中的实际应用的出色指南。书中对生成、表征和检索应用的高度可视化覆盖,使读者能够快速理解、使用并改进 LLM。强烈推荐!” ——Nils Reimers, Cohere 机器学习总监 | sentence-transformers 创作者 “如果您想快速掌握 LLM 相关的一切,不用再找了!在这本精彩的书中,Jay 和 Maarten 将带您从零基础到掌握大型语言模型的历史和最新进展。书中有直观的解释、真实的案例、清晰的图解和全面的代码实验室,这本书揭开了 Transformer 模型、分词器、语义搜索、RAG 以及许多其他前沿技术的复杂面纱。任何对最新 AI 技术感兴趣的人都必须读这本书!” ——Luis Serrano, PhD, Serrano Academy 创始人兼首席执行官 “这本书是任何对生成式 AI 快速演变领域感兴趣的人必读之作。它聚焦于文本和视觉嵌入,是算法进化、理论严谨性和实用指导的完美结合。无论您是学生、研究人员还是行业专家,这本书都将为您提供提升生成式 AI 知识所需的应用场景和解决方案。非常出色!” ——Chris Fregly, AWS 生成式 AI 解决方案首席架构师 关于作者
Jay Alammar 是 Cohere 的总监和工程研究员(Cohere 是提供大型语言模型 API 的先驱公司)。在这个角色中,他为企业和开发者社区提供使用语言模型的实践指导和教育。通过他流行的 AI/ML 博客,Jay 帮助数百万研究人员和工程师直观地理解从基础(出现在 NumPy 和 pandas 等软件包的文档中)到前沿(如 Transformers、BERT、GPT-3、Stable Diffusion)的机器学习工具和概念。Jay 还共同创建了 Deeplearning.ai 和 Udacity 上的流行机器学习和自然语言处理课程。 Maarten Grootendorst 是荷兰癌症研究中心 (IKNL) 的高级临床数据科学家。他拥有组织心理学、临床心理学和数据科学的硕士学位,利用这些知识向广泛的受众传达复杂的机器学习概念。通过他流行的博客,Maarten 向数百万读者解释了人工智能的基本原理,常常从心理学的角度进行阐述。他是多个依赖大型语言模型的开源包的作者和维护者,如 BERTopic、PolyFuzz 和 KeyBERT。这些包被全球的数据专业人士和组织下载和使用数百万次。
书籍简介
利用生成性AI生成个人助手生成性AI工具能够 seemingly 生成文本、图像,甚至创意,因其日益普及和复杂化而备受关注。这项宝贵技术可以帮助撰写短文和长文内容,制作音频和视频,作为研究助手,以及完成其他各种专业和个人任务。《生成性AI入门》是您利用人工智能提升个人和职业生活的路线图。您将学习如何识别最适合您需求的平台,并编写引导所需内容的有效提示。这本书由《ChatGPT入门》的畅销作者撰写,是您全面深入生成性AI世界的理想起点。
封底内容
负责任地利用AI的力量生成性人工智能(GenAI)正在逐步改变我们的生活——每一个用户提示都是一次转变。这本书是您对这一新技术的明确、可靠的入门指南,提供了对技术运作的简单解释和值得探索的GenAI工具的建议。获取编写有效提示、生成文本输出、制作多媒体内容以及使用AI提升创造力的专业技巧。您甚至可以根据书中的策略以道德和负责任的方式将AI整合到工作流程中。您将如何利用生成性AI?书中内容…
Pam Baker是一位屡获殊荣的自由撰稿人、分析师和作者。她的前作《ChatGPT入门》是关于有效使用ChatGPT平台的第一本实用指南之一。她为《纽约时报》、CNN、Ars Technica、InformationWeek和CSO等多家媒体撰稿。Baker还是LinkedIn Learning的生成性AI讲师。
增强外部数据的大型语言模型(LLMs)在完成现实任务方面展现出卓越的能力。外部数据不仅增强了模型的领域特定专业知识和时间相关性,还减少了幻觉现象,从而提升了输出的可控性和可解释性。将外部数据集成到LLMs中的技术,如检索增强生成(RAG)和微调,正受到越来越多的关注和广泛应用。然而,数据增强LLMs在各个专业领域的有效部署面临重大的挑战。这些挑战涵盖了广泛的问题,从检索相关数据和准确理解用户意图,到充分利用LLMs在复杂任务中的推理能力。我们认为,数据增强LLM应用没有通用的解决方案。在实践中,表现不佳往往源于未能正确识别任务的核心重点,或是因为任务本质上需要多种能力的结合,这些能力必须分解以便更好地解决。在这项调查中,我们提出了一种RAG任务分类方法,根据所需外部数据类型和任务的主要重点将用户查询分为四个层级:
显性事实查询、隐性事实查询、可解释的推理查询和隐含推理查询。我们定义了这些查询层级,提供相关数据集,并总结了应对这些挑战的关键挑战和最有效的技术。最后,我们讨论了将外部数据集成到LLMs中的三种主要形式:上下文、小模型和微调,强调它们各自的优缺点及适合解决的问题类型。本研究旨在帮助读者全面理解和解析构建LLM应用的数据需求和关键瓶颈,提供针对不同挑战的解决方案,并作为系统开发此类应用的指南。
大型语言模型(LLMs)展现出卓越的能力,包括广泛的世界知识和复杂的推理技能。尽管取得了这些进展,在各种专业领域有效部署LLMs仍面临重大挑战。这些挑战包括模型幻觉、与领域特定知识的不一致等问题。整合领域特定数据,特别是无法包含在初始训练语料中的私有或本地数据,对于定制LLM应用以满足特定行业需求至关重要。通过像RAG和微调这样的技术,数据增强的LLM应用在多个方面展示了相较于仅基于通用LLMs构建的应用的优势:
增强的专业性和时效性:用于训练LLMs的数据往往滞后,且可能未能全面覆盖所有领域,特别是用户拥有的专有数据。数据增强的LLM应用通过提供更详细和准确的复杂问题答案,允许数据更新和定制,从而解决了这一问题。
与领域专家的对齐:通过使用和学习领域特定数据,数据增强的LLM应用可以展现更像领域专家(如医生和律师)的能力。
减少模型幻觉:数据增强的LLM应用基于真实数据生成响应,将其反应扎根于事实中,从而显著减少幻觉的可能性。
改进的可控性和可解释性:所使用的数据可以作为模型预测的参考,从而增强可控性和可解释性。 尽管对这些进展充满热情,开发人员通常面临挑战,并需要投入大量人力以满足预期(例如,达到高成功率的问答)。许多研究 [1, 2, 3, 4, 5] 强调了构建基于RAG和微调等技术的数据增强LLM应用所面临的挑战和挫折,尤其是在法律、医疗、制造等专业领域。这些挑战涵盖广泛的范围,从构建数据管道(如数据处理和索引)到利用LLMs的能力实现复杂的智能推理。例如,在金融应用中,通常需要理解和利用高维时间序列数据,而在医疗领域,医疗图像或时间序列医疗记录通常至关重要。使LLMs能够理解这些多样的数据形式是一个反复出现的挑战。另一方面,在法律和数学应用中,LLMs通常难以掌握不同结构之间的长距离依赖关系。此外,根据特定应用领域,对LLM响应的可解释性和一致性有更高的需求。LLMs的固有特性往往表现为低可解释性和高不确定性,这带来了显著的挑战。增强LLMs的透明度并降低其不确定性对于提高其输出的信任度和可靠性至关重要,尤其是在精确性和问责制至关重要的领域。通过与领域专家和开发人员的广泛讨论,并仔细分析他们面临的挑战,我们深刻理解到数据增强的LLM应用并非通用解决方案。现实世界的需求,特别是在专家领域,具有高度复杂性,并且在与给定数据的关系以及所需推理的困难程度上可能有显著差异。然而,开发人员常常未能意识到这些区别,最终导致解决方案充满性能陷阱(就像一个到处漏水的房子)。相反,如果我们能够全面理解不同层级的需求及其独特挑战,我们就可以相应地构建应用,并使应用逐步改善(就像一步一步构建一个坚固可靠的房子)。然而,研究工作和现有相关调查 [6, 7, 8, 9, 10, 11, 12, 13] 通常只关注其中一个层级或特定技术主题。这促使我们编写这份全面的调查,旨在清晰定义这些不同层级的查询,识别与每个层级相关的独特挑战(见图1),并列出相关的研究和应对这些挑战的努力。此调查旨在帮助读者构建数据增强LLM应用的全景视图,并作为系统开发此类应用的手册。
在数据增强LLM应用的领域中,查询可以根据其复杂性和所需数据交互的深度进行分层。这种分层有助于理解LLM生成准确和相关响应所需的不同认知处理水平。从简单的事实检索到对隐含知识的细致解读,每个层级代表了LLM处理任务的复杂性上升。以下是这些层级的详细说明,提供了各阶段所需的独特挑战和能力的洞察。
第一级:显性事实
这些查询直接询问给定数据中明确存在的事实,无需任何额外推理。这是最简单的查询形式,模型的任务主要是定位和提取相关信息。例如,“2024年夏季奥运会将在何处举行?”这是一个目标明确的事实查询。
第二级:隐性事实
这些查询询问数据中的隐性事实,这些事实并不显而易见,可能需要一定的常识推理或基本逻辑推导。所需的信息可能分散在多个部分,或需要简单的推断。例如,“堪培拉所在国家目前的执政党是什么?”可以通过结合“堪培拉在澳大利亚”与“澳大利亚当前执政党”来回答。
第三级:可解释的推理
这些查询不仅要求理解事实内容,还需要掌握和应用特定领域的推理,这些推理与数据的上下文密切相关。这些推理通常在外部资源中明示提供,在通用大型语言模型的预训练阶段中通常不会出现或很少遇到。例如,在制药领域,LLM必须解读FDA指南文件——这代表了FDA的最新观点——以评估特定药物申请是否符合监管要求。同样,在客户支持场景中,LLM必须导航预定义工作流程的复杂性,以有效处理用户询问。在医疗领域,许多诊断手册提供权威和标准化的诊断标准,例如急性胸痛患者的管理指南。通过有效遵循这些外部推理,可以开发一个专门的LLM专家系统来管理胸痛,这涉及理解支持人员与客户互动时的程序步骤和决策树,确保响应不仅准确,还符合公司的服务标准和协议。
第四级:隐含推理
这一类查询深入探讨更具挑战性的领域,其中推理并没有明确记录,而必须从外部数据中观察到的模式和结果中推断出来。这些隐含推理不仅指隐含的推理链和逻辑关系,还包括识别和提取每个特定查询所需的外部推理的内在挑战。例如,在IT运营场景中,云运维团队可能已经处理了众多事件,每个事件都有其独特的情况和解决方案。LLM必须善于从这一丰富的隐性知识库中挖掘,以识别成功的隐性策略和决策过程。同样,在软件开发中,以前bug的调试历史可以提供丰富的隐性见解。虽然每个调试决策的逐步推理可能没有系统记录,但LLM必须能够提取指导这些决策的基本原则。通过综合这些隐含推理,LLM可以生成不仅准确,还反映出经验丰富的专业人员长期以来所积累的无形专业知识和解决问题的方法。
总之,查询的层级分类反映了复杂性梯度和LLM所需理解的类型。如图1所示,并在图2中举例,前两个层级——显性事实和隐性事实,侧重于检索事实信息,无论是直接陈述的还是需要基本推断的。这些层级挑战着LLM提取和综合数据成连贯事实的能力。相反,后两个层级——可解释的推理和隐含推理,则将重点转向LLM学习和应用数据背后推理的能力。这些层级要求更深层次的认知参与,LLM必须与专家思维对齐或从非结构化历史数据中提取智慧。根据这一标准,常见的事实查询数据集的分类见表1。
每个层级都有其独特的挑战,因此需要量身定制的解决方案来有效应对它们。在接下来的章节中,我们将深入探讨这些层级的复杂性,探索使LLM能够在各种查询类型中导航数据增强应用的具体策略和方法。这一探索不仅将突显LLM当前的能力,还将揭示该领域的持续进展和潜在未来发展。
进入奇妙的图算法世界,在这里你将学习如何以及何时应用这些非常有用的数据结构,来解决各种令人着迷(甚至神奇)的计算问题。 《有趣的图算法》通过幽默、富有想象力的示例以及实用的Python实现,带来对复杂概念的清新诠释,揭示基于图的解决问题方法在现实世界中的强大和多样性。通过清晰的图解、有趣的示例和Python代码,你将为在自己的项目中解决图问题打下坚实的基础。 探索一系列精心构建的场景,其中包括:
从基础的图结构到高级主题,你将能够:
深入学习拓扑排序、最小生成树、强连通分量和随机游走。应对图着色和旅行商问题等挑战。 准备好通过图的视角看待世界吧——在这里,连接揭示洞见,算法打开新的可能性。
“图可能是世界上最自然的数据结构。这本全面的书揭示了许多迷人的图算法的魔力和奥秘,这些算法使得从图中获取强大应用和洞见成为可能。” ——Kirk Borne,DataPrime首席科学官,博士
Jeremy Kubica 是一位在计算机科学与天体物理学交叉领域工作的工程总监。他拥有卡内基梅隆大学的机器人学博士学位和康奈尔大学的计算机科学学士学位。他是《计算机科学侦探》、《有趣的数据结构》(均由No Starch Press出版)和《计算童话》的作者。
与《AI智能体的崛起》一起探索未来科技
在《AI智能体的崛起》中,您将探索人工智能(AI)、区块链和量子计算如何彻底改变世界。本书不仅仅停留在理论层面,还提供了一个实用且富有洞察力的旅程,深入探讨这些颠覆性技术的可能性和挑战。 凭借在人工智能、网络安全和量子计算领域多年的经验,Petar Radanliev博士旨在将学术研究与现实世界的应用相结合。无论您是希望应用前沿解决方案的专业人士,还是渴望抢占先机的学生,本书都将为您提供宝贵的洞察力,帮助您了解不断演变的科技格局。 您将学到的内容
AI、区块链和量子计算如何协同工作,变革行业 * 这些集成技术的最新发展和实际应用 * 高级AI智能体的伦理、法律和社会影响
《AI智能体的崛起》提供了这些互相关联技术的全貌,使读者能够轻松理解复杂话题。本书不仅帮助您理解理论,还为您提供了在现实场景中应用这些理论的工具。 主要特色
复习问题与章节总结:加强关键概念的理解,巩固核心知识。 * 真实案例研究:了解这些技术在不同行业中的应用。 * 动手练习:通过交互式工具和练习,获得实战经验,提升技能。
本书旨在激励和启发读者,为您提供知识和信心,以便在AI、区块链和量子计算的快速发展领域中导航并取得成功。
2024年《政府工作报告》首次提出“人工智能+”战略行动,旨在推动人工智能赋能各行各业。以大模型为代表的新一代人工智能技术迅猛发展,已成为软件工程领域智能化转型的关键驱动力,为软件开发、测试等环节注入新智力。智能化软件开发工具凭借其强大的代码理解和生成能力,有效降低了开发人员的技术门槛,并提高开发效率和质量,进一步推动软件开发领域的进步。 然而,在软件开发的智能化能力建设和应用过程中,仍面临诸多挑战,如代码大模型选择困难、开发工具的工程化建设复杂、智能化能力建设无参考、开发场景选择和落地难,以及与现有开发工具或流水线的集成难等问题。为此,本指南旨在为正在进行软件开发智能化转型的企业提供一份实用指南,为企业制定落地策略、建设智能开发能力体系提供有力参考。本指南系统梳理了智能化软件开发的发展历程、现状和面临的挑战,结合大模型和软件开发特点,提出了具体的落地方向、路径和框架,详细阐述了落地所需的核心能力和使能能力,并对多个行业的落地案例进行了深入剖析,最后对智能化软件开发的发展趋势进行了展望。 由于大模型等人工智能技术产业仍处于快速发展阶段,智能开发相关的技术产品、服务和应用也在不断演变,我们的认识将随着产业实践而不断深化,报告存在的不足之处,恳请大家批评指正。 智能开发发展概述 随着人工智能技术的不断进步,特别是大模型能力的持续提升,软件工程领域正迎来前所未有的变革,软件开发的流程和模式正被重新定义,智能化进程显著加速。本章将简要回顾软件工程的发展历程,重点介绍软件工程3.0的发展特点,以及智能化软件开发(以下简称:智能开发)领域发展现状,并深入探讨智能化能力为软件开发带来的价值提升,最后梳理落地挑战。 软件工程步入3.0时代 软件工程发展历程 软件工程自1968年诞生以来,其发展历程可分成三个阶段,包括软件工程1.0、软件工程2.0和软件工程3.0。
生成式人工智能(GAI)和大语言模型(LLM)是以无监督或半监督方式运行的机器学习算法。这些算法利用现有内容,如文本、照片、音频、视频和代码,生成新内容。其主要目标是生成真实且新颖的材料。此外,它们在生成新材料的数量上没有限制。新材料可以通过应用程序接口(APIs)或自然语言接口生成,例如OpenAI开发的ChatGPT和Google开发的Bard。 生成式人工智能(AI)领域的独特之处在于其发展和成熟过程极为透明,公众可以广泛观察其进展。目前的人工智能时代受到有效利用其能力以提升企业运营的要求影响。具体而言,属于生成式AI范畴的大语言模型(LLM)能力,具有重新定义创新和生产力极限的潜力。然而,企业在努力引入新技术的同时,可能会危及数据隐私、长期竞争力和环境可持续性。 本书深入探讨生成式人工智能(GAI)和LLM。它考察了生成AI模型的历史与演变发展,以及由这些模型和LLM产生的挑战和问题。本书还讨论了基于生成AI的系统的必要性,并探讨了为生成AI模型开发的各种训练方法,包括LLM预训练、LLM微调和基于人类反馈的强化学习。此外,它探讨了与这些模型相关的潜在用例、应用和伦理考虑。本书最后讨论了生成AI的未来方向,并呈现了多项案例研究,突显生成AI和LLM的应用。
本指南旨在帮助数据科学家、机器学习工程师和机器学习/AI 架构师探索信息检索与 LLMs 的集成及其相互增强。特别聚焦于 LLM 和检索增强生成(RAG)技术在信息检索中的应用,通过引入外部数据库与 LLMs 的结合,提高检索系统的性能。
基础知识入门:从 LLMs 的基本概念开始,深入了解信息检索的基本原理,以及 RAG 技术对信息检索的显著影响。 * LLM 与信息检索系统的结合:探讨如何通过集成外部数据库与 LLMs 来增强检索系统,实现更高效的企业数据搜索、推荐和 AI 助手解决方案。
LLM 和 RAG 在高级搜索与信息检索系统中的应用原理:
理解如何利用 LLM 和 RAG 技术来构建更智能的搜索和信息检索系统。 1. 掌握 RAG 的复杂性与检索生成技术:
学习 RAG 中基于检索的生成技术,特别是应用于 AI 助手场景,以实现更自然的交互和回答生成。 1. LLM 和 RAG 的评估方法:
了解如何建立精确性和效率的基准,并遵循合规指南,确保生成内容的准确性和质量。 1. 构建基于 LLM 和 RAG 的搜索引擎与推荐系统:
利用 LLM 模型的表征能力和 RAG 强大的检索与排序机制,打造智能搜索和推荐系统。 1. 定制化 AI 助手的开发:
学习如何使用预训练的 GPT 模型开发定制化的 AI 助手,并提升客户支持和任务自动化。 1. 实施个性化聊天机器人:
创建能够与用户互动的自定义聊天机器人,提升客户支持,并提供个性化体验。
通过本指南,您将全面掌握 LLM 和 RAG 技术在信息检索系统中的应用技巧,掌握构建高效、个性化的 AI 解决方案的核心技能。
生产型作战模型和模拟不具备对指挥结构中的多个单位进行自动规划的能力,也缺乏对火力压制等效果进行前瞻性推理的工具。这些差距限制了建模战斗计划的速度,使其无法满足人类细致输入的要求。本文了提出了一个自动化作战规划系统的架构框架,主张采用职责分离的方法--例如在机动和火力之间--来设计和管理复杂的规划系统。然后,描述了自动火力支援计划组件的概念模型,该组件在连续时间计划空间中使用贪婪的最佳优先搜索,在多项式时间内降低给定机动计划的风险。介绍了该组件在符合规划框架的架构中的实现。然后,介绍了一种定量和定性的方法来验证和确认计划模型,并将其应用于火力支援计划的实施。结果表明,在合理的运行时间后,自动火力支援计划能有效改善模拟战斗结果,并具有一些现实的突发特性。除了新颖的规划算法外,本研究还提供了设计原则、评估技术和有前景的结果,以指导战斗模型行为自动化的改进。
图 1. 概念规划框架
当今的战斗模拟软件无法自动生成逼真的作战计划。取而代之的是人工场景设计和操作。对于基于建模与仿真(M&S)的分析而言,完成一项研究所需的大部分时间都花在了作战计划的制定上。这就限制了研究的场景数量,只能是少数几个。对于基于 M&S 的训练而言,缺乏自动规划能力会增加对人类操作员的要求,从而限制了用户从基于计算机的实战训练替代方案中寻求的效率收益。在军事和视频游戏研究中出现了一些自动化机动规划的例子,但迄今为止,它们还没有在生产型军事模拟中得到应用。目前还没有实际的自动火力支援规划能力得到展示。
本文提出了自动化作战计划系统(ABPSs)的架构框架(图 1),主张采用职责分离的方法(例如,在机动和火力之间)来设计和管理复杂的计划系统。该框架的主要组成部分包括
规划数据:任务、方法(实现任务的规则)以及赋予规划特征的衍生模型
计划输入:从作战模拟环境和用户获取的数据,用于为 ABPS 制定计划问题
计划生成器:实际生成作战计划的算法、启发式方法、数据结构和接口
该框架以一种自然的方式划分了参与自动化作战计划的三类人员的职责:情景设计人员,负责为特定的 M&S 问题配置计划输入;行为开发人员,负责编写和更新计划数据,以模拟不同的战术;以及自动化计划开发人员,负责计划生成器的内部工作。该框架还引入了规划风格,将各单元限制在任务、方法和派生模型的适当子集内,以控制可从规划数据存储中获得的选项,而随着时间的推移,规划数据存储可能会变得相当庞大。
计划生成器包括一个计划控制器,它调用多个任务规划器和增强规划器子组件来生成部分计划。任务规划器试图生成部分计划,从质量上实现规划输入中提供的要求任务,并在可能的情况下选择成本较低的方案。改进规划员根据一个或多个目标函数扩展或修改局部计划,从数量上对其进行改进。任务规划员和改进规划员分别以解决问题和优化的方式进行作战规划。每个任务规划员或增强规划员都专注于规划的一个特定方面,如机动、火力或维持。计划生成器最终会将其内部计划表示编译成可在目标战斗模拟环境中执行的格式。
在学术文献和工业界出现了一些机动计划器的实例--例如,William van der Sterren 为虚拟战斗空间(VBS)设计的计划攻击系统。这类工具可用作 ABPS 的任务规划器。
现代军事战术依靠火力压制敌人的威胁。虽然目前使用的一些作战模型包括压制效果,但还没有自动规划工具可将火力支援任务添加到机动计划中。提出了一个火力支援计划器的概念模型,它可以作为 ABPS 的增强计划器。火力支援计划器使用风险区间(图 2)作为主要数据元素。每个风险区间对应友军部队暴露在敌军部队潜在火力下的一段连续时间。每个风险区间的数字代价是友军部队在穿越相应路径时可能遭受的预期伤亡人数。这一数值可通过对威胁的杀伤率进行时间积分来计算。火力支援任务是一项指令,要求一个单位移动到特定地点,在一段时间内压制单个威胁单位,暂时降低威胁的杀伤率。每项火力支援任务一旦添加到计划中,就会降低与其时间间隔重叠的所有风险间隔的数值成本。
图 2. 风险区间
火力支援计划的计划成本被定义为该计划所有风险区间成本的总和,而候选火力支援任务的得分则是如果该任务成为下一个新增任务,其对该计划成本的潜在减少量。根据这一方案提出了一种贪婪的最佳优先算法来构建火力支援计划。在构建火力支援任务选项时,尝试将每种火力支援资产应用到每个风险区间,并使用多点战术寻路来确定位置、路线和时机。通过使用计划空间表示法,能够在计划的最关键时刻实施压制;并不局限于按时间顺序向前或向后规划。
为了实现火力支援计划,首先在 Unity 3D 开发平台上建立了一个相对简单的战斗模型,称为 Wombat XXI。它包括一个从真实世界数据导入的多边形地形高程模型、分层组织的单位、实体移动编队、取决于射程的命中概率,以及一个类似于 COMBATXXI(一种生产型分析战斗模拟系统)的压制模型。根据上述概念规划框架构建了 ABPS 原型。它的单一任务规划器以分层任务网络表示法为指定单位构建机动计划,大量使用用户输入。其 “增强计划器 ”使用火力支援计划器算法,在计划中添加移动和压制任务,消耗有能力单位的未执行任务时间间隔,以降低敌方火力风险。手动 "机动计划器有助于为火力支援计划器构建特定的测试场景。
采用定量和定性的方法来验证和确认火力支援计划的实施。图 3 所示的流程本身可用于今后类似性质的开发工作。定量测试可为定性测试中的观察结果提供更有力的证据;定性测试可检查定量测量结果是否有现实可信的解释。
图 3. 验证和确认流程
定量结果(表 1)表明,自动火力支援计划比人类设计的简单计划能产生更好的模拟作战结果,尽管如果时间不受限制,人类最终也能找到更好的计划。实际运行时间从排级场景的不到一秒到营级场景的几分钟不等。如果在单独的线程中运行,该算法的可扩展性足以满足排级和连级规模的在线实时应用,而对于离线规划,它的速度明显快于人工输入。定性分析揭示了自动计划中一些有趣的突发特性,潜在用户须考虑对其进行验证。还发现了当前版本中的一些不足之处,实施时需要处理或接受这些不足之处。
表 1. 定量测试结果
除了新颖有效的火力支援规划算法和功能实现外,这项研究还提供了设计原则、评估技术和有希望的结果,以指导改进作战模型的自动作战规划。将这一能力引入生产系统的条件已经成熟。虽然这需要前期投资和持续的维护与管理,但已有足够的成熟技术来提高场景设计的效率。通过允许人工仔细审查自动化计划,可以在完善自动化的同时建立建模界的信任。一旦达到足够的舒适度和理解程度,在线重新规划可能会彻底改变战斗模型在各种不同应用中的使用方式。
选择要攻击的威胁是战场上最重要的决策之一。该决策问题表现为武器-目标分配问题(WTA)。在以往的研究中,动态编程、线性规划、元启发式和启发式方法已被用于解决这一问题。然而,以往的研究因建模过于简化、计算负担重、缺乏对干扰事件的适应性以及问题规模变化时的重新计算等问题而受到限制。为了克服这些局限性,本研究旨在利用强化学习和图神经网络来解决 WTA 问题。所提出的方法反映了现实世界的决策框架--OODA-loop(观察-定向-决策),具有很高的实用性。在各种环境中进行了实验,并通过与现有的启发式和元启发式方法进行比较,证明了所提方法的有效性。所提出的方法为战术指挥与控制中的智能决策引入了一种开创性的方法,传统上被认为是人类专家的专属方法。
本研究将强化学习与图形神经网络(GNN)相结合。强化学习与 GNN 的结合是最有前途的领域之一,因为 GNN 能有效地表示复杂的交互作用。为了应用强化学习,DWTA 被建模为 POMDP(部分可观测马尔可夫决策过程)。为了优化强化学习智能体的策略,采用了近端策略优化(PPO)。学习环境是一个仿真模型,反映了对真实世界的详细描述。本研究的贡献如下。
本研究利用深度强化学习和图神经网络在各种情况下做出优化决策,为复杂性和不确定性主导的情况提供丰富的目标导向表征。
图神经网络有助于提高我们方法的可扩展性,从而增强其实际用途。
提出的方法通过人工智能技术的增强,为传统上由人类专家主导的领域(如战术指挥和控制)的决策制定带来了创新。
从整数编程中定义的问题出发,利用马尔可夫状态的理论基础和图建模技术系统地构建了 POMDP。与依靠直觉和经验法则推导 POMDP 的传统方法相比,这是一种更有条理的方法,更容易看出 POMDP 与所定义问题之间的联系。
摘要—大型模型智能体(LM agents),由如 GPT-4 和 DALL-E 2 等大型基础模型驱动,代表了实现人工通用智能(AGI)的重要一步。LM 智能体展示了自主性、具身性和连接性等关键特征,使其能够在物理、虚拟和混合现实环境中无缝与人类、其他智能体及周围环境互动。本文提供了对 LM 智能体最前沿技术的全面调查,重点讨论其架构、合作范式、安全性、隐私和未来前景。具体而言,我们首先探讨 LM 智能体的基础原则,包括一般架构、关键组件、使能技术和现代应用。随后,我们从数据、计算和知识的角度讨论 LM 智能体的实际合作范式,以促进其连接智能。此外,我们系统分析了与 LM 智能体相关的安全漏洞和隐私泄露,特别是在多智能体环境中。我们还探讨了其底层机制,并回顾现有和潜在的对策。最后,我们概述了构建稳健和安全的 LM 智能体生态系统的未来研究方向。 关键词—大型模型、人工智能智能体、具身智能、多智能体合作、安全、隐私。
I. 引言 A. 大型模型智能体的背景 在1950年代,艾伦·图灵提出了著名的图灵测试,以评估机器是否能够表现出与人类相当的智能,为人工智能(AI)的发展奠定了基础。这些被称为“智能体”的人工实体,是AI系统的核心组件。一般来说,AI智能体是能够理解并响应人类输入、感知环境、做出决策并在物理、虚拟或混合现实环境中采取行动以实现其目标的自主实体[1]。AI智能体的范围从遵循预定义规则的简单机器人到通过经验学习和适应的复杂自主实体[2]。它们可以是基于软件的或物理实体,能够独立运行或与人类或其他智能体合作。 自20世纪中叶以来,AI智能体的发展取得了显著进展[3]–[5],如深蓝、AlphaGo和AlphaZero,如图1所示。尽管取得了这些进展,之前的研究主要集中在精细化专业能力上,如符号推理或在特定任务(如围棋或国际象棋)中表现优异,往往忽视了在AI模型中培养通用能力,如长期规划、多任务泛化和知识保留。创造能够灵活适应广泛任务和复杂环境的AI智能体的挑战仍然在很大程度上未得到探索。为了进一步推动AI智能体的边界,开发强大的基础模型以整合这些关键属性是至关重要的,为下一代AI智能体提供多功能的基础。 随着大型模型(LMs)的兴起,也称为大型基础模型,如OpenAI的GPT-4、Google的PaLM 2和Microsoft的Copilot,LMs为全面增强AI智能体的内在能力开辟了新可能性[6][7]。如图2所示,一个LM智能体,无论是软件形式还是具身形式,通常由四个关键组件组成:规划、行动、记忆和互动。这些智能体能够在物理、虚拟或混合现实环境中无缝操作[1][8]–[10]。特别是,LMs作为AI智能体的“大脑”,赋予它们在人机互动(HMI)、复杂模式识别、知识保留、推理、长期规划、泛化和适应性方面强大的能力[9]。此外,通过先进的推理和少量/零样本规划技术,如思维链(CoT)[11]、思维树(ToT)[12]和反思[13],LM智能体能够形成复杂的逻辑连接,有效解决复杂的多面任务。例如,AutoGPT[14],一个有前途的LLM智能体原型,可以将复杂任务分解为几个可管理的子任务,从而促进结构化和高效的问题解决。将LM与检索增强生成(RAG)技术[15]结合,进一步使智能体能够访问外部知识源,并基于检索的信息提高其响应的准确性。此外,LM智能体可以灵活集成多种LM,包括大型语言模型(LLM)和大型视觉模型(LVM),以实现多方面的能力。 LM智能体被视为实现人工通用智能(AGI)的一重要步骤,并广泛应用于网络搜索[16]、推荐系统[17]、虚拟助手[18][19]、元宇宙游戏[20]、机器人技术[21]、自动驾驶汽车[22]和电子设计自动化(EDA)[23]等领域。据MarketsandMarkets[24]报告,2023年全球自主AI和自主智能体市场的估值为480亿美元,预计到2028年将以43%的年均增长率增长,达到285亿美元。LM智能体引起了全球关注,包括Google、OpenAI、Microsoft、IBM、AWS、Oracle、NVIDIA和百度等领先科技巨头正在进入LM智能体行业。
B. LM智能体的路线图和关键特征 图3描绘了LM智能体的未来愿景,其特征为三个关键属性:自主性、具身性和连接性,为实现AGI铺平道路。
C. 保障连接LM智能体的动机 尽管LM智能体的未来光明,但安全和隐私问题仍然是其广泛采用的重大障碍。在LM智能体的整个生命周期中,可能会出现多种漏洞,从对抗样本[31]、智能体中毒[32]、LM幻觉[33]到普遍的数据收集和记忆[34]。
D. 相关调查与贡献 近年来,LM智能体在学术界和工业界引起了广泛关注,导致多角度探索其潜力的各种研究。该领域的一些重要综述论文如下:Andreas等人[29]提出了AI智能体构建的玩具实验和关于建模交流意图、信念和愿望的案例研究。Wang等人[39]识别了基于LLM的自主智能体的关键组成部分(即,个人资料、记忆、规划和行动)以及主观和客观评估指标。此外,他们讨论了LLM智能体在工程、自然科学和社会科学中的应用。Xi等人[9]提出了一个LLM智能体的一般框架,包括大脑、行动和感知。此外,他们探讨了在单智能体、多智能体和人机协作以及智能体社会中的应用。Zhao等人[2]提供了LLM的系统综述,涵盖了预训练、适应调优、利用和能力评估。此外,介绍了背景信息、主流技术和LLM的关键应用。Xu等人[40]对移动网络中的边缘云AI生成内容(AIGC)服务的关键概念、架构和指标进行了教程,并识别了若干用例和实施挑战。Huang等人[1]提供了虚拟/物理环境中AI智能体的分类,讨论了AI智能体的认知方面,并调查了AI智能体在机器人、医疗保健和游戏中的应用。Cheng等人[10]回顾了LLM智能体的关键组成部分(包括规划、记忆、行动、环境和反思)及其潜在应用。还回顾了多智能体系统中的规划类型、多角色关系和沟通方法。Masterman等人[8]提供了工业项目中单智能体和多智能体架构的概述,并展示了现有研究的见解和局限性。Guo等人[41]讨论了基于LLM的多智能体系统的四个组成部分(即接口、建模、通信和能力获取),并在问题解决和世界模拟方面提出了两条应用线。Durante等人[42]介绍了多模态LM智能体及其训练框架,包括学习、行动、认知、记忆、行动和感知。他们还讨论了智能体的不同角色(例如,具身、模拟和知识推断),以及在游戏、机器人、医疗保健、多模态任务和自然语言处理(NLP)等不同应用中的潜力和实验结果。Hu等人[20]概述了基于LLM的游戏智能体的六个关键组成部分(即感知、思维、记忆、学习、行动和角色扮演),并回顾了六种类型游戏中现有的基于LLM的游戏智能体。Xu等人[43]提供了关于游戏中LM智能体的启用架构和挑战的全面综述。Qu等人[44]对将移动边缘智能(MEI)与LLM整合进行了全面综述,强调在网络边缘部署LLM的关键应用以及在边缘LLM缓存、传输、训练和推理中的最新技术。
E. 论文组织 本文其余部分组织如下。第二节讨论单个LM智能体的工作原理,第三节介绍连接LM智能体的合作范式。第四节和第五节分别介绍LM智能体的安全和隐私威胁的分类,以及最新的对策。第六节概述LM智能体领域的开放研究问题和未来方向。最后,第七节给出结论。图4描绘了本综述的组织结构。
II. 大型模型智能体:工作原理 在本节中,我们首先介绍现有的LM智能体标准。然后,讨论连接LM智能体的一般架构,包括关键组件、通信模式、主要特征和启用技术。接下来,介绍典型原型并讨论LM智能体的现代应用。