Skip to content

chenzhi123/insurance_intel_system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

保险情报分析系统 (Insurance Intelligence System)

基于 Map-Reduce 架构的保险行业情报分析系统,使用阿里云千问 API 处理长文本数据。

功能特性

  • Map-Reduce 架构:将长文本切片并发处理,提升分析效率
  • 记忆机制:保存历史分析状态,支持趋势对比和反转识别
  • 结构化输出:生成 Markdown 格式的情报简报
  • 多维度分析:涵盖行业趋势、竞对动态、舆情风控

技术栈

  • Python 3.10+
  • pandas (数据处理)
  • dashscope (阿里云千问 SDK)
  • loguru (日志管理)
  • python-dotenv (环境变量)

项目结构

insurance_intel_system/
├── src/
│   ├── config.py           # 配置和 Prompt 模板
│   ├── llm_client.py       # LLM 客户端封装
│   ├── data_loader.py      # 数据加载和切片
│   ├── map_processor.py    # Map 阶段处理器
│   └── reduce_processor.py # Reduce 阶段处理器
├── data/
│   ├── input/              # 输入 Excel 文件
│   ├── output/             # 输出 Markdown 报告
│   └── history/            # 历史状态 JSON
├── main.py                 # 主程序入口
├── requirements.txt        # 依赖清单
└── .env                    # 环境变量配置

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 配置环境变量

编辑 .env 文件,填入您的阿里云千问 API 密钥:

DASHSCOPE_API_KEY=your_actual_api_key

3. 准备数据

将待分析的 Excel 文件放入 data/input/ 目录。

4. 运行分析

python main.py

5. 查看结果

  • 分析报告:data/output/情报简报_YYYYMMDD_HHMMSS.md
  • 历史状态:data/history/state.json

工作流程

  1. 数据加载:读取 Excel 文件,按每 50 行切片
  2. Map 阶段:并发调用 LLM 提取每个切片的关键信息
  3. 加载记忆:读取历史分析状态
  4. Reduce 阶段:汇总分析,对比历史趋势,生成报告
  5. 保存输出:保存 Markdown 报告和更新历史状态

核心逻辑

Map Phase (分)

  • 将长文本按行切片(默认 50 行)
  • 并发调用 LLM 提取结构化信息:
    • 行业趋势关键词
    • 竞对公司动作
    • 舆情话题和情感

Memory (记忆)

  • 读取 data/history/state.json
  • 首次运行初始化为空
  • 后续运行加载历史分析结论

Reduce Phase (合)

  • 聚合所有 Map 结果
  • 结合历史记忆进行对比分析
  • 识别趋势延续、反转或突变
  • 生成分版块情报简报
  • 更新历史状态供下次使用

注意事项

  • 确保 API 密钥有效且有足够额度
  • 大文件处理可能需要较长时间
  • 建议定期备份 data/history/state.json

License

MIT License

About

基于 Map-Reduce 架构的保险情报分析系统,使用阿里云千问 API 处理长文本数据

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages