获取预置服务列表
更新时间:2024-11-08
功能介绍
用于根据服务ID,获取预置服务列表。
使用说明
本文API支持通过Python SDK、Go SDK、Java SDK 和 Node.js SDK调用,调用流程请参考SDK安装及使用流程。
权限说明
调用本文API,需符合以下权限要求,权限介绍及分配,请查看角色与权限控制列表、账号创建与权限分配。需具有以下任一权限:
- 管理员权限:QianfanFullControlAccessPolicy
- 模型服务运维权限:QianfanServiceOperateAccessPolicy
- 模型服务只读权限:QianfanServiceReadAccessPolicy
SDK调用
调用示例
import os
from qianfan import resources
# 使用安全认证AK/SK鉴权,通过环境变量方式初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.environ["QIANFAN_ACCESS_KEY"] = "your_iam_ak"
os.environ["QIANFAN_SECRET_KEY"] = "your_iam_sk"
resp = resources.Service.V2.describe_preset_services(
service_ids=['svcp-7d6044e91474', 'svcp-7940ab471306']
)
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,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
"/v2/service",
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
"DescribePresetServices",
// 对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
map[string]any{
"serviceIds": []string{"svcp-7940ab471306"},
})
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,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
.route("/v2/service")
// 调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
.action("DescribePresetServices")
// 需要传入参数的场景,可以自行封装请求类,或者使用Map.of()来构建请求Body
// Java 8可以使用SDK提供的CollUtils.mapOf()来替代Map.of()
// 对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
.body(CollUtils.mapOf(
))
.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,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求地址的后缀
//action:调用本文API,该参数值为固定值,无需修改;对应本文HTTP调用-请求说明-请求参数-Query参数的Action
//data:对应本文HTTP调用-请求说明-请求参数-Body参数,具体使用请查看Body参数说明,根据实际使用选择参数
const res = await consoleAction({
base_api_route: '/v2/service', action: 'DescribePresetServices', data: {
"serviceIds": [ "svcp-7940ab471306"]
}
});
console.log(res);
}
main();
返回示例
{
'requestId': '5cd0833d-1012-471d-80a2-98a21228ba6c',
'result': {
'serviceList': [{
'serviceId': 'svcp-7940ab471306',
'name': 'ERNIE-4.0-8K',
'url': 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions_pro',
'serviceType': 'chat',
'isPublic': True,
'modelSetId': 'am-vhbjz6njftn9',
'modelId': 'amv-tg07pj97a068',
'chargeType': 'TPM',
'chargeStatus': 'Opened'
},
{
'serviceId': 'svcp-7d6044e91474',
'name': 'ERNIE-4.0-8K-Preview',
'url': 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie-4.0-8k-preview',
'serviceType': 'chat',
'isPublic': True,
'modelSetId': 'am-vhbjz6njftn9',
'modelId': 'amv-gmsa51d2423i',
'chargeType': 'Calls',
'chargeStatus': 'Opened',
"enableLogs": True,
"logStoreConfig": {
"logRegion": "bj",
"logProject": "default",
"logStoreName": "test02"
}
}
]
}
}
{
"requestId":"1bef3f87-c5b2-4419-936b-50f9884f10d4",
"result":{
"serviceList":[
{
"serviceId": "svcp-7940ab471306",
"name": "ERNIE-4.0-8K",
"url": "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions",
"serviceType": "chat",
"isPublic": true,
"modelSetId":"am-xxx",
"modelId":"amv-xxx",
"chargeType": "TPM",
"chargeStatus": "Opened",
"enableLogs": true,
"logStoreConfig": {
"logRegion": "bj",
"logProject": "default",
"logStoreName": "test02"
}
}
]
}
}
{
"requestId":"1bef3f87-c5b2-4419-936b-50f9884f10d4",
"result":{
"serviceList":[
{
"serviceId": "svcp-dywitgcxaq6j",
"name": "ERNIE-4.0-8K",
"url": "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions",
"serviceType": "chat",
"isPublic": true,
"modelSetId":"am-xxx",
"modelId":"amv-xxx",
"chargeType": "TPM",
"chargeStatus": "Opened",
"enableLogs": true,
"logStoreConfig": {
"logRegion": "bj",
"logProject": "default",
"logStoreName": "test02"
}
}
]
}
}
{
requestId:'1bef3f87-c5b2-4419-936b-50f9884f10d4',
result:{
serviceList:[
{
serviceId: 'svcp-7940ab471306',
name: 'ERNIE-4.0-8K',
url: 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions'
serviceType: 'chat',
isPublic: true,
modelSetId:'am-xxx',
modelId:'amv-xxx',
chargeType: 'TPM',
chargeStatus: 'Opened',
enableLogs: true,
logStoreConfig: {
logRegion: 'bj',
logProject: 'default',
logStoreName: 'test02'
}
}
]
}
}
请求参数
注意:不同语言SDK的请求参数不同,请根据实际调用选择对应参数。
- Python SDK请求参数说明
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
service_ids | list<string> | 否 | 服务ID,说明: (1)如果填写,表示按照服务ID筛选 (2)如果不填,表示获取全部预置服务列表 (3)该字段可以通过查看预置服务列表获取:打开模型服务-模型推理-预置服务查看,如下图所示 |
serviceType | List<string> | 否 | 服务类型,说明: (1)填写此参数,表示按服务类型进行筛选 (2)可选值如下: · chat · completions · text2image · image2text |
chargeType | List<string> | 否 | 付费方式,说明: (1)填写此参数,表示按付费方式进行筛选 (2)可选值如下: · TPM:TPM付费 · Tokens: Tokens量包 · Calls:按量后付费 · Free:免费调用 |
chargeStatus | List<string> | 否 | 付费状态,说明: (1)填写此参数,表示按付费状态进行筛选 (2)可选值如下: · NotOpen:未开通 · Opened:已开通 · Stopped:欠费停止 · Free:免费调用 |
- 其它SDK请求参数说明
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
serviceIds | List<string> | 否 | 服务ID,说明: (1)如果填写,表示按照服务ID筛选 (2)如果不填,表示获取全部预置服务列表(3)该字段可以通过查看预置服务列表获取:打开模型服务-模型推理-预置服务查看,如下图所示 |
serviceType | List<string> | 否 | 服务类型,说明: (1)填写此参数,表示按服务类型进行筛选 (2)可选值如下: · chat · completions · text2image · image2text |
chargeType | List<string> | 否 | 付费方式,说明: (1)填写此参数,表示按付费方式进行筛选 (2)可选值如下: · TPM:TPM付费 · Tokens: Tokens量包 · Calls:按量后付费 · Free:免费调用 |
chargeStatus | List<string> | 否 | 付费状态,说明: (1)填写此参数,表示按付费状态进行筛选 (2)可选值如下: · NotOpen:未开通 · Opened:已开通 · Stopped:欠费停止 · Free:免费调用 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
requestId | string | 请求ID |
result | object | 请求结果 |
result说明
名称 | 类型 | 描述 |
---|---|---|
serviceList | List<serviceItem> | 服务列表 |
serviceItem说明
名称 | 类型 | 描述 |
---|---|---|
serviceId | string | 服务ID |
name | string | 服务名称 |
url | string | 服务URL |
serviceType | string | 服务类型,说明: · chat · completions · text2image · image2text |
isPublic | bool | 是否是公共服务 |
modelSetId | string | 预置模型ID,为空表示无相关预置模型 |
modelId | string | 预置模型版本ID,为空表示无相关预置模型 |
chargeType | string | 付费方式,说明: · TPM: TPM付费 · Tokens: Tokens量包 · Calls: 按量后付费 · Free: 免费调用 |
chargeStatus | string | 付费状态,说明: · NotOpen: 未开通 · Opened: 已开通 · Free: 免费调用 |
enableLogs | bool | 是否绑定日志投递 |
logStoreConfig | object | 日志投递信息。 |
logStoreConfig说明
名称 | 类型 | 描述 |
---|---|---|
logRegion | string | 日志集所在地域。当enableLogs为True时,显示logRegion |
logProject | string | 日志组名称。当enableLogs为True时,显示logProject |
logStoreName | string | 日志集名称。当enableLogs为True时,显示logStoreName |