| I like this idea a lot and have been thinking about this myself. Here are some questions I've been struggling with: 1. What would be the incentive for the bot developers to adhere to a standard that would basically encourage a user to download a meta bot rather than the bot developer's own bot? Especially once they have spent significant resources to develop and enhance their bot before any standards were in place. This would require refactoring at a level that a bot developer might not want to do. The meta bot might lose out on using such a bot, which might be really good at what it does. 2. Let's consider that once bots are created a meta-bot might be able to use the bot's NLP interface to issue queries. The response format might be so varied among the bots that the meta-bot would essentially need to allow a complete pass-through of the response. This would limit the meta-bot's ability to layer on better structure on the response or even perform it's own AI layering on top of it because the meta-bot would then need to be able to parse all these varied responses. 3. How would a meta-bot rank bots in the same domain? Maybe by scraping the review ratings on multiple BOT marketplaces, gathering performance metrics by issuing sample queries, etc. Once users start using the meta-bot there is lot of information the meta-bot can gather to influence it's ranking but the issue of cold ranking BOTs is very challenging. 4. Structuring NLP queries specific to BOTs will also be challenging because the meta-bot will need to keep track of various "flavors" of queries a BOT understands. e.g. 2 hotel booking BOTs could have been developed where one does a progressive Q&A to get to information it needs to make a booking where as another understands a specific command like "Buy 2 economy class tickets from San Francisco to San Diego for 15th May" There are other such questions that make creating a meta-bot challenging. |
1. The incentive for a developer is to get better exposure. This is working with the assumption that the metabot has a larger userbase than individual chatbots. In general, the incentive is similar to what causes an online store to setup a 'store' on amazon's market place or retail sites to list on a price comparison engine.
2. As regards the second point, my thoughts when writing the was that it will infact be a direct pass through i.e. the metabot will not need to bother about the structure or nature of the requests/response but will instead focus on knowing about the bots and their capabilities. If it does this effectively, it theoretically pipes all requests for a specific task to the same bot to complete. This comes with it's own complexities as well.
3. To rank bots in the same doamin, an option is to guage the satisfaction of multiple users of the bots. For instance if a bot is faster to complete a flight reservation and the 'user' confirms to the metabot that it is satisfied with the service, that's a positive signal. This can be compared across multiple bots to measure the effectiveness of each bot.
4. Indeed, I agree it will be challenging. But I think the challenge is less of structuring the queries. If the meta-bot acts primarily as a pipe, its most important task is to identify who handles what and know the state of the conversation.
There are a lot of kinks to be worked out though...