集成模型提供商
通过集成模型提供商,智能体可以按需快速调用已配置的模型服务,实现LLM推理能力的统一接入和调用。
模型提供商创建完成后,可以通过以下两种方式访问模型服务:
通过模型代理访问
模型提供商关联模型代理后,通过模型代理的访问端点(endpoint)调用模型服务。模型代理提供统一的入站身份认证和请求路由,调用方无需关心后端模型提供商的认证和网络配置。
请求路由
推理请求通过 /inference/ 前缀路径路由到模型代理,与MCP请求的/mcp路径隔离。
请求路径格式:
https://{model_proxy_endpoint}/inference/{path} 其中 {path} 为标准API路径,如 /v1/chat/completions、/v1/messages 等。
model_proxy_endpoint获取方式:
- 登录AgentArts智能体平台。
- 在左侧导航栏选择“托管与运行 > 模型”,进入模型界面。
- 单击模型卡片上的“查看”,进入模型详情页面。
- 在“模型代理”区域查看获取。

请求路由流程:
- 调用方通过模型代理端点发起推理请求,请求路径为 /inference/{path}。例如,调用OpenAI协议的文本对话接口,请求路径为 /inference/v1/chat/completions,请求体中携带model字段(如 model=gpt-4)。
- 网关从请求体提取model字段,在已注册的模型列表中进行匹配。
- 模型提供商附加出站认证信息,模型代理将请求转发到模型提供商后端。
- 模型提供商返回响应,网关将响应返回给调用方。
认证方式
调用方需根据模型代理配置的入站身份认证方式,在请求中携带认证信息:
- IAM 认证:使用华为云IAM用户凭据进行认证。调用方需在请求中携带IAM用户的访问密钥(AK/SK)。
- API Key 认证:使用密钥对进行认证,调用方需在请求头中携带API Key名称和对应的密钥值。
请求路径中的 {path} 必须与模型服务的API接口协议对应的请求路径一致。例如,OpenAI协议的文本对话模型使用/v1/chat/completions,Anthropic协议的文本对话模型使用/v1/messages。关于模型类型与请求路径的映射关系,请参见支持的模型类型。
以下以API Key认证为例,通过模型代理调用OpenAI协议的文本对话接口:
POST https://{model_proxy_endpoint}/inference/v1/chat/completions HTTP/1.1
Content-Type: application/json
{API_Key_Name}: {api_key_value}
{
"model": "gpt-4",
"messages": [
{"role": "user", "content": "Hello, how are you?"}
]
} 以下以IAM认证为例,通过模型代理调用Anthropic协议的文本对话接口:
POST https://{model_proxy_endpoint}/inference/v1/messages HTTP/1.1
Content-Type: application/json
Authorization: SDK-HMAC-SHA256 Credential={access_key}/{date}/region/agentarts, ...
{
"model": "claude-3-opus",
"messages": [
{"role": "user", "content": "Hello, how are you?"}
]
} 直接访问
对于公网网络配置的模型提供商,可以不关联模型代理,通过base_url直接调用模型服务。直接访问时,调用方需自行管理模型提供商的认证信息。
- 公网网络配置的模型提供商可以不关联模型代理,直接通过base_url访问,也可以关联模型代理通过模型代理访问。
- 私网网络配置的模型提供商必须关联模型代理,通过模型代理的VPC网络访问。
以下以 API Key 认证为例,通过base_url直接调用OpenAI协议的文本对话接口:
POST {base_url}/v1/chat/completions HTTP/1.1
Content-Type: application/json
Authorization: Bearer {api_key}
{
"model": "gpt-4",
"messages": [
{"role": "user", "content": "Hello, how are you?"}
]
} 以下通过base_url直接调用Anthropic协议的文本对话接口:
POST {base_url}/v1/messages HTTP/1.1
Content-Type: application/json
x-api-key: {api_key}
{
"model": "claude-3-opus",
"messages": [
{"role": "user", "content": "Hello, how are you?"}
]
}