人工智能 频道

在本地运行LLM的5种简单方法

  ChatGPT、Claude.ai和phind等聊天机器人可能非常有帮助,但您可能并不总是希望您的问题或敏感数据由外部应用程序处理。在平台上尤其如此,在这些平台上,您的互动可能会被人类审查,并用于帮助训练未来模型。

  一个解决方案是下载一个大型语言模型(LLM)并在您自己的机器上运行。这样,外部公司就永远无法访问您的数据。这也是尝试一些新专业模型的快速选择,例如Meta最近宣布的Code Llama系列模型,这些模型是为编码而调整的,以及SeamlessM4T,旨在实现文本到语音和语言翻译。

  运行自己的LLM可能听起来很复杂,但有了正确的工具,这出乎意料地简单。许多型号的硬件要求并不疯狂。我在两个系统上测试了本文中介绍的选项:一台配备英特尔i9处理器、64GB内存的戴尔PC和Nvidia GeForce 12GB GPU(可能没有运行很多此软件),以及一台配备M1芯片但只有16GB内存的Mac。

  [什么是生成人工智能?创造的人工智能]

  请注意,可能需要一些研究才能找到一个适合您的任务并在桌面硬件上运行的模型。而且,很少有人能像你习惯使用ChatGPT(特别是GPT-4)或Claude.ai等工具时所习惯的。命令行工具LLM的创建者Simon Willison在上个月的一次演示文稿中认为,即使响应错误,运行本地模型也是值得的:

  [一些]在你的笔记本电脑上运行的那些会像野生一样产生幻觉——我认为这实际上是运行它们的理由,因为在笔记本电脑上运行弱型号是了解这些东西如何工作及其局限性的更快方法。

  还值得注意的是,开源模型可能会不断改进,一些行业观察家预计它们与商业领导者之间的差距会缩小。

  目录

  使用GPT4All运行本地聊天机器人

  命令行上的LLM

  桌面上的Llama模型:Ollama

  与您自己的文档聊天:h2oGPT

  轻松但缓慢地与您的数据聊天:PrivateGPT

  显示更多

  使用GPT4All运行本地聊天机器人

  如果您想要一个本地运行且不会向其他地方发送数据的聊天机器人,GPT4All提供了一个易于设置的桌面客户端供下载。它包括在您自己的系统上运行的型号的选项,并且有适用于Windows、macOS和Ubuntu的版本。

  当您首次打开GPT4All桌面应用程序时,您将看到下载大约10个(截至本文撰写时)可以在本地运行的模型的选项。其中包括Llama-2-7B聊天,这是Meta AI的模型。如果您有API密钥,您还可以设置OpenAI的GPT-3.5和GPT-4(如果您有访问权限)以供非本地使用。

  GPT4All界面的模型下载部分起初有点混乱。在我下载了几个模型后,我仍然看到了下载所有模型的选项。这表明下载不起作用。然而,当我检查下载路径时,模型就在那里。

  Sharon Machlis为IDG拍摄的屏幕截图

  GPT4All中模型下载界面的一部分。一旦我打开应用程序的使用部分,我下载的模型就会自动出现。

  " style="color: rgb(239, 76, 35); text-decoration: none; position: relative; display: block; overflow: hidden; max-width: 620px;" _href="https://images.idgesg.net/images/article/2023/08/gpt4all-100945052-orig.jpg?auto=webp&quality=85,70">图像左侧显示了两个模型的描述,右侧显示了要下载的选项。

  Sharon Machlis为IDG截图

  GPT4All中模型下载界面的一部分。一旦我打开应用程序的使用部分,我下载的模型就会自动出现。

  一旦设置了模型,聊天机器人界面本身就干净且易于使用。方便的选项包括将聊天复制到剪贴板并生成响应。

  Sharon Machlis为IDG拍摄的屏幕截图

  GPT4All聊天界面干净且易于使用。

  " style="color: rgb(239, 76, 35); text-decoration: none; position: relative; display: block; overflow: hidden; max-width: 620px;" _href="https://images.idgesg.net/images/article/2023/08/gpt4all_asl-100945053-orig.jpg?auto=webp&quality=85,70">图片显示查询“学习美国手语的好方法是什么?”和回应。

  Sharon Machlis为IDG截图

  GPT4All聊天界面干净且易于使用。

  还有一个新的测试版LocalDocs插件,允许您在本地与自己的文档“聊天”。您可以在设置>插件选项卡中启用它,在那里您将看到“LocalDocs插件(BETA)设置”标题和在特定文件夹路径上创建集合的选项。

  该插件是一项进行中的工作,文档警告说,即使LLM可以访问您添加的专家信息,它仍然可能“产生幻觉”(编造)。尽管如此,这是一个有趣的功能,随着开源模型的能力越来越强,它可能会得到改进。

  除了聊天机器人应用程序外,GPT4All还具有Python、Node和命令行界面(CLI)的绑定。还有一个服务器模式,允许您通过结构非常像OpenAI的HTTP API与本地LLM交互。目标是让您通过更改几行代码来将本地LLM换成OpenAI。

  命令行上的LLM

  Simon Willison的LLM是我见过的在自己的机器上本地下载和使用开源LLM的更简单方法之一。虽然您确实需要安装Python来运行它,但您不需要触摸任何Python代码。如果您使用Mac并使用Homebrew,只需使用

  brew install llm

  如果您使用的是Windows机器,请使用您最喜欢的方式安装Python库,例如

  pip install llm

  LLM默认使用OpenAI模型,但您可以使用插件在本地运行其他模型。例如,如果您安装gpt4all插件,您将可以从GPT4All访问其他本地模型。还有美洲驼、MLC项目和MPT-30B的插件,以及其他远程模型。

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

  llm install llm-gpt4all

  您可以使用命令:llm models list查看所有可用的模型——远程和您已安装的模型,包括每个模型的简要信息。

llm模型列表命令的结果显示了所需的模型来源、名称、大小和RAM。Sharon Machlis为IDG截图

  当您要求LLM列出可用型号时显示。

  要向本地LLM发送查询,请使用语法:

  llm -m the-model-name "Your query"

  选择正确的法学硕士

  如何选择模型?InfoWorld的14个不是ChatGPT的LLM是一个来源,尽管您需要检查哪些是可下载的,以及它们是否与LLM插件兼容。您还可以前往GPT4All主页,向下滚动到与GPT4All兼容的型号的模型资源管理器。falcon-q4_0选项是一个评价很高的相对较小的模型,其许可证允许商业使用,所以我从那里开始。

  然后,我问了一个类似ChatGPT的问题,没有发出单独的命令来下载模型:

  llm -m ggml-model-gpt4all-falcon-q4_0 "Tell me a joke about computer programming"

  这是使LLM用户体验如此优雅的一件事:如果您的本地系统上不存在GPT4All模型,LLM工具会在运行查询之前自动为您下载它。当模型下载时,您将在终端中看到一个进度条。

在带有进度条的终端中下载模型。Sharon Machlis为IDG截图

  LLM自动下载我在查询中使用的模型。

  这个笑话本身并不出色——“为什么程序员关掉他的电脑?因为他想看看它是否仍然有效!”——但事实上,查询确实有效。如果结果令人失望,那是因为模型性能或用户提示不足,而不是LLM工具。

  您还可以在LLM中为模型设置别名,以便您可以用更短的名称引用它们:

  llm aliases set falcon ggml-model-gpt4all-falcon-q4_0

  要查看所有可用的别名,请输入:llm aliases。

  Meta的Llama模型的LLM插件比GPT4All需要更多的设置。阅读LLM插件的GitHub repo的详细信息。请注意,通用的llama-2-7b-chat确实设法在我的工作Mac上运行,配备M1 Pro芯片和只有16GB的RAM。与GPT4All型号相比,它运行得相当慢,为没有GPU的小型机器进行了优化,并且在我更强大的家用PC上性能更好。

  LLM还有其他功能,例如argument标志,允许您从之前的聊天中继续,以及在Python脚本中使用它。9月初,该应用程序获得了生成文本嵌入的工具,即文本含义的数字表示,可用于搜索相关文档。您可以在LLM网站上看到更多。流行的Python Django框架的联合创建者Willison希望社区中的其他人能为LLM生态系统贡献更多的插件。

  桌面上的Llama模型:Ollama

  Ollama是比LLM更容易下载和运行模型的方法。然而,该项目仅限于macOS和Linux,直到2月中旬,Windows的预览版终于可用。我测试了Mac版本。

最终设置屏幕显示“使用ollama运行您的第一个模型:运行llama2”。Sharon Machlis为IDG截图

  设置Ollama非常简单。

  通过点击安装是一种优雅的体验。虽然Ollama是一个命令行工具,但只有一个带有语法ollama run model-name的命令。与LLM一样,如果模型尚未在您的系统上,它将自动下载。

  您可以在https://ollama.ai/library上查看可用模型列表,截至本文撰写时,该模型包括几个版本的基于Llama的模型,如通用Llama 2、Code Llama、DeepSE的CodeUp为一些编程任务进行了微调,以及为回答医疗问题而微调的medllama2。

  The Ollama GitHub repo's README includes helpful list of some model specs and advice that "You should have at least 8GB of RAM to run the 3B models, 16GB to run the 7B models, and 32GB to run the 13B models." On my 16GB RAM Mac, the 7B Code Llama performance was surprisingly snappy. It will answer questions about bash/zsh shell commands as well as programming languages like Python and JavaScript.

终端窗口屏幕显示下载进度条和有关shell命令的问题的答案。Sharon Machlis为IDG截图

  在Ollama终端窗口中运行Code Llama的样子。

  尽管是家庭中最小的模型,但如果在回答R编码问题方面不完美,它还是相当不错的,这个问题绊倒了一些较大的模型:“为ggplot2图形编写R代码,其中条形为钢蓝色。”代码是正确的,除了两行代码中有两个额外的闭合括号,这些括号很容易在我的IDE中发现。我怀疑更大的Code Llama本可以做得更好。

  Ollama有一些额外的功能,例如LangChain集成和使用PrivateGPT运行的能力,除非您查看GitHub repo的教程页面,否则这些功能可能并不明显。

  如果您使用Mac并想使用Code Llama,您可以在终端窗口中运行它,并在每次有问题时将其调出。我期待着Ollama Windows版本在我的家用PC上使用。

  与您自己的文档聊天:h2oGPT

  H2O.ai已经研究自动化机器学习一段时间了,所以该公司很自然地进入了聊天LLM空间。它的一些工具最好由了解该领域的人使用,但安装其h2oGPT聊天桌面应用程序的测试版本的说明快速而直接,即使对于机器学习新手来说也是如此。

  您可以在gpt.h2o.ai上访问网络上的演示版本(显然不使用系统本地的LLM),这是在下载到您自己的系统之前了解您是否喜欢该界面的有用方法。

  您可以按照此处的设置说明下载应用程序的基本版本,但功能有限,可以查询自己的文档。

  Sharon Machlis为IDG拍摄的屏幕截图

  本地LLaMa模型根据VS代码文档回答问题。

  " style="color: rgb(239, 76, 35); text-decoration: none; position: relative; display: block; overflow: hidden; max-width: 620px;" _href="https://images.idgesg.net/images/article/2023/08/h2ogpt_basic-100945076-orig.jpg?auto=webp&quality=85,70">屏幕显示问题、人工智能的响应以及源文档的链接。

  Sharon Machlis为IDG截图

  本地LLaMa模型根据VS代码文档回答问题。

  无需添加自己的文件,您就可以将该应用程序用作普通聊天机器人。或者,您可以上传一些文档并询问有关这些文件的问题。兼容的文件格式包括PDF、Excel、CSV、Word、文本、标记等。测试应用程序在我的16GB Mac上工作正常,尽管较小型号的结果无法与带有GPT-4的付费ChatGPT相比(一如既往,这是型号的功能,而不是应用程序)。h2oGPT UI为知道自己在做什么的用户提供了一个专家选项卡,其中包含许多配置选项。这让更有经验的用户可以选择尝试改善他们的结果。

  Sharon Machlis为IDG拍摄的屏幕截图

  探索h2oGPT中的专家选项卡。

  " style="color: rgb(239, 76, 35); text-decoration: none; position: relative; display: block; overflow: hidden; max-width: 620px;" _href="https://images.idgesg.net/images/article/2023/08/h2ogpt_expert-100945079-orig.jpg?auto=webp&quality=85,70">选项卡选项包括系统预上下文、查询预提示、系统提示、块数量等。

  Sharon Machlis为IDG截图

  探索h2oGPT中的专家选项卡。

  如果您想更好地控制更多模型的流程和选项,请下载完整的应用程序。对于具有GPU或仅使用CPU的系统,有适用于Windows和macOS的一键安装程序。请注意,我的Windows防病毒软件对Windows版本不满意,因为它没有签名。我熟悉H2O.ai的其他软件,代码可以在GitHub上找到,所以我无论如何都愿意下载并安装它。

  现在在H2O.ai的Rob Mulla在他的频道上发布了一段关于在Linux上安装该应用程序的YouTube视频。虽然该视频已经有几个月的历史了,并且应用程序用户界面似乎已经发生了变化,但该视频仍然有有用的信息,包括关于H2O.ai LLMs的有用解释。

  轻松但缓慢地与您的数据聊天:PrivateGPT

  PrivateGPT还旨在让您使用自然语言查询自己的文档,并获得生成的AI响应。此应用程序中的文档可以包括数十种不同的格式。README向您保证,数据是“100%私有的,任何数据在任何时候都不会离开您的执行环境。你可以在没有互联网连接的情况下摄取文件和提问!”

  PrivateGPT具有脚本来摄取数据文件,将其拆分成块,创建“嵌入”(文本含义的数字表示),并将这些嵌入存储在本地Chroma矢量存储中。当您提出问题时,应用程序会搜索相关文档,并仅将这些文档发送给LLM以生成答案。

  如果您熟悉Python以及如何设置Python项目,您可以克隆完整的PrivateGPT存储库并在本地运行。如果您对Python不太了解,您可能想查看作者Iván Martínez为会议研讨会设置的项目的简化版本,该研讨会设置起来要容易得多。

  该版本的README文件包含详细说明,不假设Python系统管理员的专业知识。回购协议附带一个装满Penpot文档的asourcesource_documents文件夹,但您可以删除这些文档并添加自己的文档。

0
相关文章