自带端点
私有模型服务器(例如 vLLM、SGLang 和 Ollama)可以从你控制的基础设施公开 OpenAI 兼容 API。AISIX 可以将模型流量路由到这些服务器,或路由到位于自有模型之前的私有代理。
如果应用需要继续通过 OpenAI 兼容 API 调用 AISIX,同时由 AISIX 将流量转发到私有或隔离网络中的模型服务,请使用 BYO 端点。该端点必须接受 OpenAI 兼容的 Chat Completions 请求。
如需使用已按各引擎文档中的 API 格式验证过的 AISIX Cloud 步骤,请参阅专门的 Ollama 或 vLLM 指南。对于 SGLang 等其他私有 OpenAI 兼容服务器,请使用本页的通用 AISIX Cloud 资源格式。
准备工作
开始前,请准备以下内容:
- 一套 AISIX 环境 :
- 对于 AISIX Cloud,需要一个已关联网关的环境和具有写入作用域的 Admin Token。对于 On-Premises,请按照 AISIX Cloud 快速入门操作。如需申请 Hybrid Cloud 访问权限,请联系 API7。
- 对于开源 AISIX 网关,请准备本地 AISIX 安装,或使用开源 AISIX 网关快速入门中的 Docker 环境。配置网关以加载声明式资源文件。
- 可访问的 OpenAI 兼容端点及其提供的模型名称。示例使用提供
meta-llama/Llama-3.1-8B-Instruct的 vLLM。 curl和jq。
使用 AISIX Cloud 配置
导出 AISIX Cloud 连接信息:
# AISIX_CP 是 Admin API 基础 URL;应包含 /api,且不含尾部斜杠
# 本地私有化部署快速入门使用 http://localhost:8080/api
export AISIX_CP="YOUR_AISIX_CLOUD_ADMIN_API_URL"
export AISIX_TOKEN="YOUR_ADMIN_TOKEN"
export ENV_ID="YOUR_ENVIRONMENT_ID"
使用 byo 作为服务提供方标识符,选择 openai 适配器,并显式设置端点:
PROVIDER_KEY_ID=$(curl -sS -X POST "$AISIX_CP/provider_keys" \
-H "Authorization: Bearer $AISIX_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"display_name": "vllm-private",
"provider": "byo",
"adapter": "openai",
"api_key": "not-used-by-vllm",
"api_base": "http://10.0.0.5:8000/v1",
"allowed_environments": ["'"$ENV_ID"'"]
}' | jq -r '.provider_key.id')
AISIX Cloud Admin API 使用 provider: "byo",以便用量数据区分自定义端点和目录服务提供方。对于开源 AISIX 网关,resources.yaml 中的 provider 可以是 vllm 等描述性标签。两种方式都要求 api_key 非空;仅当端点忽略身份验证时才使用占位值。
创建模型:
MODEL_ID=$(curl -sS -X POST "$AISIX_CP/environments/$ENV_ID/models" \
-H "Authorization: Bearer $AISIX_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"display_name": "llama-3-private",
"model_name": "meta-llama/Llama-3.1-8B-Instruct",
"provider_key_id": "'"${PROVIDER_KEY_ID}"'"
}' | jq -r '.model.id')
创建可访问该模型的调用方 API Key:
BYO_CALLER_KEY=$(curl -sS -X POST "$AISIX_CP/environments/$ENV_ID/api_keys" \
-H "Authorization: Bearer $AISIX_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"display_name": "byo-caller",
"allowed_models": ["'"${MODEL_ID}"'"]
}' | jq -r '.plaintext')
在模型定价中配置 BYO 定价。AISIX Cloud 模型请求不接受开源网关使用的 cost 配置块。
使用开源 AISIX 网关配置
许多私有运行的推理服务器不需要 API Key。对于无需身份验证的端点,请在服务提供方密钥中使用非空占位值;AISIX 会将其作为 Bearer Token 发送,你的服务器可以忽略该值。