本地部署六款大模型:保护隐私、节省成本,特定环境首选

创作不易,方便的话点点关注,谢谢
文章结尾有最新热度的文章,感兴趣的可以去看看。
本文是经过严格查阅相关权威文献和资料,形成的专业的可靠的内容。全文数据都有据可依,可回溯。特别申明:数据和资料已获得授权。本文内容,不涉及任何偏颇观点,用中立态度客观事实描述事情本身
文章有点长(6900字阅读时长:15分),期望您能坚持看完,并有所收获。
导读
本地运行大语言模型的工具,运行像ChatGPT和Claude这样的大型语言模型(LLMs)通常需要将数据发送到由OpenAI及其他人工智能模型提供商管理的服务器上。虽然这些服务是安全的,但一些企业出于更高的隐私要求,更倾向于将数据完全保存在离线状态。
本文将介绍开发人员可以用来在本地运行和测试大语言模型的六款最佳工具,确保数据不会离开你的的设备。
为何使用本地大语言模型?
像LM Studio这样的工具在用于运行本地大语言模型时,不会收集用户数据,也不会追踪用户的操作。它能让你所有的聊天数据都保留在本地机器上,无需将信息传到远程服务器上。
隐私性:你可以以多轮对话的方式向本地大语言模型发送提示信息,且提示数据不会离开你的本地主机。订阅与成本:这些工具可免费使用,无需按月订阅。对于像OpenAI这样的云服务,每次API请求都需要付费。使用本地大语言模型有助于节省资金,因为无需按月订阅。离线支持:你可以在离线状态下加载并连接大型语言模型。连接性:有时,连接像OpenAI这样的云服务可能会出现信号差和连接断开的情况。
六款免费的本地大语言模型工具
根据具体的使用场景,你可以选择几款离线的大语言模型应用程序。其中一些工具对于个人和商业用途完全免费,而其他工具可能需要针对商业用途向其发送使用申请。这几款适用于Mac、Windows和Linux系统的本地大语言模型工具,以下是可供选择的六款最佳工具。
1、LM Studio
LM Studio能够运行任何格式为gguf的模型文件,支持来自Llama 3.1、Phi 3、Mistral和Gemma等模型提供商的gguf文件。要使用LM Studio,请访问图片上的链接并为你的设备下载相应的应用程序。启动LM Studio后,其主页会展示可下载和测试的热门大语言模型,还有一个搜索栏,可用于筛选并下载来自不同人工智能提供商的特定模型。

从特定公司搜索模型时,会呈现出从小型到大型量化的多个模型。根据你的设备情况,LM Studio会通过兼容性推测来突出显示适用于该机器或平台的模型。
LM Studio的主要功能
LM Studio提供了与ChatGPT类似的功能和特性,具备多项功能,以下是其主要功能亮点。
模型参数定制:允许你调整温度、最大令牌数、频率惩罚等参数。聊天历史记录:允许你保存提示信息以便后续使用。参数和界面提示:你可以将鼠标悬停在信息按钮上查看模型参数及术语解释。跨平台:LM Studio可在Linux、Mac和Windows操作系统上使用。机器规格检查:LM Studio会检查计算机的GPU、内存等规格,并报告与之兼容的模型,这可避免下载在特定机器上无法运行的模型。人工智能聊天和开发平台:可以多轮聊天的格式与大型语言模型进行交流,并通过同时加载多个大语言模型来进行实验。面向开发者的本地推理服务器:允许开发者搭建一个类似于OpenAI API的本地HTTP服务器。
该本地服务器提供了示例的Curl和Python客户端请求。借助这一功能,可利用LM Studio构建人工智能应用程序来访问特定的大语言模型。
# Example: reuse your existing OpenAI setupfrom openai importOpenAI# 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)。 多模型会话:使用单个提示信息并选择多个模型进行评估。
使用LM Studio的好处
该工具供个人免费使用,它允许开发者通过应用内的聊天界面和开发平台来运行大语言模型。它提供了美观且易于使用的界面,带有筛选功能,并且支持在无需API密钥的情况下连接到OpenAI的Python库。公司和企业如有需要可申请使用LM Studio,但它要求使用M1/M2/M3及更高版本的Mac电脑,或者配备支持AVX2处理器的Windows电脑。英特尔和AMD用户在v0.2.31版本中只能使用Vulkan推理引擎。
2、Jan
可以把Jan看作是ChatGPT的开源版本,旨在离线运行。它由秉持用户所有理念的用户社区构建而成。借助Jan,你可以在设备上运行像Mistral或Llama这样的热门模型,无需连接互联网。通过Jan,你还可以访问OpenAI和Groq等远程API。
Jan的主要功能
Jan具备与LM Studio类似的功能。它通过将消费级机器转变为人工智能计算机,让人工智能变得开放且人人可用。由于它是一个开源项目,开发者可以为其贡献代码并扩展其功能。以下是对Jan主要功能的详细介绍。
本地化:你可以在不连接互联网的设备上运行你偏好的人工智能模型。即用型模型:下载Jan后,你会获得一组已安装好的模型以供使用,也可以搜索特定模型。模型导入:支持从Hugging Face等来源导入模型。免费、跨平台且开源:Jan是完全免费、开源的,可在Mac、Windows和Linux系统上使用。推理参数定制:可调整最大令牌数、温度、流、频率惩罚等模型参数。所有偏好设置、模型使用情况及相关设定都保留在本地计算机上。扩展功能:Jan支持诸如TensorRT和Inference Nitro等扩展,用于定制和增强你的人工智能模型。
使用Jan的好处
Jan提供了简洁的界面来与大语言模型进行交互,并且将你所有的数据和处理信息都保存在本地。它已经为你安装了七十多个大型语言模型,方便你使用。这些即用型模型的存在,使得连接并与OpenAI和Mistral等远程API进行交互变得更加容易。Jan在GitHub、Discord和Hugging Face上还有活跃的社区,可供你关注并寻求帮助。不过,和所有大语言模型工具一样,这些模型在苹果硅芯片(Apple Silicon)的Mac电脑上运行速度比在英特尔电脑上更快。
3、Llamafile
Llamafile由Mozilla支持,其目标是支持开源人工智能,并让每个人都能通过快速的CPU推理在无网络访问的情况下使用它。它能将大语言模型转换为多平台的可执行可链接格式(ELF),通过允许你仅用一个可执行文件就能运行大语言模型,为将人工智能集成到应用程序中提供了绝佳选择之一。
Llamafile的工作原理
它旨在将权重转换为多个可执行程序,这些程序无需安装就能在诸如Windows、MacOS、Linux、英特尔、ARM、FreeBSD等架构上运行。在底层,Llamafile使用tinyBLAST在像Windows这样的操作系统上运行,无需软件开发工具包(SDK)。
Llamafile的主要功能
可执行文件:与LM Studio和Jan等其他大语言模型工具不同,Llamafile只需一个可执行文件就能运行大语言模型。使用现有模型:Llamafile支持使用像Ollama和LM Studio等现有模型工具。访问或创建模型:你可以访问来自OpenAI、Mistral、Groq等的热门大语言模型,它还支持从零开始创建模型。模型文件转换:你可以通过一条命令将许多热门大语言模型的文件格式(例如.gguf)转换为.llamafile格式。llamafile-convert mistral-7b.gguf
开始使用Llamafile
要安装Llamafile,前往Huggingface网站,从导航栏中选择“模型”,然后搜索Llamafile。你也可以从图片中网址安装你偏好的量化版本。

注意:量化数值越大,响应效果越好。如上文图片所示,本文使用的是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
你应该将网址替换为你喜欢的版本对应的网址。
步骤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访问,用于运行你的各类大语言模型。
使用Llamafile的好处
Llamafile有助于实现人工智能和机器学习的普及,让消费级CPU能够轻松运行大语言模型。与其他本地大语言模型应用程序(如Llama.cpp)相比,Llamafile提供了最快的提示处理体验,并且在游戏电脑上性能更佳。由于其性能更快,它是总结长篇文本和大型文档的绝佳选择。它能完全离线且私密地运行,因此用户无需将数据共享给任何人工智能服务器或API。像Hugging Face这样的机器学习社区支持Llamafile格式,方便搜索与Llamafile相关的模型。它还有一个很棒的开源社区,不断对其进行开发和扩展。
4、GPT4ALL
GPT4ALL基于隐私、安全以及无需联网的原则构建。用户可以将其安装在Mac、Windows和Ubuntu系统上。与Jan或LM Studio相比,GPT4ALL有着更多的月下载量、GitHub星标数量以及活跃用户。

GPT4ALL的主要功能 GPT4ALL能够在主要的消费级硬件(如Mac M系列芯片、AMD和NVIDIA GPU)上运行大语言模型,以下是其主要功能。
隐私至上:将私人和敏感的聊天信息及提示仅保留在你的机器上。无需联网:它完全可以离线工作。模型探索:该功能允许开发者浏览并下载不同类型的大语言模型进行试验。你可以从诸如LLama、Mistral等热门选项中选择大约1000个开源语言模型。本地文档:你可以让本地大语言模型访问像.pdf和.txt这样的敏感本地文档,数据不会离开你的设备,也无需联网。定制化选项:它提供了多个聊天机器人调整选项,如温度、批量大小、上下文长度等。企业版:GPT4ALL提供了包含安全、支持以及每设备许可证的企业套餐,以便将本地人工智能引入企业。
开始使用GPT4ALL
要开始使用GPT4ALL在本地运行大语言模型,请为你的操作系统下载所需版本。
使用GPT4ALL的好处
除了Ollama之外,GPT4ALL拥有数量最多的GitHub贡献者,并且(gpt4all的数据)约有250,000名月度活跃用户。与竞争对手相比,该应用程序会收集有关使用情况分析和聊天共享的匿名用户数据,但用户可以选择是否参与数据收集。使用GPT4ALL,开发者能够受益于其庞大的用户基础以及GitHub和Discord社区。
5、Ollama
使用Ollama,你无需连接像OpenAI那样的API就能轻松创建本地聊天机器人。由于一切都在本地运行,你无需为任何订阅或API调用付费。

Ollama的主要功能
模型定制:Ollama允许你转换.gguf模型文件,并通过“ollama run modelname”命令来运行它们。模型库:Ollama在ollama.com/library上有大量可供尝试的模型集合。导入模型:Ollama支持从PyTorch导入模型。社区集成:Ollama能无缝集成到网络和桌面应用程序中,例如Ollama-SwiftUI、HTML UI、Dify.ai等。数据库连接:Ollama支持多个数据平台。移动集成:像Enchanted这样的SwiftUI应用程序可将Ollama引入iOS、macOS和visionOS系统。Maid也是一款跨平台的Flutter应用程序,可在本地与.gguf模型文件进行交互。
开始使用Ollama
要首次使用Ollama,请访问图片上网址进行下载适用于你设备的版本。你可以将其安装在Mac、Linux或Windows系统上。安装完成后,你可以在终端中使用以下命令查看其详细信息。
要运行特定的大语言模型,你应该使用以下命令下载它:
ollama pull modelname,其中modelname是你想要安装的模型名称。可在Ollama的GitHub页面查看一些可供下载的示例模型。“pull”命令也用于更新模型,使用该命令时,只会获取有差异的部分。
例如,下载完llama3.1后,在命令行中运行“ollama run llama3.1”即可启动该模型。
使用Ollama的好处
Ollama在GitHub上有超过200名贡献者,更新活跃。在上述讨论的其他开源大语言模型工具中,它拥有最多的贡献者,并且扩展性更强。
6、LLaMa.cpp
LLaMa.cpp是为Ollama等众多本地大语言模型工具提供支持的底层后端技术(推理引擎)。Llama.cpp支持对大型语言模型进行重要的推理,只需极少配置,在各种硬件上就能实现出色的本地性能,它也可以在云端运行。
LLaMa.cpp的主要功能
安装:它的安装设置非常简单,只需一条命令即可完成安装。性能:它在本地和云端的各种硬件上都能表现出色。支持的模型:它支持像Mistral 7B、Mixtral MoE、DBRX、Falcon等众多热门且主要的大语言模型。前端人工智能工具:Llama.cpp支持像MindWorkAI/AI-Studio(FSL-1.1-MIT)、iohub/collama等开源大语言模型用户界面工具。
开始使用LLaMa.cpp
要使用Llama.cpp运行你的第一个本地大型语言模型,你应该使用以下命令进行安装:
brew install llama.cpp
接下来,从Hugging Face或其他任何来源下载你想要运行的模型。例如,从Hugging Face下载以下模型,并将其保存到你机器上的某个位置。
https://huggingface.co/MaziyarPanahi/Mistral-7B-Instruct-v0.3-GGUF/resolve/main/Mistral-7B-Instruct-v0.3.Q4_K_M.gguf
使用你偏好的命令行工具(如终端),切换到你刚下载的.gguf模型文件所在的目录,然后运行以下命令。
llama-cli --color \ -m Mistral-7B-Instruct-v0.3.Q4_K_M.ggufb \ -p "Write a short intro about SwiftUI"
总之,首先调用Llama命令行工具,并设置颜色及其他标志。“-m”标志用于指定你想要使用的模型的路径,“-p”标志用于指定你希望用来指示模型的提示信息。
运行上述命令后,你将在以下预览中看到结果。

本地大语言模型的使用案例
在本地运行大语言模型有助于那些想要详细了解其性能以及其工作原理的开发者。本地大语言模型可以查询私人文档和技术论文,这样一来,这些文档中的信息就不会从查询所用的设备传输到任何运营商的服务器中了。在没有网络或网络接收信号差的地方,本地大语言模型很有用处。
本地大语言模型工具总结
如本文所述,选择在本地使用大语言模型存在多种动机。如果因为特殊工作环境下没有网络,或者不能连接外网,不想把信息外泄,所以选择本地大模型都是很好的选择。
最新热门文章推荐:
国外CUDA程序员分享:2024年GPU编程CUDA C++(从环境安装到进阶技巧)
我卸载了VSCode,我的生产力大幅提升
国外Python程序员分享:2024年使用Cython加速 Python完整过程
国外Python程序员分享:2024年NumPy高性能计算库(高级技巧)
国外程序员问题:C/C++最佳用途是什么能干什么?请留下您的最佳答案
国外C++程序员分享:2024年为了性能将 Python 与 C/C++ 接口(多个例子分析)
外国人眼中的程明明:从“电脑小白”到CV领域领军者
外国人眼中的周志华:人工智能奖获得者、人工智能学院院长
国外C++程序员分享:C++多线程实战掌握图像处理高级技巧
2024年国外程序员分享:C++50道经典面试题
外国人眼中的卢湖川:从大连理工到全球舞台,他的科研成果震撼世界!
外国人眼中的张祥雨:交大90后男神博士,3年看1800篇论文,还入选福布斯精英榜
参考文献:《图片来源网络》
到顶部