Azure 认知搜索索引器可以设置字段值吗?

Can Azure Cognitive Search Indexer set field values?

我有一个 Azure 认知搜索索引,它为来自多个数据源的数据编制索引。每个数据源都使用几乎相同的索引器进行索引。每个索引器调用相同的技能组配置。

在索引定义中,我有一个标记为 "datasource" 的字段,用于标识特定文档的数据源。我想使用索引器或使用模块化技能(例如条件技能)来根据数据源设置此字段的值。我知道如果找不到值,可以对字段的值使用条件技能,但我想避免为每个索引器创建新的技能集。我的数据源是 blob 容器中的多种类型的文档。

仅使用索引器定义可以在定义中手动将字段值分配给字符串,方法是通过某种方式提取数据源的名称,或使用技能组定义中的模块化技能?

我一直追求的一个途径是在容器级别设置用户指定的 blob 元数据。但是,我无法使用索引器或技能组成功检索此信息。我不想在容器中的每个 blob 上设置这个用户指定的 blob 元数据。

遗憾的是,无法以将唯一信息传递给技能组的方式配置 blob 数据源。每个数据源都有一个单独的技能集可能是最干净的选择。或者,您可以传递 metadata_storage_path to a custom skill 并将容器路径解析为 return 按约定或映射的值。