---
schema_version: "1"
id: a6a14b516548df4fd058f2c17afbeed288ee044306feebb1802154fefc7d6b22
title: トピックとエージェントアクションの API プロジェクトを有効化
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/anypoint-code-builder/ai-enabling-api-project-topic-center.md
canonical_url: https://docs.mulesoft.com/jp/anypoint-code-builder/ai-enabling-api-project-topic-center
source_site: docs.mulesoft.com
content_type: documentation
content_hash: f79a77caf77b1cd130fe23f35a1bcebf6ee3b088f989ab2b2f604e69d732af67
description: MuleSoft Documentation Site
latest: true
---
# トピックとエージェントアクションの API プロジェクトを有効化

MuleSoft for Agentforce: Topic Center (Topic Center とも呼ばれる) を使用してトピックとエージェントの API 仕様を有効にし、Salesforce の API カタログに同期できるようにします。その後、エージェントビルダーで Agentforce エージェントにトピックを割り当てることで、エージェントの機能を拡張できます。

Topic Center ビジュアルエディターを使用して、次の操作を実行できます。

- トピックとエージェントの API 仕様を有効にする。
- ガバナンスルールを適用して、API が Salesforce でエージェントアクションとトピックを生成する準備ができていることを検証する。
- メタデータを追加して、Salesforce API カタログを使用してトピックとアクション対応 API を Salesforce で利用できるようにする。

トピックは、Agentforce エージェントがタスクを完了するために使用するアクションと手順セットのバンドルです。アクションはエージェントが実行できるタスクであり、手順はエージェントがアクションの使用方法を理解するのに役立ちます。

Topic Center では、API 操作をエージェントアクションとトピックとして使用できます。エージェントは、レコードの更新、データの検索と要約、さまざまなシステムでの安全なアクションの実行など、一般的なタスクを独立して実行します。エージェントは任意のトピックセットで再利用可能で、複数のトピックを含めることができます。

## [](#始める前に)始める前に

- Anypoint Platform 組織と、エージェントエンタイトルメントのある信頼済み Salesforce 組織との間に​[テナントリレーション](#access-management::trusted-salesforce-org.adoc)​を確立します。
- 接続された Salesforce 組織に対して ​[API カタログが有効化](#access-management::enabling-api-catalog.adoc)​されていることを確認します。
- [必要な権限](https://docs.mulesoft.com/jp/anypoint-code-builder/start-configure-permissions)​があることを確認します。
    
    - ユーザーがアセットのダウンロードとパブリッシュをできるようにするための ​[Anypoint Exchange 権限](https://docs.mulesoft.com/jp/access-management/permissions-by-product#exchange)
        
        - **Viewer (閲覧者)**
        - **Creator (作成者)**
    - アプリケーションのデプロイなど、CloudHub および CloudHub 2.0 に関連するサービスを有効にするための ​[Runtime Manager 権限](https://docs.mulesoft.com/jp/access-management/permissions-by-product#runtime-manager)
        
        - **Read applications (アプリケーションの参照)**
        - **Create applications (アプリケーションの作成)**
        - **Delete applications (アプリケーションの削除)**
    - ユーザーが API の作成と表示をできるようにするための​ [「Design Center Developer (Design Center 開発者)」](https://docs.mulesoft.com/jp/access-management/permissions-by-product#design-center)​権限。
- **Anypoint Platform → API Governance**​ で、​[バージョン別の API の管理にオプトイン](https://docs.mulesoft.com/api-governance/get-started)​します。
- [Web またはデスクトップ IDE をセットアップしてアクセスします](https://docs.mulesoft.com/jp/anypoint-code-builder/start-acb)​。
- API 仕様の設計の基礎を理解します。
    
    詳細は、[チュートリアル](https://docs.mulesoft.com/jp/anypoint-code-builder/tutorials)を参照してください。
- [ビジネスグループ](https://docs.mulesoft.com/jp/access-management/business-groups)​に精通します。

## [](#create-api-spec-agent-topic)エージェントアクションとトピックの API 仕様プロジェクトを作成する

1. IDE のアクティビティバーで、​![](/mulesoft/current/ja-jp/anypoint-code-builder/_images/icon-ms-logo.png)​ (​**Anypoint Code Builder**​) アイコンをクリックします。
    
    ![アクティビティバー内で強調表示されている \[Anypoint Code Builder\] アイコン](_images/anypoint-code-builder-view.png)
2. **\[Quick Actions (クイックアクション)\]**​ から ​**\[Design an API (API を設計)\]**​ をクリックします。
    
    ![\[\*Quick Actions (クイックアクション)\]\* セクション内の強調表示された \*\[Design an API (API を設計)\]\* リンク](_images/design-api-1.png)
3. **\[Enable this API for Agent Topics and Actions (エージェントトピックとアクションに対してこの API を有効化)\]**​ を選択します。
4. **\[API Specification (API 仕様)\]**​ フォームに入力します。
    
    <table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 25%;">
<col style="width: 75%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">項目名</th>
<th class="tableblock halign-left valign-top">項目値</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Project Name (プロジェクト名)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>プロジェクトの一意の名前。</p>
</div>
<div class="paragraph">
<p>この名前は Exchange での API 仕様のタイトル、仕様ファイルの名前、プロジェクトのルートディレクトリの名前として使用されます。
たとえば、プロジェクト名が​<em>「Agent Example」</em>​ (エージェントの例) の場合、仕様ファイル名は ​<code>agent-example</code>​ になります。</p>
</div>
<div class="paragraph">
<p>既存のプロジェクト名を再利用するには、その名前をすでに使用しているプロジェクトを最初に削除する必要があります。<a href="https://docs.mulesoft.com/jp/anypoint-code-builder/des-delete-api-projects" class="xref page">API 仕様とフラグメントの削除</a>を参照してください。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Project Location (プロジェクトの場所)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>ホームディレクトリまたは作成する別のディレクトリ。</p>
</div>
<div class="paragraph">
<p><a href="https://docs.mulesoft.com/jp/anypoint-code-builder/start-add-folders" class="xref page">ホームディレクトリへのフォルダーの追加</a>を参照してください。</p>
</div>
<div class="paragraph">
<p>別のプロジェクトディレクトリ内にプロジェクトを作成しないでください。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>API Type (API 種別)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>[REST API]</strong>​ を選択します。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>API Specification Language (API 仕様言語)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>[OAS 3.0 (YAML)]</strong>​ または ​<strong>[OAS 3.0 (JSON)]</strong>​ を選択します。</p>
</div>
<div class="admonitionblock note">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
トピックとアクションでは OAS 3.0 のみがサポートされます。
</td>
</tr>
</tbody></table>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Business Group (ビジネスグループ)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>API が属するビジネスグループを選択します。API Governance および中央管理ルールセットの同期にはビジネスグループが必要です。API 仕様を Anypoint Code Builder から Exchange にパブリッシュすると、IDE でビジネスグループの名前が要求されます。</p>
</div></div></td>
</tr>
</tbody>
</table>
5. **\[Create Project (プロジェクトを作成)\]**​ をクリックします。
    
    確認を促されたら、フォルダー内のファイルの作成者を信頼します。
    
    \[Agent Topics (エージェントトピック)\] 設定パネルが開きます。
6. \[Agent Topics (エージェントトピック)\] 設定パネルで、エージェントトピックのメタデータと手順を設定し、​**\[Apply (適用)\]**​ をクリックします。
7. 引き続き API 仕様を設計します。
    
    要素を入力するときに、​[オートコンプリート](https://docs.mulesoft.com/jp/anypoint-code-builder/start-discover-ui#auto-complete)​ (または Ctrl+Space) を使用すると、コンテキスト内で使用可能なオプションが表示されます。

## [](#add-metadata)API プロジェクトにメタデータを追加する

1. **\[Explorer\]**​ で、API 仕様を右クリックし、​**\[Open API Project Properties (API プロジェクトプロパティを開く)\]**​ を選択します。
    
    **\[API Project Properties (API プロジェクトプロパティ)\]**​ タブが開き、次の項目が自動的に入力されます。
    
    - **Asset version (アセットバージョン)**
        
        API プロジェクトのアセットバージョンは、セマンティックバージョン設定モデルに従う必要があります。詳細は、​[「アセットバージョン」](https://docs.mulesoft.com/jp/exchange/asset-versions)​を参照してください。
    - **API Version (API バージョン)**
        
        API のメジャーバージョン。
    - **Business Group (ビジネスグループ)**
        
        この API が使用可能になる Anypoint Platform ビジネスグループを選択します。
    - **Asset ID (アセット ID)**
    - **Asset Name (アセット名)**
    - **Tags (タグ)**
    - **Categories (カテゴリ)**
        
        これらのプロパティは、API 仕様を Exchange にパブリッシュするときに使用されます。
        
        タグとカテゴリは、ユーザーが Anypoint Exchange を検索するときに検索結果を絞り込むのに役立ちます。
        
        エージェントアクションとトピックの API を有効にすると、​`sf-api-catalog`​ タグと ​`sf-api-topic`​ タグが自動的に適用されます。
        
        ![sf-api-catalog タグと sf-api-topic タグが適用された\[API Project Properties (API プロジェクトプロパティ)\] タブ](_images/ai-topic-center-api-project-properties.png)
        
        どの項目も編集できます。
2. API プロジェクトプロパティに変更を加えた場合は、​**\[Apply (適用)\]**​ をクリックします。

## [](#configure-topics)トピックを設定する

**\[Agent Topics (エージェントトピック)\]**​ 設定パネルでトピックを設定します。

1. **\[Agent Topics (エージェントトピック)\]**​ 設定パネルがまだ開いていない場合は、​**\[#\]**​ アイコンをクリックして開きます。
2. トピックの次の項目を設定します。
    
    <table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 22.2222%;">
<col style="width: 38.8888%;">
<col style="width: 38.889%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">項目名</th>
<th class="tableblock halign-left valign-top">説明</th>
<th class="tableblock halign-left valign-top">例</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Topic Label (トピックの表示ラベル)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>トピックの一意の名前を入力します。</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>営業エージェント</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Classification Description (分類の説明)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>1 ～ 3 個のプレーンテキスト文を入力します。エージェントはこの説明を使用して、会話でトピックをいつ使用するかを決定します。ユーザーがメッセージを入力すると、エージェントはユーザーのインテントを識別し、トピック名および分類の説明を比較して、最も一致するトピックを使用します。</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>分類の説明のいくつかの例を次に示します。</p>
</div>
<div class="paragraph">
<p>ビジネスポリシー、手順、または商品に関する質問に答えます。</p>
</div>
<div class="paragraph">
<p>ユーザーとやり取りしてコンテンツのドラフト作成や修正を行います。</p>
</div>
<div class="paragraph">
<p>ユーザーの注文状況、返品状況、返品に関する質問に答えます。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Scope (スコープ)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スコープは、特定のトピックに対してエージェントができることとできないことを正確に定義します。スコープは、トピックに含める必要があるジョブやスコープの範囲外でエージェントが応答しないように制限できるため、特定のトピックに対してエージェントのジョブを詳細に定義する場合に最も効果的です。</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スコープの説明のいくつかの例を次に示します。</p>
</div>
<div class="paragraph">
<p>あなたの役割は、商談を成立させるための商談成立戦略の設定に関連するタスクのみを処理することです。これには、商品関連の価格設定に関する質問への回答、会話に基づく顧客のセンチメントに関するユーザーへのブリーフィング、ユーザーが商談を成立させるために役立つ商談成立プランの提案、ビデオ通話や音声通話に基づくアドバイスの提供などが含まれます。</p>
</div>
<div class="paragraph">
<p>あなたの役割は、ユーザーの予約に関する質問に対して情報を提供すること、および予約確認メールを再送信して今後の予約や既存の予約の変更を処理することのみです。新規予約を行うことはできません。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><strong>Instructions (手順)</strong></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>プレーンテキストの手順は、エージェントがさまざまなユースケースでトピック内のアクションをどのように使用するか決定するのに役立ちます。各手順は 1 つのトピック固有のガイドラインであり、通常は「常に…」、「決して…」、「x の場合は y…」、「最初のステップとして、…」などで表されます。</p>
</div>
<div class="paragraph">
<p>手順は非確定的であるため、機密性が高いか、確定的なビジネスルールは含めないでください。</p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>手順のいくつかの例を次に示します。</p>
</div>
<div class="paragraph">
<p>[ナレッジを使用して質問に回答] 機能を使用してトラブルシューティング情報を取得する前に、常にモバイルデバイスの種別 (iOS または Android) を明確にします。</p>
</div>
<div class="paragraph">
<p>決してユーザーに ID を尋ねないでください。代わりに、レコードの名前を使用するか、レコードの名前を尋ねて、IdentifyRecordByName を使用して ID を取得し、他のアクションをコールします。</p>
</div>
<div class="paragraph">
<p>ユーザーから注文の状況や注文確認について質問があった場合は、注文番号またはメールアドレスを持っているかどうかを尋ねます。ユーザーがメールアドレスまたは注文番号を持っていない場合は、エージェントにエスカレーションするかケースを作成するかを尋ねます。</p>
</div></div></td>
</tr>
</tbody>
</table>

## [](#configure-actions)アクションを設定する

必要なメタデータを定義するスキーマを使用して、エージェントアクションを作成します。要素を入力するときに、​[オートコンプリート](https://docs.mulesoft.com/jp/anypoint-code-builder/start-discover-ui#auto-complete)​ (または Ctrl+Space) を使用すると、コンテキスト内で使用可能なオプションが表示されます。

エージェントトピックとアクションの API を有効にするには、エージェントとして使用する操作の少なくとも 1 つに ​`x-sfdc/agent/action/publishAsAgentAction`​ の アノテーションを追加し、値を ​`true`​ に設定する必要があります。

<table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">エクステンション</th>
<th class="tableblock halign-left valign-top">説明</th>
<th class="tableblock halign-left valign-top">デフォルト値</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">x-sfdc/agent/action/publishAsAgentAction</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須。操作をアクションとして有効にするには、この属性を ​<code>true</code>​ に設定します。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">x-sfdc/privacy/isPii</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">省略可能。この属性を ​<code>true</code>​ に設定すると、その操作で送信されたクエリの PII サービスが有効になります。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">x-sfdc/agent/action/isUserInput</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須。この属性を ​<code>true</code>​ に設定すると、ユーザーがさらに入力できる項目が表示されます。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">x-sfdc/agent/action/isDisplayable</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">必須。項目をユーザーに表示できるようにするには、この属性を ​<code>true</code>​ に設定します。</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
</tr>
</tbody>
</table>

`$ref`​ を使用して定義されたスキーマでのエージェントメタデータの追加はサポートされていません。メタデータはスキーマ内で定義する必要があります。次に例を示します。

```openai
... (Inside response, request body, etc..)
schema:
  $ref: '#/components/schemas/Pet'

...

components:
  schemas:
    Pet:
      x-sfdc:
        agent:
            action:
                isDisplayable: true
      required:
        - name
        - photoUrls
      properties:
        id:
          type: integer
          format: int64
          example: 10
        name:
          type: string
          example: doggie
        status:
          type: string
          description: pet status in the store
          enum:
            - available
            - pending
            - sold
```

## [](#governance-rulesets)トピックとエージェントのガバナンスルールセット

API が Salesforce でエージェントアクションとトピックを生成する準備ができていることを確認するために、​**\[SF API Topic and Action Enablement (SF API トピックとアクションの有効化)\]**​ 中央管理ルールセットがトピック対応 API プロジェクトに自動的に追加されます。

1. 必要に応じて、プロジェクトに必要な​[その他のルールセットを追加](https://docs.mulesoft.com/jp/anypoint-code-builder/des-govern-api#add-rulesets)​します。
2. [ガバナンスルールセットを検証](https://docs.mulesoft.com/jp/anypoint-code-builder/des-govern-api)​します。
    
    API プロジェクトから ​`sf-api-catalog`​ タグと ​`sf-api-topic`​ タグを削除すると、トピックとアクションのルールセットも自動的に削除されます。

## [](#publish-to-exchange)API 仕様を Exchange にパブリッシュする

API 仕様ルールセットを検証したら、​[API 仕様を Exchange にパブリッシュ](https://docs.mulesoft.com/jp/anypoint-code-builder/des-publish-api-spec-to-exchange)​します。

API を Exchange にパブリッシュし、API Manager でアクティブな API インスタンスを作成したら、API カタログで使用できるようになります。詳細は、 [「API Catalog (API カタログ)」](https://help.salesforce.com/s/articleView?id=platform.api_catalog.htm)​を参照してください。

## [](#disable-api-spec-for-topics)トピックの API 仕様を無効にする

1. **\[Explorer\]**​ で、API 仕様を右クリックし、​**\[Open API Project Properties (API プロジェクトプロパティを開く)\]**​ を選択します。
2. **\[Enable this API for Agent Topic and Actions (エージェントトピックとアクションに対してこの API を有効化)\]**​ を選択解除し、​**\[Apply (適用)\]**​ をクリックします。

`sf-api-catalog`​ タグと ​`sf-api-topic`​ タグおよび ​**\[SF API Topic and Action Enablement (SF API トピックとアクションの有効化)\]**​ ルールセットが API プロジェクトから削除されます。

## [](#関連情報)関連情報

- [エージェントとは](https://help.salesforce.com/s/articleView?id=sf.copilot_overview.htm&type=5)
- [エージェントの構成要素](https://help.salesforce.com/s/articleView?id=sf.copilot_building_blocks.htm&type=5)
- [エージェントのトピック](https://help.salesforce.com/s/articleView?id=sf.copilot_topics.htm&type=5)
- [API 仕様の作成およびインポート](https://docs.mulesoft.com/jp/anypoint-code-builder/des-create-api-specs)
- [Exchange への API プロジェクトのパブリッシュ](https://docs.mulesoft.com/jp/anypoint-code-builder/des-publish-api-spec-to-exchange)