| name | news-sentiment-finbert |
| description | RSS 新闻情绪识别(FinBERT 中文金融情感)安装与运维 — 情绪管线架构、transformers 安装、FinBERT 权重下载、字典法扩充、全量重算、情绪筛选/条形图/个股资讯标签的使用。在 QuantBot / Claude Code 中排查新闻情绪不生效、重新安装 FinBERT、扩充情绪词、触发新闻情绪重算时使用。触发词:新闻情绪、情绪识别、FinBERT、情绪不生效、情绪都是中性、字典法、新闻重算、news sentiment |
新闻情绪识别(FinBERT)安装与运维技能
QuantMind 的 RSS 新闻情绪识别管线:Huntly 抓取 → celery 每分钟 enrich → 股票/行业/事件标签 + 情绪分 → news_article_enrichment 表 → 前端 RSS 面板/个股资讯 Tab 展示利好/利空。
本技能覆盖情绪层的安装、验证、重算、排查、词库增强。
1. 架构与数据流
Huntly (RSS 抓取, 381 源, 41.5 万文章)
→ celery-beat 每 60s: news-enrich-recent (run_enrichment_batch)
→ NewsMatcher (Aho-Corasick + finance_lexicon 5 万词: 股票/行业/事件/情感)
→ sentiment.score() (两级融合)
字典法 dict_score (finance_lexicon sentiment_pos/neg 词权重差)
+ FinBERT (bardsai/finance-sentiment-zh-base, CPU, conf≥0.55 才融合)
→ 写入 news_article_enrichment 表 (model_version 带 +finbert 后缀表示 FinBERT 生效)
→ 前端:
/rss-news NewsPanel: 情绪筛选/利好利空强度排序/统计栏情绪分布条形图
个股终端「个股资讯」Tab: 每篇利好/利空标签 (stock_news 关联 enrichment)
情绪词库:finance_lexicon 已从最初的 230 词扩充到 51,887 词(sentiment_pos 27,227 / sentiment_neg 24,089 / event 571),来源见第 6 节。
6. 情绪词库增强(从 230 词 → 5 万词)
情绪词分两级来源,统一存 finance_lexicon:
6.1 现成情感词典(通用,可复现导入)
| 来源 | 词数 | 说明 |
|---|
| DLUT 情感本体库 (github.com/yizhanmiao/DLUT-Emotionontology) | 22,001 | 中文情感词汇本体,强度 1-9,极性 1正/2负 |
| pysenti (github.com/shibing624/pysenti) | 9,870 | 内置情感词典,连续分数 -7~+7 |
| NTUSD 台大词典 (github.com/ntunlplab/NTUSD) | 20,485 | 繁体,Big5 编码,需转简体 |
6.2 RSS 标题提炼(金融语境,最精准)
用 41.5 万条 Huntly 标题 + enrichment 已有情绪标签,做共现统计(对数似然比 LLR 筛选):