智猩猩AI整理
一个为完成课程作业而生的项目,需要多久才能火遍GitHub?一位20岁大学生的答案是:十天。最近,这叫微舆(BettaFish)的开源项目在GitHub上火了,短短10来天,项目的Star数就从3k+ 涨到了27k,直线飙升(没错,真的是直线),甚至一度登上了GitHub热榜第一。
这是一个人人可用的多Agent舆情分析助手,目标是打破信息茧房,还原舆情原貌,甚至预测未来走向,帮助人们进行辅助决策。并且,这个项目是从0实现的,没有依赖任何框架,如果没有舆情分析的需求,用来学习Agent系统的搭建也非常不错。
“微舆” 是一个从0实现的多智能体舆情分析系统,用户只需像聊天一样提出分析需求,智能体便开始全自动分析国内外30+主流社媒与数百万条大众评论。
比如让系统以“武汉大学舆情”为主题进行分析,只需输入主题,系统背后的Insight Agent(私有数据库挖掘)、Media Agent(多模态内容分析)、Query Agent(精准信息搜索)便开始协同工作,最终Report Agent收集所有信息并生成深度分析报告:
这里仅展示部分截图,感兴趣的朋友可以下载这个html文件,拖入浏览器进行查看:https://github.com/666ghj/BettaFish/blob/main/final_reports/final_report__20250827_131630.html
相比同类产品,微舆实现了:
超越LLM的复合分析引擎:不仅依赖设计的5类专业Agent,更融合了微调模型、统计模型等中间件。通过多模型协同工作,确保了分析结果的深度、准度与多维视角。
强大的多模态能力:突破图文限制,能深度解析抖音、快手等短视频内容,并精准提取现代搜索引擎中的天气、日历、股票等结构化多模态信息卡片。
Agent“论坛”协作机制:为不同Agent赋予独特的工具集与思维模式,引入辩论主持人模型,通过“论坛”机制进行链式思维碰撞与辩论。这不仅避免了单一模型的思维局限与交流导致的同质化,更催生出更高质量的集体智能与决策支持。
公私域数据无缝融合:平台不仅分析公开舆情,还提供高安全性的接口,支持用户将内部业务数据库与舆情数据无缝集成。为垂直业务提供“外部趋势+内部洞察”的强大分析能力。
轻量化与高扩展性框架:基于纯Python模块化设计,实现轻量化、一键式部署。代码结构清晰,开发者可轻松集成自定义模型与业务逻辑,实现平台的快速扩展与深度定制。
尽管功能如此强大,但“微舆”的目标,不止于舆情,而是成为驱动一切业务场景的简洁通用的数据分析引擎。举个例子,只需简单修改Agent工具集的api参数与prompt,就可以把它变成一个金融领域的市场分析系统。
1、快速开始(Docker)
如果只想运行本项目,可以直接使用docker进行部署。
(1)启动项目
复制一份 .env.example 文件,命名为 .env ,并按需配置 .env 文件中的环境变量。
执行以下命令在后台启动所有服务:
注:镜像拉取速度慢,在原docker-compose.yml文件中,作者已经通过注释的方式提供了备用镜像地址以便替换。
(2)配置说明
数据库配置(PostgreSQL)
按照以下参数配置数据库连接信息,也支持Mysql,可自行修改:
大模型配置
所有LLM调用使用OpenAI的API接口标准。在完成数据库配置后,正常配置所有大模型相关的参数,确保系统能够连接到所选的大模型服务。
完成上述所有配置并保存后,系统即可正常运行。
2、源码启动指南
环境要求
操作系统: Windows、Linux、MacOS
Python版本: 3.9+
Conda: Anaconda或Miniconda
数据库: PostgreSQL(推荐)或MySQL
内存: 建议2GB以上
(1)创建环境
如果使用Conda:
conda create -n your_conda_name python=3.11conda activate your_conda_name
uv venv --python 3.11 # 创建3.11环境
pip install -r requirements.txt
uv pip install -r requirements.txt
playwright install chromium
(4)配置LLM与数据库
复制一份项目根目录 .env.example 文件,命名为 .env。
编辑 .env 文件,填入API密钥(也可以选择自己的模型、搜索智能体,详情见根目录.env.example文件内或根目录config.py中的说明)。
conda activate your_conda_name
python app.py
.venv\Scripts\activate
python app.py
(开始时数据库为空,数据爬取需要单独操作,见下文。)
访问 http://localhost:5000 即可使用完整系统。
单独启动某个Agent
streamlit run SingleEngineApp/query_engine_streamlit_app.py --server.port 8503
streamlit run SingleEngineApp/media_engine_streamlit_app.py --server.port 8502
streamlit run SingleEngineApp/insight_engine_streamlit_app.py --server.port 8501
爬虫系统单独使用
可参阅详细的配置文档:
https://github.com/666ghj/BettaFish/blob/main/MindSpider/README.md
# 进入爬虫目录cd MindSpider
# 项目初始化python main.py --setup
# 运行话题提取(获取热点新闻和关键词)python main.py --broad-topic
# 运行完整爬虫流程python main.py --complete --date 2024-01-20
# 仅运行话题提取python main.py --broad-topic --date 2024-01-20
# 仅运行深度爬取python main.py --deep-sentiment --platforms xhs dy wb
如果你是初次学习一个Agent系统的搭建,可以从作者的另一个开源项目DeepSearchAgent-Demo开始,这是一个不依赖于任何框架的深度搜索AI智能体,能够通过多轮搜索和反思生成高质量的研究报告:https://github.com/666ghj/DeepSearchAgent-Demo。
现在系统只完成了"三板斧"中的前两步,即从输入要求到详细分析,还缺少一步预测。
目前项目经过很长一段时间的爬取收集,拥有了大量全网话题热度随时间、爆点等的变化趋势热度数据,已经具备了可以开发预测模型的条件。未来,团队将实现真正基于数据驱动的舆情预测功能。
同时,项目作者在小红书上从项目发展、技术心得、产品营销、心态转变、现实收益等维度,全面复盘了微舆从课程作业成长到高星开源项目的全过程。他不仅介绍了AI编程、架构选型等实战经验,也坦诚剖析了作为独立开发者的迷茫与思考。但最重要的是,他用亲身经历证明了:这是一个属于独立创造者的好时代,关键在于找准方向,勇敢开始。