LocalAI:完全在地化的開源人工智慧替代方案

  • LocalAI 提供與 OpenAI 相容的 API,可在本地完全運行 LLM、視覺、音訊和代理,而無需依賴雲端。
  • 其模組化架構僅下載必要的後端,自動偵測硬件,並支援 CPU、GPU、Metal、Jetson 和分散式加速。
  • 該生態系統包括 LocalAGI、LocalRecall 和經過改進的 WebUI(支援 MCP)、具有外部工具的代理程式以及高級模型管理。
  • 該社群正在積極推進路線圖和衍生應用,例如面向隱私和離線使用的本地 AI 聊天行動用戶端。

本地人工智慧

如果您有興趣在家中或自己的伺服器上建立自己的AI,而無需依賴任何人, LocalAI 已成為開源生態系統中的關鍵標竿之一。這不僅僅是另一個項目:它是 一系列旨在直接取代 OpenAI API 和其他商業平台的工具。但是可以在本地運行,完全控制您的數據,並且無需強制使用 GPU。

LocalAI 遠非僅僅是一個模型伺服器,它已經發展成為一個 完整的代理平台、語意記憶、多模態生成和分散式部署所有這些都基於模組化架構,既能適應非常普通的硬件,也能適應配備 GPU、Jetson 或分散式叢集的高級基礎設施。

LocalAI是什麼?為什麼它如此受關注?

LocalAI 是一個採用 MIT 許可證的開源項目,它充當… 與 OpenAI 規格(以及 Anthropic 或 Elevenlabs 等類似服務)相容的 REST API但它完全運行在您自己的機器或本地基礎設施上。它由 Ettore Di Giacinto 和一個非常活躍的社區維護,並且在 GitHub 上已經獲得了數萬顆星,這反映出人們對無雲 AI 解決方案的巨大興趣。

主要觀點是你可以 無需更改程式碼,即可使用專為 OpenAI API 設計的用戶端、SDK 和工具。只需將端點指向您的 LocalAI 實例即可。之後,您就可以在本地運行 LLM、生成圖像和音訊、使用 TTS、執行語義搜尋、目標偵測等等,而無需將任何資料傳送到外部。

最顯著的優勢之一是 你不一定需要獨立顯示卡。許多模型可以僅使用 CPU 運行,這使得它們可以安裝在 NAS、NUC、舊伺服器或任何資源有限的機器上,並根據您的硬體限制調整模型的大小和量化。

Local Stack 系列:LocalAI、LocalAGI 和 LocalRecall

隨著項目的不斷發展,它已經轉變為 一系列相互關聯的工具,其功能遠不止於簡單的模型推論。如今,所謂的「本地堆疊」主要由三個關鍵組件構成,這些組件可以協同工作,也可以單獨工作。

一方面,LocalAI 仍然是 作為OpenAI相容的文字、圖像、音訊和其他模態API的核心支柱它處理與各種推理後端(llama.cpp、vLLM、transformers、diffusers 等)的通信,並公開一個標準接口,支援聊天、補全、圖像生成、TTS、嵌入、重排序,甚至還有文本轉視頻等實驗性端點。

與他並肩出現的是 LocalAGI,它充當… 具有高階代理工具和工作流程支援的人工智慧代理管理平台它作為 OpenAI Responses API 的改進替代品,可讓您定義能夠推理、規劃步驟、呼叫外部工具和協調複雜任務的代理,這些代理可以自主運行,但始終在本地運行。

第三個要素是局部召回率,其設計目的是: REST API 和具有持久記憶體的知識管理系統,供代理使用。基本上,它提供了語義儲存層、向量資料庫和長期上下文管理,以便代理和模型能夠隨著時間的推移記住資訊、文件和對話狀態,而無需依賴外部服務。

關鍵能力:超越簡單的本地LLM

LocalAI之所以能獲得如此廣泛的關注,其中一個原因是: 它不僅限於服務大型語言模式。該專案涵蓋了非常廣泛的人工智慧功能,使其成為自託管智慧應用程式的一種「通用基礎設施」。

在語言領域,LocalAI允許 運行與多個模型系列相容的LLM (Llama、Gemma、Qwen、Phi、Mistral、SmollVLM 等),支援透過 llama.cpp 或透過 transformers 或 vLLM 等後端支援 GGUF 格式的模型,具體取決於可用的硬體和效能需求。

在多模態視覺和生成方面,LocalAI 提供 支持擴散模型, 圖像編輯視覺語言模型和即時目標偵測這包括與 stable-diffusion.cpp、HuggingFace 擴散器等項目的集成,以及 FLUX、WAN 或 Qwen 3 VL 等模型,以及由 rf-detr 支援的專用物件檢測 API,即使在 CPU 上也能非常高效地運行。

音訊是另一個優勢:LocalAI 整合了 即時語音、文字轉語音和語音辨識後端,支援克隆功能我們發現了各種各樣的工具,從用於轉錄的 whisper.cpp 和 faster-whisper,到 Bark、Bark-cpp、Coqui、Kokoro、KittenTTS、Piper、Chatterbox、neutts 或 Vibevoice 等 TTS 引擎,以及 silero-vad 等語音活動檢測 (VAneutts 或 Vibevoice 等 TTS 引擎,以及 silero-vad 等語音活動檢測 (VAneutts 或 Vibevoice 等 TTS 引擎,以及 silero-vad 等語音活動檢測 (VAneutts) 模型,可以控制何時說話或靜音。

模組化架構:輕量級二進位和按需後端

該計畫近期的一項重大變革是向…的轉變 採用完全模組化架構,其中 LocalAI 主二進位與後端分離。以前,「一體化」鏡像體積龐大,標準配置中包含所有可能的引擎,這使得輕量級部署和升級變得複雜。

基於這個新理念,基礎 Docker 映像和 LocalAI 二進位檔案是 體積小得多,而且僅在需要時才下載必要的後端。當您從圖庫或透過 YAML 檔案安裝模型時,LocalAI 會自動偵測您的硬體(CPU、NVIDIA、AMD 或 Intel GPU),並下載模型所需的對應後端版本。

此外,得益於這種設計,現在 即使使用開發版本,您也可以獨立於專用圖庫管理後端。這意味著您無需等待新的 LocalAI 版本即可嘗試最新的 llama.cpp、whisper.cpp 或 diffusers 後端:只需更新該元件,系統即可立即使用它。

另一個在偏遠地區或有特殊要求的工作人員非常重視的實用細節是: 只需將二進位檔案複製到指定資料夾即可載入自訂後端無需重新編譯整個容器,即可測試最佳化版本、特定架構的變體或後端的修補版本,而不會影響整個系統。

與多種AI後端相容

LocalAI 整合了非常廣泛的後端,以涵蓋不同類型的模型和用例, 針對每種硬體量身定制的加速支持LLM 的核心通常圍繞著 llama.cpp、vLLM 和 transformers 展開,但還有很多其他元件。

在通用LLM部分,llama.cpp提供了 支援 CUDA、ROCm、Intel SYCL、Vulkan、Metal 和純 CPU 的 C/C++ 高效推理允許量化模型在沒有GPU的機器上運作。 vLLM引入了PagedAttention和吞吐量導向的最佳化,並支援CUDA和ROCm加速;而Transformer則為HuggingFace在CUDA、ROCm、Intel和CPU上運行的大量模型打開了大門。

對於音頻,whisper.cpp 和 faster-whisper 等後端被結合使用。 在 CPU 或 GPU 上實現快速、便攜的語音識別以及各種各樣的 TTS 引擎:Bark 和 Bark-cpp、Coqui、Kokoro、Kitten-TTS、Piper、Chatterbox、neutts 和 Vibevoice,每個引擎都有其自身的品質、延遲和硬體要求的平衡,從純 CPU 到 CUDA、ROCm、Metal 或 Intel。

在願景和傳播方面,該專案支持 stablediffusion.cpp 是穩定擴散的 C/C++ 實作。此外,它還支援 HuggingFace 的擴散器庫,用於更新的圖像生成和編輯模型。根據後端的不同,可以使用 CUDA、ROCm、Intel SYCL、Metal 或 CPU。

除了 LLM、音訊和影像之外,LocalAI 還整合了 特定的後端,例如用於目標檢測的 rfdetr、文檔重排序引擎和本地儲存的向量儲存。此外,它還整合了 HuggingFace API,可在需要時結合本地和遠端推理。這使得該平台功能非常全面,可用於建立增強型搜尋系統、文件導航助理或本機 MLOps 管線。

加速:從 CPU 最佳化到 GPU、Metal 和 Jetson

為確保不遺漏任何人,LocalAI 提供了一層 高度靈活的加速,幾乎可以配置用於任何類型的現代硬體如果您擁有 NVIDIA GPU,則可以在大多數相容的後端(從 llama.cpp 到 diffusers 或 coqui)中利用 CUDA 12 或 13,並根據您的資源調整 GPU 層數或負載。

對於 AMD 顯示卡,LocalAI 依賴 ROCm 來實現。 加速關鍵後端,例如 llama.cpp、whisper、vLLM、transformers、diffusers、rerankers 和各種 TTS。對於那些使用 Radeon 顯示卡建造家庭實驗室的用戶來說,這非常有趣。對於 Intel 硬件,可以透過 oneAPI 和其他技術獲得支持,在 llama.cpp、whisper、stablediffusion、vLLM、diffusers、rfdetr、rerankers 等後端以及 Coqui 或 Bark 等語音引擎中部署加速功能。

如果您使用 Mac,該平台可與 Metal 以及 Apple 的原生 MLX 和 MLX-VLM 後端集成,提供 針對 M1、M2 和 M3+ 晶片進行了最佳化推理 既適用於 LLM,也適用於多模態模型,此外還支援 bark-cpp 和其他 Metal 相容組件。

他們也沒有忘記嵌入式場景:他們為嵌入式場景提供了專門的支援。 支援 CUDA 12 和 13 的 NVIDIA Jetson這使得 llama.cpp、whisper、stablediffusion、diffusers 和 rfdetr 能夠在 ARM64 設備(例如 AGX Orin)或邊緣運算平台上運行,這對於機器人、安全或智慧物聯網專案非常有用。

當然,這一切都與…相輔相成。 支援 AVX、AVX2 和 AVX512 等指令集的 CPU 優化型可執行檔除了後端變體(例如 whisper.cpp)是根據處理器的功能專門編譯的,避免在較舊或低功耗機器上出現“非法指令”錯誤。

安裝:二進位、腳本、Docker 和 AIO

在實際營運層面上,LocalAI團隊投入了大量精力來確保: 讓它順利運作不應該是一場漫長的旅程根據環境和經驗程度的不同,有多種安裝方法可供選擇,既適用於快速測試,也適用於更正式的部署。

一方面,你可以從…開始 安裝腳本,用於下載相應的二進位檔案並配置基本設定。雖然也存在適用於各種桌面平台的直接二進位文件,但例如在 macOS 上,DMG 文件未經 Apple 簽名,這可能會導致系統將其標記為“隔離”,並且需要稍微繞點彎才能打開它們(該團隊會跟進問題,提供解決方案和可能的改進)。

另一種非常常見的方法是使用 Docker 來部署 LocalAI。 獨立容器,無論是用於 CPU、GPU 或 AIO 鏡像,都包含預先下載的模型您可以選擇僅包含 CPU 的鏡像、CPU+GPU 組合鏡像,或包含一組初始可用模型的一體化鏡像,儘管後者佔用更多空間,並且已發出警告,將來某些「額外」變體可能會被棄用,轉而使用新的後端管理系統。

在使用 Docker 時,區分以下幾點非常重要: docker run 指令會建立並啟動一個新容器。`docker start` 指令只會啟動一個已存在的容器。如果您已經啟動了 LocalAI 並想要重新啟動它,正確的方法是使用類似 `docker start -i local-ai` 的命令,以避免建立重複容器或與已註冊的名稱衝突。

模型載入和自動後端檢測

LocalAI 啟動並運行後,下一步是… 載入你要使用的模型,可以從官方圖庫加載,也可以透過 YAML 設定檔載入。在這個階段,自動硬體和後端偵測的邏輯開始發揮作用。

當您在 WebUI 中選擇模型或在 YAML 中定義模型時,LocalAI 分析您的機器效能(GPU 類型,是 NVIDIA、AMD 還是 Intel,CPU 支援等),並下載對應的後端。 針對該型號和設備組合。這樣,您就無需手動確定特定環境所需的 llama.cpp、diffusers 或 whisper.cpp 二進位。

如果您需要更多控制權,YAML 設定允許您這樣做。 調整上下文大小、GPU 層數、mmap 使用情況、量化或代理工具定義等參數。而且,由於 WebUI 的改進,現在可以直接從圖形介面編輯所有 YAML 文件,而無需透過 SSH 連接到伺服器或手動編輯文件。

重新設計的 WebUI:LocalAI 中模型、聊天和代理程式的視覺化管理

網頁介面經過了重大重新設計,旨在滿足高級用戶的需求,同時仍然方便那些只想進行視覺瀏覽的用戶。從 HTML 遷移到以下幾種技術的組合: Alpine.js 和原生 JavaScript 大大提高了速度和流暢度。 根據經驗,尤其是在配置或模型較多的環境。

透過此 WebUI,您可以存取 聊天介面、影像生成、音訊、模型管理和內部配置有一個帶有模糊搜尋功能的模型列表,因此即使您在輸入時出錯(例如,“gema”而不是“gemma”),系統也會顯示正確的結果,而無需您費盡心思地嘗試精確地確定術語。

最實用的一點是,WebUI 允許 查看和編輯每個模型的完整 YAML 配置 無需離開應用程序,即可透過瀏覽器進行操作。您可以變更最大上下文、啟用或停用多模態支援、調整效能參數,或為代理定義工具和 MCP 伺服器,所有變更儲存後立即生效。

MCP代理與支援:使用本地工具的人工智慧

在最新版本中,LocalAI 透過整合了多項功能,實現了顯著的飛躍。 全面支援協定上下文模型 (PCM) 和高階代理功能這樣就可以建構智能體,它們不僅可以回答問題,還可以使用外部工具、規劃步驟和協調複雜的任務。

MCP 整合基於 LocalAGI 和 Cogito 等相關專案開發的框架,從而提供了一種簡單的方法。 將「MCP 伺服器」定義為公開工具的容器或外部服務。例如,您可以擁有一個 MCP 伺服器來在 DuckDuckGo 上執行搜索,另一個伺服器來查詢您公司的內部 API,或一個伺服器來在您的本機電腦上執行腳本。

從開發者的角度來看,這就足夠了。 在模型的 YAML 檔案中配置這些 MCP 伺服器,無需編寫 Python 程式碼或使用特定程式庫。配置完成後,您可以使用與 OpenAI API 相容的 /mcp/v1/chat/completions 端點,或直接從聊天 WebUI 啟動“MCP 代理模式”,以便模型在認為必要時開始呼叫工具。

團隊也投入了精力 提高函數呼叫的健全性和JSON模式的處理能力這可以修正模型產生不完善的工具定義時可能出現的錯誤和故障。透過這些改進,工具的使用和代理工作流程在生產環境中更加穩定。

LocalAI 的發展路線圖和計畫的持續演進

LocalAI發展非常迅速, 以標示問題形式發布的公開路線圖 您可以在這裡了解最新動態以及未來幾個月的計劃。路線圖展示了一系列持續改進措施,涵蓋新功能和內部最佳化。

近年來,新增了以下內容 功能包括分散式推理、聯邦模式、透過網路運行 LLM 的 P2P、用於管理實例群的儀表板,以及對新模型和後端的支援。 (Flux、MLX-Audio、WAN、SANA、Bark.cpp、stablediffusion.cpp 等),以及 Reranker API 和整合物件發現 API。

也出現了一些里程碑事件,例如: 將所有後端從主二進位檔案遷移出來,以減輕檔案大小。新的 macOS 和 Linux 啟動器即將推出,WebUI 也將持續改進,同時還會新增一些實驗性 API,例如透過 /v1/videos 介面實現的文字轉視訊功能,該功能可連接到本機 AI 工具,例如本機影片編輯工具。這些都包含在產品路線圖中。未來的計劃還包括更動態的記憶體管理、更完善的多 GPU 支援、新的智慧體整合以及擴展的 MCP 工俱生態系統。

社群和行動應用程式中的本地人工智慧聊天機器人使用範例

LocalAI 的精神與社區緊密相連,這一點體現在: 創建者本人在 r/selfhosted 或 /LocalLLaMA 等論壇上的帖子本論壇旨在分享架構演進的第一手信息,並解答用戶疑問。許多評論都圍繞著如何將 LocalAI 整合到自動化和個人專案中,作為其私有的「大腦」。

「完全本地化」方法的典型例子是…的出現。 Software Tailor 的 Local AI Chatbot 等行動應用程序,無需網路連線即可直接在裝置上與進階模型進行聊天。這款應用程式讓您可以完全離線地與 DeepSeek R1、Qwen、Mistral、Llama 3 或 Phi 等型號的設備進行通話,100% 保護隱私並充分利用手機的硬體。

其特點包括 支援多種型號,並可在型號間快速切換;設計注重高效的資源消耗;介面簡潔,方便聊天。它面向注重隱私的用戶、處理敏感資訊的專業人士、網路連接不佳地區的人們以及對嘗試本地模型感興趣的人工智慧愛好者。

這些解決方案表明,圍繞 LocalAI 和本地 AI 的生態系統超越了主伺服器的範疇。 將「一切盡在設備之中」的概念帶到行動裝置、桌上型電腦和其他平台。其目標是讓任何人都能享受高級助手服務,而無需依賴遠端服務。

LocalAI 專案及其係列工具展示瞭如何做到這一點。 建構一套完整的私有、可擴展、模組化和多模態人工智慧技術堆疊,能夠涵蓋從簡單聊天到具有記憶體和工具的複雜代理的所有應用,同時又不放棄自由軟體的自由或對資料的完全控制。它將自身定位為一個非常可靠的替代方案,適合那些不希望其項目的人工智慧依賴第三方的用戶。

智慧人工智慧基金會
相關文章:
Agentic AI 基金會:開放代理 AI 的新共同陣線,Linux 基金會也參與其中。