Definiowanie projekcji

Ukończone

Projekcje danych, które mają być przechowywane w magazynie wiedzy, są oparte na strukturach dokumentów generowanych przez potok wzbogacania w procesie indeksowania. Każda umiejętność w zestawie umiejętności iteracyjnie tworzy reprezentację wzbogaconych danych w formacie JSON dla indeksowanych dokumentów i można utrwalać niektóre lub wszystkie pola w dokumencie jako projekcje.

Korzystanie z umiejętności kształtowania

Proces indeksowania przyrostowo tworzy złożony dokument zawierający różne pola wyjściowe z umiejętności w zestawie umiejętności. Może to spowodować trudności w pracy ze schematem, który obejmuje kolekcje pierwotnych wartości danych, które nie są łatwo mapowane na dobrze sformułowany kod JSON.

Aby uprościć mapowanie tych wartości pól na projekcje w magazynie wiedzy, często należy użyć umiejętności kształtowania do utworzenia nowego pola zawierającego prostszą strukturę pól, które chcesz mapować na projekcje.

Rozważmy na przykład następującą definicję umiejętności kształtowania:

{
  "@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"
    }
  ]
}

Ta umiejętność kształtowania tworzy pole projekcji o następującej strukturze:

{
    "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"
        },
        ...
    ]
}

Wynikowy dokument JSON jest dobrze sformułowany i łatwiejszy do mapowania na projekcję w magazynie wiedzy niż bardziej złożony dokument, który został utworzony iteracyjnie przez poprzednie umiejętności w potoku wzbogacania.