Skip to content

Latest commit

 

History

History
121 lines (87 loc) · 5.46 KB

File metadata and controls

121 lines (87 loc) · 5.46 KB

系統架構

這個專案展示了一個網頁應用程式,使用內容安全檢查,在透過模型上下文協議 (MCP) 將使用者提示傳送至計算器服務之前進行篩選。

運作方式

  1. 使用者輸入:使用者在網頁介面中輸入計算提示
  2. 內容安全篩選(輸入):提示透過 Azure 內容安全 API 進行分析
  3. 安全決策(輸入)
    • 如果內容安全(所有類別的嚴重程度 < 2),則繼續進入計算器
    • 如果內容被標記為可能有害,則流程停止並返回警告
  4. 計算器整合:安全內容由 LangChain4j 處理,並與 MCP 計算器伺服器溝通
  5. 內容安全篩選(輸出):機器人的回應透過 Azure 內容安全 API 進行分析
  6. 安全決策(輸出)
    • 如果機器人的回應是安全的,則顯示給使用者
    • 如果機器人的回應被標記為可能有害,則以警告取代
  7. 回應:結果(如果安全)將與兩次安全分析一起顯示給使用者

使用模型上下文協議 (MCP) 與計算器服務

這個專案展示了如何使用模型上下文協議 (MCP) 從 LangChain4j 呼叫計算器 MCP 服務。實作使用在埠 8080 上運行的本地 MCP 伺服器提供計算器操作。

設定 Azure 內容安全服務

在使用內容安全功能之前,你需要建立 Azure 內容安全服務資源:

  1. 登入 Azure Portal
  2. 點擊「建立資源」並搜尋「Content Safety」
  3. 選擇「Content Safety」並點擊「建立」
  4. 為你的資源輸入一個唯一名稱
  5. 選擇你的訂閱和資源群組(或建立一個新的)
  6. 選擇支援的地區(詳情請檢查 Region availability
  7. 選擇適當的定價層級
  8. 點擊「建立」以部署資源
  9. 部署完成後,點擊「前往資源」
  10. 在左側窗格下的「資源管理」中,選擇「金鑰和端點」
  11. 複製任一金鑰和端點 URL 以便在下一步中使用

設定環境變數

設定 GITHUB_TOKEN 環境變數以進行 GitHub 模型身份驗證:

export GITHUB_TOKEN=<your_github_token>

對於內容安全功能,設定:

export CONTENT_SAFETY_ENDPOINT=<your_content_safety_endpoint>
export CONTENT_SAFETY_KEY=<your_content_safety_key>

這些環境變數由應用程式使用,以便與 Azure 內容安全服務進行身份驗證。如果這些變數未設定,應用程式將使用佔位值進行演示,但內容安全功能將無法正常運作。

啟動計算器 MCP 伺服器

在運行客戶端之前,你需要在 localhost:8080 上以 SSE 模式啟動計算器 MCP 伺服器。

專案描述

這個專案展示了模型上下文協議 (MCP) 與 LangChain4j 的整合以呼叫計算器服務。主要功能包括:

  • 使用 MCP 連接到計算器服務以進行基本數學運算
  • 對使用者提示和機器人回應進行雙層內容安全檢查
  • 通過 LangChain4j 與 GitHub 的 gpt-4.1-nano 模型整合
  • 使用伺服器發送事件 (SSE) 進行 MCP 傳輸

內容安全整合

專案包括全面的內容安全功能,以確保使用者輸入和系統回應均無有害內容:

  1. 輸入篩選:所有使用者提示在處理前均需分析是否包含仇恨言論、暴力、自殘和性內容等有害類別。

  2. 輸出篩選:即使使用可能未經審查的模型,系統也會通過相同的內容安全過濾器檢查所有生成的回應,然後再顯示給使用者。

這種雙層方法確保系統無論使用哪種 AI 模型,均保持安全,保護使用者免受有害輸入和可能有問題的 AI 生成輸出。

網頁客戶端

應用程式包括一個使用者友好的網頁介面,允許使用者與內容安全計算器系統互動:

網頁介面功能

  • 簡單直觀的表單用於輸入計算提示
  • 雙層內容安全驗證(輸入和輸出)
  • 提示和回應安全的即時反饋
  • 易於解讀的彩色安全指示器
  • 清晰、響應式設計,適用於各種設備
  • 提供範例安全提示以指導使用者

使用網頁客戶端

  1. 啟動應用程式:

    mvn spring-boot:run
  2. 打開瀏覽器並導航至 http://localhost:8087

  3. 在提供的文字區域中輸入計算提示(例如,「計算 24.5 和 17.3 的和」)

  4. 點擊「提交」以處理你的請求

  5. 查看結果,其中包括:

    • 你的提示的內容安全分析
    • 計算結果(如果提示安全)
    • 機器人回應的內容安全分析
    • 如果輸入或輸出被標記則顯示任何安全警告

網頁客戶端自動處理內容安全驗證過程,確保所有互動均安全且適當,無論使用哪種 AI 模型。

免責聲明: 本文件使用 AI 翻譯服務 Co-op Translator 進行翻譯。儘管我們努力確保準確性,但請注意自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵信息,建議使用專業人工翻譯。我們對使用本翻譯而引起的任何誤解或誤釋不承擔責任。