Definiera projektioner
Projektionerna av data som ska lagras i ditt kunskapslager baseras på de dokumentstrukturer som genereras av berikande pipelinen i indexeringsprocessen. Varje färdighet i din kompetensuppsättning bygger iterativt en JSON-representation av berikade data för de dokument som indexeras, och du kan spara några eller alla fält i dokumentet som projektioner.
Använda Shaper-färdigheten
Indexeringsprocessen skapar stegvis ett komplext dokument som innehåller de olika utdatafälten från färdigheterna i kompetensuppsättningen. Detta kan resultera i ett schema som är svårt att arbeta med och som innehåller samlingar med primitiva datavärden som inte enkelt mappas till välformulerad JSON.
För att förenkla mappningen av dessa fältvärden till projektioner i ett kunskapslager är det vanligt att använda Shaper-färdigheten för att skapa ett nytt fält som innehåller en enklare struktur för de fält som du vill mappa till projektioner.
Tänk till exempel på följande formfärdighetsdefinition:
{
"@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"
}
]
}
Den här Shaper-färdigheten skapar ett projektionsfält med följande struktur:
{
"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"
},
...
]
}
Det resulterande JSON-dokumentet är välformat och enklare att mappa till en projektion i ett kunskapslager än det mer komplexa dokument som har skapats iterativt av tidigare kunskaper i berikande pipelinen.