用途:该指南面向希望使用 LangGraph 构建智能体(示例为 5v5 足球对局智能体)的开发者,演示如何结合 LangChain ReAct 模式与 Amazon Bedrock 完成从本地测试到部署的流程。
主要能力:
- ReAct 智能体:通过 langgraph.prebuilt.create_react_agent 实现“观察—思考—行动—重复”循环,将游戏状态 JSON 摘要后交给 LLM 决定动作。
- 工具集成:用 langchain_core.tools 的 @tool 装饰器定义可调用函数,如计算距离、评估射门、寻找空位队友。
- 状态管理:默认 MessagesState 追踪消息历史;也可用 TypedDict 自定义状态,如记录控球次数、射门数、上次动作。
- 自定义图:通过 StateGraph、节点与条件边手动构建更可控的决策流程。
- 记忆:用 MemorySaver 与 thread_id 实现跨 tick 的会话历史共享。
- 部署:支持部署到 AgentCore(agentcore deploy 获取 Runtime ARN)或 Lambda(打包代码、配置 IAM 与 Bedrock 访问)。
- 增强建议:包括 Guardrails、提示词改进、测试、性能调优与多智能体架构。
使用方式:
- 安装依赖:python3 -m venv .venv,source .venv/bin/activate,pip install -r requirements.txt
- 本地测试:python test_local.py(规则回退)或 python test_local.py --llm(接入 Bedrock)
- 配置模型:使用 ChatBedrock 指定 model_id 与 region_name,可选模型有 Amazon Nova Micro/Lite/Pro 与 Anthropic Claude
- 部署后查看日志:aws logs tail /aws/bedrock-agentcore/runtimes/<runtime-id>-DEFAULT --log-stream-name-prefix "$(date +%Y/%m/%d)/[runtime-logs" --follow
适用场景:足球类多智能体对局、需要 ReAct 推理与工具调用的决策型智能体、基于 Bedrock 的 AWS 部署。
限制:资料为示例指南,具体 API 行为、模型可用性、价格与性能数据暂未提供;部分函数体以注释占位,需自行实现。