👆先关注,不迷路👆
想象一下,你有一个智能鱼缸,里面住着五条各怀绝技的智能鱼:Query鱼负责全网搜索,Media鱼精通多模态分析,Insight鱼挖掘深度数据,Report鱼撰写精美报告,还有一位Forum鱼主持"鱼类论坛",让它们互相辩论碰撞出智慧火花——这就是BettaFish"微舆"系统,一个让舆情分析变得像观赏斗鱼一样优雅有趣的多智能体平台!
🎯 系统架构:五鱼共舞的智能鱼缸
┌─────────────────────────────────────────┐│ BettaFish 智能鱼缸 │├─────────────────────────────────────────┤│ QueryAgent │ MediaAgent │InsightAgent││ (搜索鱼) │ (多模态鱼) │ (数据鱼) │├─────────────────────────────────────────┤│ ForumEngine (论坛主持人鱼) │├─────────────────────────────────────────┤│ ReportEngine (报告鱼) │└─────────────────────────────────────────┘每条鱼都有自己的独门绝技:
Query鱼
:游遍国内外30+主流媒体,啥热点都逃不过它的眼睛
Media鱼
:图文视频通吃,连抖音快手都不在话下
Insight鱼
:深度挖掘数据库,找出藏在数据下的真相
Forum鱼
:组织其他鱼儿开会辩论,避免"鱼群思维"
Report鱼
:把分析结果变成漂亮的HTML报告
🚀 部署方式一:Docker 一键部署(推荐新手)
准备工作:给鱼缸找个好位置
BASH
# 1. 克隆项目(把鱼缸搬回家)
git clone https://github.com/666ghj/BettaFish.gitcd BettaFish
# 2. 复制配置文件(给鱼缸加料)
cp MindSpider/config.py.example .env配置环境变量:调好水质
编辑 .env 文件,这是鱼缸的"水质参数":
BASH
# 数据库配置(鱼缸的水源)
DB_DIALECT=postgresql
DB_HOST=localhost
DB_PORT=5444
DB_USER=bettafish
DB_PASSWORD=your_secure_password
DB_NAME=bettafish
# LLM API密钥(鱼食)
# 这里以DeepSeek为例,性价比超高
INSIGHT_ENGINE_API_KEY=sk-your-deepseek-key
INSIGHT_ENGINE_BASE_URL=https://api.deepseek.com
INSIGHT_ENGINE_MODEL_NAME=deepseek-chat
MEDIA_ENGINE_API_KEY=sk-your-deepseek-key
MEDIA_ENGINE_BASE_URL=https://api.deepseek.com
MEDIA_ENGINE_MODEL_NAME=deepseek-chat
QUERY_ENGINE_API_KEY=sk-your-deepseek-key
QUERY_ENGINE_BASE_URL=https://api.deepseek.com
QUERY_ENGINE_MODEL_NAME=deepseek-chat
# 搜索API(鱼儿的望远镜)
TAVILY_API_KEY=your-tavily-key启动鱼缸:让鱼儿游起来!
BASH
# 一键启动所有服务
docker-compose up -d
# 查看鱼儿们是否健康
docker-compose logs -f bettafish启动成功后,你就能看到五条鱼开始活跃:
主应用
Query鱼界面
Media鱼界面
Insight鱼界面
🔧 部署方式二:源码安装(适合折腾党)
环境准备:打造个性化鱼缸
BASH
# 1. 创建Python环境(给鱼缸恒温)
python -m venv bettafish-envsource bettafish-env/bin/activate
# Linux/Mac# 或 bettafish-env\Scripts\activate
# Windows#
2. 安装依赖(喂饱鱼儿)
pip install -r requirements.txt
# 3. 安装Playwright浏览器(给鱼儿装泳镜)
playwright install数据库初始化:清理鱼缸
BASH
# 进入MindSpider目录
cd MindSpider/schema
# 初始化数据库表(给鱼缸分区)
python init_database.py启动应用:放鱼入缸
BASH
# 回到项目根目录
cd ../../
# 启动主应用
python app.py🎮 使用指南:如何和鱼儿们玩耍
基础玩法:一条鱼就够了
访问任意一个Streamlit界面(比如 http://localhost:8501),在输入框里输入你的分析需求:
"分析一下武汉大学最近的舆情动态"然后点击"开始分析",鱼儿就会开始忙碌地工作!
高级玩法:五鱼协作
访问主界面 http://localhost:5000,这里可以看到完整的五鱼协作流程:
用户提问
:你想分析什么
并行启动
:五条鱼同时开始工作
论坛辩论
:Forum鱼主持讨论,其他鱼儿各抒己见
深度分析
:根据辩论结果进行更深入的研究
报告生成
:Report鱼写出最终分析报告
看看鱼儿的劳动成果
分析完成后,你可以在以下位置找到报告:
完整报告目录
:
./final_reports/Insight鱼分析
:
./insight_engine_streamlit_reports/Media鱼分析
:
./media_engine_streamlit_reports/Query鱼分析
:
./query_engine_streamlit_reports/
🛠️ 常见问题:鱼缸养护手册
鱼儿不动了?(服务启动失败)
BASH
# 检查日志(看看鱼儿是不是睡着了)
docker-compose logs bettafish
# 重启服务(拍拍鱼缸)
docker-compose restart bettafish数据库连不上?
检查 .env 文件中的数据库配置,确保:
数据库服务已启动
用户名密码正确
端口没有被占用
API密钥怎么获取?
推荐使用高性价比的API服务商:
🔥 DeepSeek
:https://platform.deepseek.com/ (便宜又好用)
🔍 Tavily搜索
:https://tavily.com/ (网络搜索必备)
🎨 进阶玩法:给鱼儿换个新家
自定义模型:训练专属鱼食
项目支持多种情感分析模型,位于 SentimentAnalysisModel 目录:
BASH
# 使用预训练的微博情感分析模型
cd SentimentAnalysisModel/WeiboMultilingualSentiment
python predict.py --text "今天天气真好"
# 或者训练自己的模型
cd SentimentAnalysisModel/WeiboSentiment_Finetuned
python train.py添加新功能:给鱼儿装新玩具
代码结构清晰,很容易扩展:
新增Agent
:在对应Engine目录下创建新的agent.py
新增工具
:在tools目录下添加新工具
新增报告模板
:在 ReportEngine/report_template 下添加模板
👆先关注,不迷路👆
🌟 实战案例:武汉大学舆情分析
来看看鱼儿们的真实表演:
输入:"武汉大学品牌声誉深度分析"
输出:一份包含以下内容的精美报告:
📊 数据来源分析:覆盖微博、小红书、抖音等10+平台
🎯 情感分布:正面/负面/中性情感占比及趋势
🔥 热点话题:近期关注焦点及讨论量
💡 深度洞察:通过多Agent协作发现的隐藏信息
📈 趋势预测:基于历史数据的未来走向分析
完整报告示例:📋 武汉大学品牌声誉深度分析报告
🎥 演示视频:
🎯 为什么选择BettaFish?
相比其他舆情系统,BettaFish就像一个精心设计的水族馆:
BettaFish不仅仅是一个舆情分析工具,更是一个通用的数据分析引擎框架。 只需要稍微修改一下Agent的工具集,它就能变成金融分析系统、市场调研工具,甚至是学术研究助手!