Delen via


Antwoorden filteren met metagegevens

Met QnA Maker kunt u metagegevens toevoegen, in de vorm van sleutel- en waardeparen, aan uw paren vragen en antwoorden. U kunt deze informatie vervolgens gebruiken om resultaten te filteren op gebruikersquery's en om aanvullende informatie op te slaan die kan worden gebruikt in vervolggesprekken.

Notitie

De QnA Maker-service wordt op 31 maart 2025 buiten gebruik gesteld. Een nieuwere versie van de vraag- en antwoordmogelijkheid is nu beschikbaar als onderdeel van Azure AI Language. Zie vraagantwoording voor vragen in de Language Service voor het beantwoorden van vragen. Vanaf 1 oktober 2022 kunt u geen nieuwe QnA Maker-resources maken. Raadpleeg de migratiehandleiding voor informatie over het migreren van bestaande QnA Maker-knowledge bases om vragen te beantwoorden.

Vragen en antwoorden opslaan met een QnA-entiteit

Het is belangrijk om te begrijpen hoe QnA Maker de vraag- en antwoordgegevens opslaat. In de volgende afbeelding ziet u een QnA-entiteit:

Afbeelding van een QnA-entiteit

Elke QnA-entiteit heeft een unieke en permanente id. U kunt de id gebruiken om updates uit te voeren voor een bepaalde QnA-entiteit.

Metagegevens gebruiken om antwoorden te filteren op aangepaste metagegevenstags

Door metagegevens toe te voegen, kunt u de antwoorden filteren op deze metagegevenstags. Voeg de kolom metagegevens toe vanuit het menu Weergaveopties . Voeg metagegevens toe aan uw Knowledge Base door het metagegevenspictogram te selecteren om een metagegevenspaar + toe te voegen. Dit paar bestaat uit één sleutel en één waarde.

Schermopname van het toevoegen van metagegevens

Resultaten filteren met strictFilters voor metagegevenstags

Houd rekening met de vraag 'Wanneer sluit dit hotel?', waarbij de intentie wordt geïmpliceerd voor het restaurant 'Paradise'.

Omdat resultaten alleen vereist zijn voor het restaurant "Paradise", kunt u een filter instellen in de generateAnswer-aanroep op de metagegevens "Restaurantnaam". In het volgende voorbeeld ziet u dit:

{
    "question": "When does this hotel close?",
    "top": 1,
    "strictFilters": [ { "name": "restaurant", "value": "paradise"}]
}

Filteren op bron

Als u meerdere inhoudsbronnen in uw Knowledge Base hebt en u de resultaten wilt beperken tot een bepaalde set bronnen, kunt u dit doen met behulp van het gereserveerde trefwoord source_name_metadata , zoals hieronder wordt weergegeven.

"strictFilters": [
    {
        "name": "category",
        "value": "api"
    },
   {
        "name": "source_name_metadata",
        "value": "boby_brown_docx"
    },
   {
        "name": "source_name_metadata",
        "value": "chitchat.tsv"
   }
]

Logische AND standaard

Als u verschillende metagegevensfilters in de query wilt combineren, voegt u de extra metagegevensfilters toe aan de matrix van de strictFilters eigenschap. Standaard worden de waarden logisch gecombineerd (AND). Voor een logische combinatie moeten alle filters overeenkomen met de QnA-paren om het paar in het antwoord te kunnen retourneren.

Dit is gelijk aan het gebruik van de strictFiltersCompoundOperationType eigenschap met de waarde van AND.

Logische OF met de eigenschap strictFiltersCompoundOperationType

Als u meerdere metagegevensfilters combineert, gebruikt u de strictFiltersCompoundOperationType eigenschap met de waarde van OR.

Hierdoor kan uw Knowledge Base antwoorden retourneren wanneer een filter overeenkomt, maar geen antwoorden met geen metagegevens retourneert.

{
    "question": "When do facilities in this hotel close?",
    "top": 1,
    "strictFilters": [
      { "name": "type","value": "restaurant"},
      { "name": "type", "value": "bar"},
      { "name": "type", "value": "poolbar"}
    ],
    "strictFiltersCompoundOperationType": "OR"
}

Voorbeelden van metagegevens in quickstarts

Meer informatie over metagegevens in de quickstart voor de QnA Maker-portal voor metagegevens:

Vraag- en antwoordresultaten gebruiken om de gesprekscontext te behouden

Het antwoord op de GenerateAnswer bevat de bijbehorende metagegevensinformatie van de overeenkomende vraag en antwoordpaar. U kunt deze informatie in uw clienttoepassing gebruiken om de context van het vorige gesprek op te slaan voor gebruik in latere gesprekken.

{
    "answers": [
        {
            "questions": [
                "What is the closing time?"
            ],
            "answer": "10.30 PM",
            "score": 100,
            "id": 1,
            "source": "Editorial",
            "metadata": [
                {
                    "name": "restaurant",
                    "value": "paradise"
                },
                {
                    "name": "location",
                    "value": "secunderabad"
                }
            ]
        }
    ]
}

Volgende stappen