导入语义条目

向没有语义条目的知识库批量导入语义条目。

POST https://moi.matrixorigin.cn/newmoi/semantic-models/{model_id}/import

调用前准备

查询知识库列表取得知识库 ID,并确认目标知识库没有语义条目。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。

下方示例使用:

  • $AI_STUDIO_API_KEY:实际个人访问令牌,通过 X-API-Key Header 传递。

  • $WORKSPACE_ID:目标工作区 ID,通过 X-Workspace-ID Header 传递。

  • $MODEL_ID:接收导入条目的知识库 ID。

路径参数

参数

类型

说明

model_id

integer

接收导入条目的知识库 ID。

请求体

字段路径中的 [] 表示数组中的每一项。例如,entries[].kind 表示 entries 数组中每一项的 kind 字段。

请求体为 entries 数组;每项包含 kindkey、可选的 tablesspec

字段

类型

是否必填

说明

entries

object(对象数组)

要导入的条目;不能为空。目标知识库不能已有语义条目。

entries[].kind

string

条目类型;它决定 entries[].spec 的结构。

entries[].key

string

知识库内的稳定引用键;同一请求中不能重复。

entries[].tables

array[string]

关联表名称。

entries[].spec

object

类型专属配置对象;字段和约束与创建语义条目相同。

请求示例

curl -X POST "https://moi.matrixorigin.cn/newmoi/semantic-models/$MODEL_ID/import" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "entries": [
      {
        "kind": "metric",
        "key": "total_rows",
        "spec": {
          "expr": "COUNT(*)"
        }
      }
    ]
  }'

成功响应

成功时返回 200imported 为本次写入数量;随后列出条目并运行校验,不只检查 HTTP 状态。

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "imported": 1,
    "model_id": 401
  }
}

响应字段如下。

字段

类型

说明

code

string

成功时为 OK

msg

string

成功时为 OK

data.imported

integer

本次导入并写入的条目数量。

data.model_id

integer

接收导入的知识库 ID。

错误响应

{
  "code": "ErrConflict",
  "msg": "duplicate semantic entry key",
  "data": null
}

常见 HTTP 错误

HTTP 状态码

错误代码

常见原因

建议操作

400

ErrParamInvalid

entries 为空、其中某项不符合类型契约,或目标知识库已有语义条目。

修正每个条目后重新提交整个批次;如目标已有条目,请改用没有语义条目的知识库。

401

ErrUnauthorized

API Key 无效或已失效。

检查 API Key。

403

ErrForbidden

调用者没有导入权限。

检查工作区和对象授权。

404

ErrNotFound

知识库不存在或不可见。

重新确认 model_id

409

ErrConflict

同一请求中存在重复 key,或服务拒绝冲突写入。

去重后重新提交。

500

ErrServer

服务未能导入条目。

保留脱敏后的响应信息后重试。

后续操作

查询语义条目校验语义条目,确认导入结果。

最后更新于