Ollama模型服务调用

Ollama 提供了多种方式来调用其服务,包括通过命令行、REST API 以及编程语言(如 Python)进行集成。以下是详细的调用方法:

https://github.com/ollama/ollama/blob/main/docs/api.md

1. 通过命令行调用

Ollama 提供了简单的命令行工具来与模型交互。

启动模型并交互
ollama run <model-name>

例如,使用 deepseek-r1:1.5b 模型:

ollama run deepseek-r1:1.5b

启动后,你可以直接在命令行中输入文本,模型会生成回复。

生成单次回复

如果你只需要生成一次回复,可以使用以下命令:

ollama run deepseek-r1:1.5b "为什么天空是蓝色的?"

2. 通过 REST API 调用

Ollama 提供了 REST API,允许你通过 HTTP 请求与模型交互。

启动 Ollama 服务

首先,确保 Ollama 服务正在运行:

ollama serve

默认情况下,服务会运行在 http://localhost:11434

使用 API 生成文本

你可以使用 curl 或其他 HTTP 客户端调用 API。

示例:生成文本

curl -X POST http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1:1.5b",
  "prompt": "为什么天空是蓝色的?"
}'

API 参数说明:

  • model: 要使用的模型名称(如 deepseek-r1:1.5b)。
  • prompt: 输入的提示文本。
  • stream: 是否流式返回结果(默认为 true)。
  • options: 其他选项,如温度(temperature)、最大 token 数(num_predict)等。

示例:流式返回

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

示例:设置生成参数

curl -X POST http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1:1.5b",
  "prompt": "给我讲一个关于哪吒的笑话.",
  "stream": false,
  "options": {
    "temperature": 0.7,
    "num_predict": 500
  }
}'

3. 通过 Python 调用

你可以使用 Python 的 requests 库或其他 HTTP 客户端库与 Ollama 的 API 交互。

安装依赖
pip install requests
Python 示例代码
import requests

# API 地址
url = "http://localhost:11434/api/generate"

# 请求数据
data = {
    "model": "deepseek-r1:1.5b",
    "prompt": "为什么天空是蓝色的?",
    "stream": False
}

# 发送请求
response = requests.post(url, json=data)

# 打印结果
if response.status_code == 200:
    print(response.json())
else:
    print("Error:", response.status_code, response.text)
流式处理

如果启用流式返回,可以逐块处理响应:

import requests

url = "http://localhost:11434/api/generate"
data = {
    "model": "deepseek-r1:1.5b",
    "prompt": "为什么天空是蓝色的?",
    "stream": True
}

with requests.post(url, json=data, stream=True) as response:
    if response.status_code == 200:
        for chunk in response.iter_content(chunk_size=None):
            if chunk:
                print(chunk.decode("utf-8"), end="")
    else:
        print("Error:", response.status_code, response.text)

4. 通过 Docker 调用

如果你使用 Docker 部署 Ollama,可以通过 Docker 容器调用服务。

启动 Docker 容器
docker run -d -p 11434:11434 --name ollama ollama/ollama
调用 API

与本地调用方式相同,只需将 localhost 替换为 Docker 容器的 IP 或主机名。


5. 高级功能

Ollama 还支持以下高级功能:

  • 多模型管理:同时加载多个模型并切换使用。
  • 自定义模型:基于现有模型进行微调或自定义。
  • GPU 加速:通过配置启用 GPU 加速(需安装 CUDA 等依赖)。

6. 调试与日志

如果调用服务时遇到问题,可以查看 Ollama 的日志:

ollama logs

总结

Ollama 提供了多种调用服务的方式,包括命令行、REST API 和编程语言集成。通过 REST API,你可以轻松将 Ollama 集成到自己的应用程序中,并通过流式处理、参数调整等功能实现更灵活的使用。

使用私有化部署的32b模型讲的两个关于哪吒的笑话

在这里插入图片描述

在这里插入图片描述

对于如何使用 Ollama 调用 DeepSeek API 的方法或示例教程,在提供的参考资料中并没有直接提及相关内容。然而,可以基于API交互的一般模式以及Postman工具的使用来构建一个假设性的指南[^2]。 通常情况下,调用任何RESTful API涉及几个关键步骤: 1. **获取访问凭证**:大多数现代API服务都需要某种形式的身份验证机制,比如API密钥、OAuth令牌等。 2. **设置请求头**:这可能包括但不限于`Content-Type`, `Authorization`字段等。特别是当涉及到身份验证时,授权信息往往通过HTTP头部传递给服务器端。 3. **定义请求体(Body)**:如果API支持POST或其他允许发送数据的方法,则需准备相应的JSON对象或者其他格式的数据作为请求的一部分提交上去。 4. **解析响应结果**:接收来自API返回的信息并处理这些信息以满足应用需求。 考虑到上述通用流程,下面给出一段Python代码片段用于演示如何利用requests库向假定存在的DeepSeek API发起GET请求: ```python import requests url = 'https://api.deepseek.example.com/query' # 假设这是DeepSeek API的一个查询接口地址 headers = { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN', # 替换成实际获得的有效token 'Accept': 'application/json' } response = requests.get(url, headers=headers) if response.status_code == 200: data = response.json() print(data) else: print(f"Error occurred: {response.text}") ``` 为了更具体地指导用户操作,建议查阅官方文档或者联系技术支持团队了解确切参数细节和认证方式。此外,也可以考虑采用像Postman这样的图形化界面工具来进行初步测试与探索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值