BettaFish(微舆):开源多智能体舆情分析工具,自动生成深度洞察报告
一、BettaFish是什么
BettaFish(微舆)是一款开源的多智能体舆情分析系统,通过AI驱动的多智能体协作,实现对国内外30+主流社交媒体的全域舆情监控与深度分析。用户只需通过对话提出需求,系统即可全自动爬取数据、多维度解析,并生成结构化报告,帮助破除信息茧房、还原舆情全貌。其轻量化架构支持快速部署与定制扩展,适用于品牌管理、社会热点追踪、政策评估等多场景,为决策提供数据支持。
简单来说,当用户想了解某个事件(如“某品牌新品争议”)、话题(如“环保政策讨论”)或群体态度(如“年轻人对AI技术的看法”)时,只需向BettaFish输入需求,系统会自动完成一系列操作:从微博、小红书、抖音、B站、Twitter等30+平台爬取相关数据(包括文字评论、短视频、图文内容等),通过多个智能体(Agent)的协作分析,最终生成包含情感倾向、观点分布、关键人物、发展趋势等维度的深度报告。
作为从0开始构建的多智能体系统,BettaFish不仅限于舆情分析,其模块化设计使其可通过定制扩展到金融市场分析、用户行为研究等其他领域,成为通用的数据分析引擎。项目开源在GitHub,允许用户自由使用、修改和二次开发,降低了舆情分析工具的使用门槛。

二、功能特色
BettaFish的核心竞争力在于“AI驱动的全自动分析”与“多智能体协作的深度洞察”,相比传统舆情工具,其特色可概括为以下六点:
1. 全域社媒覆盖,7x24小时实时监控
系统内置的爬虫集群(MindSpider)支持对10+类主流平台的实时数据捕获,包括:
国内平台:微博、小红书、抖音、B站、知乎、微信公众号等;
国外平台:Twitter、Facebook、Instagram、YouTube等;
其他来源:新闻网站评论区、论坛(如豆瓣、贴吧)、搜索引擎结果等。
爬虫可根据关键词、时间范围、地域等条件精准筛选数据,每日处理数百万条信息,确保用户获取最新舆情动态,避免遗漏关键节点。
2. 多智能体“论坛”协作,突破单一模型局限
BettaFish创新性地引入“Agent论坛”机制,通过5类专业智能体的分工与协作,提升分析的全面性和准确性:
Query Agent:负责精准搜索国内外网页、社媒内容,定位与需求相关的原始数据;
Media Agent:解析图片、短视频等多模态内容(如识别视频中的文字、表情、场景,提取关键信息);
Insight Agent:挖掘私有数据库(如企业内部用户反馈、客户投诉记录)中的关联信息,打通“外部舆情+内部数据”;
Report Agent:整合所有分析结果,按用户需求生成HTML、PDF等格式的报告,支持可视化图表(如情感趋势折线图、观点分布饼图);
ForumEngine(论坛引擎):作为“主持人”,协调各Agent讨论分析策略,解决分歧(如当Query Agent与Media Agent对某条视频的解读冲突时,引导重新验证数据),避免单一模型的偏见。
这种协作模式类似“专家团队会诊”,比单一AI模型的分析更具深度。
3. 复合分析引擎,兼顾深度与效率
系统融合了三类分析技术,平衡准确性与处理速度:
微调大模型:基于BERT、GPT-2等模型微调,专门优化舆情场景的情感识别、观点抽取(如从评论中提取“价格过高”“质量好”等核心观点);
传统统计模型:用于快速计算基础指标(如评论量、转发量、热门关键词出现频率);
规则引擎:处理特殊场景(如识别网络黑话、谐音梗,避免误判情感)。
例如,分析“某手机品牌差评”时,系统会先通过统计模型算出差评占比,再用微调模型定位差评集中的问题(如“续航差”“发热严重”),最后用规则引擎过滤掉“反讽”类评论(如“这手机续航真棒,一天充三次”)。
4. 多模态解析能力,不止于文字
除了传统的文字评论,BettaFish可处理短视频、图文等多模态内容:
对短视频:提取音频转文字、识别画面中的产品/场景、分析弹幕情感;
对图文内容:识别图片中的文字(OCR)、分析表情包含义(如“狗头”表示反讽)、关联图文主题一致性。
例如,分析“某景区旅游评价”时,系统会同时解析游客发布的短视频(判断画面中的景区环境、游客表情)、图文笔记(提取“排队久”“风景美”等文字评价)及评论区互动,全面还原用户真实态度。
5. 公私域数据融合,打通内外洞察
支持接入企业/机构的私有数据库(如CRM系统、客服聊天记录、内部调研数据),将外部社媒舆情与内部数据结合分析。
例如,某品牌发现微博上出现“产品故障”的投诉(外部舆情),系统可自动关联内部售后数据库中同类故障的报修记录,统计故障发生率、地域分布,判断是个案还是批量问题,辅助制定应对策略。
6. 轻量化架构,部署与扩展零门槛
纯Python开发:核心代码基于Python编写,依赖库少,对环境要求低;
模块化设计:各功能模块(如爬虫、分析、报告生成)独立封装,可单独调用或替换(如用自定义爬虫替换默认的MindSpider);
一键部署:支持Docker容器化部署,无需复杂配置,几分钟内即可启动系统;
灵活扩展:通过修改Agent的工具集参数或提示词,可快速适配新场景(如将舆情分析改为“金融新闻中的风险事件识别”)。
三、技术细节
1. 系统架构
BettaFish采用“分层式多智能体架构”,整体流程为:用户需求输入 → 多智能体协同分析 → 结果整合 → 报告输出。核心组件如下表所示:
| 组件名称 | 功能描述 | 技术支撑 |
|---|---|---|
| Query Agent | 网页/社媒数据搜索与爬取,支持多平台API调用与动态页面解析 | Requests、Selenium、多平台SDK |
| Media Agent | 多模态内容解析(视频转文字、图片OCR、表情包识别) | FFmpeg、Tesseract、CLIP模型 |
| Insight Agent | 私有数据库查询与关联分析,支持SQL、NoSQL数据库交互 | SQLAlchemy、PyMongo |
| Report Agent | 报告生成与可视化,支持模板定制与多格式导出 | Jinja2、Matplotlib、WeasyPrint |
| ForumEngine | 智能体协作协调,基于规则与大模型实现任务分配、冲突解决 | 自定义规则引擎、GPT-3.5-turbo |
| MindSpider | 分布式爬虫集群,负责大规模数据采集与去重 | Scrapy、Redis(去重队列) |
| 情感分析模型库 | 多语言情感分类、观点抽取,支持模型微调接口 | 微调BERT、TextCNN、VADER |
2. 核心技术模块解析
(1)爬虫系统(MindSpider)
分布式架构:采用主从模式,主节点负责任务分配,从节点(可横向扩展)执行爬取,支持每秒数千条数据的采集;
反爬策略:自动切换IP代理、模拟真实用户行为(如随机浏览速度、点击路径)、识别验证码(集成OCR与第三方API);
数据去重:基于内容哈希(MD5)与语义相似度(Sentence-BERT)双重去重,避免重复数据干扰分析。
(2)情感分析模型
系统提供三级情感分析能力:
基础级:将情感分为“正面/负面/中性”,准确率达92%(基于10万条标注数据测试);
细分级:在基础级上增加“愤怒/喜悦/失望/惊讶”等细分情绪,适用于深入理解用户态度;
多语言支持:支持中英日韩等10种语言,通过多语言预训练模型(如XLM-RoBERTa)实现跨语言分析。
(3)多模态处理流程
以短视频分析为例,流程为:
下载视频并提取关键帧(每3秒1帧);
对视频音频转文字,去除杂音与无效信息;
用CLIP模型识别帧画面中的物体(如“手机”“人群”)与场景(如“商场”“户外”);
结合文字转录结果与画面识别,生成视频主题标签(如“某手机线下促销活动”);
分析弹幕/评论区情感,关联视频内容生成综合评分。
(4)报告生成引擎
支持两种报告模式:
标准模板:包含“舆情概览-情感分布-热门观点-关键人物-趋势预测”5大模块,适用于快速了解整体情况;
自定义模板:用户可通过HTML/CSS修改模板,添加企业Logo、特定指标(如“与竞品对比”),满足个性化需求。
3. 技术栈
开发语言:Python 3.8+
Web框架:Flask(主应用)、Streamlit(单Agent可视化工具)
数据库:SQLite(轻量部署)、MySQL/PostgreSQL(大规模数据存储)
容器化:Docker、Docker Compose
AI框架:PyTorch、TensorFlow(模型训练与推理)
数据处理:Pandas、NumPy(数据清洗与统计)

四、应用场景
BettaFish的灵活性使其适用于多类场景,以下为典型案例:
1. 品牌声誉管理
企业可通过系统实时监控全网对品牌的提及:
当出现负面舆情(如“产品质量投诉”)时,系统自动预警并定位源头(如某小红书笔记)、扩散路径(如从微博到抖音);
分析负面评论的核心诉求(如“退款慢”“客服态度差”),辅助制定公关策略;
对比竞品的舆情表现(如“某竞品的正面评价关键词”),发现自身优势与不足。
2. 社会热点追踪
媒体或研究机构可用于追踪公共事件的发展:
如分析“某地自然灾害”的舆情,系统可识别民众最关注的问题(如“救援进展”“物资需求”)、谣言信息(如“不实捐款渠道”),辅助信息发布;
追踪热点事件的情感变化(如从“愤怒”到“理解”),分析舆论转折点(如官方通报发布时间)。
3. 政策效果评估
政府部门可评估政策实施后的公众反馈:
如分析“垃圾分类政策”的舆情,统计不同城市的 compliance( compliance 应为 compliance,此处指遵守度相关评价)评价、主要困难(如“分类复杂”“设施不足”);
对比政策实施前后的公众态度变化,判断政策落地效果。
4. 市场调研与产品迭代
企业产品团队可通过舆情洞察用户需求:
分析用户对竞品的评价,提取“希望增加的功能”(如“某APP用户呼吁夜间模式”);
监测新品上市后的反馈,快速定位设计缺陷(如“某手机的摄像头凸起问题被频繁吐槽”)。
5. 学术研究与教育
高校研究者可利用其开源特性开展相关研究:
分析特定群体的网络行为(如“Z世代对环保议题的讨论特征”);
作为教学案例,展示多智能体系统、自然语言处理的实际应用。

五、使用方法
BettaFish支持本地部署与Docker一键启动,以下为详细步骤:
1. 环境准备
硬件要求:最低4核CPU、8GB内存(大规模数据处理建议16GB以上);
操作系统:Windows 10+、Linux(Ubuntu 20.04+)、macOS 12+;
依赖工具:Python 3.8+、Git、Docker(可选)。
2. 获取代码
通过Git克隆仓库:
git clone https://github.com/666ghj/BettaFish.git cd BettaFish
3. 配置参数(可选)
修改config.yaml文件,自定义设置:
数据源:指定需要监控的平台(如仅开启“微博”“知乎”);
爬虫参数:设置爬取频率、代理IP池(如需爬取境外平台);
模型选择:指定情感分析模型(如“默认微调BERT”或“轻量TextCNN”);
私有数据库:填写数据库地址与账号(如MySQL、MongoDB),开启公私域融合分析。
4. 启动系统
方式一:Docker一键部署(推荐)
# 构建镜像 docker build -t bettafish:latest . # 启动容器(映射端口5000,便于访问Web界面) docker run -p 5000:5000 bettafish:latest
方式二:本地直接运行
# 安装依赖 pip install -r requirements.txt # 启动Flask应用 python app.py
系统启动后,访问http://localhost:5000即可进入Web界面。
5. 使用流程
输入需求:在搜索框中输入分析主题(如“2024年新能源汽车用户评价”),可附加条件(如“时间范围:近30天”“平台:抖音+小红书”);
自动分析:系统会显示“爬取中”“分析中”等状态,等待时间根据数据量而定(一般5-30分钟);
查看报告:分析完成后,可在线查看报告或导出为PDF/HTML;
二次分析:如需深入某一维度(如“仅看负面评论中的具体问题”),可在报告页点击“细化分析”,系统会调用相关Agent重新处理。
6. 自定义扩展
若需扩展功能(如新增某平台爬虫、替换情感分析模型),可按以下步骤:
在
agents/目录下新建自定义Agent脚本(如NewPlatformAgent.py);修改
ForumEngine的配置文件,将新Agent加入协作流程;重新部署或重启应用即可生效。

六、常见问题解答(FAQ)
BettaFish支持哪些平台的数据分析?
目前支持国内15+平台(微博、小红书、抖音等)和国外10+平台(Twitter、YouTube等),具体列表可查看仓库docs/platforms.md。用户可通过自定义爬虫扩展至其他平台。
使用BettaFish需要编程基础吗?
基础使用(如输入需求、查看报告)无需编程基础,通过Web界面即可操作;若需自定义功能(如修改爬虫规则、替换模型),建议具备Python基础。
分析结果的准确性如何?
在标准测试集(1万条标注评论)中,情感分析准确率达92%,观点抽取准确率达88%。实际效果可能受数据质量(如网络黑话、反讽)影响,可通过优化模型或添加规则提升。
爬取数据是否符合法律法规?
系统仅爬取公开可访问的社媒内容,且默认遵守各平台的robots协议。用户需确保使用时符合《网络安全法》《个人信息保护法》等法规,不用于非法用途。
如何处理大规模数据(如百万级评论)?
建议开启分布式爬虫(需配置Redis)和多线程分析,或使用轻量模型(如TextCNN)提升速度。系统支持数据分片存储,避免内存溢出。
是否支持多语言分析?
支持中英日韩等10种语言,默认使用多语言预训练模型,用户也可自行训练特定语言的模型并替换。
七、相关链接
GitHub仓库:https://github.com/666ghj/BettaFish
八、总结
BettaFish(微舆)作为一款开源多智能体舆情分析系统,通过AI驱动的全域数据监控、多智能体协作分析、多模态内容解析等核心能力,实现了舆情分析的自动化与深度化。其轻量化架构与模块化设计降低了使用门槛,支持快速部署与灵活扩展,适用于品牌管理、社会热点追踪、政策评估等多场景。无论是企业、机构还是研究者,都能通过它高效掌握舆情动态,突破信息茧房,为决策提供数据支持。作为开源项目,它也为开发者提供了学习和二次创新的平台,推动多智能体技术在数据分析领域的应用。
版权及免责申明:本文由@人工智能研究所原创发布。该文章观点仅代表作者本人,不代表本站立场。本站不承担任何相关法律责任。
如若转载,请注明出处:https://www.aipuzi.cn/ai-news/bettafish.html

