ollama介绍:

Ollama 是一个开源的大型语言模型(LLM)平台,旨在让用户能够轻松地在本地运行、管理和与大型语言模型进行交互。它支持多种预训练的大型语言模型(如 LLaMA2、Mistral、Gemma、DeepSeek 等),并提供了一个简单高效的方式来加载和使用这些模型。

  • 出现Error: something went wrong, please see the ollama server logs for details的问题原因 主要是网络问题导致的,尤其是设置了代理环境变量(终端FQ目的)
  • 关于DeepSeek本地部署指南(ollama的应用)可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南

ollama 的API:

官方api操作手册如下:https://github.com/ollama/ollama/blob/main/docs/api.md

下面是ollama官网所有API的命令供参考:

命令描述请求方法请求URL请求体/参数响应示例中文说明
Generate a completion根据给定的提示生成文本响应。POST/api/generate{"model": "llama3.2", "prompt": "Why is the sky blue?"}{"model": "llama3.2", "response": "The sky is blue because...", "done": true}使用指定模型生成文本响应,支持流式响应。
Generate a chat completion生成聊天对话中的下一条消息。POST/api/chat{"model": "llama3.2", "messages": [{"role": "user", "content": "Hello!"}]}{"message": {"role": "assistant", "content": "Hello! How are you today?"}}用于生成聊天机器人回复,支持对话历史和流式响应。
Create a Model创建模型(从其他模型、safetensors目录或GGUF文件)。POST/api/create{"model": "mario", "from": "llama3.2", "system": "You are Mario"}{"status": "success"}创建新模型,支持从现有模型或文件创建。
List Local Models列出本地可用的模型。GET/api/tags无请求体{"models": [{"name": "llama3:latest", "size": 3825819519, ...}]}列出本地已有的模型及其相关信息。
Show Model Information显示模型的详细信息(包括参数、模板等)。POST/api/show{"model": "llama3.2"}{"modelfile": "...", "parameters": "...", "template": "...", ...}获取指定模型的详细信息。
Copy a Model复制一个现有模型到新的名称。POST/api/copy{"source": "llama3.2", "destination": "llama3-backup"}返回200 OK将一个模型复制为另一个名称。
Delete a Model删除一个模型及其数据。DELETE/api/delete{"model": "llama3:13b"}返回200 OK删除指定模型。
Pull a Model从Ollama库下载模型。POST/api/pull{"model": "llama3.2"}{"status": "success"}下载模型到本地,支持断点续传。
Push a Model将模型上传到Ollama库。POST/api/push{"model": "mattw/pygmalion:latest"}{"status": "success"}将本地模型上传到Ollama库。
Generate Embeddings生成文本的嵌入向量。POST/api/embed{"model": "all-minilm", "input": "Why is the sky blue?"}{"embeddings": [[0.010071029, -0.0017594862, ...]]}使用指定模型生成文本的嵌入向量。
List Running Models列出当前加载到内存中的模型。GET/api/ps无请求体{"models": [{"name": "mistral:latest", "size": 5137025024, ...}]}列出当前运行的模型及其相关信息。
Version获取Ollama版本信息。GET/api/version无请求体{"version": "0.5.1"}获取Ollama服务器的版本号。

如果你在使用ollama输入任何命令出现如下错误时就可以使用api来操作:

Error: something went wrong, please see the ollama server logs for details

这个错误主要是网络问题导致的,尤其是代理环境变量(终端FQ)

有两种解决办法:
方法一:

# 检查http_proxy变量是否存在
echo $http_proxy

# 检查https_proxy变量是否存在
echo $https_proxy

如果输出内容了,说明设置了代理,请移除

# 移除HTTP代理环境变量
unset http_proxy

# 移除HTTPS代理环境变量
unset https_proxy
# 再检查http_proxy变量是否存在
echo $http_proxy

# 再检查https_proxy变量是否存在
echo $https_proxy

输出为空,再试试ollama命令应该就可以了。
如果你希望永久移除这些代理环境变量,可以编辑你的终端配置文件,例如编辑你的.zshrc文件(这是zsh的配置文件),并删除或注释掉其中设置代理变量的行。

例如编辑zshrc文件:

// 注释掉类似下面的内容
export http_proxy="http://your-proxy-server:port"
export https_proxy="http://your-proxy-server:port"

// 保存文件后再执行
source ~/.zshrc

然后稳妥起见再重启下终端,再试试ollama命令应该就可以了。

方法二:如果不想修改自己的代理环境变量,可以直接通过API操作命令代替ollama命令
举例来说:

// 终端直接运行下面命令来pull模型
curl http://你的电脑ip地址:11434/api/pull -d '{"model": "deepseek-r1:1.5b"}'

// 获取正在运行的模型
curl http://你的电脑ip地址:11434/api/ps

详细API请见上方表格


kovli
7 声望4 粉丝