GetKnowledgeObject - 获取知识对象

更新时间:
复制 MD 格式

读取文档或语义模型的当前内容及可用的下载地址。

接口说明

获取知识对象。租户和调用者身份由 POP 认证上下文确定。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

当前API暂无授权信息透出。

请求参数

名称

类型

必填

描述

示例值

KnowledgeBaseId

string

是

所属知识库

12345678-1234-4234-8234-123456789abc

KnowledgeObjectId

string

是

长期业务对象 ID

obj-001

VersionNo

integer

否

仅模型支持;指定读取版本。省略时优先已发布版本,否则最新版本

1

返回参数

名称

类型

描述

示例值

object

Schema of Response

RequestId

string

本次请求的唯一标识,可用于定位问题。

00000000-0000-4000-8000-000000000001

Success

boolean

请求是否成功

Data

object

成功时返回的业务数据。

KnowledgeBaseId

string

所属知识库

12345678-1234-4234-8234-123456789abc

KnowledgeObjectId

string

按类型定位:语义模型沿用语义层 modelId;文档使用本地文档表生成的稳定 ID;调用者不解析 ID,不使用检索 ID

obj-001

Type

string

当前 SEMANTIC_MODEL 或 DOCUMENT;未来可扩展

SEMANTIC_MODEL

Name

string

面向用户的名称,可编辑;重命名不改变 KnowledgeObjectId

销售主题模型

Description

string

简述,可编辑;传空字符串可清空

销售订单分析模型

FileName

string

上传文档的原始文件名,只读;重命名 Name 不改变该值;外部文档和语义模型不返回

policy.md

Content

object

当前有效的类型化知识内容;按 Type 返回文档或语义模型结构。

Document

object

仅 Type=DOCUMENT 时存在

Text

string

可公开的当前文档正文,可选;尚未完成解析、未授权或无法完整、安全地提供时省略,不把单个检索片段冒充整篇文档

更新后的完整正文

ContentFormat

string

Text 存在时必填,首期 MARKDOWN 或 TEXT

MARKDOWN

SemanticModel

object

仅 Type=SEMANTIC_MODEL 时存在

Datasets

array<object>

模型包含的逻辑数据集;没有可公开数据集时为空数组

array<object>

Name

string

模型内的数据集名称,在本模型内用于关系定位

orders

Description

string

数据集业务说明,可选

实付金额

EntityId

string

DataWorks 数据地图表实体 ID;有可靠关联时返回;既有同名数据集未传时保留,提交值按语义层保存规则处理

maxcompute-table:::project_name:schema_name:table_name

PrimaryKey

array

已明确声明的主键字段名,可选;每项必须存在于本数据集 Fields

string

已明确声明的主键字段名,可选;每项必须存在于本数据集 Fields

order_id

Fields

array<object>

数据集已定义且允许公开的字段;未提供字段定义时为空数组

object

Name

string

字段名称

customer_id

Description

string

字段业务说明,可选

实付金额

DataType

string

字段数据类型;公开的模型字段必须提供,不由服务端猜测

BIGINT

Metrics

array<object>

模型中可执行的指标;没有时为空数组,不混入只有候选公式的指标

array<object>

Name

string

指标名称

销售额

Description

string

指标口径说明,可选

销售订单分析模型

DatasetName

string

所属 SemanticDataset.Name,必须能在本模型 Datasets 中定位

orders

Unit

string

明确声明的指标单位,可选;没有可靠来源时不返回

CNY

Expression

object

可执行表达式,必须包含至少一个方言版本;不由模型补写

Dialects

array<object>

同一指标在不同 SQL 方言下的表达式,至少一项;同一方言不重复

object

Dialect

string

SQL 方言,例如 MaxCompute 或 ANSI_SQL

MaxCompute

Sql

string

该方言下的非空计算表达式,不是完整查询语句

SUM(pay_amount)

Relationships

array<object>

模型内已定义且可用字段配对表达的关联关系;没有时为空数组,不从图路径猜测

array<object>

Name

string

本模型内的关系名称

orders_to_customers

FromDataset

string

起点 SemanticDataset.Name

orders

ToDataset

string

终点 SemanticDataset.Name

customers

JoinKeys

array<object>

两端字段的等值关联配对,至少一项;复合关联按配对逐项列出

object

FromField

string

FromDataset.Fields 中的字段名

customer_id

ToField

string

ToDataset.Fields 中的字段名

id

SizeBytes

integer

上传原文件的字节数,只读;不是编辑后的正文长度

1024

SourceReferences

array<object>

来源引用数组,当前返回空数组。

object

Type

string

来源引用类别,结构保留 KNOWLEDGE_SOURCE;当前 SourceReferences 为空数组。

SEMANTIC_MODEL

SourceId

string

仅 KNOWLEDGE_SOURCE 时存在,本库登记的 KnowledgeSource.SourceId

src-001

CreateTime

integer

对象首次形成时间;无法可靠确定的存量对象不返回

1790200800000

ModifyTime

integer

对象修改时间,单位为毫秒。DOCUMENT 正文条件更新使用该值;该字段不表示语义模型已支持乐观锁更新。

1790200800000

Editable

boolean

当前调用者是否具备完整内容编辑权限;OWNER、ADMIN 为 true,VIEWER 为 false,写入仍重新鉴权

VersionNo

integer

SEMANTIC_MODEL 本次读取的版本;用于后续保存指定版本,不是乐观锁

1

DownloadUrl

string

DOCUMENT 上传原文件的临时下载地址;SEMANTIC_MODEL 为当前版本完整规范 YAML 的临时下载地址

https://example.invalid/current-model-yaml

ExpiresIn

integer

下载链接有效期,固定 300 秒

300

DownloadFiles

array<object>

多文件规范快照时返回完整分片,每项包含 FileName、DownloadUrl;单文件使用 DownloadUrl

object

FileName

string

规范 YAML 分片文件名;多个分片组成完整模型,不是对象身份

policy.md

DownloadUrl

string

本分片的 HTTPS 临时下载地址,有效期由外层 ExpiresIn 给出

https://example.invalid/current-model-yaml

Code

string

业务错误码;请求失败时用于判断错误类型。

InvalidParameter

Message

string

请求失败时的安全错误信息。

请求参数不合法。

示例

正常返回示例

JSON格式

{
  "RequestId": "00000000-0000-4000-8000-000000000001",
  "Success": true,
  "Data": {
    "KnowledgeBaseId": "12345678-1234-4234-8234-123456789abc",
    "KnowledgeObjectId": "obj-001",
    "Type": "SEMANTIC_MODEL",
    "Name": "销售主题模型",
    "Description": "销售订单分析模型",
    "FileName": "policy.md",
    "Content": {
      "Document": {
        "Text": "更新后的完整正文",
        "ContentFormat": "MARKDOWN"
      },
      "SemanticModel": {
        "Datasets": [
          {
            "Name": "orders",
            "Description": "实付金额",
            "EntityId": "maxcompute-table:::project_name:schema_name:table_name",
            "PrimaryKey": [
              "order_id"
            ],
            "Fields": [
              {
                "Name": "customer_id",
                "Description": "实付金额",
                "DataType": "BIGINT"
              }
            ]
          }
        ],
        "Metrics": [
          {
            "Name": "销售额",
            "Description": "销售订单分析模型",
            "DatasetName": "orders",
            "Unit": "CNY",
            "Expression": {
              "Dialects": [
                {
                  "Dialect": "MaxCompute",
                  "Sql": "SUM(pay_amount)"
                }
              ]
            }
          }
        ],
        "Relationships": [
          {
            "Name": "orders_to_customers",
            "FromDataset": "orders",
            "ToDataset": "customers",
            "JoinKeys": [
              {
                "FromField": "customer_id",
                "ToField": "id"
              }
            ]
          }
        ]
      }
    },
    "SizeBytes": 1024,
    "SourceReferences": [
      {
        "Type": "SEMANTIC_MODEL",
        "SourceId": "src-001"
      }
    ],
    "CreateTime": 1790200800000,
    "ModifyTime": 1790200800000,
    "Editable": true,
    "VersionNo": 1,
    "DownloadUrl": "https://example.invalid/current-model-yaml",
    "ExpiresIn": 300,
    "DownloadFiles": [
      {
        "FileName": "policy.md",
        "DownloadUrl": "https://example.invalid/current-model-yaml"
      }
    ]
  },
  "Code": "InvalidParameter",
  "Message": "请求参数不合法。"
}

错误码

HTTP status code

错误码

错误信息

描述

400 InvalidParameter The request parameters are invalid.
400 UploadIncomplete The upload or content is invalid.
400 InputTooLarge The upload or content is invalid.
403 Forbidden You are not authorized to perform this operation.
404 ResourceNotFound The requested resource does not exist or is not visible.
503 ServiceUnavailable The service is temporarily unavailable.
409 Conflict The resource state conflicts with this operation.

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情。