Ollama模型安装与调用

94 阅读3分钟

前置参考文章:ollama安装教程

1、如何安装模型

1.1、搜索模型

进入ollama官网,切换到的Models菜单,输入需要安装的模型厂商进行搜索,如下图 image.png

1.2、选择模型

搜索到目标模型后,点击进入模型,如下图,会显示当前模型不同参数规模的信息,根据需要选择需要的模型【这里是演示教程,由于机器条件限制,选择最小的1.7b】,点击对应规模的模型后可以看到对应的模型参数信息。 image.png

1.3、安装模型

选择模型后,可以看到对应的安装运行命令,然后在命令行中执行下面的脚本,安装并运行模型 image.png

ollama run qwen3:1.7b

首次运行会比较慢,因为要下载模型及依赖信息,如下图

image.png 安装完毕后如下图,会出现success表示,同时会进入会话模式 image.png 查看当前运行模型

ollama ps

image.png

2、模型验证

2.1、命令行模式验证

发送一个消息,验证一下效果【你好,你是谁?】

image.png

2.2、通过ollama会话chat界面调用验证

首先要切换到安装的模型,我这里是qwen3:1.7b如下图 image.png 同样问一个问题【你好,你是谁?】,效果如下图,是不是还是界面更友好点。

image.png

2.3、通过ollama开放api进行验证

通过api调用,首先我们要知道api有哪些,当然这个ollama官方都有,切换到Docs菜单【ollama api】就可以看到了,如下图我们可以看出api地址为**http://localhost:11434/api** 相关的接口在下图左下方的Endpoints中有列表。【更多可参考下方链接】

image.png

调用示例如下,为了截图效果,参stream=false表示关闭流模式,不然响应太多。

curl http://localhost:11434/api/generate -d '{
  "model": "qwen3:1.7b",
  "prompt": "天空为什么是蓝色的?",
  "stream":false
}'

image.png 当然可以通过postman调用,效果一样,如下图

image.png

2.4、API安全加固

如果ollama不增加权限认证信息,一旦地址泄露则接口在无授权情况下,用户可轻易获得模型信息,及调用模型接口,所以一般我们会进行授权简短的方案,如下简单方案是通过nginx代理ollama开放api,nginx配置如下,在调用时,调用地址调整为nginx代理地址,同时请求头增加Authorization=Bearer xxxxxxxx即可。

location /ollama/ {
         if ($http_authorization != 'Bearer xxxxxxx') {
             # 显式指定响应类型为 text/plain,避免默认 html 格式可能的问题
             add_header Content-Type text/plain;
             return 401 "Unauthorized: Invalid Token";
         }
         # 支持连接升级(如 WebSocket 握手)
         proxy_set_header Upgrade $http_upgrade;       # 传递客户端的 Upgrade 头(修正变量名:$http_upgrade)
         proxy_set_header Connection "Upgrade";        # 告知后端需要升级连接
         # 基础代理头信息
         proxy_set_header Host $host;                  # 传递客户端请求的 Host 头
         proxy_set_header X-Real-IP $remote_addr;      # 传递客户端真实 IP(修正变量名:$remote_addr)
         proxy_set_header X-Forwarded-For $remote_addr; # 记录客户端 IP(多层代理时建议用 $proxy_add_x_forwarded_for)
         # 长连接超时设置(适用于 WebSocket、长轮询等场景)
         proxy_read_timeout 86400s;  # 服务器读取客户端响应的超时时间(24小时)
         proxy_send_timeout 86400s;  # 服务器向客户端发送请求的超时时间(24小时)
         proxy_pass http://localhost:11434/;
 }

总结

综上我们可以看出ollama可以管理模型,而且可以通过统一的ollama开放api来实现不同模型的访问使用。