We are looking to create an online chat bot assistant, very much similar in concept to what IKEA has [url removed, login to view] (click on "ask anna").
We are looking for more than just a chat facility, but the ability for the bot to push links and open windows with content of interest. We are looking for people who have previous experience with AI chat bots and can do the programming required to put it together.
We are creating an online catalogue of products that are found on the high street with links to different shops selling that item, much like a price comparison service, but we also wish to provide enhanced support through the chatbot to guide people on understanding and finding products. With this idea in mind, read through the project requrements below:
Here is a breakdown of some features and well defined concepts that will become the chat bot.
1. Dictionary / Glossary
Chatbot acts as knowledgepoint or dictionary for technical terms and industry specific jargon, i.e. "What is resolution? What are megapixels?" etc.
- Answers are definitions presented in a natural language fashion.
- In addition to general definitions, the answers can be followed up with more helpful comments, i.e. "If your budget allows, a 6+ Megapixel camera allows you to take high quality photos and is considered a worthy investment". The follow up statement is selected from several possible comments, and will be related to the topic, so for example, if somebody asked " What are megapixels?" again, after answering the definition, then instead of the first follow up comment, it might say instead: " Digital cameras can have a resolution up 10 Megapixels but can also cost slightly more. Generally, 6+ Megapixels is sufficient for high quality photos up to A4 size prints ". This slight variation in responses keeps the dialogue afresh.
2. Recommendations & Guidance
Answers include word links, which take the dialogue further when clicked:
- "High quality photos" links to the text being input/entered and a reply saying:
- "High quality photos are taken with a camera that has a high resolution. 6 megapixels and above is generally recommended ".
- "6+ Megapixels" Opens search window and runs the query to return all cameras that have atleast 6 megapixels: there is also a text response:
- "Here are some digital cameras which have a resolution of atleast 6 megapixels and above for high quality, detailed photographs."
3. Question Suggestions
Each product has a list of frequently asked questions. These are incorporated into the main part of the webpage. For example, the website is a catalogue of products, and when viewing the product details page, there is a list of F.A.Q's which if clicked will result in the question being asked to the bot, and the bot replying correctly.
- Product Specific: "What is the difference between the Sony T10 and Sony T50?"
- Product Type: This list includes general questions relating to the type or category of products, so in this example, digital cameras: What are megapixels, resolution? etc
Due to there being several thousand products, it will be common that we don't have every single question pre-loaded, but we will require some ability to catch the questions being asked where a good response has not been made, and to map this to the product or category.
These functions relate to providing information to the user. We may also run surveys and polls, and they may prop up in the form of a single question either from the bot interface directly, or there may be a question and text input box in the middle of the main webpage, and if someone answers, the bot can say a response like 'thanks for answering', and the program then records the response as a vote or answer etc, so there is some datamining and collection going on. Our visitors may also have registered for an account with us, and the bot should be able to recognize people when they are signed in. If you have the ability to implement advanced memory functions, where the bot will remember your personality or search preferences etc.. then please detail what sort of concepts you could implement.
These are the main features we are looking for in a chat bot, and naturally an advanced easy to administer backend interface for customizing the bot's personality and knowledgebase.
Extra consideration will be given to anyone who can incorporate AJAX functionality within the chatbot and admin backend interface. Please show examples of previous work that is related to this field of development.
Also, please detail which platforms or languages you will use for the development. There exists already some free open source AIML interpreter (AI Engine) and we need to know wether you plan to build one from the ground up or utilize the existing ones and develop them further.