有哪些在本地運行大模型的方法

前言

在本文中,我們將看到在本地運行任何 LLM 的不同方法

1/ LMStudio

LM Studio 是一款桌面應用程序,用于在計算機上運行本地 LLM。鏈接:https://lmstudio.ai/

2/ Ollama

Ollama 是一款工具,可讓您在機器上本地運行開源大型語言模型 (LLM)。它支持多種模型,包括 Llama 2、Code Llama 等。它將模型權重、配置和數據捆綁到一個由 Modelfile 定義的包中。鏈接:https://ollama.com/

3/ HuggingFace 和 Transformer

Hugging Face 是機器學習和人工智能的 Docker Hub 版本,提供大量開源模型。Hugging Face 還提供 transformers,這是一個 Python 庫,可簡化本地運行 LLM 的過程。示例:如何運行 Microsoft 的 Phi 2import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

torch.set_default_device(
"cuda")

model = AutoModelForCausalLM.from_pretrained(
"microsoft/phi-2", torch_dtype="auto", trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained(
"microsoft/phi-2", trust_remote_code=True)

inputs = tokenizer(
'''def print_prime(n):
"""
Print all primes between 1 and n
"""'''
, return_tensors="pt", return_attention_mask=False)

outputs = model.generate(**inputs, max_length=
200)
text = tokenizer.batch_decode(outputs)[
0]
print(text)

4/ LangChain

LangChain 是一個用于構建 AI 應用程序的 Python 框架。它提供抽象和中間件,以便在其支持的模型之一之上開發 AI 應用程序。例如,以下代碼向 Microsoft/DialoGPT-medium 模型提出一個問題:from langchain.llms.huggingface_pipeline import HuggingFacePipeline

hf = HuggingFacePipeline.from_model_id(
model_id=
"microsoft/DialoGPT-medium", task="text-generation", pipeline_kwargs={"max_new_tokens": 200, "pad_token_id": 50256},
)

from langchain.prompts import PromptTemplate

template =
"""Question: {question}

Answer: Let's think step by step."""
prompt = PromptTemplate.from_template(template)

chain = prompt | hf

question =
"What is electroencephalography?"

print(chain.invoke({"question": question}))

5/ Llama.cpp

Llama.cpp 是一個基于 C 和 C++ 的 LLM 推理引擎,針對 Apple 芯片進行了優化,并運行 Meta 的 Llama2 模型。鏈接:https: //github.com/ggerganov/llama.cpp

6/ LlamaFile

由 Mozilla 開發,為運行 LLM 提供了一種用戶友好的替代方案。Llamafile 以其可移植性和創建單文件可執行文件的能力而聞名。鏈接:https ://github.com/Mozilla-Ocho/llamafile

7/ Jan.ai

Jan通過在您的計算機上本地運行 LLM ,將您的計算機變成AI機器。這是一個注重隱私、本地優先的開源解決方案。鏈接:https://jan.ai/

8/ LLM

Simon Willison 的 LLM 是我見過的在自己的機器上下載和使用開源 LLM 的更簡單的方法之一。雖然你需要安裝 Python 才能運行它,但你不需要接觸任何 Python 代碼。如果你在 Mac 上使用 Homebrew,只需安裝pip install llm

LLM 默認使用 OpenAI 模型,但您可以使用插件在本地運行其他模型。例如,如果您安裝 gpt4all 插件,您將可以訪問 GPT4All 中的其他本地模型。此外還有適用于 llama、MLC 項目和 MPT-30B 的插件,以及其他遠程模型。

使用 LLM install model-name 在命令行上安裝插件:llm install llm-gpt4all

要向本地 LLM 發送查詢,請使用以下語法:llm -m the-model-name "Your query"

9/ GPT4ALL

GPT4ALL 是一款易于使用的桌面應用程序,具有直觀的 GUI。它支持本地模型運行,并通過 API 密鑰提供與 OpenAI 的連接。它以處理本地文檔以獲取上下文、確保隱私的能力而脫穎而出。鏈接:https: //gpt4all.io/index.html

10/ H2OGPT

h2oGPT 簡化了創建私人 LLM 的過程。它包括一個大型語言模型、一個嵌入模型、一個用于文檔嵌入的數據庫、一個命令行界面和一個圖形用戶界面。

用戶名和密碼隨便填,你可以在這里測試:https://gpt.h2o.ai/

鏈接:https://github.com/h2oai/h2ogpt

11/ LocalLLM

顧名思義,您還可以使用它運行本地 LLM!鏈接:https://github.com/GoogleCloudPlatform/localllm

12/ Oobabooga

適用于大型語言模型的 Gradio Web UI。其目標是成為文本生成的 AUTOMATIC1111/stable-diffusion-webui。鏈接:https: //github.com/oobabooga/text-generation-webui

13/ Koboldcpp

您可以從以下鏈接下載它的最新版本:https://github.com/LostRuins/koboldcpp/releases。

14/ LocalAI

LocalAI 是免費的開源 OpenAI 替代品。LocalAI 可作為替代 REST API,與 OpenAI(Elevenlabs、Anthropic……)API 規范兼容,用于本地 AI 推理。它允許您在本地或使用消費級硬件在本地運行 LLM、生成圖像和音頻(不止于此),支持多種模型系列。不需要 GPU。鏈接:https: //github.com/mudler/LocalAI

15/ EXUI

這是一個簡單、輕量級的基于瀏覽器的 UI,用于使用 ExLlamaV2 運行本地推理。鏈接:https: //github.com/turboderp/exui

16/ vLLM士

vLLM 是一個快速且易于使用的 LLM 推理和服務庫。安裝非常簡單pip install vllm

鏈接:https://github.com/vllm-project/vllm

17/ MLX

MLX 是 Apple 芯片上用于機器學習研究的陣列框架,由 Apple 機器學習研究部門提供。您也可以托管本地 LLM

鏈接:https://github.com/ml-explore/mlx

18/ CTranslate2

CTranslate2 是一個 C++ 和 Python 庫,用于使用 Transformer 模型進行高效推理。目前支持以下模型類型:

  • 編碼器-解碼器模型:Transformer base/big、M2M-100、NLLB、BART、mBART、Pegasus、T5、Whisper
  • 僅解碼器模型:GPT-2、GPT-J、GPT-NeoX、OPT、BLOOM、MPT、Llama、Mistral、Gemma、CodeGen、GPTBigCode、Falcon
  • 僅編碼器模型:BERT、DistilBERT、XLM-RoBERTa

鏈接:https://github.com/OpenNMT/CTranslate2

19/ Pinokio

一個不僅提供法學碩士學位,還提供多種解決方案的平臺。鏈接:https://pinokio.computer/

20/ PowerInfer

PowerInfer 是一款利用激活局部性為您的設備提供 CPU/GPU LLM 推理引擎。鏈接:https: //github.com/SJTU-IPADS/PowerInfer

21/ MLC LLM

MLC LLM 是一種通用解決方案,允許將任何語言模型本地部署在各種硬件后端和本機應用程序上。鏈接:https://llm.mlc.ai/

22/ TXTAI

運行并使用任何 LLM。鏈接:https://github.com/neuml/txtai

23/ RayLLM

RayLLM(原名 Aviary)是一款基于 Ray Serve 構建的 LLM 服務解決方案,可輕松部署和管理各種開源 LLM。鏈接:https://github.com/ray-project/ray-llm

24/ LlamaSharp

llama.cpp 的 C#/.NET 綁定。它提供更高級別的 API 來推斷 LLaMA 模型,并使用 C#/.NET 將其部署到本地設備上。它適用于 Windows、Linux 和 Mac,無需自行編譯 llama.cpp。即使沒有 GPU 或 GPU 內存不足,您仍然可以使用 LLaMA 模型!鏈接:https: //github.com/SciSharp/LLamaSharp

25/ LMQL

您可以在本地安裝 LMQL,也可以使用基于 Web 的 Playground IDE。要通過 Transformers 或 llama.cpp 使用自托管模型,您必須在本地安裝 LMQL。要在本地安裝 LMQL:pip install lmql
#Running LMQL Programs
lmql playground

更多信息:

  • 文檔:https://lmql.ai/docs/
  • 游樂場:https://lmql.ai/playground/

26/ AvaPLS

Ava PLS 是一款開源桌面應用程序,用于在您的計算機上本地運行語言模型。它允許您執行各種語言任務,如文本生成、語法校正、改寫、摘要、數據提取等。鏈接:https://avapls.com/

27/ LiteLLM

使用 OpenAI 格式調用所有 LLM API [Bedrock、Huggingface、VertexAI、TogetherAI、Azure、OpenAI 等] 鏈接:https ://github.com/BerriAI/litellm

28/ HammerAI

也沒有真正使用 LLM 開發 AI APP,但這款應用提供了在您自己的機器上使用 LLM 的聊天體驗,使用 HammerAI,您可以與在您的瀏覽器中本地運行的角色扮演 AI 角色聊天——100% 免費且完全私密。鏈接:https://www.hammerai.com/

29/ Bedrock/VertexAI

谷歌和亞馬遜提供法學碩士 (LLM) 托管解決方案

  • 鏈接:https://aws.amazon.com/bedrock/
  • 鏈接:https://cloud.google.com/vertex-ai

30/ 2Img.ai

大量的AI教程資源和LLM模型匯集。可以學習到很多。有一個本地化LLM的產品在孵化。等待她們的發布地址。


歡迎你分享你的作品到我們的平臺上. http://www.shxcj.com 或者 www.2img.ai 讓更多的人看到你的才華。

創作不易,覺得不錯的話,點個贊吧!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/40891.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/40891.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/40891.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue項目靜態圖片下載

正常情況下只需要傳入圖片路徑就可以進行下載 methods: {downs(path, name) {//必須同源才能下載var alink document.createElement("a");alink.href path;alink.download name; //圖片名alink.click();},}, 但是當我們downs方法中直接傳入"/assets/load/xx…

二、分布式軟總線是如何高效的傳輸數據和任務的

分布式軟總線在HarmonyOS中高效傳輸數據和任務主要依靠以下幾個關鍵技術點和設計原則: 設備快速發現與連接: 利用多種通信技術(如Wi-Fi、藍牙、有線連接等),結合廣播、多播及服務發現協議,實現設備間的快速發現與穩定連接。這包括設備的唯一標識管理、網絡條件自適應選擇…

【pytorch14】感知機

單層感知機模型 對于單層的感知機,它的激活函數是一個sigmoid 對于符號的定義做一個規范化,輸入層每一層進行一個編號 輸入是第0層,上標0表示屬于輸入層,下標0到n表示一共有n個節點(這里嚴格來說應該是0~n-1,為了書寫…

一站式廣告監測新體驗,Xinstall助你廣告投放更精準

在這個移動互聯網飛速發展的時代,App推廣與運營成為了每個開發者與廣告主關注的焦點。然而,面對琳瑯滿目的廣告平臺和復雜的投放環境,如何精準評估廣告效果、優化投放策略,成為了擺在面前的一道難題。今天,我們就來聊聊…

Jemeter--關聯接口壓測

Jemeter–獨立不變參接口壓測 Jemeter–獨立變參接口壓測 Jemeter–關聯接口壓測 案例分析 比如:有個波次復核接口很慢,優化后需要壓測。但是波次復核接口數據是由另外兩個接口(配單詳情、內盒信息)的數據組合而來,而…

排序題目:三個數的最大乘積

文章目錄 題目標題和出處難度題目描述要求示例數據范圍 解法一思路和算法代碼復雜度分析 解法二思路和算法代碼復雜度分析 題目 標題和出處 標題:三個數的最大乘積 出處:628. 三個數的最大乘積 難度 3 級 題目描述 要求 給定一個整數數組 nums …

fastadmin最新版導出數據時 表格中會有 html標簽的解決辦法

fastadmin 自帶的導出方法, 是一個純前端的導出, 沒有請求后臺的接口 當我們使用導出功能時, 有些數據, 我們在設計的時候,配置的是 枚舉類型的 但是當我們導出數據的時候, 居然導出的數據中帶有 html 的…

使用el-col和el-row布局,有版心,一頁有兩欄布局 三欄布局 四欄布局 使用vue動態渲染元素

使用Vue結合Element UI的el-row和el-col組件來實現版心布局,并動態渲染不同欄數的布局,可以通過以下步驟實現: 定義版心容器:使用el-container來定義整個頁面的容器,其中el-header、el-main、el-footer分別定義頭部、主…

k8s-第十節-Ingress

Ingress 介紹 Ingress 為外部訪問集群提供了一個 統一 入口,避免了對外暴露集群端口;功能類似 Nginx,可以根據域名、路徑把請求轉發到不同的 Service。可以配置 https 跟 LoadBalancer 有什么區別? LoadBalancer 需要對外暴露…

Promise解決異步編程問題

一個典型的異步編程問題:即您嘗試在循環中發起多個異步請求,并希望在所有請求都完成后執行某些操作。然而,由于JavaScript的異步性質,num和total的比較在循環結束時立即執行,而不是在所有請求都完成后執行。這可能導致…

【12321騷擾電話舉報受理中心-短信驗證安全分析報告】

前言 由于網站注冊入口容易被黑客攻擊,存在如下安全問題: 暴力破解密碼,造成用戶信息泄露短信盜刷的安全問題,影響業務及導致用戶投訴帶來經濟損失,尤其是后付費客戶,風險巨大,造成虧損無底洞…

開發常識:命令行終端、庫源碼、開發環境階段

目錄 命令行終端 集成開發環境(IDE ):有插件校驗等限制,成功率低于操作系統 庫源碼 github上搜 官網 UNPKG托管開源的包 專業名詞 環境 開發:本地機 開發和調試 生產:最終部署 測試:…

交流負載箱的主要功能有哪些?

交流負載箱可以模擬各種實際用電設備的功率、電流、電壓等參數,使得電源系統在運行過程中能夠承受實際負載的考驗,確保電源系統的穩定運行。通過交流負載箱對電源設備進行測試,可以檢測出電源設備在過載、短路等異常情況下的保護功能是否正常…

Linux和mysql中的基礎知識

cpu讀取的指令大部分在內存中(不考慮緩存) 任何程序在運行之前都的加入到內存。 eip->pc指針,指明當前指令在什么位置。 代碼大概率是從上往下執行的,基于這樣的基本理論。既可以將一部分指令加載到CPU對應的緩存中&#xf…

解決zip文件中文亂碼問題

后臺微服務運行在linux環境里,前端Vue。在一個項目中,把后臺的文件打包成zip,下載到前臺。結果發現zip文件名本身亂碼,zip文件內壓縮的文件也是亂碼。所謂亂碼,程序員都見過,就是中文變成了亂七八糟的字符。…

【CSAPP】-datalab實驗

實驗原理與內容 本實驗每位學生拿到一個datalab-handout.tar文件。學生可以通過U盤、網盤、虛擬機共享文件等方式將其導入到Unbuntu實驗環境中,選擇合適位置存放。然后在Ubuntu環境下解壓。解壓后,根據文件中的敘述和要求更改bits.c文件。本次實驗的主要…

【全網最全】2024年APMCM第十四屆亞太地區大學生數學建模競賽(中文賽項)完整思路解析+代碼+論文

我是Tina表姐,畢業于中國人民大學,對數學建模的熱愛讓我在這一領域深耕多年。我的建模思路已經幫助了百余位學習者和參賽者在數學建模的道路上取得了顯著的進步和成就。現在,我將這份寶貴的經驗和知識凝練成一份全面的解題思路與代碼論文集合…

云計算【第一階段(26)】Linux網絡設置

一、查看網絡配置 1.查看網絡接口信息ifconfig 查看所有活動的網絡接口信息 2.ifconfig命令 查看指定網絡接口信息 ifconfig 網絡接口 (1)第一行:以太網卡的名字 ens33其中en代表以太網卡, centos6的是eth0, e…

本地maven倉庫向遠程倉庫部署jar包

使用mvn命令即可,如下 mvn deploy:deploy-file \ -DgroupIdtop.rdfa.auth \ -DartifactIdrdfa-auth-spring-mvc-starter \ -Dversion3.0.0-20230718-RELEASE \ -Dpackagingjar \ -Dfile/Users/panmeng/Documents/repository/top/rdfa/auth/rdf…

中國算力網絡市場發展分析

中國算力網絡市場發展現狀 算力涵蓋計算、內存、存儲等全方位能力,廣泛分布于網絡邊緣、云計算中心、聯網設備及轉發節點。隨著數字化技術革新,算力與網絡正深度融合,推動“算網一體化”的演進。這一新型基礎設施日漸凸顯其重要性&#xff0c…