工程筆記本 / AIoT&邊緣運算

AIoT&邊緣運算

本地 AI 助理安全落地實作:Jetson Orin × NemoClaw - 前置設定篇

徐 豐智📅 2026-05-05👁 125

注意事項

⚠️ NemoClaw 目前尚處於開發階段(2026/04/28),API 與行為可能隨時變更,亦有可能因更新暫時無法使用,請勿用於正式生產環境。 [embedyt] https://www.youtube.com/watch?v=pqNDtLb4a94[/embedyt]  

前言

在 AI 代理 (AI Agent) 快速發展的今天,越來越多的開發者都在嘗試部署自己的 AI 助理,無論是用於個人專案、企業內部工具,還是面向客戶的服務。然而,AI 代理的使用都面臨一個共同的挑戰:如何確保它是安全的? 這不僅包括保護使用者資料不被外洩,還要確保代理的行為在可控範圍內,避免被惡意利用或失控。尤其當代理需要連接外部服務或執行系統命令時,安全風險更是不可忽視。   NVIDIA NemoClaw 為這個問題提供了一套完整答案。NemoClaw 以 NVIDIA Agent Toolkit 中的 NVIDIA OpenShell 為核心,將 OpenClaw 置於沙盒當中運行,僅提供有限度的存取權限,杜絕代理執行時潛在的風險;並透過執行政策型 (Policy) 隱私與安全防護機制,讓使用者完全掌握代理的網路存取,每一次的資料進出都可以被監控。NemoClaw 也提供了 Onboarding 設置引導流程,讓使用者能輕鬆完成安全配置,並且支援多種推理後端,讓安全的 AI 助理部署變得前所未有的簡單。   本文將逐步說明如何在 Jetson Orin 上完成 NemoClaw 的安裝與部分設定、執行 NemoClaw Onboarding、設定推理後端 API 金鑰,並在後續文章中完成剩餘的設定。  

整體架構

  整個系統由三個元件組成,各司其職:
  • NemoClaw:功能整合工具,負責協調 OpenShell 與 OpenClaw 的運作,提供使用者友好的安裝與設定流程
  • OpenShell:沙盒管理工具,負責即時攔截與監控 AI 代理的行為,並根據使用者設定的政策進行處理
  • OpenClaw:AI 代理,在沙盒中運行,負責處理使用者輸入、生成回應、與執行任務
   

NemoClaw 如何保護你的 AI 代理

  具體來說,NemoClaw 從四個面向限制 AI 代理的行為:
  • 對外連線:AI 代理不能隨意連上網路,每個陌生的目標都需要手動放行
  • 讀寫檔案:AI 代理只能在自己的工作目錄內活動,碰不到關鍵的系統檔案
  • 執行程式:禁止 AI 代理取得更高的系統權限或執行危險操作
  • 功能呼叫:你的 API 金鑰不會被傳入沙盒,AI 代理只看到一個代理位址,接觸不到真實的憑證資訊
 

支援的推理後端

Onboarding 時可選擇以下任一推理來源,此處採用 NVIDIA Endpoints:
  • NVIDIA Endpoints(NIM, NVIDIA Inference Microservice)
  • OpenAI / Anthropic / Google Gemini
  • 其他相容 OpenAI 格式的自架端點
  • Ollama
 

安裝與設定

 

前置需求

  1. Jetson Orin 需要完成 JetPack 系統安裝。
  2. 需要有 `sudo` 權限 (安裝過程會要求輸入密碼以安裝與設定必要的套件)。
  3. 穩定的網路連線與充足磁碟空間(建議 ≥20GB)。
 

步驟 1 — 安裝 curl

sudo apt update && sudo apt install -y curl
  此處可能會要求輸入使用者密碼。  

步驟 2 — 安裝 NemoClaw 並進行 Onboarding

curl -fsSL https://www.nvidia.com/nemoclaw.sh | bash
  安裝過程中會要求輸入使用者密碼以安裝與設定必要的套件。   輸入完使用者密碼後,就會自動下載並安裝 NemoClaw  

步驟 3 — 進行 Onboarding

安裝完成後就會自動進入 Onboarding 的設定流程,首先會詢問是否同意授權條款,輸入 `yes` 後按 Enter 繼續。   如果是使用 Jetson Orin Nano 這種記憶體較少的裝置,在這步會跳出提示,詢問是否要建立額外的虛擬記憶體(swap),避免在設定沙盒的過程中因為記憶體不足而失敗。這邊輸入 `y` 同意建立 swap 後按 Enter 繼續。   接著會自動設定用來管理沙盒的 OpenShell 閘道(Gateway) Docker,大約會花費 2 分鐘左右的時間。   設定完成後就會開始設定沙盒內的參數,第一個是推論模型的來源,有多個選項。 這邊使用本地端的模型,輸入 `1` 後按 Enter 選擇 `NVIDIA Endpoints`。   如果想要使用其他來源,可以在輸入數字後,按照提示輸入對應的 API 金鑰或端點 URL 等資訊,完成後再繼續下一步。   選擇 NVIDIA Endpoints 後,會要求輸入 API 金鑰,可以根據畫面上的指示前往 NVIDIA 網站註冊帳號後申請一個金鑰,回到終端機填入後,按下 Enter 即可繼續。 這時候輸入的金鑰會儲存在 ~/.nemoclaw/credentials.json 中,在沙盒內部是看不到的,AI 代理只能使用 NemoClaw 提供的代理位置(NVIDIA_API_KEY),在訊息傳出後由 NemoClaw 替換成實際的金鑰,確保了安全性。       輸入 API 金鑰後,會列出在 NVIDIA Endpoints 上可用的模型清單,輸入對應的數字選擇想要使用的模型。這邊選擇 `Nemotron 3 Super 120B`,輸入 `1` 後按 Enter 繼續。   然後會詢問沙盒的名稱,這邊直接按 Enter 使用預設名稱 `my-assistant`。   設定完成沙盒的基本資訊後,會將剛才設定的內容列出供使用者確認,確認無誤後輸入 `y` 並按 Enter 繼續。   詢問是否要啟用 Brave Web Search 功能,這個功能需要另外註冊帳號並申請 API 金鑰,這邊輸入 `n` 後按 Enter 跳過。  

結論

  透過以上步驟,我們已經成功在 Jetson Orin Nano 上安裝並設定好 NemoClaw,完成了一部份的 Onboarding 流程。接下來在 Telegram 使用篇中,我們將繼續完成剩餘的 Onboarding 設定,並且說明如何使用 Telegram 連線到沙盒與 AI 代理進行對話。

參考連結

  NemoClaw Developer Guide:https://docs.nvidia.com/nemoclaw/latest/index.html NemoClaw GitHub 倉庫:https://github.com/NVIDIA/NemoClaw Jetson AI Lab:https://www.jetson-ai-lab.com/ NVIDIA NIM APIs:https://build.nvidia.com/

相關文章 📎

留言 💬 (0)

還沒有留言,來當第一個。