一. 前言
之前说了一直在做股票信息收集 + 风险 + 机遇 舆情分析的一个小工具 ,然后年底的目标是把 AI 植入这个系统。
整个过程中尝试了包括 : CrewAI / LangChain / AutoGen 。 整体来说用法都类似 ,所以综合使用体验和结果后 ,我个人选择了 CrewAI 作为智能体引擎。
项目地址 : gitee.com/antblack/ai...
二. 使用方式
- CrewAI 是什么 : 一个多智能体的开源框架 ,用于多智能体的场景开发
- 核心功能要点 : 3大主要功能点
- 智能体 (Agent) :定义角色 (Role)、目标 (Goal) 和背景 (Backstory),使 AI 成为特定场景的专家
- 我这里理解就是提示词增强 ,通过提示词来让 AI 处理更加专一的事情,至于能多专家,就要看提示词有多强了
- 任务 (Task) :分配具体工作,可设置预期输出 (Expected Output) 和上下文依赖。
- 工具 (Tools) : 赋予 Agent 联网搜索、读写文件、执行代码等"手脚"能力
- 智能体 (Agent) :定义角色 (Role)、目标 (Goal) 和背景 (Backstory),使 AI 成为特定场景的专家
基础概念就说这么多 ,这东西也出来很久了,资料很多就不赘述了。
智能体的创建 :
python
def create_data_analyst_agent(llm=None) -> Agent:
"""
创建数据分析师智能体
Args:
llm: 语言模型实例(可选)
Returns:
配置好的数据分析师 Agent
"""
agent_config = {
"role": "资深股票分析师",
"goal": "对股票进行全面的技术分析和基本面分析,给出专业的投资建议",
"backstory": get_data_analyst_prompt(),
"verbose": True,
"allow_delegation": False
}
if llm is not None:
agent_config["llm"] = llm
return Agent(**agent_config)
工具调用 :
这里代码只展示一下 Tavily 的调用 ,其他的可以从项目里面下载:
python
TAVILY_API_KEY = os.environ.get("TAVILY_API_KEY")
# 假设 API Key 总是有效的,直接初始化客户端
# 如果 TAVILY_API_KEY 为 None, 客户端在调用时会自行失败
client = TavilyClient(api_key=TAVILY_API_KEY)
def search_stock_news(keyword: str, max_results: int = 5) -> str:
"""
搜索股票相关新闻 (简化版)
"""
# 构建搜索查询
query = f"{keyword} 股票 最新消息"
# 执行搜索
response = client.search(
query=query,
max_results=max_results,
search_depth="basic",
include_domains=["sina.com.cn", "eastmoney.com", "10jqka.com.cn", "cnstock.com"]
)
results = response['results']
# 格式化输出
news_text = f"【{keyword} 相关新闻】\n\n"
for i, item in enumerate(results, 1):
title = item.get('title', '无标题')
url = item.get('url', '')
content = item.get('content', '')
# 截取内容
if len(content) > 200:
content = content[:200] + "..."
news_text += f"{i}. {title}\n"
news_text += f" 摘要: {content}\n"
news_text += f" 来源: {url}\n\n"
return news_text.strip()
- 数据其实有两种方式灌到 CrewAI 里面去 ,你可以当成提示词的原始数据写进去 ,也可以通过 CrewAI 本身的 Tools 的能力
python
@tool("搜索股票新闻")
def search_stock_news_tool(keyword: str, max_results: int = 5) -> str:
api_rate_limiter.wait_if_needed()
return _search_stock_news(keyword, max_results)
定义 Task 及 Agent 列表
python
import os
from crewai import Agent, Task, Crew, Process
def analyze_stock_minimal(stock_query: str) -> dict:
# 以贵州茅台作为案例
stock_code = "600519" # 按要求写死或简化
# 2. 获取 LLM
llm = get_llm()
# 3. 创建智能体 (链式定义)
collector_agent = create_data_collector_agent(ALL_TOOLS, llm)
analyst_agent = create_data_analyst_agent(llm)
decision_agent = create_decision_maker_agent(llm)
# 4. 创建任务 (压缩提示词)
task_collect = Task(
description=f"收集 {stock_query} ({stock_code}) 的数据...",
agent=collector_agent,
expected_output="数据摘要..."
)
task_analyze = Task(
description="分析数据...",
agent=analyst_agent,
expected_output="分析报告...",
context=[task_collect]
)
task_decision = Task(
description="给出投资建议...",
agent=decision_agent,
expected_output="投资决策...",
context=[task_collect, task_analyze]
)
# 5. 创建并执行 Crew
stock_crew = Crew(
agents=[collector_agent, analyst_agent, decision_agent],
tasks=[task_collect, task_analyze, task_decision],
process=Process.sequential,
# verbose=True # 演示时建议开启,但按要求移除 print (verbose 会自己 print)
)
# 6. 执行任务
result = stock_crew.kickoff()
# 7. 提取结果
return {
"stock_query": stock_query,
"stage1_data": str(task_collect.output.raw) if task_collect.output else "...",
"stage2_analysis": str(task_analyze.output.raw) if task_analyze.output else "...",
"stage3_decision": str(task_decision.output.raw) if task_decision.output else "...",
"final_output": str(result)
}
- 功能应该很清晰了 , llm 👉 Agent 👉 Task 👉 执行 Crew.
- Crew 的创建参数如下 ,可以参考源码里面,会更详细一点
| 参数 (Attribute) | 核心作用与说明 |
|---|---|
| agents | (list) 团队的 "成员列表",定义了**'谁'**在团队中。 |
| tasks | (list) 团队的 "任务清单",定义了**'做什么'**以及执行顺序。 |
| process | (Enum) 工作流模式。sequential (顺序) 或 hierarchical (层级)。 |
| manager_llm | (LLM) hierarchical 模式下,充当 "经理" 角色的 LLM。 |
| manager_agent | (Agent) hierarchical 模式下,使用一个自定义 Agent 实例充当 "经理"。 |
| planning | (bool) 在 kickoff 前,让 Crew 首先生成一个执行计划。 |
| function_calling_llm | (LLM) (推荐) 指定一个 LLM 专门 负责所有智能体的工具调用。 |
| chat_llm | (LLM) 在交互式聊天模式下,用于协调对话的 LLM。 |
| memory | (bool) 启用跨任务的短期记忆,允许 Crew 存储和回忆信息。 |
| cache | (bool) 启用工具缓存。重复调用相同参数的工具时,直接返回缓存结果。 |
| max_rpm | (int) (每分钟请求数) 限制 Crew 调用 LLM API 的总速率。 |
| verbose | (bool/int) 在控制台打印详细的实时日志(思考、行动、工具输出)。 |
| task_callback | (callable) 每个完整 任务 (Task) 执行完毕后调用的函数。 |
| step_callback | (callable) (粒度更细) 智能体的每一步 思考/行动 (Step) 后调用的函数。 |
| config | (dict) 用于传入高级或不常用的 JSON/字典格式配置。 |
| prompt_file | (str) 指定一个 JSON 文件路径,用自定义提示覆盖默认提示。 |
| share_crew | (bool) 允许 crewAI (匿名) 收集运行数据以帮助改进库。 |
| security_config | (dict) 用于工具使用的指纹识别和安全控制。 |
三. 过程中的难点和痛点
3.1 Tools 调用的不可控
Tools 调用不可控 ,需要提示词去强控 ,有的时候 AI 并不会主动调用Tools.
再一个 Tools 的质量返回的结果也不可控,需要去通过提示词去获取更好的结果。
比如通过 Tavily 去查询的时候 ,有可能什么都查不出来(这种数据毫无意义) :

3.2 过程过长
一个 AI 查询已经很慢了 ,3个 AI 查询列加起来会占用大量的时间 ,虽然智能体能让结果更加准确,但是相对的会导致处理时间被拉长
3.3 功能的必要性
智能体 让 AI 变成专家 ,但是其本质是通过提示词, 那我准备3套提示词 ,然后一个 For 循环分开调用 ,其对应的效果是不是也是差不多的 ?
如果业务不是很复杂 ,硬编码整套流程 ,好像处理起来会更简单,那么真的有必要上复杂的框架吗?
总结
个人对于智能体的使用并不多 ,很多地方也在慢慢探索中 ,所以思考的层次也比较肤浅。
智能体我觉得是很有必要的 ,能让极易扩散的 AI 收束起来,提高回答的准确性。
后续就准备在开源项目里面接入这个功能了。
参考记录
xml
================================================================================
📈 股票分析多智能体系统
================================================================================
本系统演示四个阶段的协作流程:
S1: 数据收集 → S2: 智能体创建 → S3: 智能体协作 → S4: 结果保存
================================================================================
📊 开始分析股票:贵州茅台
================================================================================
识别股票代码: 600519
================================================================================
S1: 智能体创建阶段 - 初始化多智能体系统
================================================================================
✅ 已创建智能体:
🔍 数据收集员 - 配备了 6 个工具(股票数据+新闻搜索)
📊 数据分析师 - 负责分析股票
💼 投资决策官 - 负责做出决策
================================================================================
S2: 智能体协作阶段 - 执行多智能体任务流
================================================================================
🚀 开始执行协作任务...
数据收集员将自主调用工具获取数据...
--------------------------------------------------------------------------------
╭────────────────────────────────────────────────────────── Crew Execution Started ──────────────────────────────────────────────────────────╮
│ │
│ Crew Execution Started │
│ Name: crew │
│ ID: bd26e5d6-a16a-439c-ae84-75306378ec7c │
│ Tool Args: │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
╭───────────────────────────────────────────────────────────── 🤖 Agent Started ─────────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Task: │
│ 请收集股票 贵州茅台 (代码: 600519) 的完整数据。 │
│ │
│ **你必须使用以下工具来获取数据:** │
│ 1. 使用 "获取股票实时价格" 工具获取实时行情 │
│ 2. 使用 "获取股票基本信息" 工具获取公司信息 │
│ 3. 使用 "获取股票历史数据" 工具获取近5天的K线数据(参数: stock_code="600519", days=5) │
│ 4. 使用 "搜索股票新闻" 工具获取最新新闻(参数: keyword="贵州茅台", max_results=3) │
│ │
│ **输出要求:** │
│ 1. 整理工具返回的所有数据 │
│ 2. 使用清晰的 Markdown 格式 │
│ 3. 包含:股票名称、当前价格、涨跌幅、行业、近期走势、最新动态 │
│ 4. 控制在 300 字以内 │
│ │
│ **重要:** │
│ - 必须调用所有 4 个工具获取完整数据 │
│ - 不要编造任何数据,只使用工具返回的真实数据 │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
└── 🔧 Used 获取股票实时价格 (1)
╭───────────────────────────────────────────────────────── 🔧 Agent Tool Execution ──────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Using Tool: 获取股票实时价格 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────────────────────────── Tool Input ────────────────────────────────────────────────────────────────╮
│ │
│ "{\"stock_code\": \"600519\"}" │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────────────────────────────── Tool Output ────────────────────────────────────────────────────────────────╮
│ │
│ 【600519 (600519.SH) 实时行情】 │
│ 股票名称: 贵州茅台 │
│ 当前价格: ¥1456.60 │
│ 昨日收盘: ¥1470.38 │
│ 涨跌额: ¥-13.78 │
│ 涨跌幅: -0.94% │
│ 今日开盘: ¥1470.00 │
│ 最高价: ¥1478.95 │
│ 最低价: ¥1456.30 │
│ 成交量: 2,747,306 手 │
│ 成交额: 4,031,007,106.00 万元 │
│ 更新时间: 2025-11-14 15:00:00 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
├── 🔧 Used 获取股票实时价格 (1)
└── 🔧 Used 获取股票基本信息 (1)
╭───────────────────────────────────────────────────────── 🔧 Agent Tool Execution ──────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Using Tool: 获取股票基本信息 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────────────────────────── Tool Input ────────────────────────────────────────────────────────────────╮
│ │
│ "{\"stock_code\": \"600519\"}" │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────────────────────────────── Tool Output ────────────────────────────────────────────────────────────────╮
│ │
│ 【600519 (600519.SH) 公司信息】 │
│ 股票名称: 贵州茅台 │
│ 所属行业: 食品饮料 │
│ 所属地区: 贵州 │
│ 上市市场: 上海证券交易所 │
│ │
│ 💡 提示:详细财务数据需要 Tushare 积分权限 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
├── 🔧 Used 获取股票实时价格 (1)
├── 🔧 Used 获取股票基本信息 (1)
└── 🔧 Used 获取股票历史数据 (1)
╭───────────────────────────────────────────────────────── 🔧 Agent Tool Execution ──────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Using Tool: 获取股票历史数据 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────────────────────────── Tool Input ────────────────────────────────────────────────────────────────╮
│ │
│ "{\"stock_code\": \"600519\", \"days\": 5}" │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────────────────────────────── Tool Output ────────────────────────────────────────────────────────────────╮
│ │
│ 【600519 (600519.SH) 近5天历史数据】 │
│ 期间最高价: ¥1478.95 │
│ 期间最低价: ¥1434.98 │
│ 期间平均价: ¥1462.68 │
│ 期初价格: ¥1462.30 (20251110) │
│ 最新价格: ¥1456.60 (20251114) │
│ 期间涨跌: ¥-5.70 (-0.39%) │
│ 数据点数: 5 天 │
│ │
│ 最近5天数据: │
│ 2025-11-10: 开¥1435.00 收¥1462.30 高¥1463.69 低¥1434.98 量49,452手 涨跌+1.90% │
│ 2025-11-11: 开¥1462.00 收¥1458.99 高¥1462.18 低¥1447.00 量26,692手 涨跌-0.21% │
│ 2025-11-12: 开¥1459.98 收¥1465.15 高¥1478.36 低¥1459.21 量32,992手 涨跌+0.35% │
│ 2025-11-13: 开¥1462.12 收¥1470.38 高¥1473.58 低¥1458.00 量31,179手 涨跌+0.56% │
│ 2025-11-14: 开¥1470.00 收¥1456.60 高¥1478.95 低¥1456.30 量27,473手 涨跌-0.91% │
│ │
│ ✅ 数据来源:Tushare 真实K线数据 │
│ │
│ │
│ You ONLY have access to the following tools, and should NEVER make up tools that are not listed here: │
│ │
│ Tool Name: 获取股票实时价格 │
│ Tool Arguments: {'stock_code': {'description': None, 'type': 'str'}} │
│ Tool Description: │
│ 获取股票实时价格和行情数据 │
│ │
│ Args: │
│ stock_code: 股票代码(如 600519, 600000, 000001 等) │
│ │
│ Returns: │
│ 股票实时价格信息,包括当前价、涨跌幅、成交量等 │
│ │
│ Examples: │
│ get_stock_price_tool("600519") # 贵州茅台 │
│ get_stock_price_tool("600000") # 浦发银行 │
│ │
│ Tool Name: 获取股票基本信息 │
│ Tool Arguments: {'stock_code': {'description': None, 'type': 'str'}} │
│ Tool Description: │
│ 获取股票的基本信息和公司资料 │
│ │
│ Args: │
│ stock_code: 股票代码(如 600519, 600000, 000001 等) │
│ │
│ Returns: │
│ 股票基本信息,包括公司名称、所属行业、上市市场等 │
│ │
│ Examples: │
│ get_stock_info_tool("600519") # 获取贵州茅台公司信息 │
│ get_stock_info_tool("600000") # 获取浦发银行公司信息 │
│ │
│ Tool Name: 获取股票历史数据 │
│ Tool Arguments: {'stock_code': {'description': None, 'type': 'str'}, 'days': {'description': None, 'type': 'int'}} │
│ Tool Description: │
│ 获取股票的历史K线数据 │
│ │
│ Args: │
│ stock_code: 股票代码(如 600519, 600000, 000001 等) │
│ days: 获取最近多少天的数据,默认30天 │
│ │
│ Returns: │
│ 历史K线数据摘要,包括期间最高价、最低价、涨跌幅等 │
│ │
│ Examples: │
│ get_stock_history_tool("600519", 30) # 获取贵州茅台近30天数据 │
│ get_stock_history_tool("600000", 5) # 获取浦发银行近5天数据 │
│ │
│ Tool Name: 搜索股票新闻 │
│ Tool Arguments: {'keyword': {'description': None, 'type': 'str'}, 'max_results': {'description': None, 'type': 'int'}} │
│ ... │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
├── 🔧 Used 获取股票实时价格 (1)
├── 🔧 Used 获取股票基本信息 (1)
├── 🔧 Used 获取股票历史数据 (1)
└── 🔧 Used 搜索股票新闻 (1)
╭───────────────────────────────────────────────────────── 🔧 Agent Tool Execution ──────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Using Tool: 搜索股票新闻 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────────────────────────── Tool Input ────────────────────────────────────────────────────────────────╮
│ │
│ "{\"keyword\": \"\\u8d35\\u5dde\\u8305\\u53f0\", \"max_results\": 3}" │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────────────────────────────── Tool Output ────────────────────────────────────────────────────────────────╮
│ │
│ 【贵州茅台 相关新闻】 │
│ │
│ 1. 贵州茅台(SH600519)股吧-实时行情分析讨论-新浪财经 │
│ 摘要: ... │
│ 贵州茅台(SH600519)股吧提供实时股票行情、热门股票讨论与投资交流平台。汇聚全球股民,分享股市动态、投资策略与个股分析,助您把握投资机会! │
│ ... 最新. 最热. │
│ 来源: http://guba.sina.com.cn/bar.php?name=sh600519 │
│ │
│ 2. 贵州茅台(600519)公司高管 │
│ 摘要: 贵州茅台酒股份有限公司. A股. 0股. 2020-04-22 ; 贵州茅台酒股份有限公司. A股. 0股. 2019-03-29. │
│ 来源: https://vip.stock.finance.sina.com.cn/corp/view/vCI_CorpManagerInfo.php?stockid=600519&Pcode=30030066&Name=%D5%C5%D2%E3 │
│ │
│ 3. 贵州茅台1456.60(-0.94%)_个股资讯- 新浪财经 │
│ 摘要: �������� �������� ��ѡ��Ʊ�� �ƾ���ҳ��Ʊ�����۹������ڻ�����������ծȯ���������¹����������ɰ���ѡ�� * ����300 ���˲ƾ� > ���˹�Ʊ > ����ę́ > │
│ ������Ѷ * �������� * �������� * �������� * �������� | ���� | �۸�(Ԫ) | �ǵ... │
│ 来源: https://vip.stock.finance.sina.com.cn/corp/go.php/vCB_AllNewsStock/symbol/sh600519.phtml │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Status: Executing Task...
├── 🔧 Used 获取股票实时价格 (1)
├── 🔧 Used 获取股票基本信息 (1)
├── 🔧 Used 获取股票历史数据 (1)
└── 🔧 Used 搜索股票新闻 (1)
╭────────────────────────────────────────────────────────── ✅ Agent Final Answer ───────────────────────────────────────────────────────────╮
│ │
│ Agent: 股票数据收集专家 │
│ │
│ Final Answer: │
│ ## 贵州茅台 (600519) │
│ - **当前价格**: ¥1456.60 │
│ - **涨跌幅**: -0.94% │
│ - **所属行业**: 食品饮料 │
│ - **近期走势**: 近5天最高价: ¥1478.95,最低价: ¥1434.98,期间涨跌幅: -0.39% │
│ │
│ ### 最新动态: │
│ 1. [贵州茅台(SH600519)股吧 - 新浪财经](http://guba.sina.com.cn/bar.php?name=sh600519): 提供实时股票行情与投资交流平台。 │
│ 2. │
│ [贵州茅台公司高管信息](https://vip.stock.finance.sina.com.cn/corp/view/vCI_CorpManagerInfo.php?stockid=600519&Pcode=30030066&Name=%D5%C5 │
│ %D2%E3): 显示公司高管信息。 │
│ 3. [贵州茅台1456.60(-0.94%) - 新浪财经](https://vip.stock.finance.sina.com.cn/corp/go.php/vCB_AllNewsStock/symbol/sh600519.phtml): │
│ 提供个股最新行情资讯。 │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
└── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
Assigned to: 股票数据收集专家
Status: ✅ Completed
├── 🔧 Used 获取股票实时价格 (1)
├── 🔧 Used 获取股票基本信息 (1)
├── 🔧 Used 获取股票历史数据 (1)
└── 🔧 Used 搜索股票新闻 (1)
╭───────────────────────────────────────────────────────────── Task Completion ──────────────────────────────────────────────────────────────╮
│ │
│ Task Completed │
│ Name: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583 │
│ Agent: 股票数据收集专家 │
│ Tool Args: │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
└── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
Status: Executing Task...
╭───────────────────────────────────────────────────────────── 🤖 Agent Started ─────────────────────────────────────────────────────────────╮
│ │
│ Agent: 资深股票分析师 │
│ │
│ Task: │
│ 基于收集的数据进行简要分析。 │
│ │
│ **输出要求:** │
│ - 使用 Markdown 格式 │
│ - 控制在 200 字以内 │
│ - 包含:技术面评价、基本面评价、风险提示 │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
└── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
Status: Executing Task...
╭────────────────────────────────────────────────────────── ✅ Agent Final Answer ───────────────────────────────────────────────────────────╮
│ │
│ Agent: 资深股票分析师 │
│ │
│ Final Answer: │
│ ```markdown │
│ ## 技术面 │
│ - 当前价格为 ¥1456.60,近期走势显示5天内最高价为 ¥1478.95,最低价为 ¥1434.98,整体表现平稳,但近期跌幅 -0.39%,市场情绪偏向谨慎。 │
│ │
│ ## 基本面 │
│ - │
│ 贵州茅台属于食品饮料行业,该行业在市场上表现相对稳定,长远增长潜力大。无最新财报及业绩数据,但高管信息及公司治理透明度良好,有利于投资者 │
│ 信心。 │
│ │
│ ## 风险提示 │
│ - 市场波动性较大,近期已表现出小幅下滑,可能受整体宏观经济或行业趋势影响。投资者应密切关注行业动态和公司公告。 │
│ ``` │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
└── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
Assigned to: 资深股票分析师
Status: ✅ Completed
╭───────────────────────────────────────────────────────────── Task Completion ──────────────────────────────────────────────────────────────╮
│ │
│ Task Completed │
│ Name: 7c2f35af-7d01-4e3b-859c-4a312752f173 │
│ Agent: 资深股票分析师 │
│ Tool Args: │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
├── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
│ Assigned to: 资深股票分析师
│ Status: ✅ Completed
└── 📋 Task: 4b3aba38-de18-4693-947c-49232a7b97ff
Status: Executing Task...
╭───────────────────────────────────────────────────────────── 🤖 Agent Started ─────────────────────────────────────────────────────────────╮
│ │
│ Agent: 投资决策官 │
│ │
│ Task: │
│ 给出最终投资建议。 │
│ │
│ **输出要求:** │
│ - 使用 Markdown 格式 │
│ - 控制在 200 字以内 │
│ - 包含:操作建议(买入/持有/卖出)、目标价位、止损价位、核心理由 │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
├── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
│ Assigned to: 资深股票分析师
│ Status: ✅ Completed
└── 📋 Task: 4b3aba38-de18-4693-947c-49232a7b97ff
Status: Executing Task...
╭────────────────────────────────────────────────────────── ✅ Agent Final Answer ───────────────────────────────────────────────────────────╮
│ │
│ Agent: 投资决策官 │
│ │
│ Final Answer: │
│ ```markdown │
│ ## 操作建议:持有 │
│ │
│ - 目标价位:需进一步观察市场情绪,适时调整 │
│ - 止损价位:¥1430,避免较大损失 │
│ - │
│ 核心理由:贵州茅台目前价格稳定,尽管近期小幅回调,行业前景良好。整体表现显示出市场谨慎态度,需要关注宏观经济变化。持有当前股权将有助于在 │
│ 长期内把握潜在上涨空间。 │
│ ``` │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🚀 Crew: crew
├── 📋 Task: 0523bfe7-8daa-470f-a8fc-5f0aa6e49583
│ Assigned to: 股票数据收集专家
│ Status: ✅ Completed
│ ├── 🔧 Used 获取股票实时价格 (1)
│ ├── 🔧 Used 获取股票基本信息 (1)
│ ├── 🔧 Used 获取股票历史数据 (1)
│ └── 🔧 Used 搜索股票新闻 (1)
├── 📋 Task: 7c2f35af-7d01-4e3b-859c-4a312752f173
│ Assigned to: 资深股票分析师
│ Status: ✅ Completed
└── 📋 Task: 4b3aba38-de18-4693-947c-49232a7b97ff
Assigned to: 投资决策官
Status: ✅ Completed
╭───────────────────────────────────────────────────────────── Task Completion ──────────────────────────────────────────────────────────────╮
│ │
│ Task Completed │
│ Name: 4b3aba38-de18-4693-947c-49232a7b97ff │
│ Agent: 投资决策官 │
│ Tool Args: │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────────────────────────────── Crew Completion ──────────────────────────────────────────────────────────────╮
│ │
│ Crew Execution Completed │
│ Name: crew │
│ ID: bd26e5d6-a16a-439c-ae84-75306378ec7c │
│ Tool Args: │
│ Final Output: ```markdown │
│ ## 操作建议:持有 │
│ │
│ - 目标价位:需进一步观察市场情绪,适时调整 │
│ - 止损价位:¥1430,避免较大损失 │
│ - │
│ 核心理由:贵州茅台目前价格稳定,尽管近期小幅回调,行业前景良好。整体表现显示出市场谨慎态度,需要关注宏观经济变化。持有当前股权将有助于在 │
│ 长期内把握潜在上涨空间。 │
│ ``` │
│ │
│ │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
================================================================================
S3: 结果保存阶段 - 生成分析报告
================================================================================
💾 完整结果已保存到: result\stock_analysis_20251116_202851.md
💾 结果也已保存到: output.md
================================================================================
✅ 所有任务执行完成!
================================================================================
💡 技术亮点:Agent 通过 CrewAI 工具调用链自主获取数据
不再是手动调用工具后将数据注入,而是让 Agent 自己决定何时调用哪个工具
================================================================================
S4: 最终输出阶段 - 投资决策建议
================================================================================
```markdown
## 操作建议:持有
- 目标价位:需进一步观察市场情绪,适时调整
- 止损价位:¥1430,避免较大损失
- 核心理由:贵州茅台目前价格稳定,尽管近期小幅回调,行业前景良好。整体表现显示出市场谨慎态度,需要关注宏观经济变化。持有当前股权将有助于在长期内把握潜在上涨空间。