Ollama 用 API 构建应用

2026-10-29 18:16 更新

装好 Ollama 后,除了在终端里聊天,更常见的用法是在代码里调用模型的推理能力。Ollama 提供一套与 OpenAI 风格兼容的 REST API,既能在本地(免费、免密钥)调用,也能指向 Ollama Cloud(需 API Key)调用更大的云端模型。本节用 curl、Python、JavaScript 三种方式,分别演示本地与云端两种 Base URL 的最小请求。

版本基线 v0.40.12;下文 gemma4:e2b 为本地示例模型、gemma4:31b 为云端示例模型,实际标签以官方文档为准。代码仅做结构示范,变量名/字段名保留英文。

一、两种 Base URL

场景 Base URL 认证
本地(本机已装 Ollama) http://localhost:11434 免密钥
云端(Ollama Cloud) https://ollama.com Authorization: Bearer <OLLAMA_API_KEY>

本地调用走 /api/chat 等端点;云端调用把 Base URL 换成 https://ollama.com 并带上 API Key 即可,端点路径保持一致。

二、curl 最小请求

## 本地:向默认端点发起一次对话(stream:false 表示一次性返回)
curl http://localhost:11434/api/chat -d '{
  "model": "gemma4:e2b",
  "messages": [{ "role": "user", "content": "用中文解释为什么天空是蓝色的?" }],
  "stream": false
}'

## 云端:Base URL 换成 https://ollama.com,并加认证头
curl https://ollama.com/api/chat \
  -H "Authorization: Bearer $OLLAMA_API_KEY" \
  -d '{
    "model": "gemma4:31b",
    "messages": [{ "role": "user", "content": "用中文解释为什么天空是蓝色的?" }],
    "stream": false
  }'

三、Python 客户端库

from ollama import chat

## 本地调用(默认连 http://localhost:11434,免密钥)
response = chat(
    model="gemma4:e2b",                                  # 指定本地模型
    messages=[{"role": "user", "content": "用一句话介绍 Ollama。"}],
)
print(response["message"]["content"])                    # 打印模型回复文本

from ollama import Client

## 云端调用:把 host 指向 Ollama Cloud,并用 API Key 认证
client = Client(host="https://ollama.com", api_key="你的_API_Key")
response = client.chat(
    model="gemma4:31b",                                # 云端模型标签
    messages=[{"role": "user", "content": "用一句话介绍 Ollama。"}],
)
print(response["message"]["content"])

先 pip install ollama 安装官方 Python 库。云端调用不要把 API Key 写死在代码里,建议从环境变量 OLLAMA_API_KEY 读取。

四、JavaScript 客户端库

import ollama from "ollama";

// 本地调用(默认连 http://localhost:11434)
const response = await ollama.chat({
  model: "gemma4:e2b",
  messages: [{ role: "user", content: "用一句话介绍 Ollama。" }],
});
console.log(response.message.content);

import ollama from "ollama";

// 云端调用:host 指向 Ollama Cloud,认证走环境变量 OLLAMA_API_KEY
const client = new ollama.Client({ host: "https://ollama.com" });
const response = await client.chat({
  model: "gemma4:31b",
  messages: [{ role: "user", content: "用一句话介绍 Ollama。" }],
});
console.log(response.message.content);

先 npm install ollama 安装官方 JS 库。Node.js 版本需支持顶层 await(或使用 async 函数包裹)。

五、本地连不上的常见原因

  • 服务没起:本地调用前先确认 Ollama 应用已打开,或 Linux 上 systemctl start ollama / 其他平台 ollama serve 已运行。
  • 端口不对:本地默认 11434,若改过 OLLAMA_HOST 要用对应地址。
  • 云端 401:检查 OLLAMA_API_KEY 是否正确、额度是否充足。

六、动手试

  1. 用 curl 向 http://localhost:11434/api/chat 发一条消息,确认本地能返回。
  2. 把同一段 Python 代码跑通(先装 ollama 库)。
  3. 想深入 API 端点与字段,跳到 API 总览;想接桌面应用或编码代理见 1.4 Ollama 连接桌面应用 与 1.5 Ollama 使用编码代理。

说明:本节代码示例以官方 Quickstart(v0.40.12)为基线整理,模型名与端点形态若与你所见官网不一致,以 docs.ollama.com 当前页面为准。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号