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

news/2024/7/8 7:36:05 标签: ai, 语言模型
aidu_pl">

前言

在本文中,我们将看到在本地运行任何 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.niftyadmin.cn/n/5536887.html

相关文章

“拆分盘投资:机遇与风险并存

一、引言 随着互联网技术的日新月异,金融投资领域迎来了前所未有的变革,其中拆分盘作为一种新兴的投资模式,正逐渐进入公众的视野。其独特的价值增长逻辑和创新的投资机制,为投资者开辟了新的财富增值渠道。本文旨在深入探讨拆分…

(论文版)深度学习 | 基于 VGG16-UNet 语义分割模型的猫狗图像提取研究

Hi,大家好,我是半亩花海。本实验本项目基于 VGG16-UNet 架构,利用 Labelme 标注数据和迁移学习,构建高效准确的猫狗图像分割模型。通过编码器-解码器结构(特征提取-上采样)提升分割精度,适应不同…

【鸿蒙】第2天・装饰器・组件和页面生命周期

背景知识 1・ArkTS 拓展了 TypeScript,TypeScript 拓展了 JavaScript。 增加了一些约束。 2・ArkTS 是声明式编程。 构建对象时类似构建者设计模式。链式赋值。 装饰器 @Component 自定义组件 Component装饰器仅能装饰str…

【Unity】RPG2D龙城纷争(七)关卡编辑器之剧情编辑

更新日期:2024年7月1日。 项目源码:第五章发布(正式开始游戏逻辑的章节) 索引 简介一、剧情编辑1.对话数据集2.对话触发方式3.选择对话角色4.设置对话到关卡5.角色与地块层级6.通关条件简介 严格来说,剧情编辑不在关卡编辑器界面中完成,只不过它仍然属于关卡编辑的范畴。…

深度学习基准模型Transformer

深度学习基准模型Transformer 深度学习基准模型Transformer,最初由Vaswani等人在2017年的论文《Attention is All You Need》中提出,是自然语言处理(NLP)领域的一个里程碑式模型。它在许多序列到序列(seq2seq&#xf…

Linux 常见的几种编辑器的操作步骤

在大多数命令行文本编辑器中,保存并关闭文件的操作方式基本相似。以下是常见的几种编辑器的操作步骤: 使用 vi 编辑器保存并关闭文件 编辑文件: sudo vi /path/to/file 编辑内容: 按 i 进入插入模式,编辑文件内容。 …

Android平台崩溃和 ANR 问题进行符号化解析、解析崩溃日志的内存地址

使用Android Logcat Stacktrace Utility | Android Logcat | 1.2.3 1.设置so库路径 2.打开Stacktrace Utility工具 3.在Original粘贴报错内存地址 4.点击Resolve Stacktraces,就会解析出内存地址 如果是红色,解析失败了,缺少原生so库,可以在第一步添加so库文件再次尝试…

游戏中的坐标转换函数*2(laya2D)

文章目录 localToGloballocalToGlobal localToGlobal o.localToGlobal(x, y) 以o为原点增加x,y后的点T,T在屏幕左上角的位置 速: 以原点,先增后转 localToGlobal l.g2l 以l的(0,0)为原点,将屏幕坐标p的转为相对l原点的局部坐…