Knowledge Agents - Create Or Update
新しいエージェントを作成するか、エージェントが既に存在する場合はエージェントを更新します。
PUT {endpoint}/agents('{agentName}')?api-version=2025-08-01-preview
URI パラメーター
| 名前 | / | 必須 | 型 | 説明 |
|---|---|---|---|---|
|
agent
|
path | True |
string |
作成または更新するエージェントの名前。 |
|
endpoint
|
path | True |
string |
検索サービスのエンドポイント URL。 |
|
api-version
|
query | True |
string |
クライアント API バージョン。 |
要求ヘッダー
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
デバッグを支援するためにリクエストとともに送信されたトラッキング ID。 |
|
| If-Match |
string |
If-Match 条件を定義します。 この操作は、サーバー上の ETag がこの値に一致する場合にのみ実行されます。 |
|
| If-None-Match |
string |
If-None-Match 条件を定義します。 この操作は、サーバー上の ETag がこの値と一致しない場合にのみ実行されます。 |
|
| Prefer | True |
string |
HTTP PUT 要求の場合、成功時に作成/更新されたリソースを返すようにサービスに指示します。 |
要求本文
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| knowledgeSources | True | ||
| models | True | KnowledgeAgentModel[]: |
AI モデルへの接続方法に関する構成オプションが含まれています。 |
| name | True |
string |
ナレッジエージェントの名前。 |
| @odata.etag |
string |
エージェントの ETag。 |
|
| description |
string |
エージェントの説明。 |
|
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、Microsoft を含む誰もエージェントを復号化できないという完全な保証が必要な場合に、エージェント定義に追加レベルの保存時の暗号化を提供するために使用されます。 エージェント定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。エージェント定義は影響を受けません。 カスタマー マネージド キーによる暗号化は、無料の検索サービスでは使用できず、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
||
| outputConfiguration | |||
| requestLimits |
ガードレールは、1 つのエージェント取得要求に使用されるリソースの量を制限します。 |
||
| retrievalInstructions |
string |
クエリ プランを開発するときにナレッジ エージェントが考慮する指示。 |
応答
| 名前 | 型 | 説明 |
|---|---|---|
| 200 OK | ||
| 201 Created | ||
| Other Status Codes |
エラー応答。 |
例
SearchServiceCreateOrUpdateKnowledgeAgent
要求のサンプル
PUT https://previewexampleservice.search.windows.net/agents('agent-preview-test')?api-version=2025-08-01-preview
{
"name": "agent-preview-test",
"models": [
{
"azureOpenAIParameters": {
"resourceUri": "https://test-sample.openai.azure.com/",
"deploymentId": "myDeployment",
"apiKey": "api-key",
"modelName": "gpt-4o-mini"
},
"kind": "azureOpenAI"
}
],
"knowledgeSources": [
{
"name": "ks-preview-test",
"includeReferences": true,
"includeReferenceSourceData": true,
"alwaysQuerySource": true,
"maxSubQueries": 5,
"rerankerThreshold": 2.1
}
],
"outputConfiguration": {
"modality": "extractiveData",
"answerInstructions": "Provide a concise answer to the question.",
"attemptFastPath": false,
"includeActivity": true
},
"requestLimits": {
"maxRuntimeInSeconds": 60,
"maxOutputSize": 100000
},
"retrievalInstructions": "Instructions for retrieval for the agent.",
"@odata.etag": "0x1234568AE7E58A1",
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
},
"description": "Description of the agent."
}
応答のサンプル
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "agent-preview-test",
"description": "Description of the agent.",
"retrievalInstructions": "Instructions for retrieval for the agent.",
"knowledgeSources": [
{
"name": "ks-preview-test",
"alwaysQuerySource": true,
"includeReferences": true,
"includeReferenceSourceData": true,
"maxSubQueries": 5,
"rerankerThreshold": 2.1
}
],
"models": [
{
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "https://test-sample.openai.azure.com/",
"deploymentId": "myDeployment",
"apiKey": "api-key",
"modelName": "gpt-4o-mini"
}
}
],
"outputConfiguration": {
"modality": "extractiveData",
"answerInstructions": "Provide a concise answer to the question.",
"attemptFastPath": false,
"includeActivity": true
},
"requestLimits": {
"maxRuntimeInSeconds": 60,
"maxOutputSize": 100000
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "agent-preview-test",
"description": "Description of the agent.",
"retrievalInstructions": "Instructions for retrieval for the agent.",
"knowledgeSources": [
{
"name": "ks-preview-test",
"alwaysQuerySource": true,
"includeReferences": true,
"includeReferenceSourceData": true,
"maxSubQueries": 5,
"rerankerThreshold": 2.1
}
],
"models": [
{
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "https://test-sample.openai.azure.com/",
"deploymentId": "myDeployment",
"apiKey": "api-key",
"modelName": "gpt-4o-mini"
}
}
],
"outputConfiguration": {
"modality": "extractiveData",
"answerInstructions": "Provide a concise answer to the question.",
"attemptFastPath": false,
"includeActivity": true
},
"requestLimits": {
"maxRuntimeInSeconds": 60,
"maxOutputSize": 100000
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
定義
| 名前 | 説明 |
|---|---|
|
Azure |
検索サービス用に作成された登録済みアプリケーションの資格情報で、Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用されます。 |
|
Azure |
Azure OpenAI リソースを使用して、特定のテキスト入力のベクトル埋め込みを生成できます。 |
|
Azure |
呼び出される Azure Open AI モデル名。 |
|
Azure |
Azure OpenAI リソースに接続するためのパラメーターを指定します。 |
|
Error |
リソース管理エラーの追加情報。 |
|
Error |
エラーの詳細。 |
|
Error |
エラー応答 |
|
Input |
スキルの入力フィールド・マッピング。 |
|
Knowledge |
|
|
Knowledge |
クエリ計画の実行に使用する Azure OpenAI リソースを指定します。 |
|
Knowledge |
クエリ計画に使用される AI モデル。 |
|
Knowledge |
|
|
Knowledge |
エージェントの出力構成 |
|
Knowledge |
ガードレールは、1 つのエージェント取得要求に使用されるリソースの量を制限します。 |
|
Knowledge |
|
|
Output |
スキルの出力フィールドマッピング。 |
|
Search |
データソースの identity プロパティをクリアします。 |
|
Search |
使用するデータソースの ID を指定します。 |
|
Search |
Azure Key Vault の顧客管理暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。 |
AzureActiveDirectoryApplicationCredentials
検索サービス用に作成された登録済みアプリケーションの資格情報で、Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用されます。
| 名前 | 型 | 説明 |
|---|---|---|
| applicationId |
string |
保存データを暗号化するときに使用する Azure Key Vault への必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID を AAD アプリケーションのオブジェクト ID と混同しないでください。 |
| applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
AzureOpenAIEmbeddingSkill
Azure OpenAI リソースを使用して、特定のテキスト入力のベクトル埋め込みを生成できます。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
スキルのタイプを指定するURIフラグメント。 |
| apiKey |
string |
指定された Azure OpenAI リソースの API キー。 |
| authIdentity | SearchIndexerDataIdentity: |
送信接続に使用されるユーザー割り当てマネージド ID。 |
| context |
string |
ドキュメントルートやドキュメントコンテンツ (/document や /document/content など) など、操作が実行されるレベルを表します。 デフォルトは /document です。 |
| deploymentId |
string |
指定されたリソース上の Azure OpenAI モデル デプロイの ID。 |
| description |
string |
スキルの入力、出力および使用法を説明するスキルの説明。 |
| dimensions |
integer (int32) |
結果として出力される埋め込みに必要なディメンションの数。 text-embedding-3 以降のモデルでのみサポートされます。 |
| inputs |
スキルの入力は、ソース・データ・セットの列、またはアップストリーム・スキルの出力である可能性があります。 |
|
| modelName |
指定された deploymentId パスにデプロイされる埋め込みモデルの名前。 |
|
| name |
string |
スキルセット内で一意に識別するスキルの名前。 名前が定義されていないスキルには、スキル配列内の 1 から始まるインデックスのデフォルト名が与えられ、接頭辞に文字「#」が付けられます。 |
| outputs |
スキルの出力は、検索インデックスのフィールド、または別のスキルによる入力として使用できる値のいずれかです。 |
|
| resourceUri |
string (uri) |
Azure OpenAI リソースのリソース URI。 |
AzureOpenAIModelName
呼び出される Azure Open AI モデル名。
| 値 | 説明 |
|---|---|
| text-embedding-ada-002 | |
| text-embedding-3-large | |
| text-embedding-3-small | |
| gpt-4o | |
| gpt-4o-mini | |
| gpt-4.1 | |
| gpt-4.1-mini | |
| gpt-4.1-nano |
AzureOpenAIParameters
Azure OpenAI リソースに接続するためのパラメーターを指定します。
| 名前 | 型 | 説明 |
|---|---|---|
| apiKey |
string |
指定された Azure OpenAI リソースの API キー。 |
| authIdentity | SearchIndexerDataIdentity: |
送信接続に使用されるユーザー割り当てマネージド ID。 |
| deploymentId |
string |
指定されたリソース上の Azure OpenAI モデル デプロイの ID。 |
| modelName |
指定された deploymentId パスにデプロイされる埋め込みモデルの名前。 |
|
| resourceUri |
string (uri) |
Azure OpenAI リソースのリソース URI。 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
| 名前 | 型 | 説明 |
|---|---|---|
| info |
object |
追加情報。 |
| type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
| 名前 | 型 | 説明 |
|---|---|---|
| additionalInfo |
エラーの追加情報。 |
|
| code |
string |
エラー コード。 |
| details |
エラーの詳細です。 |
|
| message |
string |
エラー メッセージ。 |
| target |
string |
エラーターゲット。 |
ErrorResponse
エラー応答
| 名前 | 型 | 説明 |
|---|---|---|
| error |
エラー オブジェクト。 |
InputFieldMappingEntry
スキルの入力フィールド・マッピング。
| 名前 | 型 | 説明 |
|---|---|---|
| inputs |
複合型の作成時に使用される再帰的入力。 |
|
| name |
string |
入力の名前。 |
| source |
string |
入力のソース。 |
| sourceContext |
string |
再帰入力の選択に使用されるソースコンテキスト。 |
KnowledgeAgent
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.etag |
string |
エージェントの ETag。 |
| description |
string |
エージェントの説明。 |
| encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーは、Microsoft を含む誰もエージェントを復号化できないという完全な保証が必要な場合に、エージェント定義に追加レベルの保存時の暗号化を提供するために使用されます。 エージェント定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定しようとすると無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。エージェント定義は影響を受けません。 カスタマー マネージド キーによる暗号化は、無料の検索サービスでは使用できず、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
|
| knowledgeSources | ||
| models | KnowledgeAgentModel[]: |
AI モデルへの接続方法に関する構成オプションが含まれています。 |
| name |
string |
ナレッジエージェントの名前。 |
| outputConfiguration | ||
| requestLimits |
ガードレールは、1 つのエージェント取得要求に使用されるリソースの量を制限します。 |
|
| retrievalInstructions |
string |
クエリ プランを開発するときにナレッジ エージェントが考慮する指示。 |
KnowledgeAgentAzureOpenAIModel
クエリ計画の実行に使用する Azure OpenAI リソースを指定します。
| 名前 | 型 | 説明 |
|---|---|---|
| azureOpenAIParameters | AzureOpenAIParameters: |
Azure OpenAI モデル エンドポイントに固有のパラメーターが含まれています。 |
| kind |
string:
azure |
AI モデルの種類。 |
KnowledgeAgentModelKind
クエリ計画に使用される AI モデル。
| 値 | 説明 |
|---|---|
| azureOpenAI |
クエリ計画に Azure Open AI モデルを使用します。 |
KnowledgeAgentOutputConfiguration
| 名前 | 型 | 説明 |
|---|---|---|
| answerInstructions |
string |
回答を生成するときにナレッジエージェントが考慮する指示 |
| attemptFastPath |
boolean |
エージェントが、モデル呼び出しをバイパスして、最新のチャット メッセージをナレッジ ソースへの直接クエリとして発行しようとするかどうかを示します。 |
| includeActivity |
boolean |
取得結果にアクティビティ情報を含める必要があることを示します。 |
| modality |
エージェントの出力構成 |
KnowledgeAgentOutputConfigurationModality
エージェントの出力構成
| 値 | 説明 |
|---|---|
| answerSynthesis |
応答ペイロードの回答を合成します。 |
| extractiveData |
生成変更なしでナレッジ ソースから直接データを返します。 |
KnowledgeAgentRequestLimits
ガードレールは、1 つのエージェント取得要求に使用されるリソースの量を制限します。
| 名前 | 型 | 説明 |
|---|---|---|
| maxOutputSize |
integer (int32) |
出力内のコンテンツの最大サイズを制限します。 |
| maxRuntimeInSeconds |
integer (int32) |
最大実行時間 (秒単位)。 |
KnowledgeSourceReference
| 名前 | 型 | 説明 |
|---|---|---|
| alwaysQuerySource |
boolean |
このナレッジ ソースはソースの選択をバイパスし、取得時に常にクエリを実行する必要があることを示します。 |
| includeReferenceSourceData |
boolean |
参照に、取得中に取得した構造化データをペイロードに含める必要があるかどうかを示します。 |
| includeReferences |
boolean |
このソースから取得したデータに参照を含める必要があるかどうかを示します。 |
| maxSubQueries |
integer (int32) |
このソースからデータを取得するときに一度に発行できるクエリの最大数。 |
| name |
string |
ナレッジソースの名前。 |
| rerankerThreshold |
number (float) |
レスポンスに含めるために、取得されたすべてのドキュメントが満たす必要があるリランカーのしきい値。 |
OutputFieldMappingEntry
スキルの出力フィールドマッピング。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
スキルによって定義された出力の名前。 |
| targetName |
string |
出力のターゲット名。 これはオプションであり、デフォルトは名前です。 |
SearchIndexerDataNoneIdentity
データソースの identity プロパティをクリアします。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
ID のタイプを指定する URI フラグメント。 |
SearchIndexerDataUserAssignedIdentity
使用するデータソースの ID を指定します。
| 名前 | 型 | 説明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
ID のタイプを指定する URI フラグメント。 |
| userAssignedIdentity |
string |
ユーザーが割り当てたマネージド ID の完全修飾 Azure リソース ID は、通常、検索サービスに割り当てられている必要がある "/subscriptions/1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 |
SearchResourceEncryptionKey
Azure Key Vault の顧客管理暗号化キー。 作成および管理するキーを使用して、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除を行うことができます。
| 名前 | 型 | 説明 |
|---|---|---|
| accessCredentials |
Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 |
|
| identity | SearchIndexerDataIdentity: |
この暗号化キーに使用する明示的なマネージド ID。 指定されておらず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合は、変更されません。 "none" を指定すると、このプロパティの値はクリアされます。 |
| keyVaultKeyName |
string |
保存データの暗号化に使用する Azure Key Vault キーの名前。 |
| keyVaultKeyVersion |
string |
保存データの暗号化に使用する Azure Key Vault キーのバージョン。 |
| keyVaultUri |
string |
Azure Key Vault の URI (DNS 名とも呼ばれます) で、保存データの暗号化に使用するキーが含まれています。 URI の例は |