获取定制服务列表
更新时间:2025-01-14
功能介绍
用于获取自定义服务列表。
使用说明
本文API支持通过Python SDK、Go SDK、Java SDK 和 Node.js SDK调用,调用流程请参考SDK安装及使用流程。
权限说明
调用本文API,需符合以下权限要求,权限介绍及分配,请查看角色与权限控制列表、账号创建与权限分配。需具有以下任一权限:
- 完全控制千帆大模型平台的权限:QianfanFullControlAccessPolicy
- 运维操作千帆大模型平台数据管理(除数据标注外)的权限:QianfanDataOperateAccessPolicy
SDK调用
调用示例
import os
from qianfan import resources
# 通过环境变量初始化认证信息
# 使用安全认证AK/SK调用,替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk,如何获取请查看https://cloud.baidu.com/doc/Reference/s/9jwvz2egb
os.environ["QIANFAN_ACCESS_KEY"] = "your_iam_ak"
os.environ["QIANFAN_SECRET_KEY"] = "your_iam_sk"
resp = resources.console.utils.call_action(
# 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求结构-请求地址的后缀
"/v2/service",
# 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求参数-Query参数的Action
"DescribeServices",
# 请查看本文请求参数说明,根据实际使用选择参数;对应API调用文档-请求参数-Body参数
{
"protocolVersion": 2
}
)
print(resp.body)
package main
import (
"context"
"fmt"
"os"
"github.com/baidubce/bce-qianfan-sdk/go/qianfan"
)
func main() {
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.Setenv("QIANFAN_ACCESS_KEY", "your_iam_ak")
os.Setenv("QIANFAN_SECRET_KEY", "your_iam_sk")
ca := qianfan.NewConsoleAction()
res, err := ca.Call(context.TODO(),
// 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求结构-请求地址的后缀
"/v2/service",
// 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求参数-Query参数的Action
"DescribeServices",
// 请查看本文请求参数说明,根据实际使用选择参数;对应API调用文档-请求参数-Body参数
map[string]interface{}{
"protocolVersion": 2,
})
if err != nil {
panic(err)
}
fmt.Println(string(res.Body))
}
import com.baidubce.qianfan.Qianfan;
import com.baidubce.qianfan.model.console.ConsoleResponse;
import com.baidubce.qianfan.util.CollUtils;
import com.baidubce.qianfan.util.Json;
import java.util.Map;
public class Dome {
public static void main(String args[]){
// 使用安全认证AK/SK鉴权,替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
Qianfan qianfan = new Qianfan("your_iam_ak", "your_iam_sk");
ConsoleResponse<Map<String, Object>> response = qianfan.console()
// 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求结构-请求地址的后缀
.route("/v2/service")
// 调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求参数-Query参数的Action
.action("DescribeServices")
// 需要传入参数的场景,可以自行封装请求类,或者使用Map.of()来构建请求Body
// Java 8可以使用SDK提供的CollUtils.mapOf()来替代Map.of()
// 请查看本文请求参数说明,根据实际使用选择参数;对应API调用文档-请求参数-Body参数
.body(CollUtils.mapOf(
"protocolVersion",2
))
.execute();
System.out.println(Json.serialize(response));
}
}
import {consoleAction, setEnvVariable} from "@baiducloud/qianfan";
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
setEnvVariable('QIANFAN_ACCESS_KEY','your_iam_ak');
setEnvVariable('QIANFAN_SECRET_KEY','your_iam_sk');
async function main() {
//base_api_route:调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求结构-请求地址的后缀
//action:调用本文API,该参数值为固定值,无需修改;对应API调用文档-请求参数-Query参数的Action
//data:请查看本文请求参数说明,根据实际使用选择参数;对应API调用文档-请求参数-Body参数
const res = await consoleAction({base_api_route: '/v2/service', action: 'DescribeServices', data: {
"protocolVersion": 2
}
});
console.log(res);
}
main();
返回示例
{
"requestId": "f3ce6afd-d60a-4232-85e0-74799ff131c0",
"result": {
"pageInfo": {
"marker": "",
"maxKeys": 100,
"isTruncated": False
},
"serviceList": [
{
"serviceId": "svco-mtigr**40c",
"baseModel": "BLOOMZ-7B",
"modelSetId": "am-8qh**vex",
"modelId": "amv-bafq**dcr",
"name": "api_test_v2",
"description": "",
"url": "https://qianfan.baidubce.com/v2/chat/completions",
"serviceType": "chat",
"runStatus": "New",
"scaleStatus": "None",
"updateStatus": "None",
"chargeType": "",
"payType": "",
"chargeStatus": "NotOpen",
"resourceConfig": {
"region": "bj",
"type": "GPU-1-1",
"replicasCount": 0,
"qps": 1
},
"isModelUpdating": False,
"enableLogs": False,
"logStoreConfig": {},
"creator": "百里**",
"createTime": "2024-07-30T05:45:46Z",
"deploymentConfig": {
"type": "GPU-1-1",
"region": "bj",
"qps": 1,
"replicasComputeUnitCount": 0,
"replicasCount": 0
},
"protocolVersion": 2
},
...
]
}
}
{
"requestId": "f3ce6afd-d60a-4232-85e0-74799ff131c0",
"result": {
"pageInfo": {
"marker": "",
"maxKeys": 100,
"isTruncated": false
},
"serviceList": [
{
"serviceId": "svco-mtigr**40c",
"baseModel": "BLOOMZ-7B",
"modelSetId": "am-8qh**vex",
"modelId": "amv-bafq**dcr",
"name": "api_test_v2",
"description": "",
"url": "https://qianfan.baidubce.com/v2/chat/completions",
"serviceType": "chat",
"runStatus": "New",
"scaleStatus": "None",
"updateStatus": "None",
"chargeType": "",
"payType": "",
"chargeStatus": "NotOpen",
"resourceConfig": {
"region": "bj",
"type": "GPU-1-1",
"replicasCount": 0,
"qps": 1
},
"isModelUpdating": false,
"enableLogs": false,
"logStoreConfig": {},
"creator": "百里**",
"createTime": "2024-07-30T05:45:46Z",
"deploymentConfig": {
"type": "GPU-1-1",
"region": "bj",
"qps": 1,
"replicasComputeUnitCount": 0,
"replicasCount": 0
},
"protocolVersion": 2
},
...
]
}
}
{
"requestId": "f3ce6afd-d60a-4232-85e0-74799ff131c0",
"result": {
"pageInfo": {
"marker": "",
"maxKeys": 100,
"isTruncated": false
},
"serviceList": [
{
"serviceId": "svco-mtigr**40c",
"baseModel": "BLOOMZ-7B",
"modelSetId": "am-8qh**vex",
"modelId": "amv-bafq**dcr",
"name": "api_test_v2",
"description": "",
"url": "https://qianfan.baidubce.com/v2/chat/completions",
"serviceType": "chat",
"runStatus": "New",
"scaleStatus": "None",
"updateStatus": "None",
"chargeType": "",
"payType": "",
"chargeStatus": "NotOpen",
"resourceConfig": {
"region": "bj",
"type": "GPU-1-1",
"replicasCount": 0,
"qps": 1
},
"isModelUpdating": false,
"enableLogs": false,
"logStoreConfig": {},
"creator": "百里**",
"createTime": "2024-07-30T05:45:46Z",
"deploymentConfig": {
"type": "GPU-1-1",
"region": "bj",
"qps": 1,
"replicasComputeUnitCount": 0,
"replicasCount": 0
},
"protocolVersion": 2
},
...
]
}
}
{
requestId: 'f3ce6afd-d60a-4232-85e0-74799ff131c0',
result: {
pageInfo: {
marker: '',
maxKeys: 100,
isTruncated: false
},
serviceList: [
{
serviceId: 'svco-mtigr**40c',
baseModel: 'BLOOMZ-7B',
modelSetId: 'am-8qh**vex',
modelId: 'amv-bafq**dcr',
name: 'api_test_v2',
description: '',
url: 'https://qianfan.baidubce.com/v2/chat/completions',
serviceType: 'chat',
runStatus: 'New',
scaleStatus: 'None',
updateStatus: 'None',
chargeType: '',
payType: '',
chargeStatus: 'NotOpen',
resourceConfig: {
region: 'bj',
type: 'GPU-1-1',
replicasCount: 0,
qps: 1
},
isModelUpdating: false,
enableLogs: false,
logStoreConfig: {},
creator: '百里**',
createTime: '2024-07-30T05:45:46Z',
deploymentConfig: {
type: 'GPU-1-1',
region: 'bj',
qps: 1,
replicasComputeUnitCount: 0,
replicasCount: 0
},
protocolVersion: 2
},
...
]
}
}
请求参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
marker | string | 否 | 本次查询的起始位置,默认从第一条数据开始 |
maxKeys | int | 否 | 返回的列表长度,说明: (1)最大为100,如果指定的值大于100,按100操作 (2)默认值是10 |
pageReverse | bool | 否 | 是否倒序,默认为false |
name | string | 否 | 服务名称,说明:填写此参数,表示根据服务名称模糊匹配进行筛选 |
serviceType | List<string> | 否 | 服务类型,说明: (1)填写此参数,表示按服务类型进行筛选 (2)可选值如下: · chat · completions · text2image · image2text |
runStatus | List<string> | 否 | 服务状态,说明: (1)填写此参数,表示按进行筛选 (2)可选值: · New:待发布 · Deploying:发布中 · Serving:已发布 · Failed:发布失败 · Stopped:暂停服务 |
creator | List<string> | 否 | 创建人,说明:填写此参数,表示按创建人进行筛选 |
chargeType | string | 否 | 付费类型,说明: (1)填写此参数,表示按付费类型进行筛选 (2)可选值如下: · ComputingUnit:算力单元使用时长 · Tokens:Tokens调用量 |
payType | string | 否 | 付费方式,说明: (1)填写此参数,表示按付费方式进行筛选 (2)可选值: · Prepay:预付费 · Postpay:后付费 |
protocolVersion | int | 否 | 服务版本,可选值如下: · 1,默认1 · 2 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
requestId | string | 请求ID |
result | object | 请求结果 |
result说明
名称 | 类型 | 描述 |
---|---|---|
serviceList | List<serviceItem > | 服务列表 |
pageInfo | object | 分页信息 |
serviceItem说明
名称 | 类型 | 描述 |
---|---|---|
serviceId | string | 服务ID |
baseModel | string | 基础模型版本 |
modelSetId | string | 模型ID |
modelId | string | 模型版本ID |
name | string | 服务名称 |
description | string | 服务描述 |
url | string | 服务URL |
serviceType | string | 服务类型,说明: · chat · completions · embeddings · text2image · image2text |
runStatus | string | 服务运行状态,说明: · New: 待发布 · Deploying: 发布中 · Serving: 已发布 · Failed: 发布失败 · Stopped: 暂停服务 |
chargeType | string | 付费类型,说明: · ComputingUnit: 算力单元使用时长 · Tokens: Tokens调用量 |
payType | string | 付费方式,说明: · Prepay: 预付费 · Postpay: 后付费 · Prepay,Postpay: 预付费+后付费 |
chargeStatus | string | 付费状态,说明: · NotOpen · Opened · Stopped · Free |
resourceConfig | object | 资源配置 |
deploymentConfig | object | 部署配置 |
isModelUpdating | bool | 模型版本是否更新中 |
enableLogs | bool | 是否绑定日志投递 |
logStoreConfig | object | 日志投递信息 |
creator | string | 创建人 |
createTime | string | 创建时间 |
protocolVersion | int | 服务版本 |
pageInfo说明
名称 | 类型 | 描述 |
---|---|---|
marker | string | 本次查询的起始位置 |
maxKeys | int | 请求返回的最大数目 |
isTruncated | bool | 指明是否只返回了部分数据,说明: · false:表示本次已经返回所有结果 · true:表示本次还没有返回所有结果 |
nextMarker | string | 当isTruncated为true时,才返回此项,作为下次查询marker的值 |
resourceConfig说明
名称 | 类型 | 描述 |
---|---|---|
type | string | 资源类型,说明: · GPU-I-2:AI加速卡-I型-2算力单元 · GPU-I-4:AI加速卡-I型-4算力单元 · CPU-I-2:CPU-I型-2算力单元 |
qps | float | 单副本QPS |
replicasCount | int | 购买副本数量 |
region | string | 资源地域,说明: · bj:北京 · bd:保定 · gz:广州 · su:苏州 · nj:南京 |
deploymentConfig说明
名称 | 类型 | 描述 |
---|---|---|
type | string | 资源类型,具体值如下: · GPU-I-2:AI加速卡-I型-2算力单元 · GPU-I-4:AI加速卡-I型-4算力单元 · CPU-I-2:CPU-I型-2算力单元 |
region | string | 资源地域,具体值如下: · bj:北京 · bd:保定 · gz:广州 · su:苏州 · nj:南京 |
qps | float | 单副本QPS |
replicasComputeUnitCount | int | 单副本算力单元数 |
replicasCount | int | 部署副本总数 |
logStoreConfig说明
名称 | 类型 | 描述 |
---|---|---|
logRegion | string | 日志集所在地域。当enableLogs为True时,显示logRegion |
logProject | string | 日志组名称。当enableLogs为True时,显示logProject |
logStoreName | string | 日志集名称。当enableLogs为True时,显示logStoreName |