Ollama
Ollama 在本地或私有基础设施中运行语言模型,并提供 OpenAI 和 Anthropic 兼容 API。Ollama 继续在你的环境中提供推理服务,AISIX 则为其添加调用方密钥、稳定的模型别名、流量控制和用量报告。
准备工作
开始前,请准备以下内容:
- 一套 AISIX 环境:
- 对于 AISIX Enterprise 或 AISIX Cloud,需要一个已关联网关的环境和具有写入作用域的 Admin Token。对于 AISIX Enterprise,请按照 AISIX Enterprise 快速入门操作。如需申请 AISIX Cloud 访问权限,请联系 API7。
- 对于开源 AISIX 网关,请准备本地 AISIX 安装,或使用开源 AISIX 网关快速入门中的 Docker 环境。配置网关以加载声明式资源文件。
- 在 AISIX 网关可访问的主机上安装 Ollama 0.13.3 或更高版本。该版本开始提供本指南使用的原生 Responses 端点。
curl和jq。
准备 Ollama
拉取本指南使用的模型:
ollama pull gpt-oss:20b
Ollama 默认绑定到 127.0.0.1:11434。如果 AISIX 运行在另一个容器或主机上,请按照 Ollama 服务器配置设置可访问的绑定地址。例如,可让前台服务器监听所有网络接口:
OLLAMA_HOST="0.0.0.0:11434" ollama serve
警告
本地 Ollama API 不需要身份验证。绑定到 0.0.0.0 后,其他网络节点也能访问它。请使用防火墙、容器网络或 Kubernetes 策略限制监听网络,不要将该端口直接暴露到公网。
导出一个可从 AISIX 网关访问的 API 根地址:
# Docker Desktop 中的网关访问主机上的 Ollama
export OLLAMA_API_BASE="http://host.docker.internal:11434/v1"
根据部署拓扑选择地址:
| AISIX 网关与 Ollama 的部署拓扑 | API 根地址示例 |
|---|---|
| 两个进程位于同一主机 | http://127.0.0.1:11434/v1 |
| AISIX 位于 Docker Desktop 中,Ollama 位于主机上 | http://host.docker.internal:11434/v1 |
| 两个容器位于同一 Docker 网络 | http://ollama:11434/v1 |
| Kubernetes | http://ollama.<namespace>.svc.cluster.local:11434/v1 |
在 Linux 上,host.docker.internal 可能需要显式配置 host-gateway 映射。从笔记本电脑成功发送请求,并不能证明 AISIX 网关容器能够访问同一地址。
使用 AISIX Enterprise 或 AISIX Cloud 配置
导出控制面连接信息:
# AISIX_CP 是 Admin API 基础 URL;应包含 /api,且不含尾部斜杠
# 本地 AISIX Enterprise 快速入门使用 http://localhost:8080/api
export AISIX_CP="YOUR_AISIX_CONTROL_PLANE_API_URL"
export AISIX_TOKEN="YOUR_ADMIN_TOKEN"
export ENV_ID="YOUR_ENVIRONMENT_ID"
Ollama 是私有端点,而不是 AISIX 目录服务提供方。请使用 byo 服务提供方值进行配置,并显式选择 openai 适配器。