Joseph Chen
2024 年,我加入鴻海深圳廠,接下了一個特殊任務:在完全沒有網路連線的生產環境裡, 部署一套可以跑 LLM(大型語言模型)的 AI 平台。
這篇文章不談程式碼,先把最根本的問題說清楚:為什麼要離線?什麼是 Air-gapped?這件事難在哪裡?
Air-gapped 是什麼意思?
"Air gap"(氣隙)是一個資安術語,指的是一台機器或整個網路與外部網際網路之間存在「物理隔離」—— 就像兩台電腦之間隔著一段空氣,無法直接連線傳輸資料。
製造工廠
生產線機台不能連外網,避免被駭客入侵或資料外洩。iPhone 組裝廠、晶片廠都是這種環境。
金融機構
交易系統、核心銀行系統與外網完全隔離,防止資安攻擊與法規違規。
國防/政府
機密資料系統嚴格隔離,連 USB 都可能被禁,確保國家機密不外洩。
工廠為什麼要跑 LLM?
這是我剛接到任務時自己也問的問題。在一個強調精準、標準化的製造環境,AI 能做什麼?
知識庫問答
操作 SOP、機台手冊動輒幾百頁,工程師花在找資料的時間佔工作時間 30% 以上。LLM 可以直接回答「這個錯誤代碼怎麼處理」。
異常報告生成
每次機台異常都要填一份報告,格式固定但內容重複。LLM 可以從測試 log 自動生成初稿,工程師只需要確認。
測試腳本輔助
自動化測試腳本需要持續維護,AI Agent 可以協助生成或偵錯腳本,加速開發週期。
多語言溝通
深圳廠工程師說中文,客戶說英文,印度廠說英文,LLM 可以做即時文件翻譯和溝通輔助。
離線部署難在哪裡?
如果你習慣了 pip install、docker pull、ollama pull這些一行搞定的指令,你就能理解在離線環境裡這些都不能用的痛苦。
😤 你平常理所當然的事
- ❌
pip install requests → 自動從 PyPI 下載 - ❌
docker pull ollama/ollama → 從 Docker Hub 拉取 - ❌
ollama pull llama3 → 自動下載 4GB 模型 - ❌
npm install → 從 npm registry 安裝 - ❌
apt-get update → 從網路更新套件
✅ 離線環境的解法
- ✓預先下載所有 wheel 檔,搬進來再安裝
- ✓在有網路的機器 docker save,打包成 tar 檔
- ✓手動下載 .gguf 模型檔,複製到指定路徑
- ✓建立內部 npm/pip mirror,供離線安裝
- ✓將所有依賴打包成離線安裝包
我用了什麼技術棧?
整個離線 AI 平台的核心由三個部分組成,這個系列的後續文章會逐一深入介紹:
LLM 推論引擎
負責在本地跑語言模型。支援 llama3、qwen2、gemma2 等主流開源模型,API 格式與 OpenAI 相容,整合方便。
AI Orchestration 平台
提供視覺化的 Workflow 設計、RAG(知識庫問答)、API 管理。讓不懂程式的工程師也能建立自己的 AI 應用。
容器化部署
整個平台用 Docker Compose 打包,確保環境一致性。在沒有 Docker Desktop 的 Linux 伺服器上用 Colima 替代。