全部产品
Search
文档中心

人工智能平台 PAI:通过网关进行公网或内网调用

更新时间:Mar 04, 2026

EAS提供了共享网关和专属网关,支持通过公网或内网调用部署的模型推理服务,调用流程基本一致,您可以根据业务需求选择网关类型和访问方式。

网关类型选择

EAS服务的网关提供共享网关和专属网关,两者差异如下:

对比维度

共享网关

专属网关

公网调用

默认支持

支持,需先开通

内网调用

默认支持

支持,需先开通

成本

免费提供

额外付费

带宽

共享

专享

适用场景

测试环境和流量比较小、无需定制访问策略的服务

对安全性、稳定性和性能要求高且流量比较大的服务

服务配置方式

默认配置,直接使用。

需先创建,部署时选择,详见使用专属网关

推荐方案

  • 开发测试环境使用共享网关

  • 生产环境使用专属网关

访问方式选择

公网地址

适用于任何可以访问公网的环境。请求通过EAS共享网关转发至您部署的服务。

适用场景

  • 从阿里云外部调用服务

  • 本地开发测试

  • 集成到外部应用

VPC地址

适用于当您的应用程序与EAS服务部署在同一地域的情况。同地域的VPC网络可以建立VPC连接实现安全通信。

适用场景

  • 应用程序运行在阿里云上且与EAS服务在同一地域

  • 需要更低的延迟和成本

  • 不希望服务暴露在公网

重要

相比公网调用,VPC内网调用速度更快(免去公网调用中的网络性能开销)且成本更低(内网流量通常免费)。

如何调用服务

调用EAS服务需要三个关键要素:

  • 服务访问地址(Endpoint)

  • 授权令牌(Token)

  • 根据模型API规范构造的请求

步骤一:获取访问地址和Token

部署服务后,系统会自动生成访问地址和授权令牌。

重要

控制台提供的是基础地址。您通常需要在其后拼接正确的接口路径才能构成完整的请求URL。路径错误是导致404 Not Found的最常见原因。

  1. 推理服务页签,单击目标服务名称进入概览页面。

  2. 基本信息区域,单击查看调用信息

  3. 调用信息面板,复制访问地址和Token:

    • 根据需要选择公网地址VPC地址

    • 后续示例中使用<EAS_ENDPOINT>代表访问地址,<EAS_TOKEN>代表Token。

    image

步骤二:构造并发送请求

无论是使用公网地址还是VPC地址,请求的格式都相同。一个标准请求,通常包含以下四个核心要素:

  • 请求方法(Method): 最常用的是POST、GET。

  • 请求路径(URL):

    • 格式:<EAS_ENDPOINT> + API路径

    • 示例:http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test + /v1/chat/completion

  • 请求头(Headers):

    • Authorization: <EAS_TOKEN> (必需,用于认证)

    • Content-Type: application/json (POST请求通常必需)

  • 请求体(Body):格式(比如JSON)取决于部署的模型API规范。

    重要

    通过网关调用时,请求体大小不得超过 1MB。

调用示例

调用vLLM部署的DeepSeek-R1-Distill-Qwen-7B模型服务,所需元素:

  • 请求方法:POST

  • 请求路径:<EAS_ENDPOINT>/v1/chat/completions (对话接口)

  • 请求头

    • Authorization: <Token>

    • Content-Type: application/json

  • 请求体

    {
        "model": "DeepSeek-R1-Distill-Qwen-7B",
        "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user",
            "content": "hello!"
        }
        ]
    }

代码示例

假设<EAS_ENDPOINT>为http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test

curl http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: *********5ZTM1ZDczg5OT**********" \
-X POST \
-d '{
    "model": "DeepSeek-R1-Distill-Qwen-7B",
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant."
    },
    {
        "role": "user",
        "content": "hello!"
    }
    ]
}' 
import requests

# 替换为实际访问地址
url = 'http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test/v1/chat/completions'
# header信息 Authorization的值为实际的Token
headers = {
    "Content-Type": "application/json",
    "Authorization": "*********5ZTM1ZDczg5OT**********",
}
# 根据具体模型要求的数据格式构造服务请求。
data = {
    "model": "DeepSeek-R1-Distill-Qwen-7B",
    "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user",
            "content": "hello!"
        }
    ]
}
# 发送请求
resp = requests.post(url, json=data, headers=headers)
print(resp)
print(resp.content)

更多LLM服务调用说明,请参见LLM调用

更多场景

  • 通过Model Gallery部署的模型:其模型介绍页面通常提供API调用示例,包括完整的 URL 路径和请求格式。

    cURL命令

    基本语法格式:curl [options] [URL]

    常用参数(options):

    • -X: 指定HTTP方法(如 -X POST

    • -H: 添加请求头(如 -H "Content-Type: application/json"

    • -d: 添加请求体(如 -d '{"key": "value"}'

    image

    Python代码

    通过Python代码说明,以Qwen3-Reranker-8B模型为例,注意其URL、请求体与curl命令示例不同,请务必参考对应的模型介绍说明。

    image

  • 场景化部署:

  • 通用Processor(包括TensorFlow、Caffe、PMML等)部署的服务:请参见基于通用Processor构造服务请求

  • 其他自定义服务:请求格式由您在自定义镜像或代码中定义的数据输入格式决定。

  • 自己训练的模型:调用方式与原模型一样。

常见问题

关于服务调用的常见问题和解决方案,请参见服务调用FAQ