Dela via


.qna-filformat

GÄLLER FÖR: SDK v4

Kommentar

Azure AI QnA Maker dras tillbaka den 31 mars 2025. Från och med den 1 oktober 2022 kan du inte skapa nya QnA Maker resurser eller kunskapsbaser för 2022. En nyare version av fråge- och svarsfunktionen är nu tillgänglig som en del av Azure AI Language.

Svar på anpassade frågor, en funktion i Azure AI Language, är den uppdaterade versionen av QnA Maker-tjänsten. Mer information om stöd för frågor och svar i Bot Framework SDK finns i Förstå naturligt språk.

.qna-filer innehåller Markdown-liknande textbaserade definitioner för QnAmaker.ai begrepp. Den här artikeln beskriver de olika begrepp som uttrycks via filformatet .qna.

Lägga till kommentarer

Använd > för att skapa en kommentar. Här är ett exempel:

> This is a comment and will be ignored

Par med frågor och svar

.qna-filen och parsern stöder fråge- och svarsdefinitioner.

Här är syntaxen för en grundläggande fråge- och svarsdefinition:

# ? Question
[list of question variations]
```
Answer
```

Här är exempel på fråge- och svarsdefinitioner:

> # QnA Definitions
### ? who is the ceo?
```
You can change the default message if you use the QnAMakerDialog.
For details, see [Azure AI Bot Service documentation](/articles/adaptive-dialog/adaptive-dialog-prebuilt-actions.md).
```


### ? How do I programmatically update my KB?
```
You can use our REST apis to manage your KB.
\#1. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa
```

Observera att markdown typidentifieraren för en answer är valfri.

Flera frågor

Du kan lägga till flera frågor i samma svar genom att bara lägga till variationer i frågor.

### ? Aren't you feeling happy today?
- Feeling cheerful?
```markdown
I'm quite happy, thank you.
```

QnAMaker-filter

Filter i QnA Maker är enkla nyckel/värde-par som kan användas för att begränsa sökresultat, öka svar och lagra kontext.

Använd följande syntax för att lägga till filter:

***Filters:***
- name = value
- name = value

Här är ett exempel på hur ett filter kan användas:

### ? Where can I get coffee?
- I need coffee

**Filters:**
- location = seattle

```markdown
You can get coffee in our Seattle store at 1 pike place, Seattle, WA
```

### ? Where can I get coffee?
- I need coffee

**Filters:**
- location = portland

```markdown
You can get coffee in our Portland store at 52 marine drive, Portland, OR
```

QnA Maker PDF-filinmatning

QnA Maker stöder också inmatning av PDF-filer när KB skapas. Du kan lägga till filer för QnA Maker att mata in med hjälp av URL-referensschemat. Om URI:ns innehållstyp inte är text eller HTML lägger parsern till den i filsamlingen som QnA Maker kan mata in.

[SurfaceManual.pdf](https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf)

Externa referenser

Externa referenser stöds i .qna-filen och använder Markdown-länksyntax.

Referera till en annan .qna-fil

Referens till en annan .qna-fil med .[link name](<.qna file name>) Referenser kan vara en absolut sökväg eller en relativ sökväg från den innehållande .qna-filen.

Referens till en mapp som innehåller .qna-filer

Referens till en mapp med andra .qna-filer stöds via:

  • [link name](<.qna file path>/*): söker efter .qna-filer under den angivna absoluta eller relativa sökvägen.
  • [link name](<.qna file path>/**): söker rekursivt efter .qna-filer under den angivna absoluta eller relativa sökvägen, inklusive undermappar.

Referera till en URL

Referera till en URL för QnAMaker att mata in när KB skapas via [link name](<URL>).

Referens från en specifik fil

Du kan också lägga till referenser till yttranden som definierats i en specifik fil under ett avsiktsavsnitt eller som QnA-par.

  • [link name](<.lu file path>#<INTENT-NAME>): hittar alla yttranden som finns under <INTENT-NAME> i .lu-filen och lägger till dem i listan med frågor där referensen anges.
  • [link name](<.lu file path>#*utterances*): hittar alla yttranden i .lu-filen och lägger till dem i listan med frågor där referensen anges.
  • [link name](<.qna file path>#?): hittar frågor från alla QnA-par som definierats i .qna-filen och lägger till dem i listan över yttranden där den här referensen anges.
  • [link name](<.qna folder>/*#?): hittar alla frågor från alla .qna-filer i den angivna mappen och lägger till dem i listan med yttranden där den här referensen anges.

Här är ett exempel på ovanstående referenser:

> QnA URL reference
[QnaURL](/azure/ai-services/qnamaker/)

> Include all content in ./kb1.qna
[KB1](./kb1.qna)

> Look for all .qna files under a path
[ChitChat](./chitchat/*)

> Recursively look for .qna files under a path including subfolders.
[ChitChat](../chitchat/resources/**)

Modellbeskrivning

Du kan inkludera konfigurationsinformation för ditt LUIS-program eller QnA Maker KB i .qna-filen för att dirigera parsern att hantera LU-innehållet korrekt.

Kommentar

Language Understanding (LUIS) dras tillbaka den 1 oktober 2025. Från och med den 1 april 2023 kan du inte skapa nya LUIS-resurser. En nyare version av språktolkning är nu tillgänglig som en del av Azure AI Language.

Conversational Language Understanding (CLU), en funktion i Azure AI Language, är den uppdaterade versionen av LUIS. Mer information om stöd för språktolkning i Bot Framework SDK finns i Förstå naturligt språk.

Så här lägger du till konfigurationsinformation som sing > !#:

> !# @<property> = <value>
> !# @<scope>-<property> = <value>
> !# @<scope>-<property> = <semicolon-delimited-key-value-pairs>

Observera att all information som uttryckligen skickas via CLI-argument åsidosätter information i .qna-filen.

> Parser instruction - this is optional; unless specified, the parser will default to the latest version.
> !# @version = 1.0

> QnA Maker KB description
> !# @kb.name = my qna maker kb name

> Source for a specific QnA pair
> !# @qna.pair.source = <source value>

Multiturninnehåll

Flertursinnehåll representeras i .qna-format med markdown-länk notation. Länkar anges på följande sätt:

- [display text](#<ID or question>)

Du kan också inkludera context-only för alla frågor som bara är kontextuellt tillgängliga för en fråga. Läs avsnittet om att lägga till ett befintligt par med frågor och svar som en uppföljningsprompt om du vill veta mer om användningen av context.

- [tell me a joke](#?joke) `context-only`

Uppföljningsprompter

Utvecklare har två alternativ för att skapa uppföljningsprompter: att använda en fråga som en uppföljningsprompt direkt eller tilldela ett explicit ID till ett QnA-par.

Använd en fråga direkt

Det första QnA-paret som har länktexten som ett question läggs till som prompt. Om du behöver mer explicit kontroll använder du ID:t i stället.

När du använder en fråga direkt använder du Markdown-konventionen och ersätter blanksteg med bindestreck (till exempel i #?when-is-the-portland-store-open stället för #?when is the portland store open). Parsern gör sitt bästa för att hitta länken.

# ?store hours
```
Most our stores are open M-F 9AM-10PM.
```
**Prompts:**
- [Seattle store](#?seattle)
- [Portland store](#?when-is-the-portland-store-open)

# ?seattle
```
The Seattle store is open M-F 9AM-10PM.
```

# ?when is the portland store open
- portland store hours
```
The Portland store is open 24/7.
```

Dricks

Länken återges inte som en valbar länk i de flesta Markdown-renderare.

Tilldela ett explicit ID till ett QnA-par

Tilldela ID:t för varje fråga med ett tal. Du kan se i exemplet nedan att uppmaningen för varje butik har tilldelats ett annat numeriskt värde.

# ?store hours
```
Most our stores are open M-F 9AM-10PM.
```
**Prompts:**
- [Seattle store](#1)
- [Portland store](#2)

<a id = "1"></a>

# ?seattle
```
The Seattle store is open M-F 9AM-10PM.
```

<a id = "2"></a>

# ?when is the portland store open
- portland store hours
```
The Portland store is open 24/7.
```

Ytterligare resurser