QnAMakerDialog class
Finestra di dialogo che supporta servizi QnA Maker in più passaggi e adattivi.
- Extends
-
WaterfallDialog
Costruttori
Qn |
Inizializza una nuova istanza della classe QnAMakerDialog |
Qn |
Inizializza una nuova istanza della classe QnAMakerDialog |
Proprietà
$kind | |
active |
Ottiene o imposta il titolo della scheda da utilizzare quando vengono visualizzate le opzioni di apprendimento attive per l'utente. Nota: se suggestionsActivityFactory viene passato, questo membro non viene usato. |
card |
Ottiene o imposta il modello da inviare all'utente se seleziona l'opzione nessuna corrispondenza in una scheda di apprendimento attiva. |
card |
Ottiene o imposta il testo del pulsante da utilizzare con le opzioni di apprendimento attive, consentendo a un utente di indicare che non sono applicabili le opzioni. Nota: se suggestionsActivityFactory viene passato, questo membro è obbligatorio. |
display |
Ottiene o imposta un valore che indica se la risposta del dialogo deve visualizzare solo risposte precise. |
enable |
Ottiene o imposta un valore che indica se includere una risposta precisa in risposta. |
endpoint |
Ottiene o imposta la chiave dell'endpoint di QnA Maker da usare per eseguire query sulla Knowledge Base. |
filters | Ottiene o imposta i metadati e le origini utilizzati per filtrare i risultati. |
hostname | Ottiene o imposta l'URL host di QnA Maker per la knowledge base. |
include |
Ottiene o imposta un valore che indica se includere origini non strutturate nella ricerca di risposte. |
is |
Ottiene o imposta un valore che indica se ottiene o imposta l'ambiente della knowledge base da chiamare. |
knowledge |
Ottiene o imposta l'ID della knowledge base di QnA Maker su cui eseguire la query. |
log |
Ottiene o imposta il flag per determinare se le informazioni personali devono essere registrate nei dati di telemetria. |
no |
Ottiene o imposta il modello da inviare all'utente quando QnA Maker non trova una risposta. |
qna |
Tipo di servizio di risposta alle domande - qnaMaker o lingua |
ranker |
Ottiene o imposta il tipo di classificazione QnA Maker da utilizzare. |
strict |
Ottiene o imposta i metadati di QnA Maker con cui filtrare o aumentare le query alla knowledge base oppure null per applicare nessuno. |
strict |
Ottiene o imposta un valore - AND o OR - operazione logica nell'elenco di metadati |
threshold | Ottiene o imposta la soglia per le risposte restituite, in base al punteggio. |
top | Ottiene o imposta il numero massimo di risposte da restituire dalla Knowledge Base. |
Proprietà ereditate
End |
Ottiene un risultato di fine turno predefinito. |
id | |
telemetry |
Metodi
begin |
Chiamato quando il dialogo viene avviato e inserito nello stack di dialoghi. |
continue |
Chiamato quando la finestra di dialogo viene continuata, dove è la finestra di dialogo attiva e l'utente risponde con una nuova Activity. |
get |
Metodi ereditati
add |
Aggiunge un nuovo passaggio alla cascata. |
configure(Record<string, unknown>) | Metodo Fluent per la configurazione dell'oggetto. |
end |
Chiamato quando termina il dialogo. |
get |
Ottiene la versione della finestra di dialogo, composta dall'ID e dal numero di passaggi. |
on |
Chiamato quando è stato generato un evento, utilizzando |
reprompt |
Quando ne viene eseguito l'override in una classe derivata, reinserito l'utente per l'input. |
resume |
Chiamato quando un elemento figlio WaterfallDialog completato il suo turno, restituendo il controllo a questa finestra di dialogo. |
Dettagli costruttore
QnAMakerDialog(string, string, string, Activity, number, QnASuggestionsActivityFactory, string, number, Activity, RankerTypes, QnAMakerMetadata[], string, JoinOperator, boolean, boolean, ServiceType)
Inizializza una nuova istanza della classe QnAMakerDialog
new QnAMakerDialog(knowledgeBaseId?: string, endpointKey?: string, hostname?: string, noAnswer?: Activity, threshold?: number, suggestionsActivityFactory?: QnASuggestionsActivityFactory, cardNoMatchText?: string, top?: number, cardNoMatchResponse?: Activity, rankerType?: RankerTypes, strictFilters?: QnAMakerMetadata[], dialogId?: string, strictFiltersJoinOperator?: JoinOperator, enablePreciseAnswer?: boolean, displayPreciseAnswerOnly?: boolean, qnaServiceType?: ServiceType)
Parametri
- knowledgeBaseId
-
string
ID della knowledge base di QnA Maker su cui eseguire query.
- endpointKey
-
string
Chiave dell'endpoint di QnA Maker da usare per eseguire query sulla knowledge base.
- hostname
-
string
URL host di QnA Maker per la knowledge base, a partire da "https://" e terminando con "/qnamaker".
- noAnswer
-
Activity
(Facoltativo) Attività da inviare all'utente quando QnA Maker non trova una risposta.
- threshold
-
number
(Facoltativo) Soglia superiore alla quale trattare le risposte trovate dalla knowledge base come corrispondenza.
- suggestionsActivityFactory
- QnASuggestionsActivityFactory
(xref:botbuilder-ai. QnASuggestionsActivityFactory) usato per la formattazione personalizzata dell'attività.
- cardNoMatchText
-
string
(Facoltativo) Il testo del pulsante da usare con le opzioni di apprendimento attive, consentendo a un utente di indicare che nessuna delle opzioni è applicabile.
- top
-
number
(Facoltativo) Numero massimo di risposte da restituire dalla Knowledge Base.
- cardNoMatchResponse
-
Activity
(Facoltativo) Attività da inviare all'utente se seleziona l'opzione nessuna corrispondenza in una scheda di apprendimento attiva.
- rankerType
- RankerTypes
- strictFilters
(Facoltativo) Metadati di QnA Maker con cui filtrare o incrementare le query alla knowledge base; o Null per applicare nessuno.
- dialogId
-
string
(Facoltativo) ID della finestra di dialogo creata. Il valore predefinito è "QnAMakerDialog".
- strictFiltersJoinOperator
- JoinOperator
Operatore join per filtri rigorosi
- enablePreciseAnswer
-
boolean
- displayPreciseAnswerOnly
-
boolean
- qnaServiceType
- ServiceType
QnAMakerDialog(string, string, string, Activity, number, string, string, number, Activity, RankerTypes, QnAMakerMetadata[], string, JoinOperator, boolean, boolean, ServiceType)
Inizializza una nuova istanza della classe QnAMakerDialog
new QnAMakerDialog(knowledgeBaseId?: string, endpointKey?: string, hostname?: string, noAnswer?: Activity, threshold?: number, activeLearningCardTitle?: string, cardNoMatchText?: string, top?: number, cardNoMatchResponse?: Activity, rankerType?: RankerTypes, strictFilters?: QnAMakerMetadata[], dialogId?: string, strictFiltersJoinOperator?: JoinOperator, enablePreciseAnswer?: boolean, displayPreciseAnswerOnly?: boolean, qnaServiceType?: ServiceType)
Parametri
- knowledgeBaseId
-
string
ID della knowledge base di QnA Maker su cui eseguire query.
- endpointKey
-
string
Chiave dell'endpoint di QnA Maker da usare per eseguire query sulla knowledge base.
- hostname
-
string
URL host di QnA Maker per la knowledge base, a partire da "https://" e terminando con "/qnamaker".
- noAnswer
-
Activity
(Facoltativo) Attività da inviare all'utente quando QnA Maker non trova una risposta.
- threshold
-
number
(Facoltativo) Soglia superiore alla quale trattare le risposte trovate dalla knowledge base come corrispondenza.
- activeLearningCardTitle
-
string
(Facoltativo) Titolo della scheda da usare quando vengono visualizzate le opzioni di apprendimento attive per l'utente, se l'apprendimento attivo è abilitato.
- cardNoMatchText
-
string
(Facoltativo) Il testo del pulsante da usare con le opzioni di apprendimento attive, consentendo a un utente di indicare che nessuna delle opzioni è applicabile.
- top
-
number
(Facoltativo) Numero massimo di risposte da restituire dalla Knowledge Base.
- cardNoMatchResponse
-
Activity
(Facoltativo) Attività da inviare all'utente se seleziona l'opzione nessuna corrispondenza in una scheda di apprendimento attiva.
- rankerType
- RankerTypes
- strictFilters
(Facoltativo) Metadati di QnA Maker con cui filtrare o incrementare le query alla knowledge base; o Null per applicare nessuno.
- dialogId
-
string
(Facoltativo) ID della finestra di dialogo creata. Il valore predefinito è "QnAMakerDialog".
- strictFiltersJoinOperator
- JoinOperator
Operatore join per filtri rigorosi
- enablePreciseAnswer
-
boolean
- displayPreciseAnswerOnly
-
boolean
- qnaServiceType
- ServiceType
Dettagli proprietà
$kind
static $kind: string
Valore della proprietà
string
activeLearningCardTitle
Ottiene o imposta il titolo della scheda da utilizzare quando vengono visualizzate le opzioni di apprendimento attive per l'utente. Nota: se suggestionsActivityFactory viene passato, questo membro non viene usato.
activeLearningCardTitle: StringExpression
Valore della proprietà
StringExpression
cardNoMatchResponse
Ottiene o imposta il modello da inviare all'utente se seleziona l'opzione nessuna corrispondenza in una scheda di apprendimento attiva.
cardNoMatchResponse: TemplateInterface<Partial<Activity>, DialogStateManager>
Valore della proprietà
TemplateInterface<Partial<Activity>, DialogStateManager>
cardNoMatchText
Ottiene o imposta il testo del pulsante da utilizzare con le opzioni di apprendimento attive, consentendo a un utente di indicare che non sono applicabili le opzioni. Nota: se suggestionsActivityFactory viene passato, questo membro è obbligatorio.
cardNoMatchText: StringExpression
Valore della proprietà
StringExpression
displayPreciseAnswerOnly
Ottiene o imposta un valore che indica se la risposta del dialogo deve visualizzare solo risposte precise.
displayPreciseAnswerOnly: boolean
Valore della proprietà
boolean
enablePreciseAnswer
Ottiene o imposta un valore che indica se includere una risposta precisa in risposta.
enablePreciseAnswer: boolean
Valore della proprietà
boolean
endpointKey
Ottiene o imposta la chiave dell'endpoint di QnA Maker da usare per eseguire query sulla Knowledge Base.
endpointKey: StringExpression
Valore della proprietà
StringExpression
filters
Ottiene o imposta i metadati e le origini utilizzati per filtrare i risultati.
filters: Filters
Valore della proprietà
hostname
Ottiene o imposta l'URL host di QnA Maker per la knowledge base.
hostname: StringExpression
Valore della proprietà
StringExpression
includeUnstructuredSources
Ottiene o imposta un valore che indica se includere origini non strutturate nella ricerca di risposte.
includeUnstructuredSources: boolean
Valore della proprietà
boolean
isTest
Ottiene o imposta un valore che indica se ottiene o imposta l'ambiente della knowledge base da chiamare.
isTest: boolean
Valore della proprietà
boolean
knowledgeBaseId
Ottiene o imposta l'ID della knowledge base di QnA Maker su cui eseguire la query.
knowledgeBaseId: StringExpression
Valore della proprietà
StringExpression
logPersonalInformation
Ottiene o imposta il flag per determinare se le informazioni personali devono essere registrate nei dati di telemetria.
logPersonalInformation: BoolExpression
Valore della proprietà
BoolExpression
noAnswer
Ottiene o imposta il modello da inviare all'utente quando QnA Maker non trova una risposta.
noAnswer: TemplateInterface<Partial<Activity>, DialogStateManager>
Valore della proprietà
TemplateInterface<Partial<Activity>, DialogStateManager>
qnaServiceType
Tipo di servizio di risposta alle domande - qnaMaker o lingua
qnaServiceType: ServiceType
Valore della proprietà
rankerType
Ottiene o imposta il tipo di classificazione QnA Maker da utilizzare.
rankerType: EnumExpression<RankerTypes>
Valore della proprietà
EnumExpression<RankerTypes>
strictFilters
Ottiene o imposta i metadati di QnA Maker con cui filtrare o aumentare le query alla knowledge base oppure null per applicare nessuno.
strictFilters: QnAMakerMetadata[]
Valore della proprietà
strictFiltersJoinOperator
Ottiene o imposta un valore - AND o OR - operazione logica nell'elenco di metadati
strictFiltersJoinOperator: JoinOperator
Valore della proprietà
threshold
Ottiene o imposta la soglia per le risposte restituite, in base al punteggio.
threshold: NumberExpression
Valore della proprietà
NumberExpression
top
Ottiene o imposta il numero massimo di risposte da restituire dalla Knowledge Base.
top: IntExpression
Valore della proprietà
IntExpression
Dettagli proprietà ereditate
EndOfTurn
Ottiene un risultato di fine turno predefinito.
static EndOfTurn: DialogTurnResult
Valore della proprietà
DialogTurnResult
Commenti
Questo risultato indica che un dialogo (o un passaggio logico all'interno di una finestra di dialogo) ha completato l'elaborazione per il turno corrente, è ancora attiva ed è in attesa di più input.
ereditato da Dialog.EndOfTurn
id
id: string
Valore della proprietà
string
ereditato da Dialog.id
telemetryClient
telemetryClient: BotTelemetryClient
Valore della proprietà
BotTelemetryClient
ereditato da Dialog.telemetryClient
Dettagli metodo
beginDialog(DialogContext, object)
Chiamato quando il dialogo viene avviato e inserito nello stack di dialoghi.
function beginDialog(dc: DialogContext, options?: object): Promise<DialogTurnResult>
Parametri
- dc
-
DialogContext
Il DialogContext per il turno di conversazione corrente.
- options
-
object
(Facoltativo) Informazioni iniziali da passare alla finestra di dialogo.
Restituisce
Promise<DialogTurnResult>
Una promessa che risolve il risultato del turno
continueDialog(DialogContext)
Chiamato quando la finestra di dialogo viene continuata, dove è la finestra di dialogo attiva e l'utente risponde con una nuova Activity.
function continueDialog(dc: DialogContext): Promise<DialogTurnResult>
Parametri
- dc
-
DialogContext
Il DialogContext per il turno di conversazione corrente.
Restituisce
Promise<DialogTurnResult>
Promessa che rappresenta l'operazione asincrona.
getConverter(Object)
function getConverter(property: Object): Converter | ConverterFactory
Parametri
- property
-
Object
Proprietà che estendono QnAMakerDialogConfiguration.
Restituisce
Converter | ConverterFactory
Convertitore di espressioni.
Dettagli dei metodi ereditati
addStep(WaterfallStep<O>)
Aggiunge un nuovo passaggio alla cascata.
function addStep(step: WaterfallStep<O>): this
Parametri
- step
-
WaterfallStep<O>
Funzione di passaggio asincrona da chiamare.
Restituisce
this
Finestra di dialogo a cascata per le chiamate Fluent a addStep()
.
Commenti
Tutte le funzioni di passaggio devono essere asincrone e restituire un DialogTurnResult
. Il WaterfallStepContext
passato alla funzione deriva da DialogContext
e contiene numerosi metodi di manipolazione dello stack che restituiscono un DialogTurnResult
in modo da poter in genere restituire semplicemente il risultato dal metodo DialogContext chiamato.
La funzione step stessa può essere una chiusura asincrona:
const helloDialog = new WaterfallDialog('hello');
helloDialog.addStep(async (step) => {
await step.context.sendActivity(`Hello World!`);
return await step.endDialog();
});
Funzione asincrona denominata:
async function helloWorldStep(step) {
await step.context.sendActivity(`Hello World!`);
return await step.endDialog();
}
helloDialog.addStep(helloWorldStep);
In alternativa, un metodo di classe associato al puntatore this
:
helloDialog.addStep(this.helloWorldStep.bind(this));
Ereditato da WaterfallDialog.addStep
configure(Record<string, unknown>)
Metodo Fluent per la configurazione dell'oggetto.
function configure(config: Record<string, unknown>): this
Parametri
- config
-
Record<string, unknown>
Impostazioni di configurazione da applicare.
Restituisce
this
Configurabile al termine dell'operazione.
Ereditato da Configurable.configure
endDialog(TurnContext, DialogInstance, DialogReason)
Chiamato quando termina il dialogo.
function endDialog(context: TurnContext, instance: DialogInstance, reason: DialogReason): Promise<void>
Parametri
- context
-
TurnContext
Contesto per il turno di conversazione corrente.
- instance
-
DialogInstance
Istanza del dialogo corrente.
- reason
-
DialogReason
Motivo per cui la finestra di dialogo sta terminando.
Restituisce
Promise<void>
ereditato da WaterfallDialog.endDialog
getVersion()
Ottiene la versione della finestra di dialogo, composta dall'ID e dal numero di passaggi.
function getVersion(): string
Restituisce
string
Versione della finestra di dialogo, composta dall'ID e dal numero di passaggi.
ereditato da WaterfallDialog.getVersion
onDialogEvent(DialogContext, DialogEvent)
Chiamato quando è stato generato un evento, utilizzando DialogContext.emitEvent()
, dalla finestra di dialogo corrente o da una finestra di dialogo avviata dalla finestra di dialogo corrente.
function onDialogEvent(dc: DialogContext, e: DialogEvent): Promise<boolean>
Parametri
- dc
-
DialogContext
Contesto del dialogo per il turno corrente della conversazione.
- e
-
DialogEvent
Evento generato.
Restituisce
Promise<boolean>
True se l'evento viene gestito dalla finestra di dialogo corrente e il bubbling deve essere arrestato.
ereditato da Dialog.onDialogEvent
repromptDialog(TurnContext, DialogInstance)
Quando ne viene eseguito l'override in una classe derivata, reinserito l'utente per l'input.
function repromptDialog(_context: TurnContext, _instance: DialogInstance): Promise<void>
Parametri
- _context
-
TurnContext
Oggetto di contesto per il turno.
- _instance
-
DialogInstance
Informazioni sullo stato corrente per questa finestra di dialogo.
Restituisce
Promise<void>
Commenti
I dialoghi derivati che supportano la convalida e la logica di ripetizione della richiesta devono eseguire l'override di questo metodo. Per impostazione predefinita, questo metodo non ha alcun effetto.
Il DialogContext chiama questo metodo quando la finestra di dialogo corrente deve richiedere nuovamente l'input dell'utente. Questo metodo viene implementato per i dialoghi di richiesta.
Vedere anche
ereditato da Dialog.repromptDialog
resumeDialog(DialogContext, DialogReason, any)
Chiamato quando un elemento figlio WaterfallDialog completato il suo turno, restituendo il controllo a questa finestra di dialogo.
function resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise<DialogTurnResult>
Parametri
- dc
-
DialogContext
DialogContext per il turno corrente della conversazione.
- reason
-
DialogReason
(xref:botbuilder-dialogs. DialogReason) perché il dialogo è ripreso.
- result
-
any
Valore facoltativo restituito dalla finestra di dialogo chiamata. Il tipo del valore restituito dipende dal dialogo figlio.
Restituisce
Promise<DialogTurnResult>
Promessa che rappresenta l'operazione asincrona.
ereditato da WaterfallDialog.resumeDialog