从 0 到 1 搭一个金融研究 Agent:我踩过的那些坑

QVeris · 产品实践
上周我在带一个企业客户 POC,对方的需求很明确:
"能不能让我用自然语言问,分析一下苹果和谷歌的研发投入对比,然后 AI 自动把数据跑出来?"
这个需求听起来不复杂,但实际上横跨了好几个技术环节。借着这次 POC 复盘,把踩过的坑整理出来,供做 Agent 开发的产品和商务同学参考。
第一个坑:Prompt 写得再好,也抵不过"数据调不通"
一开始,我们把重点放在了 Prompt 优化上——怎么写指令让 AI 输出更稳定、格式更清晰。
结果一接真实数据,问题全暴露了:
FMP 的"income statement"接口返回的字段名,和文档里写的不一样。
财报年化数据有的按财年算、有的按自然年算,需要二次处理。某个字段在免费版里没有,但 AI 不知道,还在继续调用。
Lesson 1:Agent 的上限不是 Prompt 决定的,是数据层决定的。
花三小时调 Prompt,不如花十分钟把数据接口校验一遍。
第二个坑:AI "以为"它知道的数据,其实它不知道
我们用的是 Claude + QVeris 的组合。Claude 的推理能力很强,它能根据公开知识给出一个看起来很专业的分析——但那不是真实数据,是训练数据的推演。
客户问:"META 上一季度的资本支出是多少?"
Claude 自信地给了一个数字。我们在后台用 QVeris 调出真实数据——差了两个百分点。
客户说:"如果你的数字是捏造的,我怎么敢用在研究报告里?"
Lesson 2:AI + 真实数据 = AI 的价值。AI - 真实数据 = AI 的风险。
这两件事必须同时成立,一个都不能少。
第三个坑:接入不是终点,而是起点
数据接通了,不代表 Agent 能稳定运行。
第一版上线后,遇到的实际问题:
-
某天 FMP 返回速度从 200ms 变成了 3s,Agent 超时了
-
某天某个字段突然变成了 null,AI 把它当 0 处理了
-
某天免费额度用完了,Agent 直接报错,但没有任何告警
这些问题靠 QVeris 的 discover/inspect/call 三层结构解决了一部分:
inspect 阶段,QVeris 会告诉 Agent:这个接口的稳定性评级、是否有rate limit、当前是否可调用;
call 阶段,QVeris 处理了重试逻辑和超时熔断
Lesson 3:接入只是 20%,剩下 80% 是运维和稳定性。
Agent 开发者不需要懂金融 API 的每一个细节,但需要有一个基础设施层帮他们兜底。
第四个坑:合规不是事后想起来的,是设计阶段就定好的
客户是做 B2B 金融服务的,他们的内容面向机构投资者。
在我们最初的设计里,Agent 的输出是直接给到用户的——包括 AI 给出的分析结论和信号判断。
客户法务说:不行。AI 给出的结论如果被理解为"投资建议",在他们的监管框架下是不合规的。
最后我们调整了定位:Agent 输出的是"数据分析辅助",不是"投资建议"。一个词的区别,决定了产品能不能合规上线。
Lesson 4:做金融 AI 的产品,合规是功能需求,不是加分项。
从一开始就要想清楚"这个 Agent 告诉用户的是什么、不是什么"。
这次 POC 让我重新理解了 QVeris 在 Agent 开发里的真实位置:
不是说 QVeris 替代了谁的工作,而是**
**
QVeris 把那些本不应该让开发者花时间去处理的事情,自动处理掉了——找数据、验数据、接数据、管稳定性。
开发者的时间应该花在"这个 Agent 要解决什么问题"上,而不是花在"这个 API怎么接"上。
