Permissions

方法:tuneModels.permissions.create

创建针对特定资源的权限。

端点

帖子 https://generativelanguage.googleapis.com/v1beta/{parent=tunedModels/*}/permissions

路径参数

parent string

必需。Permission 的父级资源。格式:tunedModels/{tunedModel} corpora/{corpus} 其格式为 tunedModels/{tunedmodel}

请求正文

请求正文包含一个 Permission 实例。

田野
granteeType enum (GranteeType)

可选。不可变。受让人的类型。

emailAddress string

可选。不可变。该权限所引用的群组用户的电子邮件地址。如果权限的授权对象类型为“所有人”,则不会设置此字段。

role enum (Role)

必需。此权限授予的角色。

示例请求

Python

model_info = genai.get_model("tunedModels/my-increment-model")
# ...

public_permission = model_info.permissions.create(
    role="READER",
    grantee_type="EVERYONE",
)

group_permission = model_info.permissions.create(
    role="READER",
    # Use "user" for an individual email address.
    grantee_type="group",
    email_address="genai-samples-test-group@googlegroups.com",
)

响应正文

如果成功,响应正文将包含一个新创建的 Permission 实例。

方法:tunedModels.permissions.get

获取有关特定权限的信息。

端点

获取 https://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*/permissions/*}

路径参数

name string

必需。权限的资源名称。

格式:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 其格式为 tunedModels/{tunedmodel}/permissions/{permission}

请求正文

请求正文必须为空。

示例请求

Python

model_info = genai.get_model("tunedModels/my-increment-model")

# ...

public = model_info.permissions.create(
    role="READER",
    grantee_type="EVERYONE",
)
print(public)
name = public.name
print(name)  # tunedModels/{tunedModel}/permissions/{permission}

from_name = genai.types.Permissions.get(name)
print(from_name)

响应正文

如果成功,则响应正文包含一个 Permission 实例。

方法:tunedModels.permissions.list

列出特定资源的权限。

端点

获取 https://generativelanguage.googleapis.com/v1beta/{parent=tunedModels/*}/permissions

路径参数

parent string

必需。权限的父级资源。格式:tunedModels/{tunedModel} corpora/{corpus} 其格式为 tunedModels/{tunedmodel}

查询参数

pageSize integer

可选。每页返回的 Permission 数量上限。服务返回的权限可能会较少。

如果未指定,则最多返回 10 项权限。即使您传递更大的 pageSize,此方法也会每页最多返回 1000 项权限。

pageToken string

可选。从之前的 permissions.list 调用接收的页面令牌。

将一个请求返回的 pageToken 作为参数提供给下一个请求,以检索下一页。

进行分页时,提供给 permissions.list 的所有其他参数必须与提供页面令牌的调用匹配。

请求正文

请求正文必须为空。

示例请求

Python

model_info = genai.get_model("tunedModels/my-increment-model")

# ...

for p in model_info.permissions.list():
    print(p)

响应正文

如果成功,则响应正文包含一个 ListPermissionsResponse 实例。

方法:tuneModels.permissions.patch

更新权限。

端点

补丁 https://generativelanguage.googleapis.com/v1beta/{permission.name=tunedModels/*/permissions/*}

PATCH https://generativelanguage.googleapis.com/v1beta/{permission.name=tunedModels/*/permissions/*}

路径参数

permission.name string

仅限输出。标识符。权限名称。系统会在创建时生成一个唯一的名称。示例:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 仅限输出。其格式为 tunedModels/{tunedmodel}/permissions/{permission}

查询参数

updateMask string (FieldMask format)

必需。要更新的字段列表。已接受的建议:- 角色(Permission.role 个字段)

这是完全限定字段名称的逗号分隔列表。示例:"user.displayName,photo"

请求正文

请求正文包含一个 Permission 实例。

田野
role enum (Role)

必需。此权限授予的角色。

示例请求

Python

        model_info = genai.get_model("tunedModels/my-increment-model")

        # ...

        test_group = model_info.permissions.create(
            role="writer",
            grantee_type="group",
            email_address="genai-samples-test-group@googlegroups.com",
        )

        test_group.update({"role": "READER"})

    def test_tuned_models_permission_delete(self):
        model_info = genai.get_model("tunedModels/my-increment-model")
        # ...

        public_permission = model_info.permissions.create(
            role="READER",
            grantee_type="EVERYONE",
        )

        public_permission.delete()


if __name__ == "__main__":
    absltest.main()

响应正文

如果成功,则响应正文包含一个 Permission 实例。

方法:tunedModels.permissions.delete

删除权限。

端点

删除 https://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*/permissions/*}

路径参数

name string

必需。权限的资源名称。格式:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 其格式为 tunedModels/{tunedmodel}/permissions/{permission}

请求正文

请求正文必须为空。

示例请求

Python

model_info = genai.get_model("tunedModels/my-increment-model")
# ...

public_permission = model_info.permissions.create(
    role="READER",
    grantee_type="EVERYONE",
)

public_permission.delete()

响应正文

如果成功,则响应正文为空。

方法:tuneModels.transfer ownership

转移已调参模型的所有权。这是更改已调参模型所有权的唯一方式。当前所有者将降级为“写入者”角色。

端点

POST https://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*}:transferOwnership

路径参数

name string

必需。要转移所有权的已调参模型的资源名称。

格式:tunedModels/my-model-id 采用 tunedModels/{tunedmodel} 格式。

请求正文

请求正文中包含结构如下的数据:

田野
emailAddress string

必需。接收调整后的模型的目标用户的电子邮件地址。

响应正文

如果成功,则响应正文为空。

REST 资源:tunedModels.permissions

资源:权限

权限资源可向用户、群组或其他用户授予对 PaLM API 资源(例如经过调整的模型、语料库)的访问权限。

角色是一组允许的操作,可让用户对 PaLM API 资源执行特定操作。如需将其提供给用户、群组或服务账号,您可以分配角色。分配角色就是授予该角色包含的权限。

其中包含三个同心角色。每个角色都包含上一个角色允许的操作的超集:

  • 读取器可以使用资源(例如调优后的模型、语料库)进行推理
  • 写入者拥有读者的权限,并且还可以修改和分享
  • 所有者拥有写入者的权限,并且还可以删除
字段
name string

仅限输出。标识符。权限名称。系统会在创建时生成一个唯一的名称。示例:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 仅限输出。

granteeType enum (GranteeType)

可选。不可变。受赠人的类型。

emailAddress string

可选。不可变。该权限所引用的群组用户的电子邮件地址。如果权限的授权对象类型为“所有人”,则不会设置此字段。

role enum (Role)

必需。此权限授予的角色。

JSON 表示法
{
  "name": string,
  "granteeType": enum (GranteeType),
  "emailAddress": string,
  "role": enum (Role)
}

ListPermissionsResponse

来自 ListPermissions 的响应,其中包含分页的权限列表。

田野
permissions[] object (Permission)

返回的权限。

nextPageToken string

一个令牌,可作为 pageToken 发送以检索下一页。

如果省略此字段,则没有更多页面。

JSON 表示法
{
  "permissions": [
    {
      object (Permission)
    }
  ],
  "nextPageToken": string
}