运行大型语言模型 (LLM)(如 ChatGPT 和 Claude)通常涉及将数据发送到 OpenAI 和其他 AI 模型提供商管理的服务器。虽然这些服务是安全的,但一些企业更愿意将数据完全离线,以保护更大的隐私。
本文介绍了开发人员可以用来在本地运行和测试 LLM 的六大工具,确保他们的数据永远不会离开他们的设备,类似于端到端加密保护隐私的方式。
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 setup
from openai import OpenAI
# Point to the local server
client = 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 聊天集成到您的应用程序中,并访问所有相关链接以了解更多信息。
如何学习AI大模型 ?
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
😝有需要的小伙伴,可以VX扫描下方二维码免费领取🆓
👉1.大模型入门学习思维导图👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
👉2.AGI大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。
👉3.大模型实际应用报告合集👈
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)
👉4.大模型落地应用案例PPT👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)
👉5.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)
👉6.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习
这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓