Corpus Permissions

方法:corpora.permissions.create

建立特定資源的權限。

端點

則貼文 https://generativelanguage.googleapis.com/v1beta/{parent=corpora/*}/permissions

路徑參數

parent string

必要欄位。Permission 的父項資源。格式:tunedModels/{tunedModel} corpora/{corpus} 格式為 corpora/{corpora}

要求主體

要求主體包含 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 例項。

方法:corpora.permissions.list

列出特定資源的權限。

端點

get https://generativelanguage.googleapis.com/v1beta/{parent=corpora/*}/permissions

路徑參數

parent string

必要欄位。權限的父項資源。格式:tunedModels/{tunedModel} corpora/{corpus} 格式為 corpora/{corpora}

查詢參數

pageSize integer

選用設定。要傳回的 Permission 數量上限 (每頁)。服務可能會傳回較少的權限。

如未指定,最多將傳回 10 項權限。這種方法最多會傳回每頁最多 1000 項權限,即便您傳遞的 pageSize 較大也一樣。

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 的執行例項。

方法:corpora.permissions.get

取得特定權限的相關資訊。

端點

get https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/permissions/*}

路徑參數

name string

必要欄位。權限的資源名稱。

格式:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 採用 corpora/{corpora}/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 的執行例項。

方法:corpora.permissions.patch

更新權限。

端點

修補程式 https://generativelanguage.googleapis.com/v1beta/{permission.name=corpora/*/permissions/*}

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

路徑參數

permission.name string

僅供輸出。ID。權限名稱。建立時會產生不重複的名稱。例如:TuneModels/{tunedModel}/permissions/{permission} 語料庫/{corpus}/permissions/{permission},僅限輸出。其格式為 corpora/{corpora}/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 的執行例項。

方法:corpora.permissions.delete

刪除權限。

端點

delete https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/permissions/*}

路徑參數

name string

必要欄位。權限的資源名稱。格式:tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} 格式為 corpora/{corpora}/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()

回應主體

如果成功,回應主體會留白。

REST 資源:corpora.permissions

資源:權限

權限資源可授予使用者、群組或其他使用者存取 PaLM API 資源 (例如經過調整的模型、字庫)。

角色是一系列允許使用者對 PaLM API 資源執行特定動作的許可作業。如要讓使用者、群組或服務帳戶使用這些服務,請指派角色。指派角色時,即代表您授予該角色具備的權限。

共有三種角色每個角色都是前一個角色允許作業的超集:

  • 讀取者可以使用資源 (例如調整過的模型、語料庫) 進行推論
  • 作者具備讀者的權限,且可編輯及分享
  • 擁有者具備編輯者權限,且可刪除
欄位
name string

僅供輸出。ID。權限名稱。建立時會產生不重複的名稱。範例: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)
}

GranteeType

定義此權限的授權對象類型。

列舉
GRANTEE_TYPE_UNSPECIFIED 預設值。此值未使用。
USER 代表使用者。設定後,您必須提供使用者的電子郵件地址。
GROUP 代表群組。設定後,您必須提供群組的電子郵件地址。
EVERYONE 代表所有使用者的存取權。您不需要提供額外資訊。

角色

定義這個權限授予的角色。

列舉
ROLE_UNSPECIFIED 預設值。這個值未使用。
OWNER 擁有者可以使用、更新、分享及刪除資源。
WRITER 寫入者可以使用、更新和共用資源。
READER 讀取者可以使用資源。

ListPermissionsResponse

來自 ListPermissions 的回應,其中包含分頁權限清單。

欄位
permissions[] object (Permission)

已發還權限。

nextPageToken string

可做為 pageToken 傳送的權杖,用於擷取後續網頁。

如果省略這個欄位,就沒有後續頁面。

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