当前位置:   article > 正文

隐私第一:在几分钟内部署本地大语言模型!_chatollama

chatollama

Image

彻底改变您的数据安全游戏:快速无缝部署本地大语言模型,实现无与伦比的隐私!

2023年是人工智能领域加速发展的一年。除了健壮的商业上可用的大型语言模型之外,还出现了许多值得称赞的开源方案,例如Llama2、Codellama、Mistral和Vicuna。虽然商业大模型ChatGPT、Bard和Claude等拥有强大的功能,但它们带来了相关的成本和固有的安全问题。在必须确保数据安全的特定场景中,考虑部署本地大型语言模型是一种可行的选择。

在本文中,我将介绍如何使用Ollama来运行Llama2和其他大型语言模型。

安装 Ollama
 

目前ollama只支持macOS和Linux, Windows平台正在开发中。我们可以访问这个链接下载特定平台的ollama。

Image

macOS版本下载完成后,解压缩“olama -darwin.zip”文件。随后,双击Ollama可执行文件启动安装过程。

在安装过程中,系统将提示您决定是否将Ollama应用程序移动到系统的Applications目录。在这个例子中,我选择移动到应用程序:

Image

请按照软件安装指南逐步进行安装。

Image

要运行Llama2,只需在终端中执行命令 ollama run llama2 。执行此命令后,Llama2模型将被自动下载:

Image

除了Llama2模型,Ollama还支持多种模型。您可以通过访问模型存储库来探索模型的全面列表。

Image

注意:运行3B机型至少应该有8gb内存,运行7B机型至少应该有16gb内存,运行13B机型至少应该有32gb内存。

成功下载模型后,您可以与llama2模型进行交互:

Image


Ollama CLI

利用Ollama CLI,您可以毫不费力地对模型执行各种操作。这些操作包括创建、拉取、删除或复制模型等。

创建一个模型

ollama create example -f Modelfile

拉取一个模型

ollama pull llama2

该命令还可以用于更新本地模型。只有diff会被拉动。

删除模型

ollama rm llama2

复制模型

ollama cp llama2 my-llama2

除了上述命令之外,Ollama CLI还提供了其他各种命令。执行 ollama --help 命令可以查看完整的命令列表:

(base) ➜  ~ ollama --helpLarge language model runner
Usage:  ollama [command]
Available Commands:  serve       Start ollama  create      Create a model from a Modelfile  show        Show information for a model  run         Run a model  pull        Pull a model from a registry  push        Push a model to a registry  list        List models  cp          Copy a model  rm          Remove a model  help        Help about any command
Flags:  -h, --help      help for ollama  -v, --version   version for ollama

启动本地服务器
 

如果不希望直接在终端中与大型语言模型交互,可以使用命令 ollama serve 启动本地服务器。一旦这个命令成功运行,你就可以通过REST API与本地语言模型进行交互:​​​​​​​

curl http://localhost:11434/api/generate -d '{  "model": "llama2",  "prompt":"Why is the sky blue?"}'

Image

在实际项目中,我们可以利用封装在langchainjs中的ChatOllama对象有效地与Ollama进行交互。

ChatOllama

Ollama支持JSON模式,支持从大型语言模型中强制执行有效的JSON输出。现在,让我们深入研究如何利用封装在langchainjs中的ChatOllama对象来实现文本翻译功能。

  1. 初始化ChatOllama项目

mkdir ChatOllamanpm init -y

2. 安装langchainjs​​​​​​​

npm install -S langchain # oryarn add langchain # orpnpm add langchainjs

3. 创建索引。​​​​​​​

import { ChatOllama } from "langchain/chat_models/ollama";import { ChatPromptTemplate } from "langchain/prompts";
const prompt = ChatPromptTemplate.fromMessages([  [    "system",    `You are an expert translator. Format all responses as JSON objects with two keys: "original" and "translated".`,  ],  ["human", `Translate "{input}" into {language}.`],]);
const model = new ChatOllama({  baseUrl: "http://localhost:11434", // Default value  model: "llama2", // Default value  format: "json",});
const chain = prompt.pipe(model);
const result = await chain.invoke({  input: "I love programming",  language: "German",});
console.log(result);

随后,在项目根目录下,打开终端,执行命令 node index.mjs 。成功运行上述命令后,终端将输出如下结果:

Image

除了实现文本翻译功能之外,您还可以探索大量不同的功能。例如,您可以开发检索增强生成(Retrieval Augmented Generation, RAG)应用程序来有效地完成信息检索。

总结
 

本文概述了如何使用Ollama在本地快速部署开源大型语言模型。它还引入了封装在langchainjs中的ChatOllama对象,用于实现文本翻译功能。此外,Ollama支持自定义模型,允许以GGUF格式导入模型。如果您对自定义模型感兴趣,您可以探索“自定义您自己的模型”部分中的内容。

如果您在使用过程中遇到任何问题,建议您首先查阅由Ollama提供的FAQ文档。

欢迎关注微信公众号:文本魔术,了解更多 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/347372
推荐阅读
相关标签
  

闽ICP备14008679号