当前位置: 首页 > news >正文

[人工智能-大模型-32]:大模型应用层技术栈 - 智能决策层(AI Agent)- 搭建实例

我们来亲手搭建一个智能决策层(AI Agent)的实例。这个Agent将是一个**“个人投资分析助手”**,它能:

  1. 接收用户指令:“分析一下宁德时代(300750.SZ)是否值得投资。”
  2. 自主规划任务:获取公司基本信息、财务数据、行业动态、市场情绪。
  3. 调用工具:使用网络搜索、金融API、代码解释器。
  4. 综合分析并生成一份结构化的投资分析报告。
  5. 输出最终决策建议。

一、技术栈选择

我们将使用轻量级但功能强大的开源框架,快速实现原型:

  • 核心应用开发框架LangChain(最流行的LLM应用开发框架
  • 大模型:OpenAI GPT-4(或国内可替代的通义千问、讯飞星火等)
  • 工具调用
    • TavilySearch:用于搜索最新新闻和行业动态(比传统搜索引擎更适合Agent)
    • Python REPL:代码解释器,用于计算财务比率、绘制图表。
    • (可选)金融数据API:如akshare(免费的中文金融数据接口)。
  • 记忆系统ConversationBufferMemory(简单会话记忆)。
  • 执行引擎LangChain Agents(支持ReAct、Plan-and-Execute等模式)。

环境准备:Python 3.9+,安装依赖:


bash

编辑

pip install langchain langchain-community langchain-openai tavily-python matplotlib akshare

二、代码实现:搭建投资分析Agent

python

编辑

# investment_analyst_agent.pyfrom langchain.agents import initialize_agent, Tool, AgentType
from langchain_community.tools import TavilySearchResults
from langchain_openai import ChatOpenAI
from langchain.memory import ConversationBufferMemory
import matplotlib.pyplot as plt
import pandas as pd
import os# 1. 设置API密钥(请替换为你的实际密钥)
os.environ["OPENAI_API_KEY"] = "your-openai-api-key"
os.environ["TAVILY_API_KEY"] = "your-tavily-api-key"# 2. 初始化大模型
llm = ChatOpenAI(temperature=0, model="gpt-4", streaming=True)# 3. 定义工具集 (Tools)
# 工具1: 网络搜索 - 获取最新资讯
search = TavilySearchResults(max_results=5)# 工具2: Python代码解释器 - 用于计算和绘图
def python_repl_tool(code: str) -> str:"""Safely execute Python code and return the result."""try:# 捕获绘图输出if 'plt.' in code or 'matplotlib' in code:exec(code)plt.show()return "Chart displayed."else:# 对于计算,返回结果result = eval(code)return str(result)except Exception as e:return f"Error executing code: {e}"# 工具3: 模拟获取财务数据(实际中可接入akshare等)
def get_finance_data(ticker: str) -> str:"""Simulate fetching financial data. In real use, call akshare API."""# 模拟数据data = {"ticker": ticker,"revenue_2023": 4000,  # 亿元"net_profit_2023": 450,"pe_ratio": 28.5,"roe": 18.7}return str(data)# 构建工具列表
tools = [Tool(name="Search",func=search.run,description="用于查找公司新闻、行业趋势、市场情绪等最新信息。当需要了解外部动态时使用。"),Tool(name="Python_REPL",func=python_repl_tool,description="一个Python代码解释器。可用于执行数学计算、数据分析、绘制图表等。输入应为可执行的Python代码。"),Tool(name="GetFinanceData",func=get_finance_data,description="获取指定股票代码的财务数据,如营收、利润、PE、ROE等。")
]# 4. 初始化记忆系统
memory = ConversationBufferMemory(memory_key="chat_history", return_messages=True)# 5. 初始化Agent
# 使用 PLAN_AND_EXECUTE 模式,先规划再执行,更稳定
agent = initialize_agent(tools,llm,agent=AgentType.PLAN_AND_EXECUTE,memory=memory,verbose=True,  # 显示思考过程handle_parsing_errors=True
)# 6. 执行任务
if __name__ == "__main__":print("🚀 投资分析助手已启动,请输入您的问题:")# 用户指令user_query = "请全面分析宁德时代(300750.SZ)是否值得投资。你需要:1. 获取其最新财务数据;2. 搜索行业动态和竞争对手情况;3. 分析其估值水平;4. 绘制过去三年营收增长趋势图;5. 给出明确的投资建议。"print(f"\n👤 用户提问:{user_query}\n")# Agent开始工作response = agent.run(user_query)print(f"\n🤖 助手回复:\n{response}")

三、Agent的决策流程解析(模拟运行)

当Agent收到指令后,它会这样思考和行动:

  1. 规划阶段(Planning)

    “用户要求分析宁德时代投资价值。我需要分五步:a) 获取财务数据;b) 搜索行业新闻;c) 计算估值;d) 绘制营收图;e) 综合分析。”

  2. 执行阶段(Execution)

    • 步骤1:调用 GetFinanceData("300750.SZ") → 返回模拟数据。
    • 步骤2:调用 Search("宁德时代 最新动态 竞争对手 比亚迪 中创新航") → 返回近期新闻摘要。
    • 步骤3:调用 Python_REPL 计算:
      python

      编辑

      pe = 28.5
      industry_avg_pe = 25.0
      valuation = "高于行业平均" if pe > industry_avg_pe else "合理"
      valuation
    • 步骤4:调用 Python_REPL 绘图:
      python

      编辑

      import matplotlib.pyplot as plt
      years = [2021, 2022, 2023]
      revenue = [3000, 3500, 4000]  # 亿元
      plt.figure(figsize=(8, 5))
      plt.plot(years, revenue, marker='o')
      plt.title("宁德时代近三年营收增长")
      plt.xlabel("年份")
      plt.ylabel("营收(亿元)")
      plt.grid(True)
      plt.show()
    • 步骤5:综合所有信息,生成报告并给出建议。
  3. 最终输出示例

    宁德时代(300750.SZ)投资分析报告

    1. 财务概况:2023年营收4000亿元,净利润450亿元,ROE 18.7%,盈利能力强。 2. 行业动态:固态电池研发取得突破,但面临比亚迪、中创新航激烈竞争,行业价格战风险上升。 3. 估值分析:当前PE 28.5倍,高于行业平均25倍,估值偏高。 4. 增长趋势:过去三年营收持续增长,复合增长率约15%。

    结论:公司基本面优秀,但短期估值偏高。建议:长期投资者可逢低分批建仓,短期交易者需谨慎。


四、如何进阶?

  1. 接入真实数据源:用 akshare 替换 get_finance_data,获取实时股价、财报。
  2. 增加更多工具:接入邮件工具自动发送报告,或日历工具安排调研会议。
  3. 增强记忆:使用向量数据库存储历史分析记录,实现长期学习。
  4. 多Agent协作:创建“宏观分析师Agent”、“行业研究员Agent”,协同完成更复杂任务。
  5. 加入人类反馈:让用户对报告打分,Agent据此优化下次分析。

总结

这个实例展示了智能决策层(AI Agent)的核心能力自主规划、工具调用、多步推理、执行落地。它不再是简单的问答机器人,而是一个能独立完成复杂任务的“数字分析师”。

通过 LangChain 这样的框架,我们可以快速构建出具备实用价值的AI Agent。未来,这样的智能体将渗透到各行各业,成为人类在信息时代的“超级外脑”。

http://www.dtcms.com/a/513638.html

相关文章:

  • wordpress导航类网站旅游景区网站建设规划
  • 校园类网站模板免费下载怎么让网站被收录
  • 滕州盛扬网络公司网站建设推广秀堂h5官网
  • 酒店如何做网站新建网站
  • 专业系统网站好无锡营销型网站价格
  • 两个域名指向同一个网站简体转繁体wordpress插件
  • 杭州网站排名优化网站seo诊断书
  • Linux下的DNS配置文件/etc/resolv.conf详解(2)
  • 如何做正规的采集网站展示营销型网站
  • 网站建设淘宝属于什么类目北京西站官网主页
  • 全链路智能运维中的日志隐私数据自动脱敏与合规性保障技术
  • vps网站管理助手制作公司app
  • 做网站都要买服务器吗哪些网站可以医生做兼职
  • 【开题答辩实录分享】以《自媒体企业管理信息系统》为例进行答辩实录分享
  • C++ 实际应用系列(五):多线程环境下的内存管理实战
  • 沈阳网站制作聚艺科技建设银行网站机构特点业务发展
  • 网站建设公司做ppt吗济南建设局网站公式
  • large-scale-DRL-exploration代码阅读(三)
  • 2015年手机网站需要主机 空间wordpress kallyas
  • 鸿蒙NEXT调试命令大全:从基础到高级的完整指南
  • 电子商务网站规书淘宝客推广网站建设百度云
  • mysql同一数据库放多少个网站表企业管理咨询考试
  • 泰和县网站免费建站重庆公司直招
  • 网站建设方案标书罗湖网站制作费用
  • 姚家园做网站自己建一个电商网站吗
  • 网站建设电商代运营工具seo
  • 开发网站的流程细节做app推广上哪些网站吗
  • 汕头免费网站制作炫酷网站代码
  • 佛山网站建设红安县建设局网站
  • 外贸营销网站制作公司做汉字的教育网站