siyue110 LV
发表于 2025-4-9 15:34:39
探索AI智能体、它们的设计以及在现实世界中的应用。
AI随着大型语言模型 (LLM) 的出现取得了巨大的进步。这些强大的系统彻底改变了自然语言处理,而当与自主性——即推理、规划和自主行动的能力——相结合时,它们的真正潜力才得以释放。这就是LLM智能体发挥作用的地方,它们代表了我们与AI交互和使用AI方式的范式转变。
本博客旨在提供对AI智能体的全面概述,深入研究其特征、组成部分和类型,同时探讨其演变、挑战和潜在的未来发展方向。
首先,让我们了解从LLM到AI智能体的演变。
1. 从LLM到AI智能体
LLM应用程序的形式因素演变是我们在现代应用程序中看到的最快发展之一。
1.1 传统聊天机器人到LLM驱动的聊天机器人
在生成式AI(gen AI)出现之前,你可能已经与网站上的聊天机器人互动过了,聊天机器人并不是什么新鲜事物。传统的聊天机器人与今天的AI驱动的对话智能体在根本上有所不同,它们通常这样运作:
- 基于启发式的回应:
- 传统聊天机器人基于规则逻辑(“如果-那么”语句)运行。
- 仅限于预定义的规则,无法处理复杂或模棱两可的查询。
- 预设回应:
- 回应是静态且预定义的。
- 通过检测特定关键词或短语来触发。
- 缺乏灵活性和对话深度。
- 人工介入:
- 始终包含一个“与人类对话”按钮,用于未解决的查询。
- 人工干预对于处理复杂问题仍然至关重要。
1.2 LLM驱动的聊天机器人的介绍
2022年11月30日,OpenAI推出了由GPT-3.5驱动的ChatGPT,作为第一个主流LLM应用程序。ChatGPT保留了熟悉的聊天机器人界面,但背后是基于庞大的互联网语料库训练的先进LLM技术。
Transformer架构:GPT(生成式预训练Transformer)基于2017年Google推出的Transformer架构。它使用自注意力机制来分析输入序列,从而更深入地理解上下文。
LLM的功能:与传统聊天机器人不同,LLM可以生成类似人类、与上下文相关且新颖的文本。用例包括代码生成、内容创作、增强的客户服务等等。
局限性:
- 个性化:在长时间的对话中难以保持一致的个性化互动。
- 幻觉:可能会产生事实不正确但连贯的回应,根据概率而不是经过验证的知识生成输出。
解决局限性:
正在探索像检索增强生成 (RAG) 这样的技术,以将输出建立在可靠的外部数据中。这些进步旨在减少不准确性并提高LLM驱动系统的稳健性。
1.3 从LLM驱动的聊天机器人到RAG聊天机器人和AI智能体
检索增强生成 (RAG) 将外部数据检索与LLM功能相结合,以生成准确且具有上下文关联的回应。
知识来源:
- 非参数知识:从互联网或专有数据库等外部来源检索的实时数据。
- 参数知识:LLM从其训练中嵌入的知识。 优势:减少幻觉,提供最新信息,并确保可验证的回应。
提示工程:诸如上下文学习(One-shot, Few-shot)、思维链(CoT)和ReAct等技术通过指导LLM的推理和输出生成来提高回应质量。
AI智能体:由LLM演变而来,并增加了工具、多步骤规划和推理能力。
工具使用:LLM可以通过分析任务并通过结构化模式(例如JSON)分配参数来调用程序定义的函数或API。
环境:AI智能体在迭代执行环境中运行,从而实现动态决策和根据反馈进行持续调整。
智能体系统:这些是具有自主智能体的计算架构,能够集成多个系统组件、做出决策并实现目标。
智能RAG:
- 将LLM的推理、工具使用和规划能力与语义信息检索相结合。
- 启用能够分解任务、执行复杂查询并利用工具解决问题的动态系统。
从LLM驱动的聊天机器人到RAG聊天机器人和AI智能体的转变代表了一种转变,即转向更智能、适应性更强且与工具集成的系统,这些系统能够实时解决复杂问题。
2. 什么是AI智能体(AI Agent)?
AI智能体是一个可以通过传感器感知其环境、处理这些信息并通过执行器对环境采取行动以实现特定目标的系统。可以将其视为一个可以观察、思考和行动的数字实体——就像人类与周围环境互动一样,但以编程和有目的的方式进行。
AI智能体的概念建立在理性行为的基本思想之上:智能体应采取行动,以最大限度地提高其实现指定目标的机会。这种理性是AI智能体与简单响应程序的区别所在。
2.1 AI智能体的特征
AI智能体具有以下关键特征:
- 自主性:无需人工干预即可运行,独立做出决策。
- 反应性和主动性:对环境变化做出反应,并采取主动措施来实现目标。
- 适应性:通过处理新信息和经验来学习和发展。
- 目标导向:致力于实现预定义的目标或优化结果。
- 交互性:与其他智能体或人类进行交流和协作。
- 持久性:持续运行,监控并响应动态环境。
3. AI智能体的核心组成部分
AI智能体的核心由以下组成部分构成:
- 感知 (Perception)
- 推理 (Reasoning)
- 行动 (Action)
- 知识库 (Knowledge Base)
- 学习 (Learning)
- 通信接口 (Communication Interface)
3.1 感知(传感器)
这些允许智能体感知其环境。这些可以是物理传感器(摄像头、麦克风)或数字输入(数据流、用户交互)。
3.2 推理(处理器)
智能体的“大脑”,用于处理来自传感器的信息并确定适当的行动。此组件实现智能体的决策算法并维护任何必要的内部状态。
AI智能体使用各种决策机制,例如基于规则的系统、专家系统和神经网络,以做出明智的选择并有效地执行任务。
3.3 行动(执行器)
智能体影响其环境或简单地使其能够采取行动的手段。这些可以是物理的(机器人手臂、扬声器)或数字的(数据库更新、显示输出)。
3.4 知识库
智能体用于做出决策的信息库,包括预编程的知识和学习的信息。
3.5 学习
使智能体能够通过从数据和经验中学习来随着时间的推移提高其性能。它使用强化学习、监督学习和无监督学习等技术来提高AI智能体随时间的推移的性能。
3.6 通信接口
允许智能体与其他智能体、系统或人类交互。
我们将在下面的部分中介绍它们中的每一个,同时详细介绍智能体的工作原理。
4. AI智能体如何与其环境交互
交互周期通常称为“感知-计划-行动”周期或“感知-行动”周期。让我们以自动驾驶汽车为例来理解每个阶段:
4.1 感知阶段
将此视为智能体的“感知”阶段:
传感器 → 处理 → 状态更新
- 智能体通过其传感器接收输入
- 信息被处理和解释
- 根据新信息更新当前状态
4.2 决策阶段
这是智能体的“思考”阶段:
当前状态 + 目标 → 评估选项 → 选择最佳行动
- 智能体评估可能的行动
- 考虑目标和约束
- 根据可用信息选择最佳行动
4.3 行动阶段
这是“执行”阶段:
执行行动 → 观察变化 → 开始新周期
- 通过执行器执行选定的操作
- 环境因此而改变
- 智能体通过传感器观察结果,开始一个新的周期。
这个周期不断重复,通常每秒重复多次。使这个周期变得强大的是:
- 适应性:如果发生意外情况,智能体可以在下一个感知阶段检测到这一点,并相应地调整其行动。
- 学习机会:智能体可以比较预测结果与实际结果,以改进未来的决策。
- 目标导向行为:每个周期都会使智能体更接近其目标,同时遵守约束。
为了从编程的角度来理解它,让我们通过使用恒温器的类比来比较三种复杂程度:
- # 简单程序
- if temperature > desired_temperature:
- turn_on_cooling()
复制代码
- 只遵循固定规则
- 不考虑后果
- 没有学习或适应
- 响应程序
- # 响应程序
- if temperature > desired_temperature:
- if time_of_day == "peak_hours":
- turn_on_cooling_eco_mode()
- else:
- turn_on_cooling_normal()
复制代码
- 更复杂的规则
- 一些上下文感知
- 仍然没有真正的智能
- AI智能体
- class SmartThermostat:
- def perceive(self):
- current_temp = get_temperature()
- time = get_time()
- electricity_price = get_current_price()
- weather_forecast = get_forecast()
- user_preferences = get_preferences()
- return Environment(current_temp, time, electricity_price,
- weather_forecast, user_preferences)
- def think(self, environment):
- possible_actions = [
- NoAction(),
- CoolNormal(),
- CoolEco(),
- PreCool(),
- WaitForOffPeak()
- ]
- # Evaluate each action's expected outcome
- best_action = None
- best_utility = float('-inf')
- for action in possible_actions:
- predicted_state = predict_future_state(environment, action)
- utility = calculate_utility(predicted_state)
- if utility > best_utility:
- best_action = action
- best_utility = utility
- return best_action
- def act(self, action):
- action.execute()
- monitor_results()
- update_learning_model()
复制代码
- 考虑多个因素
- 预测结果
- 从经验中学习
- 优化长期目标
- 平衡竞争目标
这个相同的周期适用于所有 AI智能体:
- 聊天机器人感知文本输入,决定适当的回复,并通过生成文本来行动
- 交易机器人感知市场数据,决定交易策略,并通过进行交易来行动
- 扫地机器人感知房间布局和污垢,决定清洁模式,并通过移动和激活其清洁机制来行动。
5. AI智能体如何运作?
假设你的智能冰箱不仅会在你用完牛奶时重新订购牛奶,还会根据你的浏览习惯建议你改用杏仁奶。这就是AI智能体的精髓。
AI智能体可以理解人类语言(这要归功于LLM),通过信息进行推理,规划行动,并在不需要持续人工输入的情况下执行任务。它们解决复杂的问题,这使它们比简单的自动化工具更先进。与基本脚本不同,AI智能体集成到软件系统中,允许与环境进行复杂的交互。
AI智能体与简单自动化有何不同?
嗯,它们的不同之处在于两个主要的功能:
工具
你已经看到 ChatGPT 在基本的数学问题上犯错误。这是因为它只根据其接受训练的数据做出回应。
同样,如果我要求你将 85 和 65 相乘,作为一个人,如果你已经知道答案或者通过使用称为计算器的工具,你可以直接回答这个问题,对吗?
你正在对智能体做同样的事情,让他们访问工具。
规划
采取相同的数学计算,你只有在知道乘法或知道要传递给计算器的参数是什么(即 85 和 65 以及一个乘法)时才能解决此问题。
这就是规划和推理。
以下是查询AI智能体时发生的事情的流程。
5.1 编排层(控制中心)
假设我想创建一个AI智能体会议安排器,我查询该安排器,“我想为我所有的学生举办一个网络研讨会”。
这将被视为AI智能体的触发器。
查询可以是文本、音频、视频或图像。无论数据类型是什么,它都将始终转换为机器的数值。
该查询将由编排层(又名AI智能体的控制中心)处理。
编排层有 4 项主要工作:
- 记忆(Memory):维护你整个交互的记忆。
- 状态(State):存储整个过程的当前状态。
- 推理(Reasoning):指导智能体的推理。
- 规划(Planning):有哪些步骤,下一步是什么?
它将与模型(LLM)交互。
5.2 模型(大脑)
该模型是整个智能体的集中决策者。它通常是像大型语言模型这样的AI模型。
为了理解查询、制定计划和确定下一步操作,该模型使用以下推理和逻辑框架:
- ReAct(推理 + 行动): 确保深思熟虑的行动
- 思维链 : 通过中间步骤进行推理。
- 思维树 : 探索多条路径以找到最佳解决方案
该模型确定要采取哪些操作,并使用特定工具执行这些操作。
5.3 工具(双手)
使用工具,智能体可以与外部世界交互。
就像我告诉你的,计算器、API、网络搜索、外部数据库等。
工具使智能体能够执行超出模型范围的操作、访问实时信息或完成现实世界的任务。
6. ✅ 何时使用智能体 / ⛔ 何时避免使用它们
当您需要 LLM 确定应用程序的工作流程时,智能体很有用。但它们通常是过度的。问题是:为了有效地解决手头的任务,我是否真的需要工作流程的灵活性? 如果预先确定的工作流程经常失败,这意味着你需要更大的灵活性。让我们举个例子:假设您正在制作一个应用程序,用于处理冲浪旅行网站上的客户请求。
您可以提前知道这些请求将属于 2 个桶中的一个(基于用户的选择),并且您为这两个案例中的每一个都有一个预定义的工作流程。
- 想要了解有关旅行的信息吗? ⇒ 让它们访问搜索栏以搜索你的知识库
- 想和销售人员交谈吗? ⇒ 让他们填写联系表格。
如果该确定性工作流程适合所有查询,请使用所有方法进行编码!这将为你提供一个 100% 可靠的系统,并且不会有因让不可预测的 LLM 干预你的工作流程而引入错误的风险。为了简单性和稳健性,建议规范化为不使用任何智能体行为。
但是,如果工作流程无法提前确定得那么好怎么办?
例如,用户想问:“我可以在周一到来,但我忘记了护照,所以有延误到周三的风险,是否可以在周二早上带我和我的东西去冲浪,并购买取消保险?” 这个问题取决于许多因素,并且以上任何预定标准都可能无法满足此要求。
如果预先确定的工作流程经常失败,这意味着你需要更大的灵活性。
这就是智能体设置有帮助的地方。
在上面的示例中,你可以制作一个多步智能体,该智能体可以访问天气 API 获取天气预报、谷歌地图 API 计算出行距离、员工可用性仪表板以及你知识库中的 RAG 系统。
直到最近,计算机程序还仅限于预先确定的工作流程,试图通过堆积 if/else 开关来处理复杂性。它们专注于极其狭窄的任务,例如“计算这些数字的总和”或“找到这个图中的最短路径”。但实际上,大多数现实生活中的任务,例如我们的旅行示例,并不适合预先确定的工作流程。智能体系统为程序打开了广阔的现实世界任务!
8. 总结
AI智能体正在改变我们与技术交互的方式,提供前所未有的自主性、智能和适应性。从简单的反射智能体到复杂的学习系统,它们被应用于各个行业以解决复杂的问题并增强人类能力。然而,构建有效的AI智能体面临着挑战,包括伦理问题、数据依赖性和可扩展性问题。
随着AI技术的不断发展,AI智能体的未来蕴藏着巨大的潜力。通过关注通用AI、人机协同和伦理考虑,我们可以创建不仅高效地执行任务而且与人类价值观保持一致并对社会做出积极贡献的智能体。
AI智能体是感知、决策和行动以实现目标的自主系统。
- 核心组成部分包括传感器、执行器、决策引擎和学习模块。
- AI智能体用于虚拟助手、自动驾驶汽车和医疗保健等应用。
通过了解基本原理并及时了解进展,我们可以利用AI智能体的力量来推动创新并创造更美好的未来。
<hr/>我会定期更新干货和学习笔记。喜欢的话,记得点个关注 ,不错过后续精彩内容!
|
|