當前位置: 華文世界 > 科技

6個最受歡迎的大模型本地執行工具

2024-10-05科技

執行大型語言模型 (LLM)(如 ChatGPT 和 Claude)通常涉及將數據發送到 OpenAI 和其他 AI 模型提供商管理的伺服器。雖然這些服務是安全的,但一些企業更願意將數據完全離線,以保護更大的私密。

本文介紹了開發人員可以用來在本地執行和測試 LLM 的六大工具,確保他們的數據永遠不會離開他們的器材,類似於端到端加密保護私密的方式。

NSDT工具推薦: Three.js AI紋理開發包 - YOLO合成數據生成器 - GLTF/GLB線上編輯 - 3D模型格式線上轉換 - 可編程3D場景編輯器 - REVIT匯出3D模型外掛程式 - 3D模型語意搜尋引擎 - AI模型線上檢視 - Three.js虛擬軸心開發包 - 3D模型線上減面 - STL模型線上切割

0、為什麽要使用本地 LLM?

當使用者使用 LM Studio 等工具執行本地 LLM 時,它不會收集使用者數據或跟蹤使用者的操作。它允許你的所有聊天數據都保留在本地機器上,而無需與 AI/ML 伺服器共享。

  • 私密:你可以以多輪方式提示本地 LLM,而無需提示數據離開本地主機。
  • 自訂選項:本地 LLM 為 CPU 執行緒、溫度、上下文長度、GPU 設定等提供高級配置。這類似於 OpenAI 的遊樂場。
  • 支持和安全:它們提供與 OpenAI 或 Claude 類似的支持和安全性。
  • 訂閱和費用:這些工具可以免費使用,不需要每月訂閱。對於像 OpenAI 這樣的雲服務,每個 API 請求都需要付費。本地 LLM 有助於節省資金,因為沒有每月訂閱。
  • 離線支持:你可以在離線時載入和連線大型語言模型。
  • 連線性:有時,連線到像 OpenAI 這樣的雲服務可能會導致訊號和連線不佳。
  • 根據你的具體用例,可以選擇幾個離線 LLM 應用程式。其中一些工具完全免費用於個人和商業用途。其他可能需要向他們發送商業用途請求。有幾種本地 LLM 工具可用於 Mac、Windows 和 Linux。以下是可以選擇的六種最佳工具。

    1、LM Studio

    LM Studio 可以執行任何格式為 gguf 的模型檔。它支持來自模型提供商(如 Llama 3.1、Phi 3、Mistral 和 Gemma)的 gguf 檔。要使用 LM Studio,請存取上面的連結並為您的機器下載應用程式。啟動 LM Studio 後,主頁會顯示要下載和測試的頂級 LLM。還有一個搜尋欄,用於過濾和下載來自不同 AI 提供商的特定模型。

    搜尋特定公司的模型會顯示幾種模型,從小到大量化。根據您的機器,LM Studio 使用相容性猜測來突出顯示可在該機器或平台上執行的模型。

    1.1 LM Studio 的主要功能

    LM Studio 提供與 ChatGPT 類似的功能和特性。它有幾個功能。以下重點介紹了 LM Studio 的主要功能。

  • 模型參數自訂:這允許你調整溫度、最大令牌、頻率懲罰等。
  • 聊天歷史記錄:允許你保存提示以供日後使用。
  • 參數和 UI 提示:你可以將滑鼠懸停在資訊按鈕上以尋找模型參數和術語。
  • 跨平台:LM Studio 適用於 Linux、Mac 和 Windows 作業系統。
  • 機器規格檢查:LM Studio 檢查電腦規格(如 GPU 和記憶體)並報告相容模型。這可以防止下載可能無法在特定機器上執行的模型。
  • AI 聊天和遊樂場:以多輪聊天格式與大型語言模型聊天,並透過同時載入多個 LLM 進行實驗。
  • 面向開發人員的本地推理伺服器:允許開發人員設定類似於 OpenAI API 的本地 HTTP 伺服器。
  • 本地伺服器提供範例 Curl 和 Python 客戶端請求。此功能有助於使用 LM Studio 構建 AI 應用程式以存取特定的 LLM。

    # Example: reuse your existing OpenAI setupfrom openai import OpenAI# Point to the local serverclient = OpenAI(base_url="http://localhost:1234/v1", api_key="lm-studio")completion = client.chat.completions.create( model="TheBloke/Mistral-7B-Instruct-v0.1-GGUF", messages=[ {"role": "system", "content": "Always answer in rhymes."}, {"role": "user", "content": "Introduce yourself."} ], temperature=0.7,)print(completion.choices[0].message)

    使用上述範例 Python 程式碼,你可以重復使用現有的 OpenAI 配置並修改基本 URL 以指向你的本地主機。

  • OpenAI 的 Python 庫匯入:LM Studio 允許開發人員匯入 OpenAI Python 庫並將基本 URL 指向本地伺服器 (localhost)。
  • 多模型會話:使用單個提示並選擇多個模型進行評估。
  • 1.2 使用 LM Studio 的好處

    LM Studio可免費供個人使用,它允許開發人員透過套用內聊天 UI 和遊樂場執行 LLM。它提供了一個帶有過濾器的華麗且易於使用的界面,並支持連線到 OpenAI 的 Python 庫,而無需 API 金鑰。

    公司和企業可以根據要求使用 LM Studio。但是,它需要 M1/M2/M3 Mac 或更高版本,或帶有支持 AVX2 處理器的 Windows PC。Intel 和 AMD 使用者只能使用 v0.2.31 中的 Vulkan 推理引擎。

    2、Jan

    Jan 是 ChatGPT 的開源版本,旨在離線執行。它由一個秉承使用者所有理念的使用者社區構建。Jan 允許你在器材上執行 Mistral 或 Llama 等流行模型,而無需將其連線到互聯網。使用 Jan,你可以存取 OpenAI 和 Groq 等遠端 API。

    2.1 Jan 的主要功能

    Jan 是一款電子應用程式,功能類似於 LM Studio。它透過將消費機器轉變為 AI 電腦,使 AI 開放並可供所有人使用。由於它是一個開源專案,開發人員可以為其做出貢獻並擴充套件其功能。

    以下細分了 Jan 的主要功能。

  • 本地:你可以在器材上執行您喜歡的 AI 模型,而無需將它們連線到互聯網。
  • 即用型模型:下載 Jan 後,你將獲得一組已安裝的模型來開始使用。還可以搜尋特定模型。
  • 模型匯入:它支持從 Hugging Face 等來源匯入模型。
  • 免費、跨平台和開源:Jan 是 100% 免費、開源的,適用於 Mac、Windows 和 Linux。
  • 自訂推理參數:調整模型參數,例如最大令牌、溫度、流、頻率懲罰等。所有參數設定、模型使用和設定都保留在您的電腦本地。
  • 擴充套件:Jan 支持 TensortRT 和 Inference Nitro 等擴充套件,用於自訂和增強您的 AI 模型。
  • 2.2 使用 Jan 的好處

    Jan 提供了一個幹凈簡單的界面來與 LLM 互動,它將你的所有數據和處理資訊保存在本地。它已經安裝了 70 多個大型語言模型供你使用。這些現成的模型的可用性使得連線和與 OpenAI 和 Mistral 等遠端 API 互動變得容易。Jan 還有一個很棒的 GitHub、Discord 和 Hugging Face 社區可以關註和尋求幫助。

    但是,與所有 LLM 工具一樣,這些模型在 Apple Silicon Mac 上的執行速度比在 Intel 上更快。

    3、Llamafile

    Llamafile 由 Mozilla 支持,其目標是透過快速 CPU 推理(無需網絡存取)支持開源 AI,並使每個人都能存取開源 AI。它將 LLM 轉換為多平台可執行連結格式 (ELF)。它允許你僅使用單個可執行檔執行 LLM,從而提供將 AI 整合到應用程式中的最佳選項之一。

    3.1 Llamafile 的工作原理

    它旨在將權重轉換為多個可執行程式,這些程式無需安裝即可在 Windows、MacOS、Linux、Intel、ARM、FreeBSD 等架構上執行。在底層,Llamafile 使用 tinyBLAST 在 Windows 等作業系統上執行,而無需 SDK。

    3.2 Llamafile 的主要功能

  • 可執行檔:與 LM Studio 和 Jan 等其他 LLM 工具不同,Llamafile 只需要一個可執行檔即可執行 LLM。
  • 使用現有模型:Llamafile 支持使用現有模型工具,如 Ollama 和 LM Studio。
    存取或制作模型:你可以存取 OpenAI、Mistral、Groq 等流行的 LLM。它還支持從頭開始建立模型。
  • 模型檔轉換:可以使用單個命令將許多流行的 LLM 的檔格式(例如 .gguf)轉換為 .llamafile: llamafile-convert mistral-7b.gguf
  • 3.3 開始使用 Llamafile

    要安裝 Llamafile,請前往 Huggingface 網站,從導航中選擇「模型」,然後搜尋 Llamafile。你也可以從這個 URL 安裝你喜歡的量化版本。

    註意:量化數越大,響應越好。如上圖所示,本文使用 Meta-Llama-3.1-8B-Instruct.Q6_K.llamafile,其中 Q6 代表量化數。

    步驟 1:下載 Llamafile

    從上面的連結中,單擊任意下載按鈕以獲取你喜歡的版本。如果你的機器上安裝了 wget 實用程式,則可以使用以下命令下載 Llamafile。

    wget https://huggingface.co/Mozilla/Meta-Llama-3.1-8B-Instruct-llamafile/blob/main/Meta-Llama-3.1-8B-Instruct.Q6_K.llamafile

    你應該將 URL 替換為喜歡的版本。

    步驟 2:使 Llamafile 可執行

    下載特定版本的 Llamafile 後,你應該使用以下命令透過導航到檔的位置使其可執行。

    chmod +x Meta-Llama-3.1-8B-Instruct.Q6_K.llamafile

    步驟 3:執行 Llamafile

    在檔名前面添加句點和斜杠 ./ 以啟動 Llamafile。

    ./Meta-Llama-3.1-8B-Instruct.Q6_K.llamafile

    Llamafile 應用程式現在可在 http://127.0.0.1:8080 上執行各種 LLM。

    3.4 使用 Llamafile 的好處

    Llamafile 透過使 LLM 易於存取消費者 CPU 來幫助實作 AI 和 ML 的民主化。與其他本地 LLM 應用程式(如 Llama.cpp)相比,Llamafile 在遊戲電腦上提供最快的即時處理體驗和更好的效能。由於它具有更快的效能,因此它是總結長文本和大型文件的絕佳選擇。它 100% 離線且私密地執行,因此使用者不會將數據共享給任何 AI 伺服器或 API。

    Hugging Face 等機器學習社區支持 Llamafile 格式,因此可以輕松搜尋與 Llamafile 相關的模型。它還有一個很棒的開源社區,可以進一步開發和擴充套件它。

    4、GPT4ALL

    GPT4ALL 建立在私密、安全和無需互聯網的原則之上。使用者可以在 Mac、Windows 和 Ubuntu 上安裝它。與 Jan 或 LM Studio 相比,GPT4ALL 的每月下載量、GitHub Stars 和活躍使用者更多。

    4.1 GPT4ALL 的主要功能

    GPT4All 可以在主要的消費硬件上執行 LLM,例如 Mac M 系列芯片、AMD 和 NVIDIA GPU。以下是其主要功能。

  • 私密第一:僅在你的機器上保留私人和敏感的聊天資訊和提示。
  • 無需互聯網:它完全離線工作。
  • 模型探索:此功能允許開發人員瀏覽和下載不同類別的 LLM 進行試驗。你可以從 LLama、Mistral 等流行選項中選擇大約 1000 個開源語言模型。
  • 本地文件:可以讓你的本地 LLM 使用本地文件(如 .pdf 和 .txt)存取你的敏感數據,而無需數據離開你的器材,也無需網絡。
  • 自訂選項:它提供了多種聊天機器人調整選項,如溫度、批次大小、上下文長度等。
  • 企業版:GPT4ALL 提供了一個企業包,其中包含安全性、支持和每台器材特許證,可將本地 AI
  • 4.2 開始使用 GPT4All

    要開始使用 GPT4All 在本地執行 LLM,請下載適用於你的作業系統的所需版本。

    4.3 使用 GPT4ALL 的好處

    除了 Ollama 之外,GPT4ALL 擁有最多的 GitHub 貢獻者,每月活躍使用者約為 250000 名(參考nomic數據)。該應用程式收集有關使用情況分析和聊天共享的匿名使用者數據。但是,使用者可以選擇加入或結束。

    使用 GPT4ALL,開發人員可以從其龐大的使用者群、GitHub 和 Discord 社區中受益。

    5、Ollama

    使用 Ollama,你可以輕松建立本地聊天機器人,而無需連線到 OpenAI 等 API。由於一切都在本地執行,因此無需支付任何訂閱或 API 呼叫費用。

    5.1 Ollama 的主要功能

  • 模型客製:Ollama 允許您轉換 .gguf 模型檔並使用 ollama run modelname 執行它們。
  • 模型庫:Ollama 在 ollama.com/library 上擁有大量可供嘗試的模型。
  • 匯入模型:Ollama 支持從 PyTorch 匯入模型。
  • 社區整合:Ollama 無縫整合到 Web 和桌面應用程式中,例如 Ollama-SwiftUI、HTML UI、Dify.ai 等。
  • 數據庫連線:Ollama 支持多個數據平台。
  • 移動整合:像 Enchanted 這樣的 SwiftUI 應用程式將 Ollama 帶到了 iOS、macOS 和 visionOS。Maid 也是一個跨平台的 Flutter 應用程式,可在本地與 .ggufmodel 檔互動。
  • 5.2 開始使用 Ollama

    首次使用 Ollama 時,請存取 https://ollama.com 並下載適用於您機器的版本。您可以在 Mac、Linux 或 Windows 上安裝它。安裝 Ollama 後,您可以使用以下命令在終端中檢視其詳細資訊。

    ollama

    要執行特定的 LLM,您應該使用以下命令下載它:

    ollama pull <modelname>

    其中 <modelname> 是你要安裝的模型的名稱。在 GitHub 上檢視 Ollama 以獲取一些範例模型以供下載。pull 命令也用於更新模型。一旦使用它,只會獲取差異。

    下載例如 llama3.1 後,在命令列中執行 ollama run llama3.1 即可啟動該模型。

    在上面的例子中,我們提示 llama3.1 模型解決物理工作和能量問題。

    5.3 使用 Ollama 的好處

    Ollama 在 GitHub 上有超過 200 名貢獻者,並且積極更新。在上面討論的其他開源 LLM 工具中,它擁有最多的貢獻者,並且可延伸性更強。

    6、LLaMa.cpp

    LLaMa.cpp 是底層後端技術(推理引擎),為 Ollama 等本地 LLM 工具提供支持。Llama.cpp 支持大量大型語言模型推理,配置最少,在各種硬件上具有出色的本地效能。它也可以在雲中執行。

    6.1 LLaMa.cpp 的主要功能

  • 設定:它具有最小的設定。可以使用單個命令安裝它。
  • 效能:它在本地和雲中的各種硬件上表現都非常出色。
  • 支持的模型:它支持流行和主要的 LLM,如 Mistral 7B、Mixtral MoE、DBRX、Falcon 等。
  • 前端 AI 工具:LLaMa.cpp 支持開源 LLM UI 工具,如 MindWorkAI/AI-Studio (FSL-1.1-MIT)、iohub/collama 等。
  • 6.2 開始使用 LLaMa.cpp

    要使用 llama.cpp 執行你的第一個本地大型語言模型,應該使用以下命令安裝它:

    brew install llama.cpp

    接下來,從 Hugging Face 或任何其他來源下載您想要執行的模型。例如,從 Hugging Face 下載Mistral模型並將其保存在你的機器上的某個位置。

    使用你喜歡的命令列工具(如終端),進入您剛剛下載的 .gguf 模型檔的位置並執行以下命令:

    llama-cli --color \ -m Mistral-7B-Instruct-v0.3.Q4_K_M.ggufb \ -p "Write a short intro about SwiftUI"

    總之,您首先呼叫 LLaMa CLI 工具並設定顏色和其他標誌。-m 標誌指定您要使用的模型的路徑。-p 標誌指定您希望用來指示模型的提示。

    執行上述命令後,您將在以下預覽中看到結果。

    7、本地LLM的典型用例

    在本地執行 LLM 可以幫助想要了解其效能及其詳細工作原理的開發人員。本地 LLM 可以查詢私人文件和技術論文,以便有關這些文件的資訊不會離開用於查詢它們的器材,而流向任何雲 AI API。本地 LLM 在沒有互聯網的地方和網絡接收較差的地方很有用。

    在遠端醫療環境中,由於私密問題,本地 LLM 可以對患者文件進行排序,而無需將其上傳到任何 AI API 提供商。

    在本地使用大型語言模型之前了解其效能對於獲得所需的響應至關重要。有幾種方法可以確定特定 LLM 的效能。以下是幾種方法。

  • 訓練:模型是在什麽數據集上訓練的?
  • 微調:模型可以在多大程度上客製以執行專門的任務,或者可以針對特定領域進行微調?
  • 學術研究:LLM 是否有學術研究論文?
  • 要回答上述問題,你可以檢視 Hugging Face 和 Arxiv.org 等優秀資源。此外,Open LLm Leaderboard 和 LMSYS Chatbot Arena 為各種 LLM 提供了詳細資訊和基準。

    8、結束語

    正如本文所討論的,選擇和本地使用大型語言模型有多種動機。如果你不希望透過互聯網將數據集發送給 AI API 提供商,您可以微調模型以在遠端醫療應用程式中執行專門的任務。許多開源圖形化使用者介面 (GUI) 本地 LLM 工具(如 LLm Studio 和 Jan)提供了直觀的前端 UI,用於配置和試驗 LLM,而無需像 OpenAI 或 Claude 這樣的基於訂閱的服務。您還發現了各種強大的命令列 LLM 應用程式,如 Ollama 和 LLaMa.cpp,它們可幫助您在本地執行和測試模型,而無需互聯網連線。檢視 Stream 的 AI Chatbot 解決方案,將 AI 聊天整合到您的應用程式中,並存取所有相關連結以了解更多資訊。

    原文連結:Top 6大模型本地執行工具 - BimAnt