Showing
1 changed file
with
132 additions
and
62 deletions
| @@ -124,123 +124,193 @@ LLM模型API赞助:<a href="https://aihubmix.com/?aff=8Ds9" target="_blank"><i | @@ -124,123 +124,193 @@ LLM模型API赞助:<a href="https://aihubmix.com/?aff=8Ds9" target="_blank"><i | ||
| 124 | ``` | 124 | ``` |
| 125 | BettaFish/ | 125 | BettaFish/ |
| 126 | ├── QueryEngine/ # 国内外新闻广度搜索Agent | 126 | ├── QueryEngine/ # 国内外新闻广度搜索Agent |
| 127 | -│ ├── agent.py # Agent主逻辑 | 127 | +│ ├── agent.py # Agent主逻辑,协调搜索与分析流程 |
| 128 | │ ├── llms/ # LLM接口封装 | 128 | │ ├── llms/ # LLM接口封装 |
| 129 | -│ ├── nodes/ # 处理节点 | 129 | +│ │ └── base.py # 统一的OpenAI兼容客户端 |
| 130 | +│ ├── nodes/ # 处理节点:搜索、格式化、总结等 | ||
| 131 | +│ │ ├── base_node.py # 基础节点类 | ||
| 132 | +│ │ ├── search_node.py # 搜索节点 | ||
| 133 | +│ │ ├── formatting_node.py # 格式化节点 | ||
| 134 | +│ │ ├── report_structure_node.py # 报告结构节点 | ||
| 135 | +│ │ └── summary_node.py # 总结节点 | ||
| 130 | │ ├── tools/ # 搜索工具 | 136 | │ ├── tools/ # 搜索工具 |
| 137 | +│ │ └── search.py # 网页搜索工具集 | ||
| 131 | │ ├── utils/ # 工具函数 | 138 | │ ├── utils/ # 工具函数 |
| 132 | -│ └── ... # 其他模块 | 139 | +│ │ ├── config.py # 配置管理 |
| 140 | +│ │ └── text_processing.py # 文本处理工具 | ||
| 141 | +│ ├── state/ # 状态管理 | ||
| 142 | +│ │ └── state.py # Agent状态定义 | ||
| 143 | +│ ├── prompts/ # 提示词模板 | ||
| 144 | +│ │ └── prompts.py # 各类提示词 | ||
| 145 | +│ └── __init__.py | ||
| 133 | ├── MediaEngine/ # 强大的多模态理解Agent | 146 | ├── MediaEngine/ # 强大的多模态理解Agent |
| 134 | -│ ├── agent.py # Agent主逻辑 | ||
| 135 | -│ ├── nodes/ # 处理节点 | ||
| 136 | -│ ├── llms/ # LLM接口 | ||
| 137 | -│ ├── tools/ # 搜索工具 | 147 | +│ ├── agent.py # Agent主逻辑,处理视频/图片等多模态内容 |
| 148 | +│ ├── llms/ # LLM接口封装 | ||
| 149 | +│ │ └── base.py # 统一的OpenAI兼容客户端 | ||
| 150 | +│ ├── nodes/ # 处理节点:搜索、格式化、总结等 | ||
| 151 | +│ │ ├── base_node.py # 基础节点类 | ||
| 152 | +│ │ ├── search_node.py # 搜索节点 | ||
| 153 | +│ │ ├── formatting_node.py # 格式化节点 | ||
| 154 | +│ │ ├── report_structure_node.py # 报告结构节点 | ||
| 155 | +│ │ └── summary_node.py # 总结节点 | ||
| 156 | +│ ├── tools/ # 多模态搜索工具 | ||
| 157 | +│ │ └── search.py # 多模态内容搜索工具集 | ||
| 138 | │ ├── utils/ # 工具函数 | 158 | │ ├── utils/ # 工具函数 |
| 139 | -│ └── ... # 其他模块 | 159 | +│ │ ├── config.py # 配置管理 |
| 160 | +│ │ └── text_processing.py # 文本处理工具 | ||
| 161 | +│ ├── state/ # 状态管理 | ||
| 162 | +│ │ └── state.py # Agent状态定义 | ||
| 163 | +│ ├── prompts/ # 提示词模板 | ||
| 164 | +│ │ └── prompts.py # 各类提示词 | ||
| 165 | +│ └── __init__.py | ||
| 140 | ├── InsightEngine/ # 私有数据库挖掘Agent | 166 | ├── InsightEngine/ # 私有数据库挖掘Agent |
| 141 | -│ ├── agent.py # Agent主逻辑 | 167 | +│ ├── agent.py # Agent主逻辑,协调数据库查询与分析 |
| 142 | │ ├── llms/ # LLM接口封装 | 168 | │ ├── llms/ # LLM接口封装 |
| 143 | -│ │ └── base.py # 统一的 OpenAI 兼容客户端 | ||
| 144 | -│ ├── nodes/ # 处理节点 | 169 | +│ │ └── base.py # 统一的OpenAI兼容客户端 |
| 170 | +│ ├── nodes/ # 处理节点:搜索、格式化、总结等 | ||
| 145 | │ │ ├── base_node.py # 基础节点类 | 171 | │ │ ├── base_node.py # 基础节点类 |
| 172 | +│ │ ├── search_node.py # 搜索节点 | ||
| 146 | │ │ ├── formatting_node.py # 格式化节点 | 173 | │ │ ├── formatting_node.py # 格式化节点 |
| 147 | │ │ ├── report_structure_node.py # 报告结构节点 | 174 | │ │ ├── report_structure_node.py # 报告结构节点 |
| 148 | -│ │ ├── search_node.py # 搜索节点 | ||
| 149 | │ │ └── summary_node.py # 总结节点 | 175 | │ │ └── summary_node.py # 总结节点 |
| 150 | │ ├── tools/ # 数据库查询和分析工具 | 176 | │ ├── tools/ # 数据库查询和分析工具 |
| 151 | │ │ ├── keyword_optimizer.py # Qwen关键词优化中间件 | 177 | │ │ ├── keyword_optimizer.py # Qwen关键词优化中间件 |
| 152 | -│ │ ├── search.py # 数据库操作工具集 | 178 | +│ │ ├── search.py # 数据库操作工具集(话题搜索、评论获取等) |
| 153 | │ │ └── sentiment_analyzer.py # 情感分析集成工具 | 179 | │ │ └── sentiment_analyzer.py # 情感分析集成工具 |
| 180 | +│ ├── utils/ # 工具函数 | ||
| 181 | +│ │ ├── config.py # 配置管理 | ||
| 182 | +│ │ ├── db.py # SQLAlchemy异步引擎与只读查询封装 | ||
| 183 | +│ │ └── text_processing.py # 文本处理工具 | ||
| 154 | │ ├── state/ # 状态管理 | 184 | │ ├── state/ # 状态管理 |
| 155 | -│ │ ├── __init__.py | ||
| 156 | │ │ └── state.py # Agent状态定义 | 185 | │ │ └── state.py # Agent状态定义 |
| 157 | │ ├── prompts/ # 提示词模板 | 186 | │ ├── prompts/ # 提示词模板 |
| 158 | -│ │ ├── __init__.py | ||
| 159 | │ │ └── prompts.py # 各类提示词 | 187 | │ │ └── prompts.py # 各类提示词 |
| 160 | -│ └── utils/ # 工具函数 | ||
| 161 | -│ ├── __init__.py | ||
| 162 | -│ ├── config.py # 配置管理 | ||
| 163 | -│ ├── db.py # SQLAlchemy异步引擎与只读查询封装 | ||
| 164 | -│ └── text_processing.py # 文本处理工具 | 188 | +│ └── __init__.py |
| 165 | ├── ReportEngine/ # 多轮报告生成Agent | 189 | ├── ReportEngine/ # 多轮报告生成Agent |
| 166 | -│ ├── agent.py # 串联模板→布局→篇幅→章节→渲染的总调度 | 190 | +│ ├── agent.py # 总调度器:模板选择→布局→篇幅→章节→渲染 |
| 167 | │ ├── flask_interface.py # Flask/SSE入口,管理任务排队与流式事件 | 191 | │ ├── flask_interface.py # Flask/SSE入口,管理任务排队与流式事件 |
| 168 | │ ├── llms/ # OpenAI兼容LLM封装 | 192 | │ ├── llms/ # OpenAI兼容LLM封装 |
| 169 | │ │ └── base.py # 统一的流式/重试客户端 | 193 | │ │ └── base.py # 统一的流式/重试客户端 |
| 170 | -│ ├── core/ # 模板切片、章节落盘与装订工具 | 194 | +│ ├── core/ # 核心功能:模板解析、章节存储、文档装订 |
| 171 | │ │ ├── template_parser.py # Markdown模板切片与slug生成 | 195 | │ │ ├── template_parser.py # Markdown模板切片与slug生成 |
| 172 | │ │ ├── chapter_storage.py # 章节run目录、manifest与raw流写入 | 196 | │ │ ├── chapter_storage.py # 章节run目录、manifest与raw流写入 |
| 173 | │ │ └── stitcher.py # Document IR装订器,补齐锚点/元数据 | 197 | │ │ └── stitcher.py # Document IR装订器,补齐锚点/元数据 |
| 174 | -│ ├── ir/ # 报告IR契约与校验 | ||
| 175 | -│ │ ├── schema.py # 块/标记Schema常量 | 198 | +│ ├── ir/ # 报告中间表示(IR)契约与校验 |
| 199 | +│ │ ├── schema.py # 块/标记Schema常量定义 | ||
| 176 | │ │ └── validator.py # 章节JSON结构校验器 | 200 | │ │ └── validator.py # 章节JSON结构校验器 |
| 177 | │ ├── nodes/ # 全流程推理节点 | 201 | │ ├── nodes/ # 全流程推理节点 |
| 178 | │ │ ├── base_node.py # 节点基类+日志/状态钩子 | 202 | │ │ ├── base_node.py # 节点基类+日志/状态钩子 |
| 179 | │ │ ├── template_selection_node.py # 模板候选收集与LLM筛选 | 203 | │ │ ├── template_selection_node.py # 模板候选收集与LLM筛选 |
| 180 | │ │ ├── document_layout_node.py # 标题/目录/主题设计 | 204 | │ │ ├── document_layout_node.py # 标题/目录/主题设计 |
| 181 | -│ │ ├── word_budget_node.py # 篇幅规划与章节指令 | 205 | +│ │ ├── word_budget_node.py # 篇幅规划与章节指令生成 |
| 182 | │ │ └── chapter_generation_node.py # 章节级JSON生成+校验 | 206 | │ │ └── chapter_generation_node.py # 章节级JSON生成+校验 |
| 183 | │ ├── prompts/ # 提示词库与Schema说明 | 207 | │ ├── prompts/ # 提示词库与Schema说明 |
| 184 | │ │ └── prompts.py # 模板选择/布局/篇幅/章节提示词 | 208 | │ │ └── prompts.py # 模板选择/布局/篇幅/章节提示词 |
| 185 | │ ├── renderers/ # IR渲染器 | 209 | │ ├── renderers/ # IR渲染器 |
| 186 | -│ │ └── html_renderer.py # Document IR → 交互式HTML | 210 | +│ │ ├── html_renderer.py # Document IR → 交互式HTML |
| 211 | +│ │ ├── pdf_renderer.py # HTML → PDF导出(WeasyPrint) | ||
| 212 | +│ │ ├── pdf_layout_optimizer.py # PDF布局优化器 | ||
| 213 | +│ │ └── chart_to_svg.py # 图表转SVG工具 | ||
| 187 | │ ├── state/ # 任务/元数据状态模型 | 214 | │ ├── state/ # 任务/元数据状态模型 |
| 188 | │ │ └── state.py # ReportState与序列化工具 | 215 | │ │ └── state.py # ReportState与序列化工具 |
| 189 | -│ ├── utils/ # 配置与日志工具 | ||
| 190 | -│ │ └── config.py # Pydantic Settings与打印助手 | ||
| 191 | -│ ├── report_template/ # Markdown模板库(企业/市场/例行/政策/热点/突发场景) | ||
| 192 | -│ └── ... # 其余缓存/__init__.py等 | ||
| 193 | -├── ForumEngine/ # 论坛引擎简易实现 | ||
| 194 | -│ ├── monitor.py # 日志监控和论坛管理 | ||
| 195 | -│ └── llm_host.py # 论坛主持人LLM模块 | ||
| 196 | -├── MindSpider/ # 微博爬虫系统 | ||
| 197 | -│ ├── main.py # 爬虫主程序 | 216 | +│ ├── utils/ # 配置与辅助工具 |
| 217 | +│ │ ├── config.py # Pydantic Settings与打印助手 | ||
| 218 | +│ │ ├── dependency_check.py # 依赖检查工具 | ||
| 219 | +│ │ ├── json_parser.py # JSON解析工具 | ||
| 220 | +│ │ ├── chart_validator.py # 图表校验工具 | ||
| 221 | +│ │ └── chart_repair_api.py # 图表修复API | ||
| 222 | +│ ├── report_template/ # Markdown模板库 | ||
| 223 | +│ │ ├── 企业品牌声誉分析报告.md | ||
| 224 | +│ │ └── ... | ||
| 225 | +│ └── __init__.py | ||
| 226 | +├── ForumEngine/ # 论坛引擎:Agent协作机制 | ||
| 227 | +│ ├── monitor.py # 日志监控和论坛管理核心 | ||
| 228 | +│ ├── llm_host.py # 论坛主持人LLM模块 | ||
| 229 | +│ └── __init__.py | ||
| 230 | +├── MindSpider/ # 社交媒体爬虫系统 | ||
| 231 | +│ ├── main.py # 爬虫主程序入口 | ||
| 198 | │ ├── config.py # 爬虫配置文件 | 232 | │ ├── config.py # 爬虫配置文件 |
| 199 | │ ├── BroadTopicExtraction/ # 话题提取模块 | 233 | │ ├── BroadTopicExtraction/ # 话题提取模块 |
| 234 | +│ │ ├── main.py # 话题提取主程序 | ||
| 200 | │ │ ├── database_manager.py # 数据库管理器 | 235 | │ │ ├── database_manager.py # 数据库管理器 |
| 201 | │ │ ├── get_today_news.py # 今日新闻获取 | 236 | │ │ ├── get_today_news.py # 今日新闻获取 |
| 202 | -│ │ ├── main.py # 话题提取主程序 | ||
| 203 | │ │ └── topic_extractor.py # 话题提取器 | 237 | │ │ └── topic_extractor.py # 话题提取器 |
| 204 | -│ ├── DeepSentimentCrawling/ # 深度舆情爬取 | ||
| 205 | -│ │ ├── keyword_manager.py # 关键词管理器 | 238 | +│ ├── DeepSentimentCrawling/ # 深度舆情爬取模块 |
| 206 | │ │ ├── main.py # 深度爬取主程序 | 239 | │ │ ├── main.py # 深度爬取主程序 |
| 207 | -│ │ ├── MediaCrawler/ # 媒体爬虫核心 | ||
| 208 | -│ │ └── platform_crawler.py # 平台爬虫管理 | ||
| 209 | -│ └── schema/ # 数据库结构 | 240 | +│ │ ├── keyword_manager.py # 关键词管理器 |
| 241 | +│ │ ├── platform_crawler.py # 平台爬虫管理 | ||
| 242 | +│ │ └── MediaCrawler/ # 媒体爬虫核心(微博/抖音/小红书等) | ||
| 243 | +│ │ ├── main.py | ||
| 244 | +│ │ ├── config/ # 各平台配置 | ||
| 245 | +│ │ ├── media_platform/ # 各平台爬虫实现 | ||
| 246 | +│ │ └── ... | ||
| 247 | +│ └── schema/ # 数据库结构定义 | ||
| 210 | │ ├── db_manager.py # 数据库管理器 | 248 | │ ├── db_manager.py # 数据库管理器 |
| 211 | -│ ├── init_database.py # 数据库初始化 | ||
| 212 | -│ ├── mindspider_tables.sql # 数据库表结构 | 249 | +│ ├── init_database.py # 数据库初始化脚本 |
| 250 | +│ ├── mindspider_tables.sql # 数据库表结构SQL | ||
| 213 | │ ├── models_bigdata.py # 大规模媒体舆情表的SQLAlchemy映射 | 251 | │ ├── models_bigdata.py # 大规模媒体舆情表的SQLAlchemy映射 |
| 214 | -│ └── models_sa.py # DailyTopic/Task等扩展表ORM | 252 | +│ └── models_sa.py # DailyTopic/Task等扩展表ORM模型 |
| 215 | ├── SentimentAnalysisModel/ # 情感分析模型集合 | 253 | ├── SentimentAnalysisModel/ # 情感分析模型集合 |
| 216 | │ ├── WeiboSentiment_Finetuned/ # 微调BERT/GPT-2模型 | 254 | │ ├── WeiboSentiment_Finetuned/ # 微调BERT/GPT-2模型 |
| 217 | -│ ├── WeiboMultilingualSentiment/ # 多语言情感分析(推荐) | 255 | +│ │ ├── BertChinese-Lora/ # BERT中文LoRA微调 |
| 256 | +│ │ │ ├── train.py | ||
| 257 | +│ │ │ ├── predict.py | ||
| 258 | +│ │ │ └── ... | ||
| 259 | +│ │ └── GPT2-Lora/ # GPT-2 LoRA微调 | ||
| 260 | +│ │ ├── train.py | ||
| 261 | +│ │ ├── predict.py | ||
| 262 | +│ │ └── ... | ||
| 263 | +│ ├── WeiboMultilingualSentiment/ # 多语言情感分析(推荐使用) | ||
| 264 | +│ │ ├── train.py | ||
| 265 | +│ │ ├── predict.py | ||
| 266 | +│ │ └── ... | ||
| 218 | │ ├── WeiboSentiment_SmallQwen/ # 小参数Qwen3微调 | 267 | │ ├── WeiboSentiment_SmallQwen/ # 小参数Qwen3微调 |
| 268 | +│ │ ├── train.py | ||
| 269 | +│ │ ├── predict_universal.py | ||
| 270 | +│ │ └── ... | ||
| 219 | │ └── WeiboSentiment_MachineLearning/ # 传统机器学习方法 | 271 | │ └── WeiboSentiment_MachineLearning/ # 传统机器学习方法 |
| 272 | +│ ├── train.py | ||
| 273 | +│ ├── predict.py | ||
| 274 | +│ └── ... | ||
| 220 | ├── SingleEngineApp/ # 单独Agent的Streamlit应用 | 275 | ├── SingleEngineApp/ # 单独Agent的Streamlit应用 |
| 221 | -│ ├── query_engine_streamlit_app.py | ||
| 222 | -│ ├── media_engine_streamlit_app.py | ||
| 223 | -│ └── insight_engine_streamlit_app.py | ||
| 224 | -├── query_engine_streamlit_reports/ # QueryEngine单应用运行生成的Markdown与state | ||
| 225 | -├── media_engine_streamlit_reports/ # MediaEngine单应用运行生成的Markdown与state | ||
| 226 | -├── insight_engine_streamlit_reports/ # InsightEngine单应用运行生成的Markdown与state | ||
| 227 | -├── templates/ # Flask模板 | ||
| 228 | -│ └── index.html # 主界面前端 | 276 | +│ ├── query_engine_streamlit_app.py # QueryEngine独立应用 |
| 277 | +│ ├── media_engine_streamlit_app.py # MediaEngine独立应用 | ||
| 278 | +│ └── insight_engine_streamlit_app.py # InsightEngine独立应用 | ||
| 279 | +├── query_engine_streamlit_reports/ # QueryEngine单应用运行输出 | ||
| 280 | +├── media_engine_streamlit_reports/ # MediaEngine单应用运行输出 | ||
| 281 | +├── insight_engine_streamlit_reports/ # InsightEngine单应用运行输出 | ||
| 282 | +├── templates/ # Flask前端模板 | ||
| 283 | +│ └── index.html # 主界面HTML | ||
| 229 | ├── static/ # 静态资源 | 284 | ├── static/ # 静态资源 |
| 285 | +│ └── image/ # 图片资源 | ||
| 286 | +│ ├── logo_compressed.png | ||
| 287 | +│ ├── framework.png | ||
| 288 | +│ └── ... | ||
| 230 | ├── logs/ # 运行日志目录 | 289 | ├── logs/ # 运行日志目录 |
| 231 | -├── final_reports/ # 最终生成的HTML报告文件 | 290 | +├── final_reports/ # 最终生成的报告文件 |
| 291 | +│ ├── ir/ # 报告IR JSON文件 | ||
| 292 | +│ └── *.html # 最终HTML报告 | ||
| 232 | ├── utils/ # 通用工具函数 | 293 | ├── utils/ # 通用工具函数 |
| 233 | -│ ├── forum_reader.py # Agent间论坛通信 | 294 | +│ ├── forum_reader.py # Agent间论坛通信工具 |
| 234 | │ ├── github_issues.py # 统一生成GitHub Issue链接与错误提示 | 295 | │ ├── github_issues.py # 统一生成GitHub Issue链接与错误提示 |
| 235 | │ └── retry_helper.py # 网络请求重试机制工具 | 296 | │ └── retry_helper.py # 网络请求重试机制工具 |
| 236 | -├── tests/ # 关键功能测试(论坛监控、渲染安全性等) | ||
| 237 | -│ ├── run_tests.py # pytest入口 | ||
| 238 | -│ ├── test_monitor.py # ForumEngine监控单测 | ||
| 239 | -│ └── test_report_engine_sanitization.py # ReportEngine章节清洗测试 | 297 | +├── tests/ # 单元测试与集成测试 |
| 298 | +│ ├── run_tests.py # pytest入口脚本 | ||
| 299 | +│ ├── test_monitor.py # ForumEngine监控单元测试 | ||
| 300 | +│ ├── test_report_engine_sanitization.py # ReportEngine安全性测试 | ||
| 301 | +│ └── ... | ||
| 240 | ├── app.py # Flask主应用入口 | 302 | ├── app.py # Flask主应用入口 |
| 241 | -├── config.py # 全局配置文件 | ||
| 242 | -├── docker-compose.yml # 多服务一键部署 | ||
| 243 | -└── requirements.txt # Python依赖包清单 | 303 | +├── config.py # 全局配置文件(统一管理所有LLM/DB配置) |
| 304 | +├── .env.example # 环境变量示例文件 | ||
| 305 | +├── docker-compose.yml # Docker多服务编排配置 | ||
| 306 | +├── Dockerfile # Docker镜像构建文件 | ||
| 307 | +├── requirements.txt # Python依赖包清单 | ||
| 308 | +├── regenerate_latest_pdf.py # PDF重新生成工具脚本 | ||
| 309 | +├── README.md # 中文说明文档 | ||
| 310 | +├── README-EN.md # 英文说明文档 | ||
| 311 | +├── CONTRIBUTING.md # 中文贡献指南 | ||
| 312 | +├── CONTRIBUTING-EN.md # 英文贡献指南 | ||
| 313 | +└── LICENSE # GPL-2.0开源许可证 | ||
| 244 | ``` | 314 | ``` |
| 245 | 315 | ||
| 246 | ## 🚀 快速开始(Docker) | 316 | ## 🚀 快速开始(Docker) |
-
Please register or login to post a comment