Ollama介绍
项目地址:ollama
官网地址: https://ollama.com
模型仓库:https://ollama.com/library
API接口:api接口
Ollama 是一个基于 Go 语言开发的简单易用的本地大语言模型运行框架。可以将其类比为 docker(同基于 cobra (opens new window)包实现命令行交互中的 list,pull,push,run 等命令),事实上它也的确制定了类 docker 的一种模型应用标准,在后边的内容中,你能更加真切体会到这一点。
在管理模型的同时,它还基于 Go 语言中的 Web 框架 gin (opens new window)提供了一些 Api 接口,让你能够像跟 OpenAI 提供的接口那样进行交互。
Ollama安装
从官网下载安装包即可
模型管理
ollama中的常见命令:
ollama list:显示模型列表。
ollama show:显示模型的信息
ollama pull:拉取模型
ollama push:推送模型
ollama cp:拷贝一个模型
ollama rm:删除一个模型
ollama run:运行一个模型
官方提供了一个模型仓库,在这里你可以找到你想要运行的模型。
在这里我选择下载阿里开源的 Qwen1.8b 模型。
命令如下:
ollama run qwen:1.8b
安装完成后测试如下
同时安装了通义千问1.8b大模型和通义千问4b大模型,并且问了同一问题,反而1.8b的大模型推理效果更好些。
调用接口
API接口信息详见 https://github.com/ollama/ollama/blob/main/docs/api.md
访问接口
POST http://localhost:11434/api/chat
body内容
{
"model": "qwen:1.8b"
#如果设置false为非流式输出,默认为流式输出
#"stream":false,
"messages": [
{
"role": "user",
"content": "什么是大模型"
},
{
"role": "assistant",
"content": "“大模型”是一种人工智能技术,用于构建能够模拟人类复杂决策过程的大型神经网络。这种模型通常由多层神经元构成,每一层神经元都包含多个隐藏层,这些隐藏层之间的连接权重可以根据实际任务需求进行调整。大模型在许多领域中都有广泛的应用,包括自然语言处理、计算机视觉、智能推荐系统等。此外,大模型还可以用于构建更复杂的智能系统和机器人,以实现自动化生产和服务等目标。"
},
{
"role": "user",
"content": "你帮我介绍一下大模型在推荐系统的应用"
}
]
}
输出
心得体会
ollama启动应用程序后会默认启动ollama中安装的本地大模型,相当于后台起了一个server服务,直接就可以通过接口指定具体模型调用。
对于 ollama run qwen:1.8b 命令也仅仅是调用qwen1.8b大模型的服务。
由于默认会启动所有模型,所以节约了启动大模型的耗时,但是可能会造成内存的浪费。