Agent 开发的三重境界
在人工智能领域,Agent(智能体)开发是一个不断演进的过程,它涉及到如何将 AI 技术与实际应用相结合,以提高效率、增强用户体验和推动业务发展。本文将探讨 Agent 开发的三个阶段,从基础的 API 使用到复杂的智能应用开发,逐步深入,帮助读者理解 Agent 开发的深层含义。
引言
随着人工智能技术的飞速发展,Agent的概念已经从科幻小说走进了现实世界。Agent 可以被理解为一种具有一定智能的软件实体,它能够自主地执行任务、做出决策并与其他系统交互。
本文将从技术角度出发,为大家解析这三个阶段的演进方式,并为开发者提供一份 Agent 开发的指南。
第一阶段:当作能理解语义的 API 使用
在 Agent 开发的初级阶段,我们可以将大语言模型视为一种能理解自然语言的 API。这意味着,我们可以像调用任何传统 API 一样,向 Agent 发送请求,并期望得到一个经过理解和处理的响应。
在这个阶段开发的智能体,大多是在传统软件业务流程中,嵌入 LLM 的能力,对软件功能进行增强。对 LLM 的使用局限在其对自然语言的理解能力上,应用场景大多局限在文本生成、总结等方面,与传统软件开发调用各类工具 API 的模式并无明显区别。
典型用例
短视频文案创作
我们可以将 Agent 作为一个内容生成器,输入视频的关键信息,Agent 则能够根据这些信息生成吸引人的文案。这个过程可以看作是将 Agent 作为一个文本生成 API 来使用。
新闻日报总结
另一个典型的应用场景是新闻内容的自动总结。Agent 可以接收大量的新闻数据,然后通过自然语言理解能力,提炼出关键信息,生成一份简洁的新闻日报。结合网页信息获取工具,可以实现基于 LangChain 的新闻总结功能。
在这一阶段,Agent 的开发主要集中在如何更好地理解和处理自然语言上。开发者在 AI 领域只需要熟悉自然语言处理(NLP)的基本原理,在 AI 工程上用到最多的也限于提示词优化,就能够利用现有的 AI 模型来实现这一功能。
第二阶段:当作自然语言编程工具使用
在第二阶段,Agent 不再仅仅是一个理解语言的 API,而是一个可以进行自然语言编程的工具。这意味着,开发者可以通过自然语言来指导 Agent 完成更复杂的任务。
在这个阶段开发的智能体,不再局限于文本理解的场景。通过提示词工程、Function Calling 等方式,能够让大语言模型按提示要求格式化输出内容,进而在一定程度上能够重塑传统软件业务流程的多个环节,可以说是通过 LLM 进行自然语言编程应用。
典型用例
数据表汇总与去重
在这个场景中,Agent 接收多个数据表,然后通过自然语言提示,自动进行数据汇总和去重,最终输出一份整洁的汇总表。使用 LangGraph 的流程编排,可以实现结合数据处理、过滤、去重、汇总的功能。
自动推动业务流程
通过 AI 执行意图识别,Agent 可以在某些业务流程中减少人工审核环节,自动识别并推动流程的执行。关于大语言模型的意图识别,可以通过构建专门的分类器或 Prompt 策略来实现。
为了实现这一阶段的功能,开发者需要掌握提示词工程和 Function Calling 等技术。这些技术允许开发者通过自然语言来指导 Agent 的行为,使其能够按照预期执行特定的任务。
第三阶段:当作真正的智能使用
在 Agent 开发的第三阶段,Agent 被真正当作一个智能体来使用。这时,Agent 不再只是一个简单的 API 或者工具,而是成为了一个具有自主决策能力的智能伙伴。
这个阶段的智能体开发,与AI 原生应用开发大体相同,但这个阶段的应用开发与传统软件开发的思维方式确实是完全不同了,LLM 被真正当作智能来使用。
在软件开发时,更多要思考的是,这个事情如果是由一个人类团队来执行:
- 需要哪些角色(提示词 Role 限定)
- 这些相关角色需要具备哪些技能(Tools 绑定)
- 团队之间应该如何交互(State 设置)
- 团队之间的工作如何流转(Workflow 的设置)
可以看到,这个阶段 LLM 不再作为 API 独立存在,而是绑定了角色和技能,并需要进行多个 Agent 的组合,已经与人类智能的使用方式一致。


