KaparthyReddy/aria-response

GitHub: KaparthyReddy/aria-response

ARIA 是一套融合实时态势感知、确定性风险评分与 AI 结构化推理的灾害应急响应智能平台,为指挥官和分析师提供可解释的决策支持。

Stars: 0 | Forks: 0

# ARIA — 机构自适应响应智能系统 ARIA 将实时事件数据、资源状态和现场报告融合到一个可解释的决策平台中——包括确定性风险评分、结构化 AI 推理、资源分配建议以及实时态势简报。 ## 功能介绍 | 界面 | 功能描述 | |---|---| | **作战仪表盘** | 全印度所有活跃事件的实时地图、严重性编码标记、资源覆盖层、实时警报源 | | **记分卡** | 确定性风险评分——总体风险、覆盖缺口、资源准备度、活跃事件(无 LLM 依赖) | | **AI 评估** | 由 Claude 驱动的结构化推理——态势摘要、关键风险、优先级建议、预期结果 | | **事件详情** | 单个事件深度剖析——状态管理、资源部署、AI 问答 | | **资源跟踪器** | 完整的资产盘点——NDRF 团队、医疗单位、直升机、物资、避难所 | | **ARIA Copilot** | 引导式对话录入——现场人员通过聊天机器人报告事件,AI 流水线自动运行 | | **基于角色的访问权限** | 指挥官 / 分析师 / 现场人员——不同角色拥有不同权限 | ## 技术栈 - **前端** — React 19 + Vite + Tailwind CSS 3 - **后端** — FastAPI + Pydantic + aiosqlite - **AI** — Anthropic Claude (`claude-sonnet-4-20250514`) 结合结构化 JSON 提示词 - **认证** — JWT 结合基于角色的访问控制(bcrypt 密码哈希) - **地图** — Leaflet + react-leaflet - **部署** — Render (后端) + Vercel (前端) ## 架构 ``` ┌─────────────────────────────────────────────────┐ │ React 19 + Vite + Tailwind │ ← Frontend │ Dashboard · IncidentDetail · CopilotChat │ │ useIncidentState · useAuth · useAlerts (SSE) │ ├─────────────────────────────────────────────────┤ │ FastAPI + Pydantic │ ← Backend │ IncidentStore · ResourceTracker │ │ RiskScorer (deterministic) · AlertRouter │ │ JWT Auth (commander / analyst / field) │ ├─────────────────────────────────────────────────┤ │ Anthropic Claude API │ ← AI Layer │ incident_assessment · resource_allocation │ │ query_response · situation_brief │ │ Fallback mode — works without API key │ ├─────────────────────────────────────────────────┤ │ SQLite — auth · JSON — seed data │ ← Data │ region_context.txt — India operations doctrine │ └─────────────────────────────────────────────────┘ ``` ## 快速开始 ### 1. 克隆项目 ``` git clone https://github.com/YOUR_USERNAME/aria-response.git cd aria-response ``` ### 2. 后端 ``` cd backend python3.12 -m venv .venv source .venv/bin/activate pip install -r requirements.txt cp ../.env.example ../.env ``` 编辑 `.env` — 设置 `ANTHROPIC_API_KEY` 和 `JWT_SECRET`。要在没有 API 密钥的情况下运行,请设置 `FALLBACK_MODE=true`。 ``` uvicorn main:app --reload --port 8000 ``` ### 3. 初始化演示用户 ``` cd .. python3 -c " import aiosqlite, asyncio, uuid from datetime import datetime from passlib.context import CryptContext pwd = CryptContext(schemes=['bcrypt'], deprecated='auto') users = [ ('commander@aria.gov', 'Commander Singh', 'commander'), ('analyst@aria.gov', 'Analyst Sharma', 'analyst'), ('field@aria.gov', 'Field Officer Rao', 'field'), ] async def seed(): async with aiosqlite.connect('data/aria.db') as db: await db.execute('''CREATE TABLE IF NOT EXISTS users ( id TEXT PRIMARY KEY, email TEXT UNIQUE NOT NULL, full_name TEXT NOT NULL, hashed_password TEXT NOT NULL, role TEXT NOT NULL DEFAULT 'analyst', created_at TEXT NOT NULL)''') for email, name, role in users: await db.execute( 'INSERT OR IGNORE INTO users (id,email,full_name,hashed_password,role,created_at) VALUES (?,?,?,?,?,?)', (str(uuid.uuid4()), email, name, pwd.hash('aria2026'), role, datetime.utcnow().isoformat()) ) await db.commit() asyncio.run(seed()) " ``` ### 4. 前端 ``` cd frontend npm install npm run dev ``` 打开 http://localhost:5173 ## 演示凭证 | 角色 | 电子邮箱 | 密码 | |------|-------|----------| | 指挥官 | commander@aria.gov | aria2026 | | 分析师 | analyst@aria.gov | aria2026 | | 现场人员 | field@aria.gov | aria2026 | **指挥官** — 拥有完全访问权限,包括资源部署和状态更新 **分析师** — 评估、简报、资源管理 **现场人员** — 仅限仪表盘视图和 Copilot 录入 ## 环境变量 ``` ANTHROPIC_API_KEY=sk-ant-... AI_MODEL=claude-sonnet-4-20250514 AI_TIMEOUT=20 FALLBACK_MODE=false FRONTEND_URL=http://localhost:5173 JWT_SECRET=your-random-secret JWT_EXPIRE_HOURS=12 VITE_BACKEND_URL=http://localhost:8000 ``` ## 部署 **后端 → Render.com** - 根目录:`backend` - 构建:`pip install -r requirements.txt` - 启动:`uvicorn main:app --host 0.0.0.0 --port $PORT` - 设置环境变量:`ANTHROPIC_API_KEY`、`JWT_SECRET`、`FALLBACK_MODE`、`FRONTEND_URL` **前端 → Vercel** - 根目录:`frontend` - 构建:`npm run build` - 输出:`dist` - 环境变量:`VITE_BACKEND_URL=https://your-render-url.onrender.com` ## 降级模式 在 `.env` 中设置 `FALLBACK_MODE=true` 即可在没有 Anthropic API 密钥的情况下运行。所有 AI 界面都将返回基于实时事件和资源状态生成的、逼真的数据驱动响应。所有功能均可正常使用——登录、地图、评分、评估、Copilot、简报。 本项目使用 React、FastAPI 和 Anthropic Claude 构建。
标签:AI智能体, Anthropic, AV绕过, Chatbot, CIS基准, Claude, Copilot, CVE检测, DLL 劫持, FastAPI, GIS地图, HTTP/HTTPS抓包, JWT认证, Leaflet, NDRF, RBAC权限控制, React, Situational Awareness, SSE实时推送, Syscalls, Tailwind CSS, Vite, 人工智能, 决策支持系统, 可解释AI, 后端开发, 地图可视化, 大语言模型, 实时报警, 应急指挥调度, 应急管理, 态势感知, 态势评估, 情报分析, 指挥系统, 智能对话机器人, 灾害响应, 用户模式Hook绕过, 网络诊断, 自然灾害救援, 资产追踪, 资源分配