AI智能体系列文章:一、导论【Medium文章转载】

原文地址:https://medium.com/@vipra_singh/ai-agents-introduction-part-1-fbec7edb857d

文章日期:2025年2月3日

AI Agents:入门简介(第一部分)

探索 AI Agents,它们的设计以及实际应用。

本系列文章
在这里插入图片描述

目录

    1. 从 LLMs 到 AI Agents
    • 1.1 传统聊天机器人到 LLM 驱动的聊天机器人
    • 1.2 LLM 驱动的聊天机器人简介
    • 1.3 从 LLM 驱动的聊天机器人到 RAG 聊天机器人和 AI Agents
    1. 什么是 AI Agents?
    • 2.1 AI Agents 的特性
    1. AI Agents 的核心组件
    • 3.1 感知(传感器)
    • 3.2 推理(处理器)
    • 3.3 行动(执行器)
    • 3.4 知识库
    • 3.5 学习
    • 3.6 通信接口
    1. AI Agents 如何与其环境交互
    • 4.1 感知阶段
    • 4.2 决策阶段
    • 4.3 行动阶段
    1. AI Agents 如何运作?
    • 5.1 编排层(控制中心)
    • 5.2 模型(大脑)
    • 5.3 工具(手)
    1. ✅ 何时使用 Agents / ⛔ 何时避免使用它们
    1. 应用领域
    1. 结论

随着大型语言模型(LLMs)的出现,人工智能已经取得了巨大的飞跃。这些强大的系统彻底改变了自然语言处理,但当它们与自主性(能够自主推理、计划和行动的能力)相结合时,它们的真正潜力才得以释放。这就是 LLM Agents 发挥作用的地方,它代表了我们与 AI 交互和利用 AI 的方式的范式转变。
在这里插入图片描述

Credits: letta

这篇博客旨在提供 AI Agents 的全面概述,深入探讨它们的特性、组件和类型,同时探索它们的演变、挑战和潜在的未来方向。

让我们首先了解从 LLM 到 AI Agents 的演变。

1. 从 LLMs 到 AI Agents

LLM 应用形式因素的演变是我们所见过的现代应用中最快的发展之一。
在这里插入图片描述

Credits: mongodb

1.1 传统聊天机器人到 LLM 驱动的聊天机器人

聊天机器人并不新鲜;在生成式 AI(gen AI)这个术语出现之前,您可能已经在网站上与聊天机器人进行过交互。前生成式 AI 时代的传统聊天机器人在根本上不同于当今 AI 驱动的对话代理。以下是它们通常的运作方式:

基于启发式的响应 Heuristic-Based Responses:

  • 传统聊天机器人基于规则逻辑(“if-then”语句)运行。
  • 仅限于预定义的规则,无法处理复杂或模棱两可的查询。

固定响应 Canned Responses:

  • 响应是静态的和预定义的。
  • 通过检测特定关键字或短语触发。
  • 缺乏灵活性和对话深度。

人工转接:

  • 始终包含“与人工对话”按钮,用于处理未解决的查询。
  • 人工干预对于处理复杂问题仍然至关重要。
  • 在这里插入图片描述

Credits: mongodb

1.2 LLM 驱动的聊天机器人简介

ChatGPT 的发布: 2022 年 11 月 30 日,OpenAI 推出了 ChatGPT,由 GPT-3.5 提供支持,作为第一个主流 LLM 应用。ChatGPT 保留了熟悉的聊天机器人界面,但由先进的 LLM 技术支持,该技术在大量互联网语料库上进行了训练。

Transformer 架构: GPT(生成式预训练 Transformer)基于 Google 于 2017 年推出的 Transformer 架构。它使用自注意力机制来分析输入序列,从而在更深层次上理解上下文。

LLMs 的能力: 与传统聊天机器人不同,LLMs 生成类似人类的、上下文相关的和新颖的文本。用例包括代码生成、内容创建、增强的客户服务等。

局限性:

  • 个性化: 在长时间对话中难以保持一致的、个性化的交互。
  • 幻觉: 可以产生事实不正确但连贯的响应,根据概率而不是经过验证的知识生成输出。

解决局限性:

  • 正在探索诸如检索增强生成(RAG)之类的技术,以将输出建立在可靠的外部数据中。
  • 这些进步旨在减少不准确性并提高 LLM 驱动系统的鲁棒性。

1.3 从 LLM 驱动的聊天机器人到 RAG 聊天机器人和 AI Agents

RAG 聊天机器人: 检索增强生成(RAG)将外部数据检索与 LLM 功能相结合,以产生准确且上下文相关的响应。

知识来源:

  • 非参数知识: 从互联网或专有数据库等外部来源检索的实时数据。
  • 参数知识: LLM 在其训练中嵌入的知识。

优势: 减少幻觉,提供最新信息,并确保可验证的响应。

提示工程: 诸如上下文学习(单样本、少样本)、思维链(CoT)和 ReAct 之类的技术通过指导 LLM 的推理和输出生成来提高响应质量。
在这里插入图片描述

Credits: mongodb

AI Agents: AI Agents 从 LLMs 演变而来,增强了工具、多步规划和推理能力。

工具使用: LLMs 可以通过结构化模式(例如 JSON)分析任务和分配参数来调用以编程方式定义的函数或 API。

环境: AI Agents 在迭代执行环境中运行,从而实现基于反馈的动态决策和持续适应。

Agentic 系统: 这些是具有自主 Agents 的计算架构,能够集成多个系统组件、做出决策并实现目标。

Agentic RAG:

  • 将 LLMs 的推理、工具使用和规划能力与语义信息检索相结合。
  • 支持能够分解任务、执行复杂查询和利用工具解决问题的动态系统。
  • 在这里插入图片描述

Credits: mongodb

从 LLM 驱动的聊天机器人到 RAG 聊天机器人和 AI Agents 的转变代表了向更智能、更具适应性和工具集成的系统的转变,这些系统能够实时解决复杂问题。

2. 什么是 AI Agents?

AI Agent 是一个可以通过传感器感知其环境、处理这些信息并通过执行器对环境采取行动以实现特定目标的系统。可以将其视为一个数字实体,它可以观察、思考和行动——就像人类与其周围环境互动一样,但是以一种程序化和有目的的方式。

AI Agents 的概念建立在理性行为的基本思想之上:Agent 应该采取最大化其成功实现指定目标的机会的行动。这种理性是将 AI Agents 与简单的响应式程序区分开来的原因。
在这里插入图片描述

Credits: Abhishek Reddy

2.1 AI Agents 的特性

AI Agents 具有几个关键特性:

  • 自主性: 无需人工干预即可运行,独立做出决策。
  • 反应性和主动性行为: 对环境变化做出反应并采取主动措施来实现目标。
  • 适应性: 通过处理新信息和经验来学习和发展。
  • 目标导向: 致力于实现预定义目标或优化结果。
  • 交互性: 与其他 Agents 或人类进行交流和协作。
  • 持久性: 持续运行,监控和响应动态环境。

3. AI Agents 的核心组件

在其核心,AI Agent 由以下组件组成:

  • 感知
  • 推理
  • 行动
  • 知识库
  • 学习
  • 通信接口
    在这里插入图片描述

3.1 感知(传感器)

这些允许 Agent 感知其环境。这些可以是物理传感器(摄像头、麦克风)或数字输入(数据流、用户交互)。

3.2 推理(处理器)

Agent 的“大脑”,处理来自传感器的信息并确定适当的行动。该组件实现 Agent 的决策算法并维护任何必要的内部状态。

AI Agents 使用各种决策机制,例如基于规则的系统、专家系统和神经网络,来做出明智的选择并有效地执行任务。

3.3 行动(执行器)

Agent 影响其环境的方式,或者仅仅是使 Agent 能够采取行动的方式。这些可以是物理的(机器人手臂、扬声器)或数字的(数据库更新、显示输出)。

3.4 知识库

Agent 用来做决策的信息库,包括预编程的知识和学习到的信息。

3.5 学习

使 Agent 能够通过从数据和经验中学习来随着时间的推移提高其性能。它使用强化学习、监督学习和无监督学习等技术来随着时间的推移提高 AI Agent 的性能。

3.6 通信接口

允许 Agent 与其他 Agents、系统或人类进行交互。
在这里插入图片描述

Agent in Larger Environment | Credits: Tim Cvetko

我们将在下面的部分中详细介绍它们,同时详细说明 Agent 的工作原理。

4. AI Agents 如何与其环境交互

交互循环通常被称为“感知-计划-行动”循环或“感知-行动”循环。让我们以自动驾驶汽车为例来理解每个阶段:

4.1 感知阶段

将其视为 Agent 的“感知”阶段:

传感器 → 处理 → 状态更新

  • Agent 通过其传感器接收输入
  • 信息被处理和解释
  • 当前状态根据新信息更新

4.2 决策阶段

这是“思考”阶段,Agent 在此阶段:

当前状态 + 目标 → 评估选项 → 选择最佳行动

  • Agent 评估可能的行动
  • 考虑目标和约束
  • 根据可用信息选择最佳行动

4.3 行动阶段

这是“执行”阶段:

执行行动 → 观察变化 → 开始新循环

  • 通过执行器执行所选行动
  • 环境发生变化
  • Agent 通过传感器观察结果,开始新的循环。

这个循环不断重复,通常每秒多次。使这个循环强大的原因是:

  1. 适应性: 如果发生意外情况,Agent 可以在下一个感知阶段检测到这一点并相应地调整其行动。

  2. 学习机会: Agent 可以将预测结果与实际结果进行比较,以改进未来的决策。

  3. 目标导向行为: 每个循环都使 Agent 更接近其目标,同时尊重约束。

为了以编程方式理解它,让我们通过使用恒温器的类比来比较三个复杂程度:

简单程序

# Simple program
if temperature > desired_temperature:
    turn_on_cooling()
  • 只遵循固定规则
  • 不考虑后果
  • 没有学习或适应

响应式程序

# Responsive program
if temperature > desired_temperature:
    if time_of_day == "peak_hours":
        turn_on_cooling_eco_mode()
    else:
        turn_on_cooling_normal()
  • 更复杂的规则
  • 一些上下文感知
  • 仍然没有真正的智能

AI Agent

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 Agents: - 聊天机器人感知文本输入,决定适当的响应,并通过生成文本采取行动 - 交易机器人感知市场数据,决定交易策略,并通过下达交易采取行动 - 机器人吸尘器感知房间布局和污垢,决定清洁模式,并通过移动和激活其清洁机制采取行动。

5. AI Agents 如何运作?

假设您的智能冰箱不仅仅在您用完牛奶时重新订购牛奶——它还会根据您的浏览习惯建议您改用杏仁奶。有用还是有点令人不安?您来决定!

这就是 AI Agents 的简要介绍。

AI Agents 可以理解人类语言(感谢 LLMs)、推理信息、计划行动并执行任务,而无需持续的人工输入。它们解决复杂问题,使它们比简单的自动化工具先进得多。与基本脚本不同,AI Agents 集成到软件系统中,从而可以与其环境进行复杂的交互。

AI Agents 与简单自动化有何不同?

嗯,它们之所以不同,是因为有两个主要功能:

  • 工具
  • 规划

您已经看到 ChatGPT 在基本的数学问题上犯了错误。这是因为它只根据它所训练的数据做出响应。

同样,如果我要求您将 85 和 65 相乘,作为人类,如果您已经知道答案或者通过使用一个名为计算器的工具,您可以直接回答这个问题,对吧?

您正在对 Agents 做同样的事情,让他们可以使用工具。

第二件事是规划。

采用相同的数学计算,只有当您知道乘法或者您知道要传递给计算器的参数是 85 和 65 以及乘法时,您才能解决这个问题。

这就是规划和推理。

以下是您查询 AI Agent 时发生的情况的流程。
在这里插入图片描述

The architecture of an AI Agent | Credits: Himanshu Ramchandani

译者注:这里可以直接看参考的这个视频:https://www.youtube.com/watch?v=FMT_khnqKrQ&ab_channel=HimanshuRamchandani

5.1 编排层(控制中心)

假设我想创建一个 AI Agent 会议安排程序,我查询安排程序,“我想为我的所有学生举办一个网络研讨会”。

这将被视为 AI Agent 的触发器。
在这里插入图片描述

Orchestration layer | Credits: Himanshu Ramchandani

查询可以是文本、音频、视频或图像。(您已经知道,无论数据类型是什么,它总是会被转换为机器的数值)

查询将由编排层(又名 AI Agent 的控制中心)处理。

编排层有 4 个主要工作:

  • 记忆: 维护您整个交互的记忆。
  • 状态: 存储整个过程的当前状态。
  • 推理: 指导 Agent 的推理。
  • 规划: 步骤是什么,下一步将是什么?
    在这里插入图片描述

Credits: lyzr

它将与模型(LLM)交互。

5.2 模型(大脑)

模型是整个 Agent 的集中决策者。

它通常是一个 AI 模型,如大型语言模型。
在这里插入图片描述

Models in AI agents | Credits: Himanshu Ramchandani

为了理解查询、制定计划并确定下一步行动,模型使用推理和逻辑框架,例如:

  • ReAct(Reason + Act) 确保深思熟虑和慎重的行动
  • Chain-of-Thought 通过中间步骤进行推理。
  • Tree-of-Thoughts 探索多种路径以找到最佳解决方案

模型确定要采取的行动,并使用特定工具执行这些行动。

5.3 工具(手)

使用工具,Agent 可以与外部世界互动。

就像我告诉您的,计算器、API、网络搜索、外部数据库等。
在这里插入图片描述

Credits: Himanshu Ramchandani

工具使 Agents 能够执行超出模型能力的操作、访问实时信息或完成现实世界的任务。

6. ✅ 何时使用 Agents / ⛔ 何时避免使用它们

当您需要 LLM 来确定应用程序的工作流程时,Agents 非常有用。但它们通常是过度的。问题是:我真的需要工作流程中的灵活性来有效地解决手头的任务吗?如果预先确定的工作流程经常失败,这意味着您需要更多的灵活性。让我们举个例子:假设您正在制作一个应用程序来处理冲浪旅行网站上的客户请求。

您可以提前知道请求将属于 2 个存储桶中的任何一个(基于用户选择),并且您为这两种情况中的每一种都有一个预定义的工作流程。

  • 想了解一些旅行知识? ⇒ 让他们访问搜索栏以搜索您的知识库
  • 想和销售人员谈谈? ⇒ 让他们在联系表格中输入。

如果该确定性工作流程适合所有查询,请务必编写所有代码!这将为您提供一个 100% 可靠的系统,没有让不可预测的 LLMs 干预您的工作流程而引入错误的风险。为了简单和健壮起见,建议规范化为不使用任何 Agentic 行为。

但是,如果无法提前确定工作流程怎么办?

例如,用户想问:“我可以在星期一来,但我忘记了护照,所以可能会延迟到星期三,是否可以在星期二早上带我和我的东西去冲浪,并提供取消保险?” 这个问题取决于许多因素,可能上述预定标准都不足以满足此请求。

如果预先确定的工作流程经常失败,这意味着您需要更多的灵活性。

这就是 Agentic 设置有帮助的地方。

在上面的示例中,您可以创建一个多步骤 Agent,该 Agent 可以访问用于天气预报的天气 API、用于计算旅行距离的 Google Maps API、员工可用性仪表板以及您知识库上的 RAG 系统。

直到最近,计算机程序还局限于预先确定的工作流程,试图通过堆积 if/else 开关来处理复杂性。他们专注于极其狭窄的任务,例如“计算这些数字的总和”或“找到此图中的最短路径”。但实际上,大多数现实生活中的任务,例如我们的旅行示例,并不适合预先确定的工作流程。Agentic 系统为程序打开了广阔的现实世界任务世界!

7. 应用领域

AI Agents 是多功能工具,可提高广泛领域的生产力、效率和智能。它们越来越多地用于日常应用和先进的、具有高影响力的领域。
在这里插入图片描述

Credits: lyzr

8. 结论

AI Agents 正在改变我们与技术互动的方式,提供前所未有的自主性、智能性和适应性水平。从简单的反射 Agents 到复杂的学习系统,它们被应用于各个行业,以解决复杂问题并增强人类能力。然而,构建有效的 AI Agents 伴随着挑战,包括道德问题、数据依赖性和可扩展性问题。

随着 AI 技术的不断发展,AI Agents 的未来具有巨大的潜力。通过关注通用 AI、人机协作和道德考虑,我们可以创建不仅能高效执行任务,还能与人类价值观保持一致并为社会做出积极贡献的 Agents。

  • AI Agents 是感知、决定和行动以实现目标的自主系统。
  • 核心组件包括传感器、执行器、决策引擎和学习模块。
  • AI Agents 用于虚拟助手、自动驾驶汽车和医疗保健等应用。

通过了解基础知识并随时了解最新进展,我们可以利用 AI Agents 的力量来推动创新并创造更美好的未来。

鸣谢

在这篇博文中,我们汇编了来自各种来源的信息,包括研究论文、技术博客、官方文档、YouTube 视频等。每个来源都在相应的图像下方进行了适当的署名,并提供了来源链接。

感谢您的阅读!

如果本指南增强了您对 Python 和机器学习的理解:

  • 请用一个👏或几个鼓掌来表示您的支持!
  • 您的掌声帮助我为我们充满活力的 Python 或 ML 社区创建更有价值的内容。
  • 请随时与 Python 或 AI / ML 爱好者分享本指南。
  • 您的反馈非常宝贵——它会激发并指导我们未来的帖子。
  • 与我联系!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值