作者:老余捞鱼
原创不易,转载请标明出处及原作者。
写在前面的话:
本文主要介绍了如何利用人工智能代理(AI Agents)从概念到Python中的实际应用,以及如何构建一个内容创作工作流程,通过多个代理协作完成从视频分析到博客撰写的复杂任务,完成后也许这会改变你对人工智能及其能力的看法。
一、动机(Motivation)
正如一句谚语所说:单打独斗,我们走得更快。携手,我们走得更远。这也与 "没有人可以成为每个领域的专家 "这一理念有关。团队合作和有效的任务分配对于成就大事至关重要。
类似的原则也适用于大语言模型(LLM)。我们可以将多个 LLM 或人工智能代理(AI Agents)结合起来,每个代理专门负责一个特定领域,而不是让一个 LLM 来处理复杂的任务。这种策略可以使系统更强大,结果质量更高。在本文中,您将了解到:
- 什么是人工智能代理
AI Agents
。 - 为什么值得考虑用它们来解决现实世界中的使用案例。
- 如何从零开始创建完整的人工智能代理
AI Agents
系统。
二、系统的一般工作流程
在开始进入编码环节之前,让我们先清楚地了解一下本文所构建系统的主要组成部分。
- 工作流程共有四个代理,每个代理都有专门的技能。首先,向系统提交用户请求。
Agent 1
或Video Analyzer
使用 YouTube 频道搜索等外部工具在互联网上进行深入研究,查找与用户请求相关的信息。该代理的结果将被发送到下一个代理进行进一步处理。Agent 2
或博文撰写人blog post writer
利用之前的结果撰写一篇全面的博文。- 与
Agent 2
类似,Agent 3
和Agent 4
也分别在 LinkedIn 上发布了吸引人的帖子和推文。 - 来自
Agent 2
,Agent 3
, 和Agent 4
的响应都被保存到不同的标记文件中,可供最终用户使用。
三、我们为什么要关注AI Agents,而不是单一的LLM?
LLM大多时候的任务只有一个目标:数据提取。在处理更复杂的多步骤任务时,这种方法的局限性就显而易见了。下面将对其中一些局限性进行说明:
3.1 任务执行的灵活性
- 单一提示式 LLM 需要为每项任务仔细编写提示,而且当预期与最初的任务要求发生变化时,可能很难更新。
AI Agents
可将这些复杂性分解为子任务,调整自己的行为,而不需要进行大量的提示工程。
3.2 任务连续性和情境保持
- 单次提示的 LLM 可能会丢失以前互动的重要语境。这是因为它们主要是在单一对话回合的限制下运行。
AI Agents
能够在不同的交互过程中保持上下文,每个代理都可以参考前一个代理的回应来完成他们应该完成的任务。
3.3 专业化与互动
- 经过大量的微调后,
Single prompted LLMs
(单一提示式 LLM) 可能会拥有专门的领域知识,这可能会耗费大量的时间和财力。 - 另一方面,
AI Agents
可以设计为一组专业模型,每个模型专注于特定任务,如researcher
,blog writer
,social media expert
。
3.4 互联网接入
Single prompt