Skip to content

Commit 44a772b

Browse files
author
fengyikai
committed
星流平台(aicp):新建及查询支持多规格训练任务;内容分发网络(cdn):接口更新-支持V3版本、SetHttp2OptionConfig ValidateDomainOwner 支持V3版本;星曜裸金属服务器(epc):新增自定义脚本参数;
1 parent c86500e commit 44a772b

12 files changed

Lines changed: 1380 additions & 115 deletions

File tree

ksyun/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@
1414
# limitations under the License.
1515

1616

17-
__version__ = '1.5.8.32'
17+
__version__ = '1.5.8.33'

ksyun/client/aicp/v20240612/client.py

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -514,26 +514,3 @@ def DescribeResourcePoolInstances(self, request):
514514
raise KsyunSDKException(e.message, e.message)
515515

516516

517-
def DescribeModelChats(self, request):
518-
"""查询在线体验对话列表
519-
:param request: Request instance for DescribeModelChats.
520-
:type request: :class:`ksyun.client.aicp.v20240612.models.DescribeModelChatsRequest`
521-
"""
522-
try:
523-
params = request._serialize()
524-
body = self.call_judge("DescribeModelChats", params, "application/x-www-form-urlencoded")
525-
response = json.loads(body)
526-
if "Error" not in response:
527-
return body
528-
else:
529-
code = response["Error"]["Code"]
530-
message = response["Error"]["Message"]
531-
req_id = response["RequestId"]
532-
raise KsyunSDKException(code, message, req_id)
533-
except Exception as e:
534-
if isinstance(e, KsyunSDKException):
535-
raise
536-
else:
537-
raise KsyunSDKException(e.message, e.message)
538-
539-

ksyun/client/aicp/v20240612/models.py

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -958,39 +958,3 @@ def _deserialize(self, params):
958958
self.Filter = params.get("Filter")
959959

960960

961-
class DescribeModelChatsRequest(AbstractModel):
962-
"""DescribeModelChats请求参数结构体
963-
"""
964-
965-
def __init__(self):
966-
r"""查询在线体验对话列表
967-
:param ChatId:
968-
:type PathPrefix: String
969-
:param CreateTimeStart: 创建时间区间起始,毫秒时间戳
970-
:type PathPrefix: Int
971-
:param CreateTimeEnd: 创建时间区间截止,毫秒时间戳
972-
:type PathPrefix: Int
973-
:param Marker: 页码,从1开始。
974-
:type PathPrefix: Int
975-
:param MaxResults: 页长,默认100
976-
:type PathPrefix: Int
977-
"""
978-
self.ChatId = None
979-
self.CreateTimeStart = None
980-
self.CreateTimeEnd = None
981-
self.Marker = None
982-
self.MaxResults = None
983-
984-
def _deserialize(self, params):
985-
if params.get("ChatId"):
986-
self.ChatId = params.get("ChatId")
987-
if params.get("CreateTimeStart"):
988-
self.CreateTimeStart = params.get("CreateTimeStart")
989-
if params.get("CreateTimeEnd"):
990-
self.CreateTimeEnd = params.get("CreateTimeEnd")
991-
if params.get("Marker"):
992-
self.Marker = params.get("Marker")
993-
if params.get("MaxResults"):
994-
self.MaxResults = params.get("MaxResults")
995-
996-

ksyun/client/aicp/v20251212/__init__.py

Whitespace-only changes.
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import json
2+
3+
from ksyun.common.exception.ksyun_sdk_exception import KsyunSDKException
4+
from ksyun.common.abstract_client import AbstractClient
5+
6+
7+
class AicpClient(AbstractClient):
8+
_apiVersion = '2025-12-12'
9+
_endpoint = 'aicp.api.ksyun.com'
10+
_service = 'aicp'
11+
def CreateTrainJob(self, request):
12+
"""创建训练任务
13+
:param request: Request instance for CreateTrainJob.
14+
:type request: :class:`ksyun.client.aicp.v20251212.models.CreateTrainJobRequest`
15+
"""
16+
try:
17+
params = request._serialize()
18+
body = self.call_judge("CreateTrainJob", params, "application/json")
19+
response = json.loads(body)
20+
if "Error" not in response:
21+
return body
22+
else:
23+
code = response["Error"]["Code"]
24+
message = response["Error"]["Message"]
25+
req_id = response["RequestId"]
26+
raise KsyunSDKException(code, message, req_id)
27+
except Exception as e:
28+
if isinstance(e, KsyunSDKException):
29+
raise
30+
else:
31+
raise KsyunSDKException(e.message, e.message)
32+
33+
34+
def DescribeTrainJobs(self, request):
35+
"""查询训练任务
36+
:param request: Request instance for DescribeTrainJobs.
37+
:type request: :class:`ksyun.client.aicp.v20251212.models.DescribeTrainJobsRequest`
38+
"""
39+
try:
40+
params = request._serialize()
41+
body = self.call_judge("DescribeTrainJobs", params, "application/x-www-form-urlencoded")
42+
response = json.loads(body)
43+
if "Error" not in response:
44+
return body
45+
else:
46+
code = response["Error"]["Code"]
47+
message = response["Error"]["Message"]
48+
req_id = response["RequestId"]
49+
raise KsyunSDKException(code, message, req_id)
50+
except Exception as e:
51+
if isinstance(e, KsyunSDKException):
52+
raise
53+
else:
54+
raise KsyunSDKException(e.message, e.message)
55+
56+
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
from ksyun.common.abstract_model import AbstractModel
2+
3+
class CreateTrainJobRequest(AbstractModel):
4+
"""CreateTrainJob请求参数结构体
5+
"""
6+
7+
def __init__(self):
8+
r"""创建训练任务
9+
:param TrainJobName: 训练任务名称,名称规范:1-64个字符,允许字母 中文 数字 - _ . / ( )
10+
:type PathPrefix: String
11+
:param Description: 描述信息
12+
:type PathPrefix: String
13+
:param ResourcePoolId: 资源组ID
14+
:type PathPrefix: String
15+
:param Priority: 优先级
16+
:type PathPrefix: String
17+
:param QueueName: 队列名称
18+
:type PathPrefix: String
19+
:param Framework: 训练框架
20+
:type PathPrefix: String
21+
:param AccessType: 权限配置-可见范围
22+
:type PathPrefix: String
23+
:param SelfHealing: GPU故障自愈
24+
:type PathPrefix: Boolean
25+
:param MaxRuntimeHour: 最长运行时长(小时)
26+
:type PathPrefix: Int
27+
:param JobRunOnCPU: 节点亲和性-仅调度到CPU节点
28+
:type PathPrefix: Boolean
29+
:param SupportTensorboard: 开启Tensorboard
30+
:type PathPrefix: Boolean
31+
:param StorageConfigs: 存储配置信息
32+
:type PathPrefix: Array
33+
:param Roles: 角色资源配置信息
34+
:type PathPrefix: Array
35+
"""
36+
self.TrainJobName = None
37+
self.Description = None
38+
self.ResourcePoolId = None
39+
self.Priority = None
40+
self.QueueName = None
41+
self.Framework = None
42+
self.AccessType = None
43+
self.SelfHealing = None
44+
self.MaxRuntimeHour = None
45+
self.JobRunOnCPU = None
46+
self.SupportTensorboard = None
47+
self.StorageConfigs = None
48+
self.Roles = None
49+
50+
def _deserialize(self, params):
51+
if params.get("TrainJobName"):
52+
self.TrainJobName = params.get("TrainJobName")
53+
if params.get("Description"):
54+
self.Description = params.get("Description")
55+
if params.get("ResourcePoolId"):
56+
self.ResourcePoolId = params.get("ResourcePoolId")
57+
if params.get("Priority"):
58+
self.Priority = params.get("Priority")
59+
if params.get("QueueName"):
60+
self.QueueName = params.get("QueueName")
61+
if params.get("Framework"):
62+
self.Framework = params.get("Framework")
63+
if params.get("AccessType"):
64+
self.AccessType = params.get("AccessType")
65+
if params.get("SelfHealing"):
66+
self.SelfHealing = params.get("SelfHealing")
67+
if params.get("MaxRuntimeHour"):
68+
self.MaxRuntimeHour = params.get("MaxRuntimeHour")
69+
if params.get("JobRunOnCPU"):
70+
self.JobRunOnCPU = params.get("JobRunOnCPU")
71+
if params.get("SupportTensorboard"):
72+
self.SupportTensorboard = params.get("SupportTensorboard")
73+
if params.get("StorageConfigs"):
74+
self.StorageConfigs = params.get("StorageConfigs")
75+
if params.get("Roles"):
76+
self.Roles = params.get("Roles")
77+
78+
79+
class DescribeTrainJobsRequest(AbstractModel):
80+
"""DescribeTrainJobs请求参数结构体
81+
"""
82+
83+
def __init__(self):
84+
r"""查询训练任务
85+
:param TrainJobId: 多个训练任务的ID
86+
:type PathPrefix: Filter
87+
:param Filter: 筛选Filter
88+
:type PathPrefix: Filter
89+
:param PageSize: 单次调用可返回的最大条目数量
90+
:type PathPrefix: Int
91+
:param Page: 页码
92+
:type PathPrefix: Int
93+
:param TrainJobName: 训练任务名称(支持模糊搜索)
94+
:type PathPrefix: String
95+
"""
96+
self.TrainJobId = None
97+
self.Filter = None
98+
self.PageSize = None
99+
self.Page = None
100+
self.TrainJobName = None
101+
102+
def _deserialize(self, params):
103+
if params.get("TrainJobId"):
104+
self.TrainJobId = params.get("TrainJobId")
105+
if params.get("Filter"):
106+
self.Filter = params.get("Filter")
107+
if params.get("PageSize"):
108+
self.PageSize = params.get("PageSize")
109+
if params.get("Page"):
110+
self.Page = params.get("Page")
111+
if params.get("TrainJobName"):
112+
self.TrainJobName = params.get("TrainJobName")
113+
114+

ksyun/client/cdn/v20160901/client.py

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,6 @@ class CdnClient(AbstractClient):
88
_apiVersion = '2016-09-01'
99
_endpoint = 'cdn.api.ksyun.com'
1010
_service = 'cdn'
11-
def GetDomainLogs(self, request):
12-
"""获取日志下载URL
13-
:param request: Request instance for GetDomainLogs.
14-
:type request: :class:`ksyun.client.cdn.v20160901.models.GetDomainLogsRequest`
15-
"""
16-
try:
17-
params = request._serialize()
18-
body = self.call_judge("GetDomainLogs", params, "application/x-www-form-urlencoded")
19-
response = json.loads(body)
20-
if "Error" not in response:
21-
return body
22-
else:
23-
code = response["Error"]["Code"]
24-
message = response["Error"]["Message"]
25-
req_id = response["RequestId"]
26-
raise KsyunSDKException(code, message, req_id)
27-
except Exception as e:
28-
if isinstance(e, KsyunSDKException):
29-
raise
30-
else:
31-
raise KsyunSDKException(e.message, e.message)
32-
33-
3411
def GetRefreshOrPreloadTask(self, request):
3512
"""刷新预热进度查询接口
3613
:param request: Request instance for GetRefreshOrPreloadTask.

ksyun/client/cdn/v20160901/models.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,5 @@
11
from ksyun.common.abstract_model import AbstractModel
22

3-
class GetDomainLogsRequest(AbstractModel):
4-
"""GetDomainLogs请求参数结构体
5-
"""
6-
7-
def __init__(self):
8-
r"""获取日志下载URL
9-
"""
10-
11-
def _deserialize(self, params):
12-
return
13-
14-
153
class GetRefreshOrPreloadTaskRequest(AbstractModel):
164
"""GetRefreshOrPreloadTask请求参数结构体
175
"""

0 commit comments

Comments
 (0)