手搓“巴菲特”智能体:用户吐槽与V2.0优化实战
我们先来直面一个现实:当亲手打造的“巴菲特”智能体上线后,试用者的反馈并不全是鲜花和掌声。在一阵兴奋期过后,实际使用中的“槽点”很快就浮出水面了。
如果你恰好也尝试过这类AI投资助手,下面这份“吐槽清单”大概会很有共鸣:
- 功能单一:除了做股票分析,其他问题一概回答“抱歉,超出我的能力范围”。
- 记忆只有3秒:完全记不住上一轮对话的上下文,每次都要重新描述需求。
- 模型幻觉严重:比如问美团股价,它给出的答案是错的,而且言之凿凿。
- 技术分析能力不足:需要看MACD、KDJ这类指标时,它直接“熄火”了。
- 输出与需求错位:用户只是想快速查个股价,它却输出一整套复杂的分析报告。
这些问题其实很有代表性。它们暴露出一个核心矛盾:我们设计的AI助手,与用户真实的使用习惯和预期之间,存在一条不小的鸿沟。
那么,问题到底出在哪?又该如何针对性优化?今天就来聊聊改造思路和具体的实现过程。
问题分析与优化方向
把上面这些槽点归归类,可以提炼出三个主要问题及其对应的解法:
问题一:Agent定位与用户预期的冲突
最初的设计思路,是把智能体严格限定为“股票深度分析工具”——输入一只股票,自动走完“数据收集-框架分析-报告生成”的闭环。但用户实际想要的,是一个能灵活应对多种场景的“投资助理”。比如,你可能只想知道一个概念的解释,或者听听巴菲特关于某个行业的看法。但之前系统的prompt写得过于死板,把这条路堵死了。
优化方向很简单:把“股票分析师”的定位,升级为能处理投资咨询、信息查询、深度分析等多任务的“综合投资顾问”。而实现的关键,就是引入一个“意图识别”模块,在用户提出需求后,先判断它属于哪个类型,再交给不同的流程去处理。
问题二:价格准确性 vs. 大模型搜索幻觉
股价这种实时且精确的信息,让大模型自己去搜索,本质上是在赌概率。特别是像美团、阿里这种多地上市的企业,模型很容易给出错位的信息。靠模型自己的判断去检索,数据出错的概率相当高。
优化方向:将股价和行情数据的获取,从“模型搜索”切换为“接口调用”。把可靠的第三方数据接口封装成工具,当系统识别到用户需要查询价格时,直接调用工具获取精确数据。
问题三:技术分析能力短板
技术分析需要大量历史成交数据以及MACD、KDJ这类经过计算后的指标。纯靠模型搜索来获取这些结构化数据,完全不现实。
优化方向:为技术分析需求开设“绿色通道”。在意图识别环节,一旦确认用户想做技术分析,就调用封装好的专业数据工具来提供基础数据。
下面,我们先聚焦第一个问题,看看改造的具体步骤。
从“股票分析助理”到“投资咨询助手”
要让AI完成这个角色转换,需要在两个层面动手:一是重新定义它的“自我认知”(Prompt),二是重构它的工作流程。
Step 1:重写应用定义与Prompt
首先,欢迎语得变。不再是“请发送股票代码”,而是明确告知用户:“我是您的巴菲特投资顾问,可以聊投资哲学、查资讯,也可以做深度股票分析。”
(此处应有欢迎语修改后的截图)
更关键的是Agent Prompt的改写。我们把工作路径重新设计了一下:除了原有的深度分析流程,新增了“知识库问答”和“序贯思考(Sequential Thinking)”两个工具。前者用来回答投资概念和常识性问题,后者用来处理需要逻辑推理的复杂咨询。这样,AI的边界就从“分析一只股票”扩展到“解决投资相关的问题”。
(此处应有Agent Prompt改写后的截图)
Step 2:工作流——新增意图识别与路由分支
由于这个应用采用了Multi-Agent(多智能体)框架,并且通过工作流来编排不同Agent之间的协作,所以我们就能非常灵活地处理不同任务。
整个链路的起点,就是第一个节点——大模型意图识别。它的任务是从用户输入中提取需求类型,然后把请求分配给对应的分支。
(此处应有工作流链路示意图)
具体操作分为几个小步骤:
1. 大模型意图识别节点设置
首先,在输入变量中选择“用户输入”作为来源。
(此处应有输入变量设置截图 x2)
接着,配置意图识别模块。这里需要选定模型,并明确告诉它要提取哪些意图。我们可以预设几个核心意图,比如:“股票深度分析”、“投资哲学/理论咨询”、“信息查询(股价、财报等)”。同时,需要为每个意图配上清晰的描述和示例。
(此处应有意图设置截图)
2. 为不同意图设置分支流程
最后一步,就是把识别出的意图连接到相应的处理流程上。
- 股票深度分析(意图1):连接到原有的完整分析流程。
- 投资话题/信息查询/其他(兜底):连接到新分支上。这里我们开发了一个“股票分析小助理”Agent,专门用来处理那些非深度分析、但需要快速响应的请求。它能查股价、解释概念,或者进行简单的通用对话,这就解决了槽点1、3和5的问题。
阶段性优化效果
经过这一轮改造,智能体的表现有什么变化?
1. 欢迎语与多场景响应
现在,当用户输入不同类型的问句时,系统能给出精准回应。比如,用户问“什么是市盈率?”,它直接调用知识库给出定义和例子,而不是生硬地索要股票代码。
(此处应有优化后的欢迎语及多场景响应截图)
2. 投资小白咨询
当用户问“我是新手,应该先学什么?”这类问题时,智能体也能给出有逻辑、有步骤的引导,而不是直接拒绝。
(此处应有投资小白咨询对话截图)
3. 股票深度分析
当然,核心功能依然健在。输入“分析贵州茅台”,它依然会走完整的数据收集、财务分析、估值判断流程。
(此处应有茅台风析对话截图)
可以看到,仅仅通过修改定位、增加意图识别和分支流程,智能体就从“单功能工具”蜕变为了更接近“人”的投资助手。当然,这还只是V2.0版本。
下期预告
接下来,我们会继续解决剩下的几个硬骨头:如何通过封装数据接口来彻底解决价格查询的准确性问题?以及如何让AI有能力调用历史数据和指标计算,真正实现技术分析?这些将在下一期展开。
