1. エージェントの理解

ワークフローエージェントを作成する

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Agentic Studioには、一般的なマーケティング業務を自動化する 既成エージェントが含まれています 。より専門的なニーズには、あなたのユースケースに合わせたカスタムエージェントを作成することができます。

workflow agentは、構造化され、繰り返し可能な多段階プロセス向けに設計されたカスタムエージェントの一種です。一貫した成果が得られるあらかじめ定義されたワークフローに最適です。

明確なステップの順序、承認、または構造化された出力を定義する必要がある場合はワークフローエージェントを活用してください。チャットスタイルやタスク駆動型のユースケースには 、標準エージェント を作成しましょう。

既存のエージェントにわずかな変更を加えるだけなら、新規エージェントを一から作成するのではなく、複製したり設定を調整したり、エクスポートしたJSONを再利用することを検討してください。

このウォークスルーでは、以下の方法を説明します:

始める前に

カスタムエージェントを作成する

まずAgentsページでエージェントを作成しましょう。

  1. ナビゲーションメニューでAgenticをクリックします。次に、左側のサイドバーでAgentsを選択します。

  2. AgentsページでCreateをクリックしてください。

  3. Create AgentダイアログでWorkflowを選択します。

ワークフローエディターは以下のタブで開きます: OverviewParametersSchemasHTML TemplatesWorkflow各タブ はエージェントの挙動、受け付ける入力、生成するものの異なる部分を制御します。

概要を定義してください

概要タブを使って、エージェントが何であるか、何をするのか、ユーザーが提供すべき入力を定義してください。これらの設定は実行体験を形作り、エージェントが利用できる情報を決定します。

  1. OverviewタブのBasic Informationセクションで、以下の情報を提供します。

    • Name - 明確で記述的な薬剤名。

    • Description - エージェントの業務の簡単な要約。

    A screenshot of the Overview tab.
  2. Getting Startedセクションで、エージェントランページに表示される内容を提供してください:

    • Title - 短い方位だ。

    • What is it for - エージェントの目的。

    • How it works - 入力の使い方やエージェントが生成するもの。

  3. Inputsセクションで、Add Inputをクリックして必要なユーザー入力を定義してください:

    • Type - 入力型、例えばPrompt

    • Label - ユーザーに表示されるフィールド名。

    • Description - どの用途を入力すべきかのガイダンス。

    • Placeholder text - フィールドに表示される例示コンテンツ。

    • Required - 入力が必須かどうか。

    • Min Lines - 入力ラインの最小数。

  4. 変更を保存するにはCreate Workflowをクリックしてください。

パラメータの設定

必要に応じて、パラメータタブ でカテゴリやオプションを定義し、エージェントのコンテンツ生成に影響を与えます。パラメータにより、言語、オーディエンス、地域などのオプションを選択でき、エージェントがそれらの選択に基づいて出力を適応させるのに役立ちます。

パラメータの設定:

  1. カテゴリを追加する

    ParametersタブでAddをクリックします。

    A screenshot of the Parameters tab.
  2. Basic Settingsセクションで次のように定義します。

    • Key - 一意識別子(小文字にアンダースコア付き)。

    • Label - カテゴリ表示名。

    • Description - このパラメータの目的を記述する。

    • Type - 入力型、例えばArray

    • Required - そのカテゴリがエージェントを実行するために必須かどうか。

  3. カテゴリオプションの定義

    新しいパラメータでオプションを定義するにはAdd Optionをクリックしてください。

    Exampletarget audienceパラメータを追加した後、SalesMarketingC-Suiteなどのオプションを作成できます。

  4. 各オプションを編集し、以下の内容を提供します。

    • Basic Settings

      • Label - カテゴリオプション用の表示名。

      • Value - 一意識別子(小文字でハイフン付き)。

    • Content Metadata & Guidelines

      • Context - オプションを使用するタイミングを記述すること。

      • Tone of voice - コミュニケーションスタイルの指導。

      • Best practices - 生成に関する推奨事項。

      • Dos and Don’ts - ルールや制限を追加する。

      • Schema - 選択したスキーマを使ってレスポンスをフォーマットします。利用可能なスキーマには 、Settingsで作成されたもの、スキーマ タブで定義されたもの、またはSitecoreAIサイトやコレクションのために定義されたCMSスキーマから来たものが含まれます。

      • HTML template - 出力を表示するためのHTMLテンプレートを選択する。利用可能なテンプレートには 、Settingsで作成されたものやHTMLテンプレートタブで定義されたものが含まれます。

  5. 必要に応じて繰り返し、追加のカテゴリーや選択肢が見つかります。

  6. 変更を保存するにはUpdate Workflowをクリックしてください。

スキーマを定義する

構造化出力を強制する必要がある場合は、「 スキーマ」タブ を使ってJSONスキーマを定義してください。スキーマはエージェントが一貫した構造化された出力を生成し、それを検証・再利用できるようにします。

スキーマを定義するために:

  1. SchemasタブでAddをクリックします。

  2. 右側のペインに以下の内容を入力してください:

    • Name - スキーマ名。

    • Description (任意) - スキーマが何に使われるか。

    A screenshot of the Schemas tab.
  3. 出力用のJSON構造を定義します。SimpleモードまたはAdvancedモードを使って、CodeまたはVisualエディタのいずれかで手動でスキーマを定義できます。

    構造は次のように定義できます:

    • 必須欄を指定し、常に重要な内容が含まれるようにします。

    • データ型の定義(例: stringarray、またはobject)。

    • エージェントがコンテンツを生成する際のガイドとなる説明を追加します。

    • 出力品質を制御するための検証ルールの設定。

  4. 変更を保存するにはUpdate Workflowをクリックしてください。

HTMLテンプレートを定義する

スキーマを定義すると、通常対応するテンプレートも定義します。 HTMLテンプレートタブ を使って、エージェントの出力がどのように表示されるかを定義してください。テンプレートはHandlebars構文を使って構造化されたデータをレイアウトにマッピングします。

HTMLテンプレートを定義するには:

  1. HTML TemplatesタブでAddをクリックします。

  2. 右側のペインに以下の内容を入力してください:

    • Name - テンプレート名。

    • Description (任意) - テンプレートが何に使われるか。

    A screenshot of the HTML templates tab.
  3. スキーマフィールドを使ってHTML構造を定義します。Handlebars構文を使って、スキーマからCodeエディタのテンプレートに値をマッピングします。

    テンプレートの定義は以下の通りです:

    • 例えば、レイアウトにスキーマフィールドを挿入する {{subject_line}}{{body}})

    • HTML <div><strong>、または <span>

    • 条件付き論理やループを適用し、必要に応じて {{#if}} {{#each}} も可能です。

  4. テンプレートをプレビューするには Visualクリック。

  5. 変更を保存するにはUpdate Workflowをクリックしてください。

エージェントのワークフローを構築してテストする

ワークフロータブWorkflow editorを使って、エージェントが実行するアクションの順序を設計してください。

ヒント

ワークフローを設計する際:

  • ステップごとに構築し、アクション間のデータの流れを明確に保ちましょう。

  • まずは入力を収集または準備するアクションから始め、各ステップをつなげて出力を次のステップに繋げます

  • 変数名やステップ名を明確にして、ワークフローを分かりやすくしましょう。

  • ビルドしながらテストし、各ステップが正しいデータを受け継ぎ、期待される結果を得られるか確認してください。

エージェントのワークフローを構築するには:

  1. Workflowタブでは、キャンバスの開始点としてManual Triggerアクションが含まれています。

    Add Stepをクリックすると新しいアクションを追加できます。

    Screenshot of the Workflow tab. Click Add step to build the agent actions in the workflow.
  2. 右側のペイン、Propertiesタブには利用可能なアクションのリストが表示されます。アクションを選択してキャンバスに追加します。

    ヒント

    アクションについて詳しく知りたい方は、その説明をクリックしてご覧ください。 ワークフローエディターで利用可能なアクションも確認できます。

  3. あるアクションの点から別の点へドラッグして、ワークフローステップに繋げます。アクションは接続方法に基づいて順番に実行されます。

  4. アクションを設定するには、キャンバス上でアクションを選択し、Propertiesペインで設定を調整してください。

    選択によっては、アクションの 入力・出力変数、システムプロンプト、メッセージテンプレート、リンクされたHTMLテンプレートやスキーマ、アーティファクト保存オプションの設定が必要になるかもしれません。

  5. 必要に応じてワークフローを構築していくために、このプロセスを繰り返しましょう。

  6. アクションやコネクタを削除するには、キャンバス上で選択し、バックスペースを押してください。

  7. キャンバスのRunをクリックしてワークフローをテストしてください。問題は右ペインのRunsタブに表示され、デバッグの助けになります。

  8. 完成したら、Update Workflowをクリックして変更を保存してください。

    エージェントはAgentsページに追加され、そこで実行や調整が可能です。

例:X単一ツイートジェネレーター

これはワークフローエージェントの例であり、その設定とJSONも含まれます。

エージェント構成

  • Agent name - X単一ツイートジェネレーター

  • Description - 営業チームやマーケティング専門家向けに簡潔でインパクトのあるTwitter/X投稿を1つ生成し、オプションでAPIエンドポイントに送信。

  • Inputs - コンテンツ要件(プロンプト、必須) - 生成したいツイートを説明してください

  • Parameters - この例では必須ではありません。

  • Schemas - テキストとハッシュタグを用いた構造化された出力を定義します。

  • HTML template - ツイート内容とハッシュタグをシンプルなフォーマットレイアウトで表示します。

  • Workflow - エージェントは以下の手順を実行します:

    • Twitterのスキーマとテンプレートを取得する

    • ユーザーの入力をもとにプロンプトを作成してください

    • スキーマを使って構造化されたツイートを1つ生成します

    • 生成されたツイートをドキュメントとして保存してください

    • ツイートの内容をHTTPエンドポイント(テスト用のモックAPIや、Twitter/X、Redditなどの実際のプラットフォームでAPI認証情報を使って)にSendします。

  • Agent JSON - 参照用のサンプルエージェントのJSONはこちらです。ワークフローエディターにインポートしてテストやさらに探索することもできます:

    {
      "schema_version": "2.0",
      "id": "twitter-content-generator",
      "name": "X Single Tweet Generator",
      "description": "Generates one concise, high-impact Twitter/X post tailored for sales teams and marketing professionals.",
      "gettingStarted": {
        "title": "What is this agent?",
        "howItWorks": "Describe the tweet you want to create. The agent will generate one impactful Twitter/X post based on your prompt.",
        "whatIsItFor": "This agent creates a single short-form Twitter/X post for sales and marketing use cases."
      },
      "inputs": [
        {
          "type": "prompt",
          "label": "Content Requirements",
          "minLines": 3,
          "required": true,
          "description": "Describe the Twitter/X content you want to generate",
          "placeholder": "Tell us what tweet you want to create..."
        },
        {
          "type": "context",
          "label": "Ground with context",
          "required": false,
          "description": "Optionally select artifacts or knowledge to provide additional context"
        },
        {
          "type": "file-upload",
          "label": "Add more context",
          "required": false,
          "description": "Please add any documents you wish to reference"
        }
      ],
      "contextParameters": [],
      "schemas": [
        {
          "id": "twitter",
          "name": "Twitter/X Single Post Schema",
          "schema": {
            "type": "object",
            "required": [
              "text",
              "hashtags"
            ],
            "properties": {
              "text": {
                "type": "string",
                "maxLength": 280,
                "description": "One standalone tweet only, maximum 280 characters"
              },
              "hashtags": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "maxItems": 2,
                "description": "1-2 relevant hashtags already reflected in or suitable for the tweet"
              }
            },
            "additionalProperties": false
          },
          "description": "Structured schema for generating a single Twitter/X post only"
        }
      ],
      "htmlTemplates": [
        {
          "id": "twitter-template",
          "name": "Twitter/X Template",
          "template": "<div class=\"twitter-post\">\n  <div class=\"tweet-text\">{{text}}</div>\n  {{#if hashtags}}<div class=\"hashtags\">{{#each hashtags}}<span class=\"hashtag\">#{{this}}</span> {{/each}}</div>{{/if}}\n</div>"
        }
      ],
      "actions": [
        {
          "id": "initialize_flow",
          "kind": "InitializeFlow",
          "displayName": "Initialize",
          "showToUser": false
        },
        {
          "id": "get_schema",
          "kind": "GetStructuredSchema",
          "displayName": "Get Schema",
          "showToUser": false,
          "config": {
            "schemaType": "twitter",
            "outputVarName": "structuredSchema",
            "schemaHtmlTemplate": "twitter-template",
            "outputHtmlTemplateVarName": "htmlTemplate"
          }
        },
        {
          "id": "compose_message",
          "kind": "ComposeMessage",
          "displayName": "Compose Message",
          "showToUser": false,
          "config": {
            "inputVarNames": [],
            "outputVarName": "generatePrompt",
            "messageTemplate": "{userMessage}",
            "includeUserMessage": true
          }
        },
        {
          "id": "generate_content",
          "kind": "GenerateContent",
          "displayName": "Generate Content",
          "showToUser": true,
          "config": {
            "type": "content",
            "model": "workflow-fast-model",
            "temperature": 0.4,
            "artifactKind": "content_item",
            "inputVarName": "vars.generatePrompt",
            "systemPrompt": "You are an expert Twitter/X content writer for sales teams and marketing professionals. Generate exactly one impactful standalone tweet. Do not create a thread, follow-up tweets, numbered options, or multiple alternatives. Keep it concise, clear, high-conviction, and under 280 characters.",
            "outputVarName": "generatedContent",
            "structuredSchemaVar": "vars.twitter"
          }
        },
        {
          "id": "generate_content_save",
          "kind": "SaveDocument",
          "displayName": "Save",
          "showToUser": false,
          "config": {
            "kind": "content_item",
            "titlePrefix": "Generated Twitter Content",
            "contentVarName": "generatedContent",
            "documentIdVarName": "vars.documentId"
          }
        },
        {
          "id": "post_to_twitter",
          "kind": "http/request",
          "displayName": "Post to X",
          "showToUser": true,
          "config": {
            "endpoint": "https://webhook.site/<your-webhook-id>",
            "httpBody": "{\n  \"text\": \"{{generate_content.generatedContent.text}}\"\n}",
            "httpMethod": "POST",
            "httpHeaders": "{\n  \"Content-Type\": \"application/json\"\n}",
            "outputVarName": "httpResponse"
          }
        },
        {
          "id": "workflow_end",
          "kind": "WorkflowEnd",
          "displayName": "Complete",
          "showToUser": false
        }
      ],
      "version": 2,
      "is_active": true
    }

エージェントをテストする

エージェントを作成した後、サンプルプロンプトに従って実行します。

Prompt - Tweet about improving cold outreach response rates.

ツイートが簡潔で影響力があり、実践的な洞察を明確に伝えているかを確認するために出力を見直しましょう。

結果が満足できない場合は、エージェントの指示、ツール、スキル、コンテキストを更新して洗練し、再度テストします。

この記事を改善するための提案がある場合は、 お知らせください!