archana986/logistics-control-center

GitHub: archana986/logistics-control-center

基于 Databricks 构建的 AI 驱动物流事件响应平台,整合自然语言查询、智能文档问答与实时监控功能。

Stars: 0 | Forks: 0

# 物流控制中心 基于 Databricks 构建的 AI 驱动物流事件响应应用程序。具备实时流分析、通过 Genie Space 进行的自然语言查询,以及使用 Knowledge Assistant 的智能文档问答功能。 ![架构图](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/77f53aa4e5160245.png) ## 功能特性 | 功能 | 描述 | |---------|-------------| | **实时仪表板** | 通过实时更新监控货物、事件和网络健康状况 | | **AI 驱动重路由** | 事件发生时自动提供重路由建议 | | **自然语言分析** | 使用 Genie Space 对您的数据进行提问 | | **文档问答** | 通过 Knowledge Assistant 查询物流 SOP 和流程 | | **客户沟通** | 使用 Foundation Models 生成 AI 客户更新 | ## 架构 ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ Logistics Control Center │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────────┐ │ │ │ React UI │────▶│ FastAPI │────▶│ Databricks Services │ │ │ │ (Vite) │ │ Backend │ │ ├─ SQL Warehouse │ │ │ └──────────────┘ └──────────────┘ │ ├─ Genie Space │ │ │ │ ├─ Knowledge Assistant │ │ │ │ └─ Foundation Models │ │ │ └──────────────────────────────┘ │ │ │ ├─────────────────────────────────────────────────────────────────────────────┤ │ Data Pipeline (SDP) │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ │ │ Bronze │────▶│ Silver │────▶│ Gold │────▶│ Serving Tables │ │ │ │ (Raw) │ │ (Clean) │ │ (Agg) │ │ + Metric Views │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────────────┘ │ │ ▲ │ │ │ │ │ ┌────┴─────┐ │ │ │ UC Volume │ ◀── Raw JSON events (shipments, incidents, sensors) │ │ └──────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ## 快速开始 ### 前置条件 - 启用了 Unity Catalog 的 Databricks 工作区 - SQL Warehouse(推荐 Serverless) - 拥有 `CREATE SCHEMA` 权限的 catalog **无需本地设置** - 一切均在 Databricks 中运行。 ### 克隆到 Databricks 工作区 1. 在 Databricks UI 中:**Workspace** → **Repos** → **Add Repo** 2. 粘贴 URL:`https://github.com/archana-krishnamurthy_data/logistics-control-center` 3. 点击 **Create Repo** ### 部署(6 步) | 步骤 | 操作 | 位置 | |------|--------|-------| | 1 | 将 repo 克隆到 Databricks | UI: Workspace → Repos → Add Repo | | 2 | 编辑 `databricks.yml` 和 `app.yaml`,填入 warehouse_id, catalog | Databricks UI | | 3 | `databricks bundle deploy -t dev` | 终端 | | 4 | `databricks bundle run logistics_setup -t dev`(约 10 分钟) | 终端 | | 5 | 将作业输出中的 genie_space_id 和 ka_endpoint 添加到两个文件中 | Databricks UI | | 6 | `databricks bundle deploy -t dev` 然后运行 `databricks bundle run logistics_app_permissions -t dev` | 终端 | **无需注释/取消注释 YAML。** 只需填入值并部署。 - [SETUP.md](SETUP.md) - 详细的分步指南 - [CONFIG.md](CONFIG.md) - 配置文件参考 ## 项目结构 ``` logistics-control-center/ ├── README.md # This file ├── SETUP.md # Detailed setup instructions ├── databricks.yml # Databricks Asset Bundle config ├── app.yaml # Databricks App config │ ├── backend/ # FastAPI Python backend │ ├── main.py # App entry point │ └── api.py # API routes │ ├── src/ # React TypeScript frontend │ ├── App.tsx # Main app component │ ├── components/ # UI components │ ├── pages/ # Page views │ └── lib/ # Utilities │ ├── databricks/ # Databricks resources │ ├── notebooks/ # Setup and job notebooks │ │ ├── setup_tables.sql │ │ ├── generate_synthetic_data.ipynb │ │ ├── create_genie_space.ipynb │ │ ├── create_knowledge_assistant.ipynb │ │ └── ... │ └── pipelines/ # SDP SQL definitions │ ├── 01_bronze.sql │ ├── 02_silver.sql │ └── 03_gold.sql │ ├── public/ # Static assets ├── requirements.txt # Python dependencies ├── package.json # Node.js dependencies └── *.config files # Build configuration ``` ## 配置文件 ### Databricks 配置 | 文件 | 用途 | 客户是否编辑? | |------|---------|-----------------| | `databricks.yml` | Asset Bundle 定义 - pipelines, jobs, app, variables | **是** - 更新 `targets.dev` 部分 | | `app.yaml` | 应用运行时配置 - 运行应用的环境变量 | **是** - 更新 env 值 | ### 前端构建配置 | 文件 | 用途 | 客户是否编辑? | |------|---------|-----------------| | `package.json` | Node.js 依赖和构建脚本 | 否 | | `vite.config.ts` | Vite 打包工具 - 处理 React 构建、路径别名 | 否 | | `tailwind.config.ts` | Tailwind CSS 主题、颜色、动画 | 否 | | `postcss.config.js` | 用于 CSS 处理的 PostCSS 插件 | 否 | | `tsconfig.json` | TypeScript 项目引用(指向 app/node 配置) | 否 | | `tsconfig.app.json` | React 源代码的 TypeScript 设置 | 否 | | `tsconfig.node.json` | Vite 配置的 TypeScript 设置 | 否 | ### 每个配置的作用 **`package.json`** - Node.js 项目清单 - 定义依赖项(React、Vite、Tailwind、用于地图的 deck.gl) - 构建脚本:`npm run dev`(本地)、`npm run build`(生产) - 无需客户修改 **`tsconfig.json`** - TypeScript 根配置 - 引用 `tsconfig.app.json` 用于源代码 - 引用 `tsconfig.node.json` 用于构建工具 - 启用项目引用以加快构建速度 **`tsconfig.app.json`** - 前端 TypeScript 设置 - 目标:ES2022(现代 JavaScript) - 路径别名:`@/*` 映射到 `./src/*`,用于更清晰的导入 - 启用严格模式以确保类型安全 **`tsconfig.node.json`** - 构建工具 TypeScript 设置 - 仅用于 `vite.config.ts` - 用于构建时脚本的 Node.js 类型 ## 部署内容 | 资源 | 名称 | 描述 | |----------|------|-------------| | **Pipeline** | `logistics-control-center-streaming` | Bronze/Silver/Gold 数据处理 | | **Job** | `logistics-control-center-setup` | 一次性设置(数据、agents) | | **Job** | `logistics-control-center-streaming-refresh` | 计划数据更新(5 分钟) | | **Job** | `logistics-control-center-app-permissions` | 授予应用 UC 访问权限 | | **App** | `logistics-incident-response` | React + FastAPI 应用程序 | | **Genie Space** | `Logistics Control Center Metrics` | 自然语言分析 | | **Knowledge Assistant** | `ka-*-endpoint` | 文档问答 | ## 自定义 ### 使用您自己的数据 1. 替换 `generate_synthetic_data.ipynb` 中的合成数据生成逻辑 2. 更新 `01_bronze.sql` 中的 Bronze 层 schema 以匹配您的数据 3. 根据您的业务逻辑调整 Silver/Gold 转换 4. 更新 `create_genie_space.ipynb` 中的 Genie Space 指令 ### 添加新指标 1. 在 `create_helper_metric_views.sql` 中添加新视图 2. 使用新表更新 Genie Space 3. 在 `backend/api.py` 中添加相应的 API endpoints 4. 在 `src/components/` 中创建前端组件 ## 故障排除 | 问题 | 解决方案 | |-------|----------| | `Catalog not found` | 确保您有权访问 `databricks.yml` 中指定的 catalog | | `Warehouse not found` | 验证 warehouse ID 且您拥有 CAN_USE 权限 | | `App 无法启动` | 检查位于 `https:///logz` 的日志 | | `Genie Space 错误` | 确保指标视图已成功创建 | ## 许可证 待定 ## 贡献 待定
标签:AI人工智能, AV绕过, Databricks, DLL 劫持, FastAPI, Genie Space, Python, RAG, React, Syscalls, 供应链管理, 大语言模型, 实时流分析, 客户沟通, 数据智能, 文档问答, 无后门, 智能重路由, 物流控制中心, 物流数据分析, 知识助手, 突发事件响应, 自动化攻击, 自然语言查询, 运营仪表盘, 逆向工具