发布模型

此功能在 Aura Graph Analytics 中不可用。

默认情况下,已训练的模型仅对创建它的用户可见。通过发布模型,可以使其对其他用户可见。

语法

从目录中发布模型
CALL gds.model.publish(modelName: String)
YIELD
    modelName: String,
    modelType: String,
    modelInfo: Map,
    creationTime: DateTime,
    trainConfig: Map,
    graphSchema: Map,
    loaded: Boolean,
    stored: Boolean,
    published: Boolean
表 1. 参数
名称 类型 默认 可选 描述

modelName

字符串

不适用

存储在目录中的模型名称。

表 2. 结果
名称 类型 描述

modelName

字符串

模型名称。

modelType

字符串

模型类型。指示用于训练该模型的训练算法。

modelInfo

Map

关于已训练模型的详细类型特定信息。

creationTime

Datetime

模型创建的时间。

trainConfig

Map

用于训练模型的训练配置。

graphSchema

Map

模型训练所基于的图模式 (Schema)。

loaded

布尔值

如果模型已加载到内存模型目录中,则为 True。

stored

布尔值

如果模型已存储在磁盘上,则为 True。

published

布尔值

如果模型已被发布,则为 True。

示例

在本节中,我们将演示如何发布模型。此操作的前提条件是模型已经过训练并已注册到模型目录中。我们在此假设名为 my-model1my-model2 的两个模型已经过训练并存在于模型目录中。我们可以通过列出目录中的所有模型来检查初始状态:

列出所有模型的信息
CALL gds.model.list()
YIELD modelName, modelType, modelInfo, loaded, stored, published
表 3. 结果
modelName modelType modelInfo loaded stored published

"my-model1"

"example-model-type"

{exampleModelInfo="exampleValue"}

true

false

false

"my-model2"

"example-model-type"

{number=42}

true

false

false

发布模型

我们要做的就是运行该过程并指定我们要发布的模型名称。

发布已训练的模型
CALL gds.model.publish('my-model1')
YIELD modelName, modelType, modelInfo, loaded, stored, published
表 4. 结果
modelName modelType modelInfo loaded stored published

"my-model1_public"

"example-model-type"

{exampleModelInfo="exampleValue"}

true

false

true

我们可以看到模型名称增加了 _public 后缀。现在,当我们列出目录中的模型时,可以看到已发布的模型已经发生了变化。

列出所有模型,包括已发布的模型
CALL gds.model.list()
YIELD modelName, modelType, modelInfo, loaded, stored, published
RETURN modelName, modelType, modelInfo, loaded, stored, published
  ORDER BY modelName
表 5. 结果
modelName modelType modelInfo loaded stored published

"my-model1_public"

"example-model-type"

{exampleModelInfo="exampleValue"}

true

false

true

"my-model2"

"example-model-type"

{number=42}

true

false

false

现在,所有用户都可以访问已发布的模型。