Una Risposta che Lista è il Bot Libre di formato di file di testo per la definizione di un bot risposte. Una risposta è un elenco di domanda/risposta coppie. Ogni frase è separato da una nuova linea, e ogni domanda/risposta in elenco separato da una riga vuota. È anche possibile taggare le risposte con i meta dati come le parole chiave per influenza, quando la risposta è utilizzato. Liste di risposta sono il modo consigliato per formare un bot. Il bot di trovare automaticamente la migliore corrispondenza risposta per qualsiasi domanda, le domande non devono essere esatta, solo sufficientemente simili, o includere una parola chiave.
Tag | Descrizione |
---|---|
domanda: | Definisce la questione. Questo non è necessario, come prima riga dopo riga vuota viene considerata una nuova domanda. |
modello: | Definisce una domanda, come un modello. Modelli consentono il carattere jolly * e altre wild card per essere utilizzato. |
risposta: | Definisce una risposta. Questo non è necessario, come tutte le righe dopo la questione presume essere le risposte. |
modello: | Definisce un modello di risposta. Questo consente di integrare Auto codice all'interno di {} staffe per le risposte dinamiche. |
sentimento: | È possibile associare sentimento (buono/cattivo) con la frase. |
condizione: | Facoltativamente, è possibile dare una condizione in sé il codice che deve restituire true per la risposta da utilizzare. |
pensate: | Facoltativamente, è possibile dare un "pensare" codice in sé che viene valutata quando la risposta è utilizzato. |
comando: | Facoltativamente, è possibile dare un JSON comando (Self), del codice) che viene valutata e restituito al client di giochi di sostegno e di assistenza virtuale. |
argomento: | Facoltativamente, è possibile dare un argomento per classificare la risposta sotto. |
richiedono argomento: | Se l'argomento è necessaria, la risposta verrà utilizzato solo quando l'argomento è attivo. |
esclusiva argomento: | Se l'argomento è esclusiva, l'unica risposta che condividere l'argomento verrà utilizzato, mentre l'argomento è attivo. |
etichetta: | Facoltativamente, è possibile dare un'etichetta a riutilizzare la risposta. |
parole chiave: | Facoltativamente, è possibile dare parole chiave alla domanda che influenza una risposta match. |
richiesti: | Facoltativamente, è possibile dare richiesto parole la domanda che sarà necessario per una risposta match. |
emozioni: | È possibile associare un'emozione con la risposta. |
azioni: | È possibile associare un'azione con la risposta. |
pose: | È possibile associare una posa con la risposta. |
a ripetere: | Facoltativamente, è possibile dare una risposta all'usato, se la risposta è già stato utilizzato in questa conversazione. |
non ripetere: | Richiedere che la risposta o la frase essere utilizzato solo una volta. |
precedente: | Facoltativamente, è possibile dare una risposta precedente per dare una risposta di un contesto. |
richiede precedente: | Richiedere che la risposta essere utilizzato solo se la precedente risposta corrisponde a una delle precedenti risposte. |
fiducia: | La fiducia può essere utilizzato se una risposta non è certa. La risposta di abbinamento con la massima riservatezza, saranno utilizzati. |
Le domande a risposta può essere una frase che verrà automaticamente abbinati con domande simili, o può essere un Modello. I modelli sono abbinati letteralmente nell'ordine delle parole nel modello, e può avere i caratteri jolly come * e può includere anche le Espressioni Regolari. Normalmente è meglio usare una frase, e lasciare che il bot a decidere se una domanda deve corrispondere, è anche possibile aggiungere parole chiave e richiesto parole per migliorare, quando la domanda è soddisfatta. Per inserire un pattern di utilizzare il pattern: tag.
what is your name
question: what is your name
pattern: What is *
La risposta può essere una frase, può contenere codice HTML o ricco di contenuti, come immagini, video, e i pulsanti, o una risposta può essere un Modello. Un modello è una risposta che può includere alcune Auto codice. Qualsiasi codice all'interno di {} in un modello verrà eseguito e il risultato stampato in risposta. Per inserire un modello di uso del template: tag e inserire Self codice all'interno di {} staffe.
My name is Julie.
My name is <b≷Julie</b≷.
response: My name is Julie.
template: My name is {#self.name}.
template: The date is {Date.date()}.
Keywords are important words in the question that should influence when the response is used.
// Keywords are used to allow this response to be used for any questions on hockey or spinach. question: do you like hockey response: Hockey is my favorite sport. keywords: hockey question: what do you love response: I love hockey! keywords: love luv like adore question: do you like field hockey response: I only play ice hockey. keywords: "field hockey" question: i love spinach response: Spinach is is my favorite food. keywords: spinach
A keyword will be used by the bot to select the best response. Keywords let some words count for more than other words. In the example, the bot knows two responses, how will it respond to the phrase "I love hockey"? Without the keywords the bot would probably match this question with "I love spinach", but since hockey is a keyword, it will instead match it with "Do you like hockey?".
If the response has no defined required words, then the keywords will also be required for the response match. So "I love hockey" would not be matched with "I love spinach." because it is missing the keyword.
If you keywords has many similar words. You can list them all as keywords to match any of the words. You could also define these words a synonyms, which may be a better option.
You can also use compound words are keywords. A compound keyword must have all the words in the order to be used. For a compound keyword just wrap the words in "quotes".
Be careful using too many keywords. If every word is a keyword, then their value is diminished. Never make common words like "the", "a", "he", "what" keywords, if you require one of these words for a match use a required word instead.
You can also review all of your bot's keywords by searching for 'words' and restrict to 'keywords'. This lets you remove a word from being a keyword if you added it by mistake.
A required word is a word that is required to be in the question for a specific response.
// This example requires the words 'like' and 'hockey'. question: do you like hockey response: Yes, I like hockey. required: like hockey // This example requires the compound word 'ice hockey'. question: do you like ice hockey response: Yes, I like ice hockey. required: "ice hockey" // This example requires one of the words 'like' or 'love', and 'hockey'. question: do you like ice hockey response: Yes, I like ice hockey. required: (like love) hockey // This example requires a pattern. question: are you okay response: Yes, I am okay. required: Pattern("^ are you (ok okay)")
A required word can be used to ensure the bot does not choose a response if the required word is missing from the question. For example the question "Do you play hockey?" would normally be matched to this response, but because it is missing the required word "like", it will not be considered as a match.
All of the required words must be contained in the question in order for the response to be used. Required words also supports lists, compound words, and patterns. To require one of a set of words a list can be used using brackets i.e. (like love). To require a compound word quotes are used i.e. "hello world". To require a pattern enter the pattern i.e. Pattern("what is *").
A previous responses is the bot's preceding response. Previous responses can be used to give a response a context.
// This example uses previous to give different answers to 'yes' depending on the context. question: yes response: Great, wanna go out sometime? require previous: Are you single? question: yes response: I am please to hear that. require previous: Are you happy?
The question "Yes" has multiple responses. The bot can use the previous response to choose the best response. You can also invalidate a previous response to ensure the bot does not use a response if the previous response was preceding.
A previous response can either be 'required' or optional. If required, the response will never be used unless one of the previous response matches. If optional (default) the response is given precedence if the previous response matches, but can still be used if the previous does not match.
A topic is the general topic category for the response. For example a response on a hockey related question would belong to the "hockey" topic. You can use topics to categories your responses and give the bot additional context. If the bot has multiple responses to a question, it will use the one that matches the current topic.
Topics can be either optional or required. The response topic is optional by default, it you click on 'Require Topic', then the response will only be used if that topic is active in the conversation. If optional the topic will be set as active for the conversation, until a new topic is set.
Topics can also be defined as exclusive. An exclusive topic defines an isolated conversational space. For a normal topic that is not exclusive the bot can still use responses that do not have the same topic, but responses with the active topic will be given precedence over responses without a topic. For exclusive topics only response that have the same topic as the active topic will be used. No other responses will be used (other than possibly the default response if there is no topic default).
Topics can also be set on greetings to start the conversation with a topic. Topics can be set on default responses to provide a different response when that topic is active.
// Categorizes the product response. question: what are your products response: Our products include ACME CRM and ACME ERP. topic: products // Use an exclusive topic to define a joke conversational dialog. question: joke response: Knock knock. exclusive topic: joke question who is there response: Boo. require topic: joke question: boo who response: Don't cry. lol require topic: joke think: conversation.topic = null; default: Say 'Who is there?' require topic: joke default: Say 'Boo who?' require topic: joke previous: boo
A response can be given an intent label to let you reuse the same response in other questions. You can also use labels in a response's previous.
// Use a label to reuse the common products response. question: products response: Our products include ACME CRM and ACME ERP. label: #products question: what are your products response: #products question: what software do you sell response: #products question: are they good response: Our products are the best in the world. previous: #products
If the user asks the same question, or similar questions multiple times, you may want your bot to give a different response the second time. On repeat lets you set one or many responses to use the second time that response is triggered in the same conversation. You can also set 'No Repeat' to never repeat the response in the same conversation.
// Offer to escalate the issue if the user repeatedly asks for help. question: help response: How can I help you? on repeat: What is the issue that you are having? on repeat: Would you like me to have a support staff contact you? question: goodbye response: Before you go, would you like to take a survey? no repeat: question: goodbye response: Goodbye.
Conditions let you enter Self code that must evaluate to true for the response to be used. This is an advanced properties as it requires you understand Self (a dialect of JavaScript), but can be used to do very powerful things.
// Response to goodbye differently based on the time of day. question: goodbye response: Goodnight. condition: Date.get(#hour, Date.time()) > 18 question: goodbye response: Goodbye.
Think let you enter Self code that is executed when the response is used. This is an advanced properties as it requires you understand Self (a dialect of JavaScript), but can be used to do very powerful things.
// Track the user's name. pattern: my name is * template: Pleased to meet you {star}. think: speaker.name = star; question: what is my name template: Your name is {speaker.name}. question: can we change the subject response: Sure, what would you like to talk about? think: conversation.topic = null;
You can enter multiple responses for the same question. The bot will use the response that it is the most confident in for the current conversational context. By default a response is given a confidence level of 90%, but you can customize the value. Note that in a group discussion such as when the bot is added to a chatroom, or on Twitter, the bot will only use responses that have >=90% confidence.
You can associate a user question or phrase, or individual words with sentiment (good vs bad). Sentiment can be used to track how the user is feeling about the current conversation. The sentiment statistic is tracked by your bot daily and can be graphed from its Analytics page.
question: thank you response: You are most welcome. keywords: thank sentiment: good question: you suck response: Sorry, I am doing my best. Would you like me have someone contact you via email? keywords: suck sentiment: bad word: suck sentiment: bad word: great sentiment: great
Domande a risposta può essere utilizzato per gestire il follow-up domande e la conversazione scorre. Per avviare un flusso di conversazione, di rientro al successivo follow-up domanda per la risposta. È possibile utilizzare schede o 4 spazi per i rientri. È inoltre possibile impostare un rientro più livelli per definire una struttura di conversazione.
Un respones domanda successiva definisce un isolato di conversazione di spazio. Il bot solo scegliere la sua prossima risposta l'ha fornito risposte. Per definire una risposta predefinita utilizzare l'impostazione predefinita: tag. Se il bot non può corrispondere l'utente in questione con una domanda successiva, per cercare le risposte del genitore, in caso contrario, utilizzare un bot risposta di default.
Il prossimo è simile al precedente, ma a differenza dei precedenti è isolato per la risposta. Nel contesto di una prossima risposta, il bot non potrà mai utilizzare una qualsiasi delle sue risposte al di fuori del contesto della prossima risposta. In questo modo è facile definire isolato e le conversazioni.
question: help response: Do you want help with <button>web</button> or <button>mobile</button> keywords: help question: web response: Is you issue with <button>HTML</button> or <button>JavaScript</button>? question: html response: See https://www.w3schools.com/html question: javascript response: See https://www.w3schools.com/js question: mobile response: Are you using <button>Android</button> or <button>iOS</button>? question: android response: See https://www.android.com question: ios response: See https://developer.apple.com/ios question: quit response: Okay. Let me know if you need further help. default: Please specify <button>web</button> or <button>mobile</button>, or type <button>quit</button> if you do not need help.
Un saluto è un bot prima risposta in una nuova conversazione. Saluti può avere più del tag stesso come risposte. Per definire un saluto il saluto: il tag è utilizzato.
greeting: Welcome to my website. I am Julie, how may I be of service?
Se il bot non si trova un buon matching domanda di input dell'utente, utilizza la sua risposta predefinita. Le risposte predefinite possono avere la maggior parte del tag stesso come risposte. Per definire una risposta predefinita l'impostazione predefinita: tag è utilizzato.
default: Sorry, I do not understand. default: Sorry, I do not understand. Please email [email protected] for more information. topic: Sales
Frasi può essere definito per associare il sentimento, le emozioni, azione, pose o di una frase.
thanks for the help sentiment: good you are not helping me sentiment: bad
Word può essere definito per associare il sentimento, le emozioni, e sinonimi. Una parola può anche essere una parola chiave, un argomento, o un esclusivo argomento.
word: good sentiment: good synonyms: great wonderful cool amazing word: bad sentiment: bad synonyms: sucks terrible horrible word: aiml keyword: true topic: true
Tag | Descrizione |
---|---|
parola: | Definire una parola. |
sentimento: | Facoltativamente, è possibile associare un sentimento con la parola. |
emozioni: | Facoltativamente, è possibile associare un'emozione con la parola. |
parola chiave: | Definire la parola da una parola chiave. |
sinonimi: | Facoltativamente, è possibile dare un sinonimo per la parola, in modo che simili parole in una domanda per attivare la stessa risposta. |
argomento: | Definire la parola per essere un argomento. |
esclusiva argomento: | Definire la parola per essere un'esclusiva argomento. |