手把手构建多智能体应用:基于LangGraph的投资组合分析系统
📅 2026/7/21 0:38:39
👁️ 阅读次数
📝 编程学习
项目背景与目标
管理投资组合是一项复杂任务,需要持续关注市场趋势、资产表现和风险敞口。许多个人投资者和财务顾问难以手动分析海量数据来做出明智决策。本教程将使用LangGraph构建一个多智能体系统,自动分析用户持有的投资组合(以JSON文件表示),结合金融市场实时信息,生成一份包含优化建议的综合报告。
系统整体架构:层次化多智能体设计
本系统采用层次化(Hierarchical)工作流模式,由一个监督者(supervisor)节点协调三个专业代理:
- search_agent:负责检索金融新闻、公司财报等公开信息,使用Tavily搜索工具。
- read_portfolio_agent:解析本地JSON文件,提取各持仓的买入价、数量、行业等信息。
- doc_writer_agent:整合所有分析结果,生成最终的可读报告。
所有节点共享一个全局状态(State),状态中包含了当前任务、各代理输出以及待写入的报告内容。监督者根据当前状态决定下一个执行的代理或是否终止。
环境配置与依赖
确保安装以下Python包(版本以实际为准):
pipinstalllangchain langgraph tavily-python此外,需要准备一个portfolio.json文件,其结构示例(从原书代码分支获取):
[{"symbol":"AAPL","sector":"Technology","quantity":13,"purchase_price":1202.57,"total_invested":15633.41,"purchase_date":"2022-03-12"}]实现搜索代理
search_agent的核心是利用Tavily工具获取相关信息。在LangGraph中,我们将其定义为一个节点,内部使用一个LLM实例(如GPT-4o)和Tavily搜索API。
关键配置:
classSearchAgent:def__init__(self,llm,tavily_tool):self.llm=llm
编程学习
技术分享
实战经验