Visual Studio IntelliCode FAQ
This FAQ answers some of the questions you may have about Visual Studio IntelliCode.
Q: Are there any differences between IntelliCode for Visual Studio and Visual Studio Code?
IntelliCode for Visual Studio offers some additional functionality over the extension for Visual Studio Code, including autogenerated EditorConfig files and customized IntelliSense based on your code. For more information, see IntelliCode for Visual Studio and IntelliCode extension for Visual Studio Code.
Q: What makes “AI-assisted IntelliSense” better than regular IntelliSense?
With IntelliCode, the completion list suggests the most likely correct API for a developer to use rather than presenting a simple alphabetical list of members. To provide this dynamic list, IntelliCode uses the developer's current code context and patterns based on thousands of highly rated, open-source projects on GitHub. The results form a model that predicts the most likely and most relevant API calls.
For C# developers, IntelliCode can learn patterns from your code. This means IntelliCode can make recommendations on code that isn’t in the open-source domain, for example, methods in your own utility classes or domain-specific library calls. For more information, see IntelliCode models based on your code FAQ.
Q: How good are the IntelliCode completion suggestions?
Developers at Microsoft have been using IntelliCode’s recommendations internally for some time and believe the suggestions are useful. Additionally, we constantly tune our models based on user feedback and new innovations from our data science teams.
Q. Why isn’t my favorite library seeing recommendations?
For each language, we continuously improve its base model's coverage of common libraries and types. If there’s a common library you'd like to see included, use the feedback controls at the bottom of this page to let us know.
For C# users, IntelliCode can learn patterns from your own code. For more information, see IntelliCode team completions.
Q: How do I turn starred suggestions off?
To turned starred IntelliSense suggestions off, disable the extension:
In Visual Studio, choose Extensions > Manage Extensions, find and select the IntelliCode extension, and then click Disable.
In Visual Studio Code, click Extensions, find and select the IntelliCode extension, and then click Disable.
Q. Error training team model for completions in Azure DevOps task
The Visual Studio IntelliCode Team Model Training Azure DevOps Task is triggered only when you run a build or release caused by one of the following reasons:
ContinuousIntegration. For more information on build and release pipeline triggering reasons see:
In particular, team model for completion training will not work on pull requests. This is by design in order to avoid creating team models for completions that use temporary commits that may get squashed once the pull request is completed, given that users would be unable to consume such models. For more information see Q. Error consuming or training team model due to unknown commit.
Q. Error training team model for completions due to model ownership
Team models can only be trained and re-trained by the owner of the model. When no model has been trained for a repository, anyone can create a team model for that repository and become the model's owner. The owner can also delete the model from IntelliCode's services, see Delete your model.
We're currently working on improving this experience so that anyone with access to the repository can train and re-train team models for it. Sign up for news and updates about team models at Visual Studio IntelliCode.
Q. Error training team model for completions due to throttling
Team models can only be trained once per day for each repository. Typically that is enough to keep a team model for completions freshly updated with the latest version of your code. If you are finding that your model is still stale when trained at this rate, please let us know by raising an issue at https://aka.ms/vsicissues.
Q. Error consuming or training team model due to unknown commit
When a team model is trained on a commit, and then that commit is deleted from the git history, or the commit is not accessible to the training machine for another reason, then you'll not be able to consume the model associated to that commit. You may also be unable to train new models going forward if that's the case.
If your model is unable to be re-trained due to changes in the git history, try deleting the model and then do another team model training. See Delete your model.
Q. Is it free?
IntelliCode will always have a substantive free tier. Microsoft may start to charge for some of the IntelliCode features in the future.
Q. What's coming in the future for IntelliCode?
For information about future features, sign up for news and updates at Visual Studio IntelliCode.