AWSBedrockAgentCoreSkill aws-agentcore

这个技能专注于使用 AWS Bedrock AgentCore 构建和部署生产级的 AI 代理,支持工具集成(如 Lambda 工具)、代理编排、内存管理和观测性,适用于开发智能助手、客户支持代理等应用。关键词:AWS Bedrock, AgentCore, AI 代理, 工具使用, 代理编排, Lambda 集成, 内存管理, 观测性, AWS 基础设施, Bedrock 模型集成。

AI智能体 0 次安装 0 次浏览 更新于 3/22/2026

名称: aws-agentcore 描述: 使用 AWS Bedrock AgentCore 构建 AI 代理。适用于在 AWS 基础设施上开发代理、创建工具使用模式、实现代理编排或与 Bedrock 模型集成。触发关键词如 AgentCore、Bedrock Agent、AWS 代理、Lambda 工具。

AWS Bedrock AgentCore

在 AWS 基础设施上构建生产级的 AI 代理。

快速开始

import boto3
from agentcore import Agent, Tool

# 初始化 AgentCore 客户端
client = boto3.client('bedrock-agent-runtime')

# 定义工具
@Tool(name="search_database", description="搜索产品数据库")
def search_database(query: str, limit: int = 10) -> dict:
    # 工具实现
    return {"results": [...]}

# 创建代理
agent = Agent(
    model_id="anthropic.claude-3-sonnet",
    tools=[search_database],
    instructions="您是一个有用的产品搜索助手。"
)

# 调用代理
response = agent.invoke("查找低于 1000 美元的笔记本电脑")

AgentCore 组件

AgentCore 提供以下基础组件:

组件 用途
运行时 无服务器代理执行(框架无关)
网关 将 API/Lambda 转换为 MCP 兼容的工具
内存 多策略内存(语义、用户偏好)
身份 使用 Cognito、Okta、Google、EntraID 进行认证
工具 代码解释器、浏览器工具
观测性 深度分析和追踪

Lambda 工具集成

# Lambda 函数作为工具
import json

def lambda_handler(event, context):
    action = event.get('actionGroup')
    function = event.get('function')
    parameters = event.get('parameters', [])
    
    # 解析参数
    params = {p['name']: p['value'] for p in parameters}
    
    if function == 'get_weather':
        result = get_weather(params['city'])
    elif function == 'book_flight':
        result = book_flight(params['origin'], params['destination'])
    
    return {
        'response': {
            'actionGroup': action,
            'function': function,
            'functionResponse': {
                'responseBody': {
                    'TEXT': {'body': json.dumps(result)}
                }
            }
        }
    }

代理编排

from agentcore import SupervisorAgent, SubAgent

# 创建专门的子代理
research_agent = SubAgent(
    name="researcher",
    model_id="anthropic.claude-3-sonnet",
    instructions="您负责研究和收集信息。"
)

writer_agent = SubAgent(
    name="writer", 
    model_id="anthropic.claude-3-sonnet",
    instructions="您负责撰写清晰、引人入胜的内容。"
)

# 创建监督代理
supervisor = SupervisorAgent(
    model_id="anthropic.claude-3-opus",
    sub_agents=[research_agent, writer_agent],
    routing_strategy="supervisor"  # 或 "intent_classification"
)

response = supervisor.invoke("撰写一篇关于 AI 代理的博客文章")

护栏集成

from agentcore import Agent, Guardrail

# 定义护栏
guardrail = Guardrail(
    guardrail_id="my-guardrail-id",
    guardrail_version="1"
)

agent = Agent(
    model_id="anthropic.claude-3-sonnet",
    guardrails=[guardrail],
    tools=[...],
)

AgentCore 网关

将现有 API 转换为 MCP 兼容的工具:

# gateway_setup.py
from bedrock_agentcore import GatewayClient

gateway = GatewayClient()

# 从 OpenAPI 规范创建网关
gateway.create_target(
    name="my-api",
    type="OPENAPI",
    openapi_spec_path="./api-spec.yaml"
)

# 从 Lambda 函数创建网关
gateway.create_target(
    name="my-lambda-tool",
    type="LAMBDA",
    function_arn="arn:aws:lambda:us-east-1:123456789:function:my-tool"
)

AgentCore 内存

from agentcore import Agent, Memory

# 使用多种策略创建内存
memory = Memory(
    name="customer-support-memory",
    strategies=["semantic", "user_preference"]
)

agent = Agent(
    model_id="anthropic.claude-3-sonnet",
    memory=memory,
    tools=[...],
)

# 内存跨会话持久化
response = agent.invoke(
    "我们上次讨论了什么?",
    session_id="user-123"
)

官方用例仓库

AWS 提供生产就绪的实现:

仓库: https://github.com/awslabs/amazon-bedrock-agentcore-samples

可用用例 (02-use-cases/)

用例 描述
A2A 多代理事件响应 使用 Strands + OpenAI SDK 的代理间通信
客户支持助手 内存、知识库、Google OAuth
市场趋势代理 使用浏览器工具的 LangGraph
数据库性能分析器 PostgreSQL 集成
设备管理代理 IoT 与 Cognito 认证
企业网络智能 用于研究的浏览器工具
文本转 Python IDE AgentCore 代码解释器
视频游戏销售助手 Amplify + CDK 部署

用例快速开始

git clone https://github.com/awslabs/amazon-bedrock-agentcore-samples.git
cd amazon-bedrock-agentcore-samples/02-use-cases/customer-support-assistant
# 按照 README 进行部署

资源