Autopilot メモリにより、Autopilotは会話全体でコンテキストを保持し、保存されたコンテキストを読み取り、作成、更新、または削除できるユーザーを制御できます。
デフォルトのメモリアクセス
New Relicは、次の標準ロールを通じてメモリへのデフォルトアクセスを提供します:
アカウントスコープのアクセス
アクション | 必要なロール |
|---|
メモリの読み取り | Read Only、Standard User、またはFull User(任意のユーザーティア) |
メモリの作成または変更 | 全製品アドミン |
メモリの削除 | 全製品アドミン |
組織スコープのアクセス
アクション | 必要なロール |
|---|
組織全体のメモリを読み取る | Organization Read Only、Organization Manager、またはOrg Product Admin |
組織全体のメモリを作成または変更する | 組織マネージャー |
組織全体のメモリを削除する | 組織マネージャー |
デフォルトの権限が組織のニーズを満たさない場合、カスタムロールが必要になる場合があります。
メモリ機能
メモリのカスタムロールを構築する際は、以下の権限を使用してください。
アカウントスコープの機能
機能 | 権限識別子 |
|---|
メモリの読み取り | context_management.read.memory
|
メモリを作成および更新する | context_management.modify.memory
|
メモリの削除 | context_management.delete.memory
|
組織スコープの機能
機能 | 権限識別子 |
|---|
組織全体のメモリを読み取る | context_management_org_scoped.read.memory
|
組織全体でメモリを作成および更新する | context_management_org_scoped.modify.memory
|
組織全体のメモリを削除する | context_management_org_scoped.delete.memory
|
前提条件
始める前に、次のものを用意してください。
NerdGraph API経由でカスタムロールを作成する
以下の各APIコールは、メモリのカスタムロールの作成と割り当ての一部を処理します。入力パラメーターとサンプルリクエストおよびレスポンスについては、それぞれを展開してください。
customerAdministrationクエリを使用して、機能のリスト、その権限ID、および関連情報を取得します。機能でフィルタリングして、メモリ権限を取得します。
入力
パラメータ | データ型 | 説明 |
|---|
eq
(必須) | 弦 | 値を Memory
(アカウントスコープ)または Memory For Organization
(組織スコープ)に設定して、一致する権限を取得します。 |
サンプルリクエスト — アカウントスコープ
permissions(filter: { feature: { eq: "Memory" } }) {
サンプル回答
"customerAdministration": {
"product": "New Relic AI"
"product": "New Relic AI"
"product": "New Relic AI"
feature: { eq: "Memory For Organization" }を使用して同じクエリを実行し、組織スコープの権限ID(Memory For OrganizationのREAD、MODIFY、DELETE)を取得します。
レスポンスから、付与したいアクセスレベルに合わせて、featureがMemoryまたはMemory For Organizationである権限IDをコピーします。カスタムロールを作成するには、これらのIDが必要です。
組織IDを取得します。これは後続のミューテーションで使用します。アカウントスコープのロールの場合は、アカウントIDも取得します。
サンプルリクエスト
サンプル回答
"id": "YOUR_ORGANIZATION_ID"
"name": "Your Account Name"
レスポンスから必要なIDをコピーします。これらを使用してカスタムロールを作成します。
customRoleCreateミューテーションを使用して、メモリ管理用のカスタムロールを作成します。
入力
パラメータ | データ型 | 説明 |
|---|
id
(必須) | 弦 | 前の呼び出しからの組織ID(組織スコープ)またはアカウントID(アカウントスコープ)。 |
type
(必須) | 弦 | 組織スコープのロールには organization
を、アカウントスコープのロールには account
を設定します。 |
name
(必須) | 弦 | カスタムロールの表示名。 |
permissionIds
(必須) | 整数の配列 | 上記で特定されたメモリの権限ID。 |
scope
(必須) | 弦 | type
に合わせて、 organization
または account
に設定します。 |
サンプルリクエスト — アカウントスコープのロール
container: { id: "YOUR_ACCOUNT_ID", type: "account" }
permissionIds: [xxxxx, xxxxx]
サンプルリクエスト — 組織スコープのロール
container: { id: "YOUR_ORGANIZATION_ID", type: "organization" }
name: "Memory manager (org-wide)"
permissionIds: [xxxxx, xxxxx]
サンプル回答
返されたロールIDを保存します — このロールをユーザーグループに割り当てるために必要になります。
カスタムロールを作成した後、それをユーザーグループに割り当てます。
グループIDを取得
利用可能なユーザー グループのリストを取得するには、 customerAdministrationクエリを使用します。
入力
サンプルリクエスト
groups(filter: { organizationId: { eq: "YOUR_ORGANIZATION_ID" } }) {
応答から、メモリロールを割り当てるグループのグループIDをコピーします。
グループにロールを割り当てる
authorizationManagementGrantAccessミューテーションを使用して、カスタム ロールをユーザー グループに割り当てます。
入力
パラメータ | データ型 | 説明 |
|---|
roleId
(必須) | 弦 | 前回の呼び出しからのカスタムロールID。 |
groupId
(必須) | 弦 | 上記で取得したグループID。 |
サンプルリクエスト — アカウントスコープのロール
authorizationManagementGrantAccess(
accountId: "YOUR_ACCOUNT_ID"
サンプルリクエスト — 組織スコープのロール
authorizationManagementGrantAccess(
grantAccessOptions: { organizationAccessGrants: { roleId: "YOUR_ROLE_ID" } }
サンプル回答
"authorizationManagementGrantAccess": {
"displayName": "Memory manager",
"name": "memory_manager",
"organizationId": "YOUR_ORGANIZATION_ID",
Autopilotメモリの詳細については、Autopilotメモリを参照してください。