智能稽核系统

一个基于AI Agent的智能稽核系统,提供实时稽核对话和政策编辑功能。

  • by FanShengXiang
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 FanShengXiang/audit-agentic-rag

使用说明

Agentic RAG 稽核系統

這是一個基於 AI Agent 的智能稽核系統,具有左右分屏的用戶界面。

系統架構

前端 (React + Vite + Tailwind CSS)

  • 端口: http://localhost:3000
  • 左側面板: 稽核對話 - 顯示 Agent 的 step-by-step 稽核過程
  • 右側面板: 政策編輯器 - 顯示和編輯向量數據庫中的政策內容

後端 (FastAPI)

  • 端口: http://localhost:8000
  • 功能:
    • 提供 RESTful API 介面
    • 集成原有的 agent_audit.py 和 update_policy.py 功能
    • 處理 MCP 工具調用
    • 管理稽核會話狀態

功能特性

稽核對話 (左側)

  • 實時顯示 Agent 的稽核過程
  • 政策規格解析顯示
  • 工具調用和結果展示
  • 最終稽核報告輸出

政策編輯 (右側)

  • 顯示當前向量數據庫中的政策內容
  • 支持在線編輯政策
  • 一鍵保存更新向量數據庫
  • 實時顯示更新狀態

技術棧

前端

  • React 18
  • Vite
  • Tailwind CSS
  • Axios (HTTP 客戶端)

後端

  • FastAPI
  • Python 3.10+
  • Groq (LLM)
  • ChromaDB (向量數據庫)
  • Sentence Transformers

快速開始

1. 安裝依賴

# 安裝前端依賴
cd frontend
npm install

# 後端依賴已在項目根目錄

2. 啟動後端 API

python api_server.py

後端將在 http://localhost:8000 啟動。

3. 啟動前端

cd frontend
npx vite dev --host 0.0.0.0 --port 3000 --open

前端將在 http://localhost:3000 啟動,並自動打開瀏覽器。

使用說明

開始稽核

  1. 在左側稽核面板點擊"開始稽核"按鈕
  2. 系統會自動:
    • 從向量數據庫檢索政策
    • 解析政策為 JSON 規格
    • 連接 MCP 工具進行多輪取證
    • 生成最終稽核報告

編輯政策

  1. 在右側政策編輯器查看當前政策
  2. 直接在文本框中編輯政策內容
  3. 點擊"儲存政策"按鈕更新向量數據庫
  4. 系統會顯示更新成功/失敗的提示

API 端點

政策管理

  • GET /api/policy - 獲取當前政策
  • POST /api/update-policy - 更新政策

稽核管理

  • POST /api/start-audit - 開始稽核
  • GET /api/audit-status/{audit_id} - 獲取稽核狀態
  • GET /api/final-report/{audit_id} - 獲取最終報告

系統集成

本系統完全集成您原有的後端代碼:

  • agent_audit.py: 核心稽核邏輯,已集成到 FastAPI 中
  • update_policy.py: 政策更新功能,已作為 API 端點
  • mcp_audit_tools.py: MCP 工具,保持不變
  • ingest_policy.py: 政策導入,保持不變

注意事項

  1. 確保 .env 文件中包含有效的 GROQ_API_KEY
  2. 確保 MCP 服務 (天氣和股票) 正在運行
  3. 前端和後端需要同時運行才能正常工作
  4. 稽核過程可能需要幾分鐘時間,請耐心等待

開發

前端開發

前端使用 Vite 熱重載,修改文件後會自動刷新。

後端開發

後端使用 uvicorn 運行,修改後需要重啟服務。

檔案結構

audit_agentic_rag/
├── api_server.py              # FastAPI 後端服務
├── frontend/                  # React 前端
│   ├── package.json
│   ├── vite.config.js
│   ├── src/
│   │   ├── App.jsx           # 主應用組件
│   │   ├── services/
│   │   │   └── api.js        # API 服務
│   │   └── components/
│   │       ├── AuditPanel.jsx    # 稽核面板
│   │       ├── PolicyEditor.jsx  # 政策編輯器
│   │       └── Layout.jsx        # 布局組件
│   └── index.html
├── agent_audit.py            # 原有稽核腳本
├── update_policy.py          # 原有政策更新腳本
├── ingest_policy.py          # 政策導入腳本
├── mcp_audit_tools.py        # MCP 工具
└── policy.txt               # 政策文件

故障排除

CORS 錯誤

如果遇到 CORS 錯誤,請檢查:

  1. 前端是否運行在 http://localhost:3000
  2. 後端是否運行在 http://localhost:8000
  3. FastAPI 的 CORS 配置是否正確

連接失敗

  1. 確認後端服務正在運行
  2. 檢查端口是否被佔用
  3. 確認網絡連接正常

貢獻

歡迎提交 Issue 和 Pull Request 來改進這個項目。