C# SDK for Microsoft's Conversation As a Platform

By Josh Althauser

At the Build 2016 conference, Microsoft CEO Satya Nadella showcased a bold new vision for the future of technology: "Conversation as a Platform." During the event, which took place in March, Nadella discussed the idea of human conversation as the future of interfaces. No longer would people need to press buttons and make pre-ordained choices, but they could actually communicate with their technology, needing nothing more than their native language.

This idea has incredibly high potential because it removes nearly the entire learning curve of using a new piece of software. In Nadella's own words, "it's a simple concept, yet it's very powerful in its impact. It is about taking the power of human language and applying it more pervasively to our computing." Imagine how easy troubleshooting and comprehension would be if the user could just ask the software to do something.

The heart of this conversational platform would be chatbots and voice-controlled assistants, and to help develop an ecosystem of bots on Microsoft's platform, the company launched a Bot Framework to assist software developers with building their own chatbots. The framework itself consists of SDKs (software development kits) for C#, node.js, .NET, and REST, a library of existing bots that developers can use, and numerous integrations with third-party applications.

If you're a C# developer, there are two C# SDKs for Microsoft's conversational interface that you should know about to avoid some of the most common mistakes. The first, a C# Bot Builder, was released last spring and does just as its namesake suggests: help developers build bots in C#. According to its Github page, the SDK provides a "powerful dialogue system" that utilizes "built-in dialogs for simple things like Yes/No, strings, numbers, enumerations" and can utilize Microsoft's AI frameworks. Bots built using this particular SDK can handle freeform queries from consumers or scripted interactions where the user is aware of the options they can choose from, and they are also stateless, which makes it far easier to scale them.

The second C# SDK, released in early September of last year, engages with the more interesting LUIS. LUIS, a subset of Microsoft Cognitive Services, is an API whose moniker stands for Language Understanding Intelligent Service, and it is the AI behind Microsoft's language processing efforts. LUIS is a cloud service that brings machine learning to apps, but what sets it apart from the technology of Amazon Echo and the IBM Watson Dialog service is that it also provides a drag and drop tool that lets developers build their own language parser.

This level of customization is unprecedented within a natural language processor and is a boon to any app developer who needs a high level of customization with language parsing. However, it should be noted that LUIS is currently in beta, and to access LUIS (and the second C# SDK), you will need to publish your app on LUIS' site.

The LUIS C# SDK helps improve language parsers in two ways: one, it can be applied "to use the client directly and call the 'Predict' and 'reply' that are present in 'LuisClient,'" and two, the SDK can "create handlers for each intent and set up a router using these handlers to have the router handle the responses instead of doing so within the client application."

After Microsoft was late to launch mobile apps in 2007, the company has been pushing innovation forward to climb back to the top. Microsoft converted to Agile development ahead of the curve, and now the software company wants to revolutionize chatbots before another company does. Their method of achieving that goal? Putting tools, such as these C# tools, in the hands of developers and encourage them to create cutting-edge apps within their ecosystem. Time will tell if this crowd-sourced strategy pays off.

About the Author

Joshua Josh Althauser is a tech entrepreneur and open source advocate specializing in providing mentorship for startups. You may connect with him on Twitter.


Related Articles

Comments

  • Mr.

    Posted by Vipin Pandey on 01/05/2017 06:18am

    Its a good news for the developers who love to work on chatbots. Yes, you right this time Microsoft is one step ahead to launch the conversation platform. We love the way Google Assistant humorously chat. Now we can expect many such bots. Thanks for posting :)

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • As all sorts of data becomes available for storage, analysis and retrieval - so called 'Big Data' - there are potentially huge benefits, but equally huge challenges...
  • The agile organization needs knowledge to act on, quickly and effectively. Though many organizations are clamouring for "Big Data", not nearly as many know what to do with it...
  • Cloud-based integration solutions can be confusing. Adding to the confusion are the multiple ways IT departments can deliver such integration...

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date