发布算子 API 服务¶
将指定版本的算子发布为可调用的 API 服务。发布成功后保存服务名称;服务已启用后可以调用。
POST https://moi.matrixorigin.cn/newmoi/workflow/v2/workitems/catalog/$NODE_ID/api-service
调用前准备¶
先查看算子列表,确认要发布的算子及其版本。准备有目标工作区访问权限的个人访问令牌、目标工作区 ID、算子 ID 和版本。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:目标工作区 ID,通过X-Workspace-IDHeader 传递。$NODE_ID:要发布的算子 ID。$VERSION:要发布的算子版本。
路径参数¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
要发布的算子 ID。可从查看算子列表响应中取得。 |
请求体¶
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
要发布的算子版本。 |
|
string |
否 |
为服务指定计算资源 ID。 |
|
integer |
否 |
单次调用超时时间,单位为秒。不传或传 |
|
integer |
否 |
最大并发调用数,不能为负数。 |
|
integer |
否 |
每分钟最大调用数,不能为负数。 |
请求示例¶
curl -X POST "https://moi.matrixorigin.cn/newmoi/workflow/v2/workitems/catalog/$NODE_ID/api-service" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d "{
\"version\": \"$VERSION\",
\"timeout_seconds\": 30
}"
成功响应¶
响应返回服务标识、状态、调用地址和配置。发布成功后服务可以调用;将返回的服务名称原样用于调用服务。
{
"code": "OK",
"msg": "OK",
"data": {
"service": {
"api_service_id": "api_2e859efcedc1e0efea48b465b2197784",
"node_id": "moi:data.sql.process",
"version": "v1",
"service_name": "operator-api-37f61ebdaa18aa51",
"status": "ready",
"method": "POST",
"path": "/newmoi/workflow/v2/workitems/catalog/moi:data.sql.process/api-service/invoke",
"compute_resource_id": ""
}
}
}
响应字段如下。
字段 |
类型 |
说明 |
|---|---|---|
|
string |
成功时为 |
|
string |
成功时为 |
|
string |
服务 ID。 |
|
integer |
已发布的自定义算子 ID。 |
|
string |
已发布的算子 ID。 |
|
string |
已发布的算子版本。 |
|
string |
服务名称。 |
|
string |
服务状态。 |
|
string |
服务的结果返回模式。 |
|
string |
服务的认证模式。 |
|
string |
调用服务使用的 HTTP 方法。 |
|
string |
调用服务的相对路径。 |
|
string |
服务关联的工作流 ID;有值时返回。 |
|
string |
服务关联的工作流定义 ID;有值时返回。 |
|
string |
服务关联的工作流版本 ID;有值时返回。 |
|
string |
使用的计算资源 ID;仅在有值时返回。 |
|
integer |
单次调用超时时间,单位为秒;有值时返回。 |
|
integer |
最大并发调用数;有值时返回。 |
|
integer |
每分钟最大调用数;有值时返回。 |
|
string |
输入 schema 的序列化内容;有值时返回。 |
|
string |
输出 schema 的序列化内容;有值时返回。 |
|
object |
调用服务所需的信息;有值时返回。 |
|
object |
服务部署信息;有值时返回。 |
错误响应¶
{
"code": "ErrParamInvalid",
"msg": "请求参数无效",
"data": null
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
算子 ID、 |
检查路径参数和请求字段。 |
|
|
个人访问令牌缺失或无效。 |
检查个人访问令牌和工作区 ID。 |
|
|
当前访问凭据没有发布权限,或不能使用指定计算资源。 |
使用有权限的访问凭据,或联系管理员授权。 |
|
|
算子或版本不存在。 |
检查算子 ID 和版本。 |
|
|
服务配置与已有资源冲突。 |
先查看服务配置,再调整请求。 |
|
|
服务端无法发布服务。 |
记录请求时间和错误信息后重试。 |
|
|
服务依赖暂不可用。 |
稍后重试。 |
后续操作¶
完成后查看算子 API 服务配置确认当前状态。