Added two versions of Traditional Chinese README: - README_TW.md: Full Traditional Chinese version - README_ZHTW.md: bilingual version with English and Traditional Chinese side by side
12 KiB
計畫 N.O.M.A.D. 是一個自給自足的優先離線知識與教育伺服器,集成了關鍵工具、知識庫和 AI,讓您隨時隨地保持資訊獲取與自主能力。
安裝與快速開始
計畫 N.O.M.A.D. 可安裝在任何 Debian 系作業系統上(建議使用 Ubuntu)。安裝過程完全透過終端機,所有工具與資源皆設計透過瀏覽器存取,因此若您希望將 N.O.M.A.D. 設定為「伺服器」並透過其他裝置存取,無需桌面環境。
注意:執行安裝腳本需要 sudo/root 權限
快速安裝(僅限 Debian 系作業系統)
sudo apt-get update && sudo apt-get install -y curl && curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/install_nomad.sh -o install_nomad.sh && sudo bash install_nomad.sh
計畫 N.O.M.A.D. 已安裝完成!開啟瀏覽器並導覽至 http://localhost:8080(或 http://DEVICE_IP:8080)開始探索!
高級安裝
若需更精細控制安裝流程,請將 Docker Compose 範本 複製到 docker-compose.yml 檔案中並依需求客製化(確認將佔位符替換為實際值)。接著執行 docker compose up -d 啟動指揮中心及其依賴服務。注意:此方法僅推薦給進階用戶,需熟悉 Docker 並在啟動前進行手動配置。
運作原理
N.O.M.A.D. 是一個管理介面(「指揮中心」)和 API,透過 Docker 協調一組容器化工具與資源。它負責所有項目的安裝、配置與更新 — 您無需親自動手。
內建功能包括:
- 知識庫 AI 聊天 — 由 Ollama 驅動的本地 AI 聊天,支援文件上傳與語意搜尋(透過 Qdrant 實現 RAG)
- **資訊庫」 — 透過 Kiwix 提供離線維基百科、醫學參考、電子書等
- **教育平台」 — 透過 Kolibri 提供 Khan Academy 課程與進度追蹤
- **離線地圖」 — 透過 ProtoMaps 提供可下載的地區地圖
- **資料工具」 — 透過 CyberChef 提供加密、編碼與分析工具
- **筆記」 — 透過 FlatNotes 提供本地筆記功能
- **系統效能測試」 — 硬體評分與社群排行榜
- **簡易設定精靈」 — 引導式首次配置,附策展內容收藏
N.O.M.A.D. 還包含內建工具,例如維基百科內容選擇器、ZIM 庫管理器和內容瀏覽器。
包含內容
| 功能 | 技術基礎 | 您將獲得 |
|---|---|---|
| 資訊庫 | Kiwix | 離線維基百科、醫學參考、生存指南、電子書 |
| AI 助手 | Ollama + Qdrant | 內建聊天系統,支援文件上傳與語意搜尋 |
| 教育平台 | Kolibri | Khan Academy 課程、進度追蹤、多人支援 |
| 離線地圖 | ProtoMaps | 可下載的地區地圖,具備搜尋與導航功能 |
| 資料工具 | CyberChef | 加密、編碼、雜湊與資料分析 |
| 筆記 | FlatNotes | 本地筆記功能,支援 Markdown |
| 系統效能測試 | 內建 | 硬體評分、Builder Tags 與社群排行榜 |
裝置需求
許多類似的離線生存電腦設計為在最低配置的輕量級硬體上運行,但計畫 N.O.M.A.D. 則截然不同。為了安裝並執行可用的 AI 工具,我們強烈建議使用配備強大 GPU 的裝置,以充分發揮安裝效果。
然而,N.O.M.A.D. 的核心仍然非常輕量。對於管理應用程式本身的精簡安裝,需滿足以下最低規格:
注意:計畫 N.O.M.A.D. 未接受任何硬體製造商贊助,並設計為盡可能與硬體無關。以下列出的硬體僅供範例/比較使用
最低規格
- 處理器:2 GHz 雙核心處理器或更高
- RAM:4 GB 系統記憶體
- 儲存空間:至少 5 GB 可用磁碟空間
- 作業系統:Debian 系(建議 Ubuntu)
- 穩定網際網路連線(僅安裝時需要)
若要執行 LLM 與其他內建的 AI 工具:
最佳規格
- 處理器:AMD Ryzen 7 或 Intel Core i7 或更高
- RAM:32 GB 系統記憶體
- 顯示卡:NVIDIA RTX 3060 或 AMD 同級或更高(更多 VRAM = 可執行更大模型)
- 儲存空間:至少 250 GB 可用磁碟空間(建議 SSD)
- 作業系統:Debian 系(建議 Ubuntu)
- 穩定網際網路連線(僅安裝時需要)
如需三種價位($150–$1,000+)的詳細建置建議,請參閱【硬體指南】(https://www.projectnomad.us/hardware)。
再次強調,計畫 N.O.M.A.D. 本身非常輕量 — 真正決定您獨特部署所需規格的,是您選擇透過 N.O.M.A.D. 安裝的工具與資源。
網際網路使用與隱私
計畫 N.O.M.A.D. 專為離線使用設計。網際網路連線僅在初始安裝期間(用於下載依賴項)以及當您(用戶)稍後決定下載額外工具與資源時才需要。除此之外,N.O.M.A.D. 不需要網際網路連線,且內建零數據傳輸。
為測試網際網路連線,N.O.M.A.D. 會嘗試向 Cloudflare 的公用端點 https://1.1.1.1/cdn-cgi/trace 發出請求並檢查是否成功回應。
關於安全性
設計上,計畫 N.O.M.A.D. 意圖開放且無障礙地存取 — 不包含任何身份驗證。若您在安裝後決定將裝置連接到區域網路(例如,允許其他裝置存取其資源),您可以封鎖/開啟連接埠以控制哪些服務被公開。
未來會新增身份驗證嗎? 也許。目前不是優先事項,但若有足夠需求,我們可能會考慮在未來版本中內建可選的身份驗證層,以支援多個用戶存取同一實例但具備不同權限層級的情境(例如,家長控制的家庭使用、具教師/管理員帳戶的教室使用等)。目前,若您打算將 N.O.M.A.D. 實例對區域網路上的其他裝置公開,我們建議使用網路層級控制來管理存取。N.O.M.A.D. 不設計為直接對網際網路公開,除非您非常清楚自己在做什麼、已採取適當的安全措施並了解相關風險,否則強烈建議不要這樣做。
貢獻
歡迎並感謝貢獻!請完整閱讀此章節以瞭解如何為本項目做出貢獻。
一般指導原則
- 先開啟 Issue:在開始新功能或錯誤修復工作前,請先開啟 Issue 討論您的提議變更。這有助確保您的貢獻與項目目標一致,避免重複工作。明確標示 Issue 標題並提供您要處理的問題或功能的詳細描述。
- Fork 此儲存庫:點擊儲存庫頁面右上方的「Fork」按鈕,在您的 GitHub 帳號下建立項目副本。
- 建立新分支:在您 Fork 的儲存庫中,為您的工作建立新分支。使用反映變更目的的描述性分支名稱(例如
fix/issue-123或feature/add-new-tool)。 - 進行變更:在新分支中實作您的變更。遵循項目中既有的程式碼風格與慣例。務必在本地測試變更以確保其按預期運作。
- 新增發布說明:若您的變更包含新功能、錯誤修復或改進,請參閱下方的「發布說明」章節,為下次發布妥善記錄您的貢獻。
- Conventional Commits:提交變更時,請使用慣例提交訊息來提供清晰且一致的提交歷史。格式為
<type>(<scope>): <description>,其中:type是變更類型(例如,新功能用feat,錯誤修復用fix,文件變更用docs等)scope是您的變更影響的程式碼區域(例如api、ui、docs等)description是變更的簡短摘要
- 提交 Pull Request:變更準備就緒後,向主儲存庫提交 Pull Request。清楚描述您的變更並參照任何相關 Issue。項目維護者將審查您的 Pull Request,並可能在合併前提供回饋或要求變更。
- 及時回饋:若維護者要求變更或對您的 Pull Request 提供回饋,請及時回應。若長期無活動,過時的 Pull Request 可能會被關閉。
- 遵循行為準則:與維護者和其他貢獻者互動時,請遵循項目的行為準則。在溝通中保持尊重與體貼。
- 不保證接受:本項目由社群驅動,所有貢獻均受感謝,但不保證接受。維護者將根據質量、相關性與項目目標評估每項貢獻。
- **感謝您為計畫 N.O.M.A.D. 做出貢獻!」您的努力讓這個項目對每個人來說都變得更好。
版本控制
本項目使用語意版本控制。版本在根目錄的 package.json 中管理,並由 semantic-release 自動更新。為簡化起見,「project-nomad」映像檔使用該處定義的相同版本,而非 admin/package.json 中的版本(保持在 0.0.0),因為這是唯一從程式碼發布的映像檔。
發布說明
人類可讀的發布說明位於 admin/docs/release-notes.md,並顯示於指揮中心的內建文件中。
進行變更時,請將摘要新增至該檔案頂部 ## Unreleased 區段下的適當標題:
- **Features(功能)」 — 新的使用者可見功能
- **Bug Fixes(錯誤修復)」 — 現有行為的修正
- **Improvements(改進)」 — 增強、重構、文件或依賴更新
使用格式 - **領域**:描述 以與現有條目保持一致。觸發發布時,CI 會自動標記版本與日期、提交更新並將內容推送到 GitHub 發布。
社群與資源
- 網站: www.projectnomad.us - 瞭解更多關於本項目
- Discord: 加入社群 - 獲得協助、分享您的建置並與其他 NOMAD 用戶建立連結
- 效能測試排行榜: benchmark.projectnomad.us - 查看您的硬體與其他 NOMAD 建置的比較
授權條款
計畫 N.O.M.A.D. 採用 Apache License 2.0 授權。
輔助腳本
安裝完成後,計畫 N.O.M.A.D. 提供一些輔助腳本,以協助您排除故障或執行無法透過指揮中心完成的維護工作。所有這些腳本皆位於計畫 N.O.M.A.D. 的安裝目錄 /opt/project-nomad 中。
啟動腳本 - 啟動所有已安裝的項目容器
sudo bash /opt/project-nomad/start_nomad.sh
停止腳本 - 停止所有已安裝的項目容器
sudo bash /opt/project-nomad/stop_nomad.sh
更新腳本 - 嘗試拉取指揮中心及其依賴項(例如 mysql)的最新映像檔並重建容器。注意:這僅更新指揮中心容器。不更新可安裝的應用程式容器 — 應透過指揮中心介面執行更新
sudo bash /opt/project-nomad/update_nomad.sh
解除安裝腳本 - 需要重新開始?使用解除安裝腳本讓您輕鬆完成。注意:此操作無法復原!
curl -fsSL https://raw.githubusercontent.com/Crosstalk-Solutions/project-nomad/refs/heads/main/install/uninstall_nomad.sh -o uninstall_nomad.sh && sudo bash uninstall_nomad.sh