ALB扩展版支持将多个大模型服务统一接入,通过配置AI类型服务器组及基于请求体中模型名称的转发规则,自动将请求路由至对应的后端AI服务,从而提供统一入口并简化客户端集成逻辑。
业务场景
某企业在构建AI应用时,需要分别从阿里云百炼和DeepSeek调用qwen-turbo和deepseek-chat模型。ALB扩展版提供AI类型服务器组,客户端只需向ALB发送符合OpenAI格式的请求,在请求体中指定模型名称,ALB的转发规则即可根据模型名称将请求路由至对应的后端大模型服务,实现统一入口,降低业务复杂度和维护成本。
适用范围
-
用户已获取ALB扩展版公测资格。
-
用户已在华北6(乌兰察布)地域创建一个专有网络VPC,分别在可用区A和可用区B创建一个交换机,且交换机已配置公网SNAT(用于AI服务器组调用公网大模型)。
-
用户已开通阿里云百炼和DeepSeek,并获取了API Key。
-
用户已准备好与自定义域名匹配的服务器证书。非阿里云购买的证书需要上传到阿里云证书服务。
操作步骤
1.创建扩展版ALB实例
-
登录ALB控制台,选择华北6(乌兰察布)地域,单击创建应用型负载均衡。
-
在购买页完成以下配置,单击立即创建。
-
地域:默认选择华北6(乌兰察布)。
-
实例网络类型:选择公网。
-
VPC和可用区:选择目标VPC,勾选乌兰察布 可用区A和乌兰察布 可用区B后选择对应交换机,并自动分配公网IP。
-
协议版本:选择IPv4。
-
功能版本(实例费):选择扩展版。
-
-
在确认订单页面确认实例配置详情,单击立即开通。
2.创建AI类型服务器组
创建两个AI服务类型的服务器组,分别对接阿里云百炼和DeepSeek。
创建阿里云百炼服务器组
-
在服务器组控制台,单击创建服务器组,服务器组类型选择AI服务,给其一个易于识别的名称,本文为
sgp-ai-qwen。 -
单击创建,在服务器组创建成功对话框单击添加后端服务器。
-
在添加AI服务对话框完成以下配置,单击确定。
-
大模型供应商:选择阿里云百炼。
-
服务地址:选择大模型供应商后自动填充。
-
API Key:填入阿里云百炼的API Key。
-
创建DeepSeek服务器组
-
重复上述步骤,创建第二个AI服务类型的服务器组,命名为
sgp-ai-deepseek。 -
添加后端服务器时,大模型供应商选择DeepSeek,并填入DeepSeek的API Key,单击确定。
3.创建监听
-
在ALB控制台,单击目标实例ID进入实例详情页。在监听页签单击创建监听。
-
在配置监听步骤,选择监听协议为HTTPS,监听端口填写
443,完成后单击下一步。 -
在配置SSL证书步骤,选择与自定义域名匹配的服务器证书,单击下一步。
-
在选择服务器组步骤,依次选择AI服务类型和阿里云百炼服务器组
sgp-ai-qwen,完成后单击下一步。此处选择的服务器组将用于监听的默认规则,即在请求未命中其他转发规则时处理请求,用户可根据实际需求进行调整。
-
在配置审核步骤,确认配置并单击提交。
4.配置转发规则
请求按优先级数字从小到大依次匹配转发规则,匹配到某条规则后执行其转发动作,不再匹配后续规则。创建转发条件为AI模型的转发规则,将请求体中模型名称满足匹配条件的请求路由至对应的后端AI服务。
配置阿里云百炼转发规则
-
在实例监听页签,单击目标监听ID。在监听详情页切换到转发规则页签。
-
单击插入新规则,完成以下配置后单击确定。
-
转发条件:选择AI模型。
-
模型名称:输入
qwen-turbo。 -
转发动作:转发至
sgp-ai-qwen服务器组。
-
配置DeepSeek转发规则
-
重复上述步骤,添加第二条转发规则。
-
模型名称输入
deepseek-chat,转发至sgp-ai-deepseek服务器组。
模型名称为可选参数。转发条件AI模型将匹配所有请求路径为/v1/completions、/v1/chat/completions或/v1/embeddings,且请求内容符合OpenAI兼容协议的请求。如填写模型名称,则需同时满足请求体中的model字段与指定模型名称匹配。
5.设置域名解析
将自有域名通过CNAME解析指向ALB实例的DNS名称,客户端通过自有域名访问ALB。
本文以阿里云云解析DNS为例,对于非阿里云注册域名,需先将域名添加到云解析控制台。
6.验证测试
-
使用curl命令验证请求是否正确路由至对应的大模型服务。请用实际配置的域名替换
ai.example.com,需确保域名解析已生效。 -
客户端发送的请求需符合OpenAI兼容协议,请求路径为
/v1/completions、/v1/chat/completions或/v1/embeddings,请求体中需包含model字段。转发规则根据model字段的值进行路由匹配。
测试阿里云百炼(qwen-turbo模型)
curl -v \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-turbo",
"messages": [
{
"role": "user",
"content": "你是谁"
}
]
}' \
https://ai.example.com/v1/chat/completions
请求成功时,返回如下响应。响应中的model字段为qwen-turbo,content字段包含千问的自我介绍,表明请求已正确路由至阿里云百炼。
{
"choices": [
{
"message": {
"role": "assistant",
"content": "我是千问,是阿里巴巴集团旗下的通义实验室自主研发的超大规模语言模型。我的中文名字是千问,英文名字是Qwen。我能够回答问题、创作文字、逻辑推理、编程等多种任务。你可以叫我Qwen或者千问。有什么我可以帮助你的吗?"
},
"finish_reason": "stop",
"index": 0
}
],
"object": "chat.completion",
"model": "qwen-turbo"
}
测试DeepSeek(deepseek-chat模型)
curl -v \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{
"role": "user",
"content": "你是谁"
}
]
}' \
https://ai.example.com/v1/chat/completions
请求成功时,返回如下响应。响应中的model字段为deepseek-chat,content字段包含DeepSeek的自我介绍,表明请求已正确路由至DeepSeek。
{
"object": "chat.completion",
"model": "deepseek-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!我是DeepSeek,由深度求索公司创造的AI助手!\n\n我是一个纯文本模型,虽然不支持多模态识别功能,但我有文件上传功能,可以帮你处理图像、txt、pdf、ppt、word、excel等文件,并从中读取文字信息进行分析处理。\n\n我的一些特点:\n- 完全免费使用,没有收费计划\n- 上下文长度达128K,可以处理很长的对话\n- 支持联网搜索(需要手动开启)\n- 可以通过官方应用商店下载App使用\n- 知识截止到2024年7月\n\n我很乐意帮助你解答问题、协助思考、处理文档或者进行各种对话交流!有什么我可以帮你的吗?✨"
},
"logprobs": null,
"finish_reason": "stop"
}
]
}
释放资源
完成测试后,如不再使用相关资源,可按以下步骤释放以避免产生费用。
更多信息
计费说明
ALB扩展版支持的地域
|
区域 |
地域 |
可用区 |
|
中国 |
华北6(乌兰察布) |
可用区A、可用区B、可用区C |
|
华东1(杭州) |
可用区J、可用区K |
|
|
华北2(北京) |
可用区I、可用区K、可用区L |
|
|
华东2(上海) |
可用区B、可用区F |
|
|
中国香港 |
可用区B、可用区C、可用区D |
|
|
亚太 |
新加坡 |
可用区A、可用区B、可用区C |
|
日本(东京) |
可用区B、可用区C、可用区E |
|
|
欧洲与美洲 |
德国(法兰克福) |
可用区A、可用区B |
|
美国(硅谷) |
可用区A、可用区B |
|
|
中东 |
阿联酋(迪拜) |
可用区A、可用区B |