2025年了还不会用ollama吗❓

3,647 阅读5分钟

cover-1738770605700.png

系统:window11

ollama版本: 0.5.6

continue版本:0.8.66

前言

最近一直在内网开发,没办法连互联网.常用的一些ai工具, 如deepseep,cursor都没办法使用.为了解决这个问题,就需要部署本地离线的ai服务目前比较流行的方案是通过ollama在本地运行一个模型,再用vscode或者idea的插件去配合使用

那么我们需要安装的只有下面这两个

  • continue : 一个vscode插件,idea也可以使用
  • ollama: 开源大语言模型服务工具

ollama

安装

官网地址:Ollama

直接去官网下载ollama,按步骤一键安装就可以了

image-20250205001144396.png

ollama安装成功之后,任务栏就会有它的图标

image-20250205001936495.png

在命令行里面输入ollama看到这个就说明安装成功了

image-20250205002112433.png

加载模型

模型地址:Ollama

搜索你需要的模型

image-20250205222836145.png

这里我用一个最近比较火的deepseek模型举例, 我这边选用1.5b的做演示,具体看自己的电脑显卡有多大的显存

image-20250205223008769.png

ollama run deepseek-r1:1.5b

复制这边的命令到终端,下面就开始下载

image-20250205223129465.png

前面那个命令安装完成之后会自动运行.这时候已经可以直接进行问答了

image-20250205224529021.png

查看模型状态

ollama ps

image-20250205224632193.png

通过查看模型状态,可以看到模型已经成功加载,并且已经100%加载到gpu里面

continue

安装

这里通过vscode去安装,如果需要idea的也可以直接去搜索这个插件,如下图侧边栏点开,写入如下配置

image-20250205225135431.png

相关配置

这边是我自己用的配置,如果需要也可以去这个插件的官网看对应的文档

{
  // 问答用的模型
  "models": [
    {
      "title": "deepseek-r1:1.5b", //标题
      "provider": "ollama", // 模型提供商
      "model": "deepseek-r1:1.5b", // 模型名
      "completionOptions": {}, // 其他选项
      "apiBase": "http://localhost:11434" // API 基础 URL
    }
  ],
  // 代码补全的模型
  "tabAutocompleteModel": {
    "title": "Tab Autocomplete", //标题
    "provider": "ollama", // 模型提供商
    "model": "deepseek-r1:1.5b", // 模型名
    "completionOptions": {}, // 其他选项
    "apiBase": "http://localhost:11434" // API 基础 URL
  },
  // 自定义命令
  "customCommands": [
    {
      "name": "test",
      "prompt": "{{{input}}}\n\n为所选代码编写一套全面的单元测试。它应当包含设置、运行检查正确性的测试(包括重要的边界情况)以及清理工作。确保测试完整且复杂。仅以聊天输出的形式给出测试内容,不要编辑任何文件。",
      "description": "为突出显示的代码编写单元测试e"
    }
  ],
  // 可以提供的上下文
  "contextProviders": [
    {
      "name": "code",
      "params": {}
    },
    {
      "name": "docs",
      "params": {}
    },
    {
      "name": "diff",
      "params": {}
    },
    {
      "name": "terminal",
      "params": {}
    },
    {
      "name": "problems",
      "params": {}
    },
    {
      "name": "folder",
      "params": {}
    },
    {
      "name": "codebase",
      "params": {}
    }
  ],
  // 输入时可以用的快捷命令
  "slashCommands": [
    {
      "name": "share",
      "description": "将当前聊天会话导出为 Markdown 格式"
    },
    {
      "name": "cmd",
      "description": "生成一个 shell 命令"
    },
    {
      "name": "commit",
      "description": "生成一条 Git 提交消息"
    }
  ],
  // 默认嵌入模型
  "embeddingsProvider": {
    "provider": "ollama", // 模型提供商
    "model": "deepseek-r1:1.5b", // 模型名
    "completionOptions": {}, // 其他选项
    "apiBase": "http://localhost:11434" // API 基础 URL
  },
  // 排序模型
  "reranker": {
    "name": "free-trial"
  }
}

效果

image-20250205225226728.png

配置完成之后就可以进行正常的问题,和交流.编写代码的时候也可以看到有对应的代码补全

image-20250205225420887.png

离线部署

导出modelfile文件

首先需要导出对应的模型

image-20250205225821175.png

这里用ollama可以看到我有两个模型,这边选择导出deepspeek这个模型

ollama show deepseek-r1:1.5b --modelfile

image-20250205225918620.png

执行上面的指令之后,会输出这个模型的modefile文件内容,将其复制,并且保存为xxx.modelfile文件

image-20250205230219011.png

image-20250205230230104.png

获取gguf文件

接下来还需要去获取gguf文件,这个文件默认是在C:\Users\[用户名称]\.ollama\models\blobs

image-20250205230450248.png

打开之后这里有几个文件,找大小和前面下载的模型大小相似的文件

image-20250205230601941.png

我前面下载的deepseek模型的大小是1g多,就复制这个.

把他放到前面的modelfile文件同目录下,重命名为.gguf的格式

image-20250205230804955.png

修改modelfile

前面导出的modelfile文件有一个from,把它改成你的gguf模型文件所在位置

image-20250205230921948.png

所以最好一个模型和自己的modelfile文件放在同一个文件夹里面比较方便.

导入模型

前面的步骤已经将模型导出了.

在你的离线环境下安装ollama,直接把ollama安装文件传进去和前面的步骤已经直接一键安装.

安装完成之后,开始导入模型,

image-20250205231335096.png

还没有导入的时候,我只有一个模型

ollama create deepseek1.5b -f model.modelfile

执行上面的命令

image-20250205231558550.png

这样就算成功了

image-20250205231703202.png

通过ollama list命令可以看到已经运行导入成功了

运行模型

ollama run deepseek1.5b:latest

image-20250205231757198.png

通过run命令将其运行起来,就大功告成了

离线安装continue

continuegithub上面下载对应的visix文件

image-20250205232107250.png

image-20250205231927246.png

这边找一个适合你的系统的vsix文件

image-20250205232207652.png

这边直接安装就好了,之后就重复前面的步骤

局域网共享

首先需要配置系统环境变量,使ollama可以监听所有ip

OLLAMA_HOST
0.0.0.0

image-20250205232410739.png

olama服务启动默认的端口是11434,通过ipconfig查看自己在局域网里面的ip地址

image-20250205232522881.png

continue所有的apibase地址换成你的ip:11434就可以访问到你本机的ollama服务了

image-20250205232757937.png

设置常驻内存

ollama的模型5分钟没有使用就会自动释放,如果需要让它一直保持存活在内存中,可以通过设置环境变量的方式

OLLAMA_KEEP_ALIVE 
-1

image-20250205233021475.png

将其设置为-1即可,这个变量设置的是模型多久释放,如果设置为负数就会一直存活

设置并发数

这个变量设置的就是ollama单个模型最多同时处理多少并发,我这边设置了10个

OLLAMA_NUM_PARALLEL
10

image-20250205233232268.png

结尾

通过上面的设置之后,不管是内网还是互联网都可以访问本地运行的模型服务.

如果需要深入设置ollama,可以去ollama官网的文档