“LangChain 版化工厂危险行为告警系统”的完整项目
核心思路:
- 保持原 Qwen-VL 视觉链路不变;
- 用 LangChain 只做“知识库判定 + 工作流编排”两件事,避免过度耦合;
- 所有组件容器化,一行命令启动,方便后续 CI/CD。
一、项目结构(可直接拷贝成骨架)
chem-ai-alarm/
├── docker-compose.yml # 一键启动
├── Dockerfile # 主服务镜像
├── app/
│ ├── main.py # FastAPI 入口
│ ├── chains/
│ │ ├── __init__.py
│ │ ├── safety_rule_chain.py # LangChain 知识库链
│ │ └── prompt_tpl.py # Prompt 模板
│ ├── models/
│ │ └── qwen_vl.py # 封装 Qwen-VL 调用
│ ├── knowledge/
│ │ ├── rules.csv # 结构化安全规则(MySQL 导出)
│ │ └── load_rules.py # 规则加载器
│ ├── services/
│ │ ├── mqtt_client.py # 订阅摄像头帧
│ │ └── alarm_pusher.py # 三种告警推送
│ 