BettaFish
微舆:人人可用的多Agent舆情分析助手,打破信息茧房,还原舆情原貌,预测未来走向,辅助决策!从0实现,不依赖任何框架。
Install / Use
/learn @666ghj/BettaFishREADME
<a href="https://trendshift.io/repositories/15286" target="_blank"><img src="https://trendshift.io/api/badge/repositories/15286" alt="666ghj%2FBettaFish | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
<a href="https://aihubmix.com/?aff=8Ds9" target="_blank"><img src="./static/image/logo_aihubmix.png" alt="666ghj%2FBettaFish | Trendshift" height="40"/></a> <a href="https://open.anspire.cn/?share_code=3E1FUOUH" target="_blank"><img src="./static/image/logo_anspire.png" alt="666ghj%2FBettaFish | Trendshift" height="40"/></a>
</div>[!IMPORTANT]
<img src="static/image/MiroFish_logo_compressed.jpeg" alt="banner" width="300">
查看我们最新发布的预测引擎:MiroFish-简洁通用的群体智能引擎,预测万物“数据分析三板斧”全线贯通:我们激动的宣布 MiroFish 正式发布!随着最后一块版图补齐,我们构建了从 BettaFish(数据收集与分析)到 MiroFish(全景预测)的完整链路。至此,从原始数据到智能决策的闭环已成,让预见未来成为可能!
⚡ 项目概述
“微舆” 是一个从0实现的创新型 多智能体 舆情分析系统,帮助大家破除信息茧房,还原舆情原貌,预测未来走向,辅助决策。用户只需像聊天一样提出分析需求,智能体开始全自动分析 国内外30+主流社媒 与 数百万条大众评论。
“微舆”谐音“微鱼”,BettaFish是一种体型很小但非常好斗、漂亮的鱼,它象征着“小而强大,不畏挑战”
查看系统以“武汉大学舆情”为例,生成的研究报告:武汉大学品牌声誉深度分析报告
查看系统以“武汉大学舆情”为例,一次完整运行的视频:视频-武汉大学品牌声誉深度分析报告
不仅仅体现在报告质量上,相比同类产品,我们拥有🚀六大优势:
-
AI驱动的全域监控:AI爬虫集群7x24小时不间断作业,全面覆盖微博、小红书、抖音、快手等10+国内外关键社媒。不仅实时捕获热点内容,更能下钻至海量用户评论,让您听到最真实、最广泛的大众声音。
-
超越LLM的复合分析引擎:我们不仅依赖设计的5类专业Agent,更融合了微调模型、统计模型等中间件。通过多模型协同工作,确保了分析结果的深度、准度与多维视角。
-
强大的多模态能力:突破图文限制,能深度解析抖音、快手等短视频内容,并精准提取现代搜索引擎中的天气、日历、股票等结构化多模态信息卡片,让您全面掌握舆情动态。
-
Agent“论坛”协作机制:为不同Agent赋予独特的工具集与思维模式,引入辩论主持人模型,通过“论坛”机制进行链式思维碰撞与辩论。这不仅避免了单一模型的思维局限与交流导致的同质化,更催生出更高质量的集体智能与决策支持。
-
公私域数据无缝融合:平台不仅分析公开舆情,还提供高安全性的接口,支持您将内部业务数据库与舆情数据无缝集成。打通数据壁垒,为垂直业务提供“外部趋势+内部洞察”的强大分析能力。
-
轻量化与高扩展性框架:基于纯Python模块化设计,实现轻量化、一键式部署。代码结构清晰,开发者可轻松集成自定义模型与业务逻辑,实现平台的快速扩展与深度定制。
始于舆情,而不止于舆情。“微舆”的目标,是成为驱动一切业务场景的简洁通用的数据分析引擎。
<div align="center"> <img src="static/image/system_schematic.png" alt="banner" width="800">举个例子. 你只需简单修改Agent工具集的api参数与prompt,就可以把他变成一个金融领域的市场分析系统
附一个比较活跃的L站项目讨论帖:https://linux.do/t/topic/1009280
查看L站佬友做的测评 开源项目(微舆)与manus|minimax|ChatGPT|Perplexity对比
告别传统的数据看板,在“微舆”,一切由一个简单的问题开始,您只需像对话一样,提出您的分析需求
</div>🪄 赞助商
LLM模型API赞助:<a href="https://aihubmix.com/?aff=8Ds9" target="_blank"><img src="./static/image/logo_aihubmix.png" alt="666ghj%2FBettaFish | Trendshift" height="40"/></a>
<details> <summary>AI联网搜索、文件解析及网页内容抓取等智能体核心能力提供商:</a><span style="margin-left: 10px"><a href="https://open.anspire.cn/?share_code=3E1FUOUH" target="_blank"><img src="./static/image/logo_anspire.png" alt="666ghj%2FBettaFish | Trendshift" height="50"/></a></summary> 安思派开放平台(Anspire Open)是面向智能体时代的领先的基础设施提供商。我们为开发者提供构建强大智能体所需的核心能力栈,现已上线AI联网搜索【多版本,极具竞争力的价格】、文件解析【限免】及网页内容抓取【限免】、云端浏览器自动化(Anspire Browser Agent)【内测】、多轮改写等服务,持续为智能体连接并操作复杂的数字世界提供坚实基础。可无缝集成至Dify、Coze、元器等主流智能体平台。通过透明点数计费体系与模块化设计,为企业提供高效、低成本的定制化支持,加速智能化升级进程。 </details>🏗️ 系统架构
整体架构图
Insight Agent 私有数据库挖掘:私有舆情数据库深度分析AI代理
Media Agent 多模态内容分析:具备强大多模态能力的AI代理
Query Agent 精准信息搜索:具备国内外网页搜索能力的AI代理
Report Agent 智能报告生成:内置模板的多轮报告生成AI代理
<div align="center"> <img src="static/image/framework.png" alt="banner" width="800"> </div>一次完整分析流程
| 步骤 | 阶段名称 | 主要操作 | 参与组件 | 循环特性 | |------|----------|----------|----------|----------| | 1 | 用户提问 | Flask主应用接收查询 | Flask主应用 | - | | 2 | 并行启动 | 三个Agent同时开始工作 | Query Agent、Media Agent、Insight Agent | - | | 3 | 初步分析 | 各Agent使用专属工具进行概览搜索 | 各Agent + 专属工具集 | - | | 4 | 策略制定 | 基于初步结果制定分块研究策略 | 各Agent内部决策模块 | - | | 5-N | 循环阶段 | 论坛协作 + 深度研究 | ForumEngine + 所有Agent | 多轮循环 | | 5.1 | 深度研究 | 各Agent基于论坛主持人引导进行专项搜索 | 各Agent + 反思机制 + 论坛引导 | 每轮循环 | | 5.2 | 论坛协作 | ForumEngine监控Agent发言并生成主持人引导 | ForumEngine + LLM主持人 | 每轮循环 | | 5.3 | 交流融合 | 各Agent根据讨论调整研究方向 | 各Agent + forum_reader工具 | 每轮循环 | | N+1 | 结果整合 | Report Agent收集所有分析结果和论坛内容 | Report Agent | - | | N+2 | IR中间表示 | 动态选择模板和样式,多轮生成元数据,装订为IR中间表示 | Report Agent + 模板引擎 | - | | N+3 | 报告生成 | 分块进行质量检测,基于IR渲染成交互式 HTML 报告 | Report Agent + 装订引擎 | - |
项目代码结构树
BettaFish/
├── QueryEngine/ # 国内外新闻广度搜索Agent
│ ├── agent.py # Agent主逻辑,协调搜索与分析流程
│ ├── llms/ # LLM接口封装
│ ├── nodes/ # 处理节点:搜索、格式化、总结等
│ ├── tools/ # 国内外新闻搜索工具集
│ ├── utils/ # 工具函数
│ ├── state/ # 状态管理
│ ├── prompts/ # 提示词模板
│ └── ...
├── MediaEngine/ # 强大的多模态理解Agent
│ ├── agent.py # Agent主逻辑,处理视频/图片等多模态内容
│ ├── llms/ # LLM接口封装
│ ├── nodes/ # 处理节点:搜索、格式化、总结等
│ ├── tools/ # 多模态搜索工具集
│ ├── utils/ # 工具函数
│ ├── state/ # 状态管理
│ ├── prompts/ # 提示词模板
│ └── ...
├── InsightEngine/ # 私有数据库挖掘Agent
│ ├── agent.py # Agent主逻辑,协调数据库查询与分析
│ ├── llms/ # LLM接口封装
│ │ └── base.py # 统一的OpenAI兼容客户端
│ ├── nodes/ # 处理节点:搜索、格式化、总结等
│ │ ├── base_node.py # 基础节点类
│ │ ├── search_node.py # 搜索节点
│ │ ├── formatting_node.py # 格式化节点
│ │ ├── report_structure_node.py # 报告结构节点
│ │ └── summary_node.py # 总结节点
│ ├── tools/ # 数据库查询和分析工具集
│ │ ├── keyword_optimizer.py # Qwen关键词优化中间件
│ │ ├── search.py # 数据库操作工具集(话题搜索、评论获取等)
│ │ └── sentiment_analyzer.py # 情感分析集成工具
│ ├── utils/ # 工具函数
│ │ ├── config.py # 配置管理
│ │ ├── db.py # SQLAlchemy异步引擎与只读查询封装
│ │ └── text_processing.py # 文本处理工具
│ ├── state/ # 状态管理
│ │ └── state.py # Agent状态定义
│ ├── prompts/ # 提示词模板
│ │ └── prompts.py # 各类提示词
│ └── __init__.py
├── ReportEngine/ # 多轮报告生成Agent
│ ├── agent.py # 总调度器:模板选择→布局→篇幅→章节→渲染
│ ├── flask_interface.py # Flask/SSE入口,管理任务排队与流式事件
│ ├── llms/ # OpenAI兼容LLM封装
│ │ └── base.py # 统一的流式/重试客户端
│ ├── core/ # 核心功能:模板解析、章节存储、文档装订
│ │ ├── template_parser.py # Markdown模板切片与slug生成
│ │ ├── chapter_storage.py # 章节run目录、manifest与raw流写入
│ │ └── stitcher.py # Document IR装订器,补齐锚点/元数据
│ ├── ir/ # 报告中间表示(IR)契约与校验
│ │ ├── schema.py # 块/标记Schema常量定义
│ │ └── validator.py # 章节JSON结构校验器
│ ├── nodes/ # 全流程推理节点
│ │ ├── base_node.py # 节点基类+日志/状态钩子
│ │ ├── template_selection_node.py # 模板候选收集与LLM筛选
│ │ ├── document_layout_node.py # 标题/目录/主题设计
│ │ ├── word_budget_node.py # 篇幅规划与章节指令生成
│ │ └── chapter_generation_node.py # 章节级JSON生成+校验
│ ├── prompts/ # 提示词库与Schema说明
│ │ └── prompts.py # 模板选择/布局/篇幅/章节提示词
│ ├── renderers/ # IR渲染器
│ │ ├── html_renderer.py # Document IR→交互式HTML
│ │ ├── pdf_renderer.py # HTML→PDF导出(WeasyPrint)
│ │ ├── pdf_layout_optimizer.py # PDF布局优化器
│ │ └── chart_to_svg.py # 图表转SVG工具
│ ├── state/ # 任务/元数据状态模型
│ │ └── state.py # ReportState与序列化工具
│ ├── utils/ # 配置与辅助工具
│ │ ├── config.py # Pydantic Settings与打印助手
│ │ ├── dependency_check.py # 依赖检查工具
│ │ ├── json_parser.py # JSON解析工具
│ │ ├── chart_validator.py # 图表校验工具
│ │ └── chart_repair_api.py # 图表修复API
│ ├── report_template/ # Markdown模板库
│ │ ├── 企业品牌声誉分析报告.md
│ │ └── ...
│ └── __init__.py
├── ForumEngine/ # 论坛引擎:Agent协作机制
│ ├── monitor.py # 日志监控和论坛管理核心
│ ├── llm_host.py # 论坛主持人LLM模块
│ └── __init__.py
├── MindSpider/ # 社交媒体爬虫系统
│ ├── main.py
Related Skills
feishu-drive
351.8k|
things-mac
351.8kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
351.8kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
postkit
PostgreSQL-native identity, configuration, metering, and job queues. SQL functions that work with any language or driver
