《大模型应用开发动手做AI Agent》封面

内容简介

人工智能时代一种全新的技术Agent正在崛起。这是一种能够理解自然语言并生成对应回复以及执行具体行动的人工智能体。它不仅是内容生成工具,而且是连接复杂任务的关键纽带。本书将探索Agent的奥秘,内容包括从技术框架到开发工具,从实操项目到前沿进展,通过带着读者动手做7个 功能强大的Agent,全方位解析Agent的设计与实现。本书最后展望了Agent的发展前景和未来趋势。

本书适合对Agent技术感兴趣或致力于投身该领域的研究人员、开发人员、企业负责人,以及高等院校相关专业师生等阅读。读者将跟随咖哥和小雪的脚步,踏上饶有趣味的Agent开发之旅,零距离接触GPT-4模型、OpenAI API和Assistants、LangChain、LlamaIndex和MetaGPT等尖端技术,见证Agent在办公自动化、智能调度、知识整合以及检索增强生成(RAG)等领域的非凡表现,携手开启人工智能时代的无限可能,在人机协作的星空中共同探寻那颗最闪亮的Agent之星!

作者简介

黄佳

笔名咖哥,新加坡科技研究局人工智能研究员。他在NLP、大模型、Al in MedTech、Al in FinTech等领域积累了丰富的项目经验。著有《GPT图解 大模型是怎样构建的》《零基础学机器学习》《数据分析咖哥十话:从思维到实践促进运营增长》等图书。同时他还在极客时间、CSDN和深蓝学院开设专栏和课程,主要有“LangChain实战课”“零基础实战机器学习”“A 应用实战课”“大模型应用开发实战课’和“生成式预训练语言模型:理论与实战”等。他乐于保持好奇的心、拥抱变化、持续学习,希望借助AI的“慧眼”和“注意力”来观察世界,并以轻松幽默的方式分享知识,收获本真的快乐。

目录

第1章何为Agent,为何Agent1
1.1大开脑洞的演讲:Life3.02
1.2那么,究竟何为Agent5
1.3Agent的大脑:大模型的通用推理能力9
1.3.1人类的大脑了不起10
1.3.2大模型出现之前的Agent11
1.3.3大模型就是Agent的大脑12
1.3.4期望之峰和失望之谷14
1.3.5知识、记忆、理解、表达、推理、反思、泛化和自我提升18
1.3.6基于大模型的推理能力构筑AI应用22
1.4Agent的感知力:语言交互和多模态23
1.4.1语言交互能力23
1.4.2多模态能力24
1.4.3结合语言交互和多模态能力25
1.5Agent的行动力:语言输出和工具使用25
1.5.1语言输出能力25
1.5.2工具使用能力26
1.5.3具身智能的实现27
1.6Agent对各行业的效能提升28
1.6.1自动办公好助手29
1.6.2客户服务革命29
1.6.3个性化产品推荐30
1.6.4流程的自动化与资源的优化30
1.6.5医疗保健的变革31
1.7Agent带来新的商业模式和变革32
1.7.1Gartner的8项重要预测33
1.7.2Agent即服务34
1.7.3多Agent协作36
1.7.4自我演进的AI37
1.7.5具身智能的发展38
1.8小结39
第2章基于大模型的Agent技术框架41
2.1Agent的四大要素41
2.2Agent的规划和决策能力44
2.3Agent的各种记忆机制45
2.4Agent的核心技能:调用工具46
2.5Agent的推理引擎:ReAct框架49
2.5.1何为ReAct50
2.5.2用ReAct框架实现简单Agent53
2.5.3基于ReAct框架的提示56
2.5.4创建大模型实例60
2.5.5定义搜索工具61
2.5.6构建ReActAgent62
2.5.7执行ReActAgent63
2.6其他Agent认知框架66
2.6.1函数调用66
2.6.2计划与执行66
2.6.3自问自答66
2.6.4批判修正66
2.6.5思维链67
2.6.6思维树67
2.7小结68
第3章OpenAIAPI、LangChain和LlamaIndex70
3.1何为OpenAIAPI71
3.1.1说说OpenAI这家公司71
3.1.2OpenAIAPI和Agent开发76
3.1.3OpenAIAPI的聊天对话示例78
3.1.4OpenAIAPI的图片生成示例85
3.1.5OpenAIAPI实践89
3.2何为LangChain91
3.2.1说说LangChain92
3.2.2LangChain中的六大模块98
3.2.3LangChain和Agent开发100
3.2.4LangSmith的使用方法102
3.3何为LlamaIndex105
3.3.1说说LlamaIndex105
3.3.2LlamaIndex和基于RAG的AI开发106
3.3.3简单的LlamaIndex开发示例110
3.4小结113
第4章Agent1:自动化办公的实现——使用AssistantsAPI和DALL·E3模型创作PPT115
4.1OpenAI公司的Assistants是什么117
4.2不写代码,在Playground中玩Assistants118
4.3AssistantsAPI的简单示例123
4.3.1创建助手124
4.3.2创建线程128
4.3.3添加消息130
4.3.4运行助手132
4.3.5显示响应138
4.4创建一个简短的虚构PPT141
4.4.1数据的收集整理142
4.4.2创建OpenAI助手142
4.4.3自主创建数据分析图表144
4.4.4自主创建数据洞察149
4.4.5自主创建页面标题152
4.4.6用Dall-E为主题配图152
4.4.7自主创建PPT154
4.5小结160
第5章Agent2:多功能选择的引擎——通过FunctionsCalling调用函数161
5.1OpenAI中的Functions163
5.1.1什么是Functions163
5.1.2Function的说明文字很重要164
5.1.3Function定义中的Sample是什么?165
5.1.4什么是FunctionsCalling166
5.2在OpenAIPlayground中定义Function168
5.3用AssistantsAPI来实现FunctionsCalling173
5.3.1创建能使用Functions的Assistant175
5.3.2不调用Function,直接运行Assistant177
5.3.3在Run进入requires_action状态之后跳出循环185
5.3.4拿到Assistant返回的元数据信息186
5.3.5利用Assistant的返回信息调用函数187
5.3.6通过submit_tool_outputs提交结果完成任务190
5.4用ChatCompletionAPI来实现ToolCalls196
5.4.1初始化对话和定义可用函数197
5.4.2第一次调用大模型,向模型发送对话及工具定义,并获取响应198
5.4.3调用模型选择的工具并构建新消息201
5.4.4第二次向模型发送对话以获取最终响应204
5.5小结205
第6章Agent3:推理与行动的协同——使用LangChain中的ReAct框架实现自动定价207
6.1复习一下ReAct推理框架208
6.2LangChain中ReActAgent的实现210
6.3LangChain中的工具和工具包212
6.4通过create_react_agent创建鲜花定价Agent215
6.5深挖AgentExecutor的运行机制221
6.5.1在AgentExecutor中设置断点221
6.5.2第一轮思考:模型决定搜索224
6.5.3第一轮行动:工具执行搜索233
6.5.4第二轮思考:模型决定计算239
6.5.5第二轮行动:工具执行计算241
6.5.6第三轮思考:模型完成任务245
6.6小结249
第7章Agent4:计划和执行的解耦——使用LangChain中的Plan-and-Execute智能调度库存251
7.1Plan-and-Solve策略的提出252
7.2LangChain中的Plan-and-ExecuteAgent257
7.3用Plan-and-ExecuteAgent实现物流管理258
7.3.1为Agent定义一系列进行自动库存调度的工具258
7.3.2创建Plan-and-ExecuteAgent并尝试一个“不可能完成”的任务260
7.3.3改动一下请求,Agent就会成功完成任务268
7.4从单Agent到多Agent273
7.5小结273
第8章Agent5:知识的提取与整合——使用LlamaIndex实现检索增强生成Agent275
8.1何为检索增强生成276
8.1.1提示工程vsRAGvs微调278
8.1.2技术角度的检索Pipeline280
8.1.3用户视角的RAG流程281
8.2RAG和Agent282
8.3用LlamaIndex的ReActAgent来实现花语秘境财报检索284
8.3.1获取并加载电商文档284
8.3.2将文档转换为嵌入向量285
8.3.3构建查询引擎和工具287
8.3.4配置文本生成引擎大模型288
8.3.5创建Agent查询财务信息288
8.4小结289
第9章Agent6:GitHub的网红聚落——AutoGPT、BabyAGI、CAMEL和GenerativeAgents292
9.1AutoGPT293
9.1.1AutoGPT简介293
9.1.2AutoGPT实战294
9.2BabyAGI298
9.2.1BabyAGI简介299
9.2.2BabyAGI实现301
9.3CAMEL317
9.3.1CAMEL简介318
9.3.2CAMEL论文中的股票交易场景319
9.3.3CAMEL实现324
9.4小结333
第10章Agent7:多Agent系统框架——AutoGen和MetaGPT335
10.1AutoGen336
10.1.1AutoGen简介336
10.1.2AutoGen实战340
10.2MetaGPT343
10.2.1MetaGPT简介343
10.2.2MetaGPT实战345
10.3小结353
第11章下一代Agent的诞生地:科研论文中的新思路355
11.1两篇高质量的Agent综述355
11.2论文选读:Agent自主学习、多Agent合作、Agent可信度的评估、边缘系统部署以及具身智能落地358
11.3小结359
参考文献361
后记创新与变革的交汇点362
······

最后修改:2024 年 10 月 14 日