AI 金融科技实战(六):AI 自动研报、财务健康评分、智能问答 : 把大模型变成你的财务分析师
财报结构化 + 健康度评分 + 研报自动生成 + 自然语言问答,四大能力一气呵成
上一期我们用量化策略做交易,这一期换个方向:用 AI"读"财报。
传统财务分析需要人工翻阅几百页年报,现在可以交给程序自动完成。本期我们要实现:
- 财报结构化 : 把财报文本转为数据库般的结构化数据
- 财务健康度评分 : 从四维度给公司"体检"
- 自动研报生成 : 基于数据自动输出专业研报
- 金融问答系统 : 像聊天一样查询财务数据
架构设计
原始财报文本 → 结构化提取 → 财务数据字典
│
┌───────────────┼───────────────┐
▼ ▼ ▼
健康度评分 研报生成 金融问答
(4维度100分) (模板+数据驱动) (规则+NLP)第一步:财务健康度评分模型
从四个维度综合评估公司财务健康:
| 维度 | 满分 | 评估项 |
|---|---|---|
| 盈利能力 | 40 | 净利率、ROE、毛利率 |
| 成长能力 | 25 | 营收增长率、净利增长率 |
| 偿债能力 | 20 | 资产负债率 |
| 运营效率 | 15 | 研发费率、ROA |
def rate_financial_health(company_data):
r = company_data["data"]["ratios"]
score = 0
# 盈利能力
if r["净利率"] >= 20: score += 15
elif r["净利率"] >= 10: score += 10
...
# 偿债能力
if r["资产负债率"] <= 30: score += 20
elif r["资产负债率"] <= 50: score += 14
...
# 评级
if score >= 80: return score, "A : 优质"
elif score >= 60: return score, "B : 良好"
...三家公司的健康度对比
浪潮科技(信息技术):
评分: 85/100 █████████████████ A : 优质
恒瑞医药(医药健康):
评分: 78/100 ███████████████ B : 良好
阳光新能源(新能源):
评分: 22/100 ████ D : 需关注一目了然:科技公司财务最健康,新能源公司濒临亏损。
第二步:AI 自动生成研报
基于财务数据模板化生成专业研报摘要:
def generate_research_report(company_data):
# 盈利判断
if r["净利率"] >= 15:
profit_desc = "盈利能力优秀"
elif r["净利率"] >= 5:
profit_desc = "盈利能力良好"
...
# 负债判断
if r["资产负债率"] <= 30:
debt_desc = "低负债运营,财务结构稳健"
...
report = f"""
【核心数据】
• 营业收入: {营收} 亿元 ({增长率})
• 净利润: {净利润} 亿元
• ROE: {ROE}%
【经营分析】
{profit_desc},{growth_desc}。
【风险提示】
• {"⚠️ 公司存在亏损" if 亏损 else "✅ 公司持续盈利"}
...
"""生成的研报示例
📊 浪潮科技股份有限公司 (300888)
信息技术 · 2025年度 投资研报摘要
【核心数据】
• 营业收入: 156.82 亿元 (+28.5%)
• 净利润: 28.43 亿元
• 毛利率: 53.9%
• ROE: 17.0%
【经营分析】
盈利能力优秀,高速增长期。
低负债运营,财务结构稳健。
研发投入占比 16.5%,创新驱动特征明显。
【财务健康评分: 85/100 (A : 优质)】进阶方向:将模板替换为大模型 API,让报告语言更自然、包含更多分析洞察。
第三步:金融自然语言问答
让用户用自然语言查询财务数据:
def financial_qa(query, companies_data):
# 问题匹配
if "营收" in query:
return f"{公司} 营收 {营收} 亿元,同比增长 {增长}%"
elif "ROE" in query:
return f"{公司} ROE = {ROE}%"
elif "负债" in query:
return f"{公司} 资产负债率 = {负债率}%"
...问答演示
👤 Q: 浪潮科技的营收是多少?
🤖 A: 浪潮科技 2025年度营业收入为 156.82 亿元,同比增长 +28.5%。
👤 Q: 阳光新能源的负债率怎么样?
🤖 A: 阳光新能源 资产负债率为 67.8%,🔴 负债偏高。
👤 Q: 恒瑞医药的研发投入多吗?
🤖 A: 恒瑞医药 研发费用 15.67 亿元,占比 17.5%,🔬 高研发投入。
👤 Q: 浪潮科技的财务健康评分?
🤖 A: 浪潮科技 财务健康评分: 85/100,评级: A : 优质。第四步:多公司横向对比
一次性比较全部关键指标:
指标 浪潮科技 恒瑞医药 阳光新能源
营收(亿) 156.82 89.34 423.56
净利润(亿) 28.43 19.56 -12.56
毛利率(%) +53.9% +68.0% +10.5%
ROE(%) +17.0% +16.5% -6.9%
负债率(%) +34.8% +24.5% +67.8%
研发费率(%) +16.5% +17.5% +2.9%
营收增长(%) +28.5% +15.8% -15.2%一眼就能看出: - 恒瑞医药毛利率最高(医药行业特性) - 浪潮科技成长最快 - 阳光新能源全面承压
大模型应用的最佳实践
| 场景 | 当前方案 | LLM 增强版 |
|---|---|---|
| 研报生成 | 模板填充 | LLM 深度分析 + 自然语言 |
| 金融问答 | 关键词匹配 | 语义理解 + 多轮对话 |
| 风险识别 | 硬编码规则 | LLM 推理 + 行业知识 |
| 同业对比 | 表格输出 | LLM 生成对比分析报告 |
最佳组合:结构化数据计算(Python) + 自然语言解读(LLM)。用 Python 保证数字准确,用 LLM 让输出"像人写的"。
运行代码
cd 06-llm-finance/
python llm_finance.py小结
本期我们把金融分析的三件套(评分、研报、问答)串成了一个完整的分析系统。核心逻辑:
结构化数据 → 评分模型 → 研报模板 → 问答引擎
↑ ↓
财报提取 大模型增强
(生产环境)下期预告:金融知识图谱 : 用图数据库挖掘企业关联关系,识别风险传导路径。
代码开源:ai-fintech-tutorial
夜雨聆风