Knowledge Sources - Create Or Update
创建新的知识源或更新知识源(如果已存在)。
PUT {endpoint}/knowledgesources('{sourceName}')?api-version=2025-08-01-preview
URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
搜索服务的终结点 URL。 |
|
source
|
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 请求,指示服务在成功时返回创建/更新的资源。 |
请求正文
请求正文可以为下列任一内容:
| 名称 | 说明 |
|---|---|
|
Azure |
Azure Blob 存储知识源的配置。 |
|
Search |
面向搜索索引的知识源。 |
AzureBlobKnowledgeSource
Azure Blob 存储知识源的配置。
| 名称 | 必需 | 类型 | 说明 |
|---|---|---|---|
| azureBlobParameters | True |
知识源的类型。 |
|
| kind | True |
string:
azure |
知识源的类型。 |
| name | True |
string |
知识源的名称。 |
| @odata.etag |
string |
代理的 ETag。 |
|
| description |
string |
可选的用户定义描述。 |
|
| encryptionKey |
在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。 |
SearchIndexKnowledgeSource
面向搜索索引的知识源。
| 名称 | 必需 | 类型 | 说明 |
|---|---|---|---|
| kind | True |
string:
search |
知识源的类型。 |
| name | True |
string |
知识源的名称。 |
| searchIndexParameters | True |
知识源的参数。 |
|
| @odata.etag |
string |
代理的 ETag。 |
|
| description |
string |
可选的用户定义描述。 |
|
| encryptionKey |
在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。 |
响应
| 名称 | 类型 | 说明 |
|---|---|---|
| 200 OK | KnowledgeSource: | |
| 201 Created | KnowledgeSource: | |
| Other Status Codes |
错误响应。 |
示例
|
Search |
|
Search |
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"
}
}
}
定义
| 名称 | 说明 |
|---|---|
|
AIFoundry |
将调用的 Azure AI Foundry 目录中的嵌入模型的名称。 |
|
AIServices |
指定用于矢量化查询图像或文本的 AI 服务视觉参数。 |
|
AIServices |
指定用于矢量化查询图像或文本的 AI 服务视觉参数。 |
| AMLParameters |
指定用于连接到 AML 矢量化器的属性。 |
| AMLVectorizer |
指定通过 Azure AI Foundry 模型目录部署的 Azure 机器学习终结点,用于生成查询字符串的矢量嵌入。 |
|
Azure |
为搜索服务创建的已注册应用程序的凭据,用于对存储在 Azure Key Vault 中的加密密钥进行身份验证访问。 |
|
Azure |
Azure Blob 存储知识源的配置。 |
|
Azure |
Azure Blob 存储知识源的参数。 |
|
Azure |
允许使用 Azure OpenAI 资源为给定文本输入生成矢量嵌入。 |
|
Azure |
将调用的 Azure Open AI 模型名称。 |
|
Azure |
指定用于连接到 Azure OpenAI 资源的参数。 |
|
Azure |
指定用于矢量化查询字符串的 Azure OpenAI 资源。 |
|
Error |
资源管理错误附加信息。 |
|
Error |
错误详细信息。 |
|
Error |
错误响应 |
|
Indexing |
表示索引器执行的计划。 |
|
Input |
技能的输入字段映射。 |
|
Knowledge |
指定用于执行查询规划的 Azure OpenAI 资源。 |
|
Knowledge |
用于查询规划的 AI 模型。 |
|
Knowledge |
知识来源的那种。 |
|
Output |
技能的输出字段映射。 |
|
Search |
清除数据源的标识属性。 |
|
Search |
指定要使用的数据源的标识。 |
|
Search |
面向搜索索引的知识源。 |
|
Search |
搜索索引知识源的参数。 |
|
Search |
Azure Key Vault 中的客户管理的加密密钥。 创建和管理的密钥可用于加密或解密静态数据,例如索引和同义词映射。 |
|
Vector |
查询时要使用的矢量化方法。 |
|
Web |
指定用于连接到用户定义矢量化器的属性。 |
|
Web |
指定用户定义的矢量化器,用于生成查询字符串的矢量嵌入。 外部矢量化器的集成是使用技能组的自定义 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 |
包含特定于 AI 服务视觉嵌入矢量化的参数。 |
|
| kind |
string:
ai |
配置为用于向量搜索的矢量化方法的名称。 |
| name |
string |
要与此特定矢量化方法关联的名称。 |
AMLParameters
指定用于连接到 AML 矢量化器的属性。
| 名称 | 类型 | 说明 |
|---|---|---|
| key |
string |
(密钥认证所需)AML 服务的密钥。 |
| modelName |
部署在提供的终结点的 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 |
指定 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 |
知识源的类型。 |
|
| description |
string |
可选的用户定义描述。 |
| encryptionKey |
在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。 |
|
| kind |
string:
azure |
知识源的类型。 |
| name |
string |
知识源的名称。 |
AzureBlobKnowledgeSourceParameters
Azure Blob 存储知识源的参数。
| 名称 | 类型 | 说明 |
|---|---|---|
| chatCompletionModel | KnowledgeAgentModel: |
用于图像语言化或上下文提取的可选聊天完成模型。 |
| connectionString |
string |
基于密钥的连接字符串或 ResourceId 格式(如果使用托管标识)。 |
| containerName |
string |
Blob 存储容器的名称。 |
| createdResources |
object |
由知识源创建的资源。 |
| disableImageVerbalization |
boolean |
指示是否应禁用图像语言化。 |
| embeddingModel | VectorSearchVectorizer: |
用于矢量化内容的可选矢量化器配置。 |
| folderPath |
string |
容器内的可选文件夹路径。 |
| identity | SearchIndexerDataIdentity: |
用于此知识源的显式标识。 |
| ingestionSchedule |
数据摄取的可选计划。 |
AzureOpenAIEmbeddingSkill
允许使用 Azure OpenAI 资源为给定文本输入生成矢量嵌入。
| 名称 | 类型 | 说明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
指定技能类型的 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 |
技能的输入可以是源数据集中的列,也可以是上游技能的输出。 |
|
| 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: |
用于出站连接的用户分配的托管标识。 |
| deploymentId |
string |
指定资源上 Azure OpenAI 模型部署的 ID。 |
| modelName |
部署在提供的 deploymentId 路径上的嵌入模型的名称。 |
|
| resourceUri |
string (uri) |
Azure OpenAI 资源的资源 URI。 |
AzureOpenAIVectorizer
指定用于矢量化查询字符串的 Azure OpenAI 资源。
| 名称 | 类型 | 说明 |
|---|---|---|
| azureOpenAIParameters | AzureOpenAIParameters: |
包含特定于 Azure OpenAI 嵌入矢量化的参数。 |
| kind |
string:
azure |
配置为用于向量搜索的矢量化方法的名称。 |
| name |
string |
要与此特定矢量化方法关联的名称。 |
ErrorAdditionalInfo
资源管理错误附加信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| info |
object |
其他信息。 |
| type |
string |
其他信息类型。 |
ErrorDetail
错误详细信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| additionalInfo |
错误附加信息。 |
|
| code |
string |
错误代码。 |
| details |
错误详细信息。 |
|
| message |
string |
错误消息。 |
| target |
string |
错误目标。 |
ErrorResponse
错误响应
| 名称 | 类型 | 说明 |
|---|---|---|
| error |
错误对象。 |
IndexingSchedule
表示索引器执行的计划。
| 名称 | 类型 | 说明 |
|---|---|---|
| interval |
string (duration) |
索引器执行之间的时间间隔。 |
| startTime |
string (date-time) |
索引器应开始运行的时间。 |
InputFieldMappingEntry
技能的输入字段映射。
| 名称 | 类型 | 说明 |
|---|---|---|
| inputs |
创建复杂类型时使用的递归输入。 |
|
| name |
string |
输入的名称。 |
| source |
string |
输入的源。 |
| sourceContext |
string |
用于选择递归输入的源上下文。 |
KnowledgeAgentAzureOpenAIModel
指定用于执行查询规划的 Azure OpenAI 资源。
| 名称 | 类型 | 说明 |
|---|---|---|
| azureOpenAIParameters | AzureOpenAIParameters: |
包含特定于 Azure OpenAI 模型终结点的参数。 |
| kind |
string:
azure |
AI 模型的类型。 |
KnowledgeAgentModelKind
用于查询规划的 AI 模型。
| 值 | 说明 |
|---|---|
| azureOpenAI |
使用 Azure Open AI 模型进行查询规划。 |
KnowledgeSourceKind
知识来源的那种。
| 值 | 说明 |
|---|---|
| searchIndex |
从搜索索引中读取数据的知识源。 |
| azureBlob |
用于读取数据并将其从 Azure Blob 存储引入搜索索引的知识源。 |
OutputFieldMappingEntry
技能的输出字段映射。
| 名称 | 类型 | 说明 |
|---|---|---|
| name |
string |
技能定义的输出的名称。 |
| targetName |
string |
输出的目标名称。 它是可选的,默认为 name。 |
SearchIndexerDataNoneIdentity
清除数据源的标识属性。
| 名称 | 类型 | 说明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
指定身份类型的 URI 片段。 |
SearchIndexerDataUserAssignedIdentity
指定要使用的数据源的标识。
| 名称 | 类型 | 说明 |
|---|---|---|
| @odata.type |
string:
#Microsoft. |
指定身份类型的 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 |
在 Azure Key Vault 中创建的加密密钥的说明。 当你希望完全保证没有人(甚至 Microsoft)无法解密它们时,此密钥用于为代理定义提供额外的静态加密级别。 加密代理定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;您的代理定义将不受影响。 使用客户管理的密钥进行加密不适用于免费搜索服务,仅适用于 2019 年 1 月 1 日或之后创建的付费服务。 |
|
| kind |
string:
search |
知识源的类型。 |
| name |
string |
知识源的名称。 |
| searchIndexParameters |
知识源的参数。 |
SearchIndexKnowledgeSourceParameters
搜索索引知识源的参数。
| 名称 | 类型 | 说明 |
|---|---|---|
| searchIndexName |
string |
搜索索引的名称。 |
| sourceDataSelect |
string |
用于请求引用源数据的其他字段。 |
SearchResourceEncryptionKey
Azure Key Vault 中的客户管理的加密密钥。 创建和管理的密钥可用于加密或解密静态数据,例如索引和同义词映射。
| 名称 | 类型 | 说明 |
|---|---|---|
| accessCredentials |
用于访问 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 可能是 |
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 |
指定用户定义矢量化器的属性。 |
|
| kind |
string:
custom |
配置为用于向量搜索的矢量化方法的名称。 |
| name |
string |
要与此特定矢量化方法关联的名称。 |