定義投影

已完成

在知識存放區中儲存的資料投影是根據您在編製索引過程中,由擴充管道所產生的文件結構。 您技能組中的每一項技能會針對所編製索引的文件,以反復的方式建立擴充資料的 JSON 表示法,而您可以將文件的部分或全部欄位保存為投影。

使用塑形器技能

以累加方式編製索引的程式會建立出複雜的文件,其中包含技能組中各項技能的各種輸出欄位。 這可能會讓結構描述變得難以使用,其中可能包含難以對應至格式正確的 JSON 檔案的原始資料值集合。

為了簡化將這些域值對應到知識存放區中的投影,通常會使用塑形器技能來建立新的欄位,其中包含對應至欲投影欄位的更單純結構。

舉例來說,請考慮以下對於塑形器的定義:

{
  "@odata.type": "#Microsoft.Skills.Util.ShaperSkill",
  "name": "define-projection",
  "description": "Prepare projection fields",
  "context": "/document",
  "inputs": [
    {
      "name": "file_name",
      "source": "/document/metadata_content_name"
    },
    {
      "name": "url",
      "source": "/document/url"
    },
    {
      "name": "sentiment",
      "source": "/document/sentimentScore"
    },
    {
      "name": "key_phrases",
      "source": null,
      "sourceContext": "/document/merged_content/keyphrases/*",
      "inputs": [
        {
          "name": "phrase",
          "source": "/document/merged_content/keyphrases/*"
        }
      ]
    }
  ],
  "outputs": [
    {
      "name": "output",
      "targetName": "projection"
    }
  ]
}

這種塑形器技巧會建立一個具有下列結構的投影欄位:

{
    "file_name": "file_name.pdf",
    "url": "https://<storage_path>/file_name.pdf",
    "sentiment": 1.0,
    "key_phrases": [
        {
            "phrase": "first key phrase"
        },
        {
            "phrase": "second key phrase"
        },
        {
            "phrase": "third key phrase"
        },
        ...
    ]
}

產生的 JSON 檔案格式正確,與先前在擴充管道中以反復方式建立的較複雜文件比較,更容易對應到知識存放區中的投影。