前言
现在已经是2025年了,再不会本地部署AI
就输在起跑线上了。从前两年GPT
的横空出世到现在AI
的百花齐放,从早些的卷参数,到现在卷AI
算法和多模态。可以说AI
技术到现在取得了巨大进步。但是在通用人工智能(AGI
)的道路上,仍然面临诸多挑战。
今天来实现一下本地AI
部署,虽然没用(我们自己电脑性能有限,使用AI
模型的参数有限,不如进各大AI
官网免费使用),但是不能不会。
正文
Ollama基本使用
简单来说, Ollama 是一个用于在本地运行大型语言模型的工具。 它就像一个桥梁,连接了各种开源的 LLMs 模型和你自己的电脑。 Ollama 的目标是让每个人都能 简单、快捷、安全 地体验和使用最先进的 AI 模型,而无需复杂配置或依赖云服务
安装
登录ollama.com/download 选择适合自己电脑的版本进行下载安装
安装后输入命令,看到版本号输出就安装成功了。
ollama --version
修改模型保存位置
默认Ollama
会把模型下载到C盘
下,但是C盘
空间是有限的,我们可以新增系统变量
来更改模型下载位置
基本命令
这是全部的命令,但是常用的命令就几个
ollama.com/search ,可以查看所有供下载的模型
#查看本地已下载模型
ollama list
#运行本地的模型,没有的话回到远程下载
ollama run xxx
#删除模型
ollama rm xxx
例子
在与模型对话的时候输入/bye
就是退出。
到这里Ollama
你就基本会使用了
创建自定义的 AI 模型
创建Modelfile
文件,并编写内容,还有别的参数,具体可以上官网看。
#以哪个模型的基础上进行修改?
FROM llama3.2
#控制模型生成文本的随机性 (温度)。 temperature 值越高,模型生成的结果越随机、越发散、越有创造性,但也可能更不可预测; temperature 值越低,模型生成的结果越保守、越确定、越符合常见模式,但也可能缺乏创新性。 通常 temperature 取值范围在 0 到 1 之间
PARAMETER temperature 1
#用于 设置模型的系统提示词。 系统提示词是在对话开始前预先设置的指令,用于 引导模型的行为和风格。 系统提示词会影响模型在所有对话中的表现。 您可以利用系统提示词来 定义模型的角色、性格、知识范围、任务目标 等等
SYSTEM """
You are an intelligent AI, please answer briefly
"""
使用命令创建模型
ollama create AIName -f ./Modelfile
使用命令向本地AI提问
Ollama
暴露了11434
端口给我们使用
#windows
Invoke-WebRequest -Uri http://localhost:11434/api/generate -Method Post -ContentType "application/json" -Body '{"model":"llama3.2","prompt":"Why is the sky blue","stream":false}'
但是正常我们不这么使用,知道有这种方式就行。我们可以安装第三方库,这样就可以在node
环境中使用了。
可以自己去试试 www.npmjs.com/package/oll…
npm i ollama
Msty
通过命令行的形式调用本地AI模型
还是太麻烦了。我们可以下载Msty
,这样就可以通过可视化界面的形式调用本地AI模型。
安装
官网 msty.app/ 。选择合适的版本下载
进行对话
点击左上角的图标即可进行对话
切换本地的模型
RAG
RAG 系统,全称 Retrieval-Augmented Generation,即检索增强生成系统。 将数据的向量嵌入 (vector embeddings) 存入向量数据库中,向量数据库主要存储的是数据的向量表示,而不是原始数据本身。 我们通常会将各种类型的原始数据(例如文本、图像、音频、视频等)通过特定的模型转换成向量,然后将这些向量存储在向量数据库中,以便进行高效的相似性搜索和分析。存储在向量数据库中的是 向量嵌入,而存储的目的是为了能够 高效地进行向量相似度搜索,从而支持各种基于语义的应用,例如语义搜索、相似内容检索、推荐系统、问答系统等。
流程图
我们要下载一个模型nomic-embed-text
。模型的作用: 将文本转换为向量
,以便进行语义分析
添加额外知识库
勾选上我们创建的知识库
这样我们的问题会先去额外添加的知识库中找答案,没有结果的话会根据它自身的知识回答。
结语
感兴趣的可以去试试