你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Knowledge Sources - Create Or Update

创建新的知识源或更新知识源(如果已存在)。

PUT {endpoint}/knowledgesources('{sourceName}')?api-version=2025-08-01-preview

URI 参数

名称 必需 类型 说明
endpoint
path True

string

搜索服务的终结点 URL。

sourceName
path True

string

要创建或更新的知识源的名称。

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 请求,指示服务在成功时返回创建/更新的资源。

请求正文

请求正文可以为下列任一内容:

名称 说明
AzureBlobKnowledgeSource

Azure Blob 存储知识源的配置。

SearchIndexKnowledgeSource

面向搜索索引的知识源。

AzureBlobKnowledgeSource

Azure Blob 存储知识源的配置。

名称 必需 类型 说明
azureBlobParameters True

AzureBlobKnowledgeSourceParameters

知识源的类型。

kind True string:

azureBlob

知识源的类型。

name True

string

知识源的名称。

@odata.etag

string

代理的 ETag。

description

string

可选的用户定义描述。

encryptionKey

SearchResourceEncryptionKey

在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。

SearchIndexKnowledgeSource

面向搜索索引的知识源。

名称 必需 类型 说明
kind True string:

searchIndex

知识源的类型。

name True

string

知识源的名称。

searchIndexParameters True

SearchIndexKnowledgeSourceParameters

知识源的参数。

@odata.etag

string

代理的 ETag。

description

string

可选的用户定义描述。

encryptionKey

SearchResourceEncryptionKey

在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。

响应

名称 类型 说明
200 OK KnowledgeSource:
201 Created KnowledgeSource:
Other Status Codes

ErrorResponse

错误响应。

示例

SearchServiceCreateOrUpdateKnowledgeSource
SearchServiceCreateOrUpdateKnowledgeSourceAzureBlob

SearchServiceCreateOrUpdateKnowledgeSource

示例请求

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2025-08-01-preview





{
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "sourceDataSelect": "description,category"
  },
  "name": "ks-preview-test",
  "description": "Description of the knowledge source.",
  "kind": "searchIndex",
  "@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>"
    }
  }
}

示例响应

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "searchIndex",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "sourceDataSelect": "description,category"
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "searchIndex",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "sourceDataSelect": "description,category"
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceAzureBlob

示例请求

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2025-08-01-preview





{
  "azureBlobParameters": {
    "identity": {
      "userAssignedIdentity": "/my/userassigned/id",
      "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity"
    },
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "embeddingModel": {
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "model",
        "apiKey": "api-key",
        "modelName": "text-embedding-3-large"
      },
      "name": "openai",
      "kind": "azureOpenAI"
    },
    "chatCompletionModel": {
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "myDeployment",
        "apiKey": "api-key",
        "modelName": "gpt-4o-mini"
      },
      "kind": "azureOpenAI"
    },
    "ingestionSchedule": {
      "interval": "P1D",
      "startTime": "2025-01-07T19:30:00Z"
    },
    "disableImageVerbalization": false
  },
  "name": "ks-preview-test",
  "description": "Description of the knowledge source.",
  "kind": "azureBlob",
  "@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>"
    }
  }
}

示例响应

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "azureBlob",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "azureBlobParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "disableImageVerbalization": false,
    "identity": {
      "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
      "userAssignedIdentity": "/my/userassigned/id"
    },
    "embeddingModel": {
      "name": "openai",
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "model",
        "apiKey": "api-key",
        "modelName": "text-embedding-3-large"
      }
    },
    "chatCompletionModel": {
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "myDeployment",
        "apiKey": "api-key",
        "modelName": "gpt-4o-mini"
      }
    },
    "ingestionSchedule": {
      "interval": "P1D",
      "startTime": "2024-06-06T00:01:50.265Z"
    }
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "azureBlob",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "azureBlobParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "disableImageVerbalization": false,
    "identity": {
      "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
      "userAssignedIdentity": "/my/userassigned/id"
    },
    "embeddingModel": {
      "name": "openai",
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "model",
        "apiKey": "api-key",
        "modelName": "text-embedding-3-large"
      }
    },
    "chatCompletionModel": {
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://test-sample.openai.azure.com/",
        "deploymentId": "myDeployment",
        "apiKey": "api-key",
        "modelName": "gpt-4o-mini"
      }
    },
    "ingestionSchedule": {
      "interval": "P1D",
      "startTime": "2024-06-06T00:01:50.265Z"
    }
  }
}

定义

名称 说明
AIFoundryModelCatalogName

将调用的 Azure AI Foundry 目录中的嵌入模型的名称。

AIServicesVisionParameters

指定用于矢量化查询图像或文本的 AI 服务视觉参数。

AIServicesVisionVectorizer

指定用于矢量化查询图像或文本的 AI 服务视觉参数。

AMLParameters

指定用于连接到 AML 矢量化器的属性。

AMLVectorizer

指定通过 Azure AI Foundry 模型目录部署的 Azure 机器学习终结点,用于生成查询字符串的矢量嵌入。

AzureActiveDirectoryApplicationCredentials

为搜索服务创建的已注册应用程序的凭据,用于对存储在 Azure Key Vault 中的加密密钥进行身份验证访问。

AzureBlobKnowledgeSource

Azure Blob 存储知识源的配置。

AzureBlobKnowledgeSourceParameters

Azure Blob 存储知识源的参数。

AzureOpenAIEmbeddingSkill

允许使用 Azure OpenAI 资源为给定文本输入生成矢量嵌入。

AzureOpenAIModelName

将调用的 Azure Open AI 模型名称。

AzureOpenAIParameters

指定用于连接到 Azure OpenAI 资源的参数。

AzureOpenAIVectorizer

指定用于矢量化查询字符串的 Azure OpenAI 资源。

ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

IndexingSchedule

表示索引器执行的计划。

InputFieldMappingEntry

技能的输入字段映射。

KnowledgeAgentAzureOpenAIModel

指定用于执行查询规划的 Azure OpenAI 资源。

KnowledgeAgentModelKind

用于查询规划的 AI 模型。

KnowledgeSourceKind

知识来源的那种。

OutputFieldMappingEntry

技能的输出字段映射。

SearchIndexerDataNoneIdentity

清除数据源的标识属性。

SearchIndexerDataUserAssignedIdentity

指定要使用的数据源的标识。

SearchIndexKnowledgeSource

面向搜索索引的知识源。

SearchIndexKnowledgeSourceParameters

搜索索引知识源的参数。

SearchResourceEncryptionKey

Azure Key Vault 中的客户管理的加密密钥。 创建和管理的密钥可用于加密或解密静态数据,例如索引和同义词映射。

VectorSearchVectorizerKind

查询时要使用的矢量化方法。

WebApiParameters

指定用于连接到用户定义矢量化器的属性。

WebApiVectorizer

指定用户定义的矢量化器,用于生成查询字符串的矢量嵌入。 外部矢量化器的集成是使用技能组的自定义 Web API 接口实现的。

AIFoundryModelCatalogName

将调用的 Azure AI Foundry 目录中的嵌入模型的名称。

说明
OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32
OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336
Facebook-DinoV2-Image-Embeddings-ViT-Base
Facebook-DinoV2-Image-Embeddings-ViT-Giant
Cohere-embed-v3-english
Cohere-embed-v3-multilingual
Cohere-embed-v4

Cohere embed v4 模型,用于从文本和图像生成嵌入。

AIServicesVisionParameters

指定用于矢量化查询图像或文本的 AI 服务视觉参数。

名称 类型 说明
apiKey

string

指定 AI 服务资源的 API 密钥。

authIdentity SearchIndexerDataIdentity:

用于出站连接的用户分配的托管标识。 如果提供了 authResourceId 但未指定,则使用系统分配的托管标识。 在更新索引时,如果未指定标识,则该值保持不变。 如果设置为“none”,则清除此属性的值。

modelVersion

string

调用 AI 服务视觉服务时要使用的模型版本。 未指定时,它将默认为最新的可用。

resourceUri

string (uri)

AI 服务资源的资源 URI。

AIServicesVisionVectorizer

指定用于矢量化查询图像或文本的 AI 服务视觉参数。

名称 类型 说明
aiServicesVisionParameters

AIServicesVisionParameters

包含特定于 AI 服务视觉嵌入矢量化的参数。

kind string:

aiServicesVision

配置为用于向量搜索的矢量化方法的名称。

name

string

要与此特定矢量化方法关联的名称。

AMLParameters

指定用于连接到 AML 矢量化器的属性。

名称 类型 说明
key

string

(密钥认证所需)AML 服务的密钥。

modelName

AIFoundryModelCatalogName

部署在提供的终结点的 Azure AI Foundry 目录中的嵌入模型的名称。

region

string

(令牌身份验证的可选)。 部署 AML 服务的区域。

resourceId

string

(令牌身份验证所必需的)。 AML 服务的 Azure 资源管理器资源 ID。 它的格式应为 subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/services/{service_name}。

timeout

string (duration)

(可选)指定后,指示进行 API 调用的 http 客户端的超时。

uri

string (uri)

(无需身份验证或密钥身份验证时需要)将向其发送 JSON 有效负载的 AML 服务的评分 URI。 只允许使用 https URI 方案。

AMLVectorizer

指定通过 Azure AI Foundry 模型目录部署的 Azure 机器学习终结点,用于生成查询字符串的矢量嵌入。

名称 类型 说明
amlParameters

AMLParameters

指定 AML 矢量化器的属性。

kind string:

aml

配置为用于向量搜索的矢量化方法的名称。

name

string

要与此特定矢量化方法关联的名称。

AzureActiveDirectoryApplicationCredentials

为搜索服务创建的已注册应用程序的凭据,用于对存储在 Azure Key Vault 中的加密密钥进行身份验证访问。

名称 类型 说明
applicationId

string

向 Azure Key Vault 授予所需的访问权限的 AAD 应用程序 ID,该权限将在加密静态数据时使用。 应用程序 ID 不应与 AAD 应用程序的对象 ID 混淆。

applicationSecret

string

指定 AAD 应用程序的身份验证密钥。

AzureBlobKnowledgeSource

Azure Blob 存储知识源的配置。

名称 类型 说明
@odata.etag

string

代理的 ETag。

azureBlobParameters

AzureBlobKnowledgeSourceParameters

知识源的类型。

description

string

可选的用户定义描述。

encryptionKey

SearchResourceEncryptionKey

在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。

kind string:

azureBlob

知识源的类型。

name

string

知识源的名称。

AzureBlobKnowledgeSourceParameters

Azure Blob 存储知识源的参数。

名称 类型 说明
chatCompletionModel KnowledgeAgentModel:

KnowledgeAgentAzureOpenAIModel

用于图像语言化或上下文提取的可选聊天完成模型。

connectionString

string

基于密钥的连接字符串或 ResourceId 格式(如果使用托管标识)。

containerName

string

Blob 存储容器的名称。

createdResources

object

由知识源创建的资源。

disableImageVerbalization

boolean

指示是否应禁用图像语言化。

embeddingModel VectorSearchVectorizer:

用于矢量化内容的可选矢量化器配置。

folderPath

string

容器内的可选文件夹路径。

identity SearchIndexerDataIdentity:

用于此知识源的显式标识。

ingestionSchedule

IndexingSchedule

数据摄取的可选计划。

AzureOpenAIEmbeddingSkill

允许使用 Azure OpenAI 资源为给定文本输入生成矢量嵌入。

名称 类型 说明
@odata.type string:

#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill

指定技能类型的 URI 片段。

apiKey

string

指定 Azure OpenAI 资源的 API 密钥。

authIdentity SearchIndexerDataIdentity:

用于出站连接的用户分配的托管标识。

context

string

表示执行作的级别,例如文档根目录或文档内容(例如,/document 或 /document/content)。 默认值为 /document。

deploymentId

string

指定资源上 Azure OpenAI 模型部署的 ID。

description

string

描述技能的描述,描述技能的输入、输出和用法。

dimensions

integer (int32)

生成的输出嵌入应有的维度数。 仅在 text-embedding-3 及更高版本中受支持。

inputs

InputFieldMappingEntry[]

技能的输入可以是源数据集中的列,也可以是上游技能的输出。

modelName

AzureOpenAIModelName

部署在提供的 deploymentId 路径上的嵌入模型的名称。

name

string

在技能集中唯一标识它的技能的名称。 未定义名称的技能将在技能数组中为其从 1 开始的索引的默认名称,前缀为字符“#”。

outputs

OutputFieldMappingEntry[]

技能的输出要么是搜索索引中的字段,要么是可作为其他技能输入使用的值。

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:

用于出站连接的用户分配的托管标识。

deploymentId

string

指定资源上 Azure OpenAI 模型部署的 ID。

modelName

AzureOpenAIModelName

部署在提供的 deploymentId 路径上的嵌入模型的名称。

resourceUri

string (uri)

Azure OpenAI 资源的资源 URI。

AzureOpenAIVectorizer

指定用于矢量化查询字符串的 Azure OpenAI 资源。

名称 类型 说明
azureOpenAIParameters AzureOpenAIParameters:

AzureOpenAIEmbeddingSkill

包含特定于 Azure OpenAI 嵌入矢量化的参数。

kind string:

azureOpenAI

配置为用于向量搜索的矢量化方法的名称。

name

string

要与此特定矢量化方法关联的名称。

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

IndexingSchedule

表示索引器执行的计划。

名称 类型 说明
interval

string (duration)

索引器执行之间的时间间隔。

startTime

string (date-time)

索引器应开始运行的时间。

InputFieldMappingEntry

技能的输入字段映射。

名称 类型 说明
inputs

InputFieldMappingEntry[]

创建复杂类型时使用的递归输入。

name

string

输入的名称。

source

string

输入的源。

sourceContext

string

用于选择递归输入的源上下文。

KnowledgeAgentAzureOpenAIModel

指定用于执行查询规划的 Azure OpenAI 资源。

名称 类型 说明
azureOpenAIParameters AzureOpenAIParameters:

AzureOpenAIEmbeddingSkill

包含特定于 Azure OpenAI 模型终结点的参数。

kind string:

azureOpenAI

AI 模型的类型。

KnowledgeAgentModelKind

用于查询规划的 AI 模型。

说明
azureOpenAI

使用 Azure Open AI 模型进行查询规划。

KnowledgeSourceKind

知识来源的那种。

说明
searchIndex

从搜索索引中读取数据的知识源。

azureBlob

用于读取数据并将其从 Azure Blob 存储引入搜索索引的知识源。

OutputFieldMappingEntry

技能的输出字段映射。

名称 类型 说明
name

string

技能定义的输出的名称。

targetName

string

输出的目标名称。 它是可选的,默认为 name。

SearchIndexerDataNoneIdentity

清除数据源的标识属性。

名称 类型 说明
@odata.type string:

#Microsoft.Azure.Search.DataNoneIdentity

指定身份类型的 URI 片段。

SearchIndexerDataUserAssignedIdentity

指定要使用的数据源的标识。

名称 类型 说明
@odata.type string:

#Microsoft.Azure.Search.DataUserAssignedIdentity

指定身份类型的 URI 片段。

userAssignedIdentity

string

用户分配的托管标识的完全限定的 Azure 资源 ID,通常采用“/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId”的形式,应分配给搜索服务。

SearchIndexKnowledgeSource

面向搜索索引的知识源。

名称 类型 说明
@odata.etag

string

代理的 ETag。

description

string

可选的用户定义描述。

encryptionKey

SearchResourceEncryptionKey

在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。

kind string:

searchIndex

知识源的类型。

name

string

知识源的名称。

searchIndexParameters

SearchIndexKnowledgeSourceParameters

知识源的参数。

SearchIndexKnowledgeSourceParameters

搜索索引知识源的参数。

名称 类型 说明
searchIndexName

string

搜索索引的名称。

sourceDataSelect

string

用于请求引用源数据的其他字段。

SearchResourceEncryptionKey

Azure Key Vault 中的客户管理的加密密钥。 创建和管理的密钥可用于加密或解密静态数据,例如索引和同义词映射。

名称 类型 说明
accessCredentials

AzureActiveDirectoryApplicationCredentials

用于访问 Azure Key Vault 的可选 Azure Active Directory 凭据。 如果改用托管标识,则不需要。

identity SearchIndexerDataIdentity:

用于此加密密钥的显式托管标识。 如果未指定且访问凭据属性为 null,则使用系统分配的托管标识。 更新资源时,如果未指定显式标识,则该标识保持不变。 如果指定了“none”,则清除此属性的值。

keyVaultKeyName

string

用于加密静态数据的 Azure Key Vault 密钥的名称。

keyVaultKeyVersion

string

用于加密静态数据的 Azure Key Vault 密钥版本。

keyVaultUri

string

Azure 密钥保管库的 URI(也称为 DNS 名称),其中包含用于加密静态数据的密钥。 一个示例 URI 可能是 https://my-keyvault-name.vault.azure.net

VectorSearchVectorizerKind

查询时要使用的矢量化方法。

说明
azureOpenAI

在查询时使用 Azure OpenAI 资源生成嵌入。

customWebApi

在查询时使用自定义 Web 终结点生成嵌入。

aiServicesVision

使用 Azure AI 服务视觉矢量化 API 在查询时为图像或文本输入生成嵌入。

aml

在查询时使用通过 Azure AI Foundry 模型目录部署的 Azure 机器学习终结点生成嵌入。

WebApiParameters

指定用于连接到用户定义矢量化器的属性。

名称 类型 说明
authIdentity SearchIndexerDataIdentity:

用于出站连接的用户分配的托管标识。 如果提供了 authResourceId 但未指定,则使用系统分配的托管标识。 在更新索引器时,如果未指定标识,则该值保持不变。 如果设置为“none”,则清除此属性的值。

authResourceId

string

适用于连接到 Azure 函数中的外部代码或提供转换的其他应用程序中的自定义终结点。 此值应是向 Azure Active Directory 注册时为函数或应用创建的应用程序 ID。 指定后,矢量化使用搜索服务的托管 ID(系统或用户分配)和函数或应用的访问令牌连接到函数或应用,并将此值用作创建访问令牌范围的资源 ID。

httpHeaders

object

发出 HTTP 请求所需的标头。

httpMethod

string

HTTP 请求的方法。

timeout

string (duration)

请求的所需超时。 默认值为 30 秒。

uri

string (uri)

提供矢量化器的 Web API 的 URI。

WebApiVectorizer

指定用户定义的矢量化器,用于生成查询字符串的矢量嵌入。 外部矢量化器的集成是使用技能组的自定义 Web API 接口实现的。

名称 类型 说明
customWebApiParameters

WebApiParameters

指定用户定义矢量化器的属性。

kind string:

customWebApi

配置为用于向量搜索的矢量化方法的名称。

name

string

要与此特定矢量化方法关联的名称。