发布模型

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

语法

从目录发布模型
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

字符串

n/a

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

表 2. 结果
名称 类型 描述

modelName

字符串

模型的名称。

modelType

字符串

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

modelInfo

地图

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

creationTime

日期时间

创建模型的时间。

trainConfig

地图

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

graphSchema

地图

训练模型的图的模式。

loaded

布尔值

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

stored

布尔值

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

published

布尔值

如果模型已发布,则为真。

示例

在本节中,我们将说明如何发布模型。此操作的先决条件是模型已在模型目录中训练和注册。我们将假设这里有两个名为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

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