AI-Driven Stack Overflow Bot Answers Programming Questions Within VS Code Editor
Visual Studio Code developers can now leverage the power of Microsoft's AI-driven Bot Framework with a new extension developed by Microsoft and Stack Overflow, the popular programming Q&A site.
The Stack Overflow Bot lets VS Code programmers get immediate answers to their coding questions from Stack Overflow experts directly from the editor.
It was created to show off Microsoft's Cognitive Services, which provides numerous AI services for vision recognition, intelligent recommendations, semantic search, natural language processing, audio-to-text conversion, speaker recognition and more.
"This Bot is intended to demonstrate a number of integrations between Microsoft Bot Framework, and Microsoft's Cognitive Services," the project's GitHub site states. "From Microsoft's Cognitive Services, this bot uses: Bing Custom Search, Language Understanding Intelligence Service (LUIS), QnA Maker, and Text Analytics."
While the bot framework can be put to use on a variety of application types and platforms (Skype, Microsoft Teams, Cortana, Slack and more), Microsoft developed the VS Code extension to make it more easily accessible. After installing it via git cloning, VS Code developers can call up the bot with one simple command to ask it questions, obviating the usual practice of exiting the editor, going to a browser, calling up the SO site and typing in a search or posting a question.
"Developers want to be in the zone," said Matt Sherman, engineering manager, Stack Overflow, in an introductory video. "Anything that gets you an answer without taking you out of that zone is powerful. The promise of Stack Overflow's bot built with Microsoft AI is to keep developers in the zone while they're working on their code."
Components of the SO bot project include:
- DialogAnalyzerFunc: A C# project that uses Computer Vision and Text Analytics to parse the contents of a screenshot.
- StackCode: A TypeScript project that demonstrates how the bot can be built into Visual Studio Code.
Be warned that using the bot requires a lot of setup and configuration work, such as generating keys for leveraged services such as language understanding, dialog analyzer, Bing custom search and many more. The GitHub project provides instructions for that setup work.
Stack Overflow noted that it uses cognitive services to further its mission of matching predicting. "We use machine learning to help figure out what people are looking for so that we can answer their questions," said David Robinson, data scientist, Stack Overflow. "With this bot, you can integrate that into the developer environment so that developers can immediately get the answer to their question. By making these tools readily available through Azure Machine Learning, I think that Microsoft is doing the data science community a great service."
Microsoft has been introducing its cutting-edge technologies more and more into the cross-platform, open source VS Code editor, serving as a lightweight alternative to the full-blown Visual Studio IDE. For example, during the recent Ignite conference -- where the SO bot also debuted -- the company also announced yet another new VS Code extension: Visual Studio Code Tools for AI.
"This extension provides a rich set of capabilities for easily building models with deep learning frameworks including Microsoft Cognitive Toolkit (CNTK), Google TensorFlow, Theano, Keras, Chainer and Caffe2," said Microsoft exec Joseph Sirosh in a blog post. "It integrates with the AML Experimentation service for executing jobs locally and in the cloud, and with the AML Model Management service for model deployment."
While Microsoft hasn't said it prefers VS Code over the Visual Studio IDE to introduce cutting-edge tooling, it's obvious the company is emphasizing use of the increasingly popular editor to make its AI efforts more accessible.
David Ramel is the editor of Visual Studio Magazine.