|
| 1 | +# Ollama |
| 2 | + |
| 3 | +官网https://ollama.com/ |
| 4 | + |
| 5 | +Ollama 是一个用于在本地运行大型语言模型的工具,以下是一些常见的 Ollama 命令及使用指南: |
| 6 | + |
| 7 | +## 安装 |
| 8 | + |
| 9 | +### 安装和启动 |
| 10 | + |
| 11 | +#### 安装 |
| 12 | + |
| 13 | +在不同操作系统上有不同的安装方式: |
| 14 | + |
| 15 | +- **macOS**:使用 Homebrew 安装 |
| 16 | + |
| 17 | +```bash |
| 18 | +brew install ollama |
| 19 | +``` |
| 20 | + |
| 21 | +- **Linux**:可以通过脚本安装 |
| 22 | + |
| 23 | +```bash |
| 24 | +curl https://ollama.com/install.sh | sh |
| 25 | +``` |
| 26 | + |
| 27 | +- **Windows**安装: |
| 28 | + |
| 29 | + 官网下载https://ollama.com/然后直接安装即可,支持 macOS, Linux, and Windows |
| 30 | + |
| 31 | + **安装的时候如何不默认安装在C盘** |
| 32 | + |
| 33 | + ```bash |
| 34 | + OllamaSetup.exe /DIR="E:\soft\ollama\program" |
| 35 | + # windows环境变量配置 |
| 36 | + OLLAMA_ORIGINS = * |
| 37 | + OLLAMA_MODELS = E:\soft\ollama\models 《- 模型文件的存放位置 |
| 38 | + ``` |
| 39 | + |
| 40 | +```txt |
| 41 | +> ollamaSteup.exe /? |
| 42 | +具体参数解释如下: |
| 43 | +/HELP, /?:显示此帮助信息。 |
| 44 | +/SP-:在安装开始时不显示 “这将安装…… 你要继续吗?” 的消息框。 |
| 45 | +/SILENT, /VERYSILENT:以静默或非常静默模式安装,禁止显示消息框。 |
| 46 | +/SUPPRESSMSGBOXES:禁止显示消息框。 |
| 47 | +/LOG:在用户的临时目录中创建日志文件。 |
| 48 | +/LOG="filename":指定日志文件的固定路径和文件名。 |
| 49 | +/NOCANCEL:禁止用户在安装过程中取消操作。 |
| 50 | +/NORESTART:安装成功后或 “准备安装” 失败要求重启时,阻止系统重启。 |
| 51 | +/RESTARTEXITCODE=exit code:指定系统需要重启时安装程序返回的自定义退出代码。 |
| 52 | +/CLOSEAPPLICATIONS:指示安装程序关闭正在使用需要更新文件的应用程序。 |
| 53 | +/NOCLOSEAPPLICATIONS:防止安装程序关闭正在使用需要更新文件的应用程序。 |
| 54 | +/FORCECLOSEAPPLICATIONS:强制关闭应用程序。 |
| 55 | +/FORCENOCLOSEAPPLICATIONS:阻止强制关闭应用程序。 |
| 56 | +/LOGCLOSEAPPLICATIONS:关闭应用程序时记录额外日志,用于调试。 |
| 57 | +/RESTARTAPPLICATIONS:指示安装程序重新启动应用程序。 |
| 58 | +/NORESTARTAPPLICATIONS:阻止安装程序重新启动应用程序。 |
| 59 | +/LOADINF="filename":在检查命令行后,从指定文件加载设置。 |
| 60 | +/SAVEINF="filename":将安装设置保存到指定文件。 |
| 61 | +/LANG=language:指定要使用的语言内部名称。 |
| 62 | +/DIR="x:\dirname":覆盖默认的安装文件夹路径。 |
| 63 | +/GROUP="foldername":覆盖默认的开始菜单文件夹名称。 |
| 64 | +/NOTICECF:指示安装程序初始勾选 “不创建开始菜单文件夹” 复选框。 |
| 65 | +/TYPE=type name:指定默认的安装类型。 |
| 66 | +/COMPONENTS="comma separated list of component names":覆盖默认的组件设置。 |
| 67 | +/TASKS="comma separated list of task names":指定初始应选中的任务列表。 |
| 68 | +/MERGETASKS="comma separated list of task names":类似 /TASKS 参数,指定的任务将与默认选中的任务合并。 |
| 69 | +/PASSWORD=password:指定要使用的密码。 |
| 70 | +``` |
| 71 | + |
| 72 | + |
| 73 | + |
| 74 | +#### 启动服务 |
| 75 | + |
| 76 | +安装完成后,需要启动 Ollama 服务: |
| 77 | + |
| 78 | +```bash |
| 79 | +ollama serve |
| 80 | +``` |
| 81 | + |
| 82 | +这会在本地启动一个 HTTP 服务,默认监听`127.0.0.1:11434`。 |
| 83 | + |
| 84 | +### 模型管理 |
| 85 | + |
| 86 | +#### 拉取模型 |
| 87 | + |
| 88 | +要使用某个模型,首先需要将其拉取到本地: |
| 89 | + |
| 90 | +```bash |
| 91 | +ollama pull <model_name> |
| 92 | +``` |
| 93 | + |
| 94 | +例如,拉取`llama2`模型: |
| 95 | + |
| 96 | +```bash |
| 97 | +ollama pull llama2 |
| 98 | +``` |
| 99 | + |
| 100 | +#### 列出本地模型 |
| 101 | + |
| 102 | +可以查看已经拉取到本地的所有模型: |
| 103 | + |
| 104 | +```bash |
| 105 | +ollama list |
| 106 | +``` |
| 107 | + |
| 108 | +#### 删除本地模型 |
| 109 | + |
| 110 | +如果你不再需要某个本地模型,可以将其删除: |
| 111 | + |
| 112 | +```bash |
| 113 | +ollama rm <model_name> |
| 114 | +``` |
| 115 | + |
| 116 | +例如,删除`llama2`模型: |
| 117 | + |
| 118 | +```bash |
| 119 | +ollama rm llama2 |
| 120 | +``` |
| 121 | + |
| 122 | +### 与模型交互 |
| 123 | + |
| 124 | +#### 交互式对话 |
| 125 | + |
| 126 | +可以通过命令行与模型进行交互式对话: |
| 127 | + |
| 128 | +```bash |
| 129 | +ollama run <model_name> |
| 130 | +``` |
| 131 | + |
| 132 | +例如,与`llama2`模型进行对话: |
| 133 | + |
| 134 | +```bash |
| 135 | +ollama run llama2 |
| 136 | +``` |
| 137 | + |
| 138 | +之后你输入问题,按下回车键,模型会给出回答。 |
| 139 | + |
| 140 | +#### 非交互式调用 |
| 141 | + |
| 142 | +可以通过管道将输入传递给模型,并获取输出: |
| 143 | + |
| 144 | +```bash |
| 145 | +echo "你的问题" | ollama run <model_name> |
| 146 | +``` |
| 147 | + |
| 148 | +例如: |
| 149 | + |
| 150 | +```bash |
| 151 | +echo "什么是人工智能?" | ollama run llama2 |
| 152 | +``` |
| 153 | + |
| 154 | +### 模型创建和定制 |
| 155 | + |
| 156 | +#### 创建自定义模型 |
| 157 | + |
| 158 | +可以使用`ollama create`命令创建自定义模型。首先需要创建一个`Modelfile`文件,内容示例如下: |
| 159 | + |
| 160 | +```plaintext |
| 161 | +# Modelfile |
| 162 | +FROM llama2 |
| 163 | +PARAMETER temperature 0.7 |
| 164 | +``` |
| 165 | + |
| 166 | +然后使用以下命令创建自定义模型: |
| 167 | + |
| 168 | +```bash |
| 169 | +ollama create <custom_model_name> -f Modelfile |
| 170 | +``` |
| 171 | + |
| 172 | +### API 使用 |
| 173 | + |
| 174 | +Ollama 还提供了 HTTP API,你可以通过发送 HTTP 请求与模型交互。以下是一个使用`curl`发送请求的示例: |
| 175 | + |
| 176 | +```bash |
| 177 | +curl http://localhost:11434/api/generate -d '{ |
| 178 | + "model": "llama2", |
| 179 | + "prompt": "什么是人工智能?" |
| 180 | +}' |
| 181 | +``` |
0 commit comments