通过亚马逊云科技Bedrock打造自定义AI智能体Agent(上)

大家对于智能体代理Agent一定已经非常熟悉,自主代理(Autonomous Agents) 目前在AI行业极其热门并具有巨大的潜力,能够显著提升开发者日常的工作效率、自动化日常琐碎、重复性任务,并生成全新的内容。Agent可以理解用户的请求,并通过后端集成的工具来满足用户们这些需求,而无需手动设置具体的执行步骤。

在本篇文章中,小李哥会带大家手把手了解如何使用Amazon Bedrock和其标准化Converse API轻松创建一个自定义AI智能体。下面我将通过利用Streamlit框架开发的应用,在浏览器中与后端代理进行交互分析自媒体文章里的情感倾向。我为代理配备了一个网页检索服务用于获取网页内容和总结网页信息,最后将以上信息总结分析社交媒体帖子的情感倾向。除了本文介绍的场景外,智能体也可以应用于来许多实用的应用场景。

解决方案概览

本次介绍的云端解决方案由几个关键组件组成,我们将通过这些组件搭建代理,关键组件如下:

  • agent.py - 运行代理的核心逻辑
  • tools.py - 定义代理可使用的工具
  • utils.py - 代理辅助函数
  • streamlit_app.py - 与代理交互的前端UI

方案架构图如下:

AI智能体核心运行逻辑解析

我们方案中的agent.py文件包含代理运行的核心逻辑,下面是工作流程图和逐步解析:

  1. 用户输入一条消息,该消息会按照Converse API的格式转换为为用户消息(User Message)。

  2. 格式化后的用户消息被添加到消息列表(Message List)中。

  3. 代理通过Converse API调用Bedrock上的大语言模型(LLM),并传递第二步中包括用户输入的消息列表,以及代理可用的工具类型。

  4. Bedrock上的大语言模型会返回助手消息(Assistant Message),其中可能包含文本、工具调用记录以及会话停止标识(stopReason)。

6.代理检查stopReason,它可能是:

tool_use:表示LLM已决定调用某个工具;

end_turn:表示LLM已完成工具调用,并结束当前的用户交互会话;

  1. 如果stopReason是tool_use,则会话未结束,代理接下来会继续调用其集成的工具完成任务。

  2. 继续执行被调用的工具后返回调用结果(toolResult)。

  3. toolResult被封装为用户消息,并追加到消息列表末尾。

  4. 代理再次开启新一轮调用Converse API,并重复执行步骤4至9,直到接收到stopReason的值为end_turn。

  5. 当stopReason为end_turn时,裁表示该代理需要执行的全部任务已完成,代理的任务周期结束。

  6. 最终代理调用AI模型的的响应会作为回复在用户界面返回给用户。用户此时可以继续输入新的消息,该流程将从步骤1重新开始。

使用场景测试展示

下图展示了该Agent在Streamlit框架开发的前端UI界面中的使用案例。我们输入提示词,请求代理对提供的链接进行总结。我们Agent中使用AI模型会自动决策需要使用后端集成工具,并首先调用 RetrieveUrlTool工具来获取网页内容。在该工具检索网页内容后,代理使用html2text工具预处理了提取内容,最后将网页转换为Markdown格式,作为toolResult结果返回给代理。代理处理了 toolResult结果生成最终响应返回给用户,UI中展示响应则为包含网页内容的总结摘要。

以上就是亚马逊云科技上通过自定义智能体抓取网页结果、进行格式转换,并在streamlit框架的用户界面中展示网页提取内容的全部内容,在本系列的下篇中,小李哥将分享构建该自定义智能体的全部代码和实操步骤。欢迎大家关注小李哥和本系列的下篇,不要错过未来更多国际前沿的AWS云开发/云架构方案。

相关推荐
沐雪架构师18 分钟前
AI大模型开发原理篇-2:语言模型雏形之词袋模型
人工智能·语言模型·自然语言处理
python算法(魔法师版)1 小时前
深度学习深度解析:从基础到前沿
人工智能·深度学习
kakaZhui1 小时前
【llm对话系统】大模型源码分析之 LLaMA 位置编码 RoPE
人工智能·深度学习·chatgpt·aigc·llama
struggle20252 小时前
一个开源 GenBI AI 本地代理(确保本地数据安全),使数据驱动型团队能够与其数据进行互动,生成文本到 SQL、图表、电子表格、报告和 BI
人工智能·深度学习·目标检测·语言模型·自然语言处理·数据挖掘·集成学习
Linux运维老纪3 小时前
DNS缓存详解(DNS Cache Detailed Explanation)
计算机网络·缓存·云原生·容器·kubernetes·云计算·运维开发
云空4 小时前
《DeepSeek 网页/API 性能异常(DeepSeek Web/API Degraded Performance):网络安全日志》
运维·人工智能·web安全·网络安全·开源·网络攻击模型·安全威胁分析
AIGC大时代4 小时前
对比DeepSeek、ChatGPT和Kimi的学术写作关键词提取能力
论文阅读·人工智能·chatgpt·数据分析·prompt
Fhd-学习笔记4 小时前
《大语言模型》综述学习笔记
笔记·学习·语言模型
山晨啊85 小时前
2025年美赛B题-结合Logistic阻滞增长模型和SIR传染病模型研究旅游可持续性-成品论文
人工智能·机器学习