Visual Studio Tools for AI

I noticed that “Visual Studio Tools for AI” (VST_AI) was released a few days ago. What is VST_AI you ask? Well, the short answer is that it’s a collection of behind-the-scenes utilities that can be added to the VS tool, to help you write machine learning programs.

Put another way, VST_AI doesn’t let you do anything new, instead, it’s designed to make it easier to do things you can already do (in some cases, much, much easier).

In the screenshots below (click to enlarge), I launched VS2017 (VST_AI works with VS2015 and VSCode too) and went to Tools | Extensions. Next, I searched for “visual ai” and the search found the correct add-in, so I clicked on the Download button.

After re-launching VS2017, the menu bar now had an “AI Tools” item. I did a File | New Project | AI Tools | CNTK Application (CNTK is a library of sophisticated ML code, which is called by Python code).

I instantly got an error message that “Visual Studio Tools for Python” is required too. OK, so I went to Tools | Extensions and searched for it and found . . . nothing. After thrashing about I finally found it under Tools | Get Tools and Features. I find it mildly annoying the enhancements to VS can be in multiple locations — Extensions, Features, NuGet, etc.

Then, after installing VST for Python, when I tried to run the template program I got a “No numpy Module error”. Sigh. So I went Tools | Python | Python Environments to point at my existing Anaconda Distribution, which has numpy. If I hadn’t run into similar problems before, solving that mini-problem could have taken a long time.

I added a few lines of code to the template code and was able to set a Watch to inspect a List. Pretty nice!

Somewhat sadly, my main impression of the whole process was, “Jeez, VS is becoming massively complex”, rather than, “Wow, Visual Studio Tools for AI is cool.” There’s always a tradeoff between using a bunch of tools that do just one or two things very well, or using just one meta tool like VS that can do dozens or hundreds of things. I generally prefer tools that are sort of in-between in complexity.

Anyway, It’s quite likely I’ll grow to like VST_AI after I use it for a bit — but it’s possible that I’ll end up using an older development environment like the ones I use now. It’s usually impossible to predict which developer tools will be a success and which will fade away. But I’m very optimistic about VST_AI.

I’m not sure, but I believe that VST_AI is a rebranded version of project OpenMind Studio (or part of OMS). OMS was announced publically in 2016 then went dark. I’ll check with my colleagues and update this post if in fact, VST_AI does not contain OMS bits.

I didn’t get a chance to check out the more advanced features of VST_AI. These include a lot of integration with Azure cloud storage and the Azure Machine Learning (AML) services. This integration of Cloud storage and ML tools is arguably the most important, and useful, part of VST_AI. And the integration story is what will probably make VST_AI a must-have for me eventually. There’s a good video at that I recommend you look at, if you’re interested.

This entry was posted in CNTK, Machine Learning. Bookmark the permalink.