Edureka - Flat 25% OFF On Live Courses

Deep TabNine: Write code faster using deep learning

Image – TabNine Logo

We have already looked at Facebook’s AROMA code-to-code search and recommendation tool. In this post,we take look at TabNine autocompleter with deep learning capabilities that helps in writing code faster & good quality.

      1. TabNine is the all-language autocompleter.It relies on machine learning to provide responsive, reliable, and relevant suggestions.
      2. TabNine builds an index of your project, reading your .gitignore so that only source files are included and uses this index to provide useful information to a softmax regression model which ranks candidate completions.The candidate completions are then given to a secondary completion engine, which may suggest additional characters for completion, based on similar patterns found elsewhere in your project.

        Image – TabNine Completion Model Engine

      3. TabNine then uses another abstraction layer and parameterizes the patterns by the identifiers they contain, allowing it to provide suggestions involving words that it has only seen once.

        Image – TabNine complete process

      4. TabNine has been trained on around 2 million source files from GitHub.During model training,it would predict each token given the tokens that come before it.To do this,it learns complex behavior using deep learning capabilities, such as type inference in dynamically typed languages (check example below)
      5. TabNine is based on Open AI GPT-2 that uses the Transformer network architecture.Architecture takes care of problems in natural language processing. Although modeling code and modeling natural language might appear to be unrelated tasks, modeling code requires understanding English in some unexpected ways.
      6. TabNine Model also uses documentation written in natural language to infer function names, parameters, and return types.
      7. TabNine can be installed from here and configuration is easy.

        Image – Tabnine Premium vs Free version

      8. TabNine currently has support for Python, JavaScript, Java, C++, C, PHP, Go, C#, Ruby, Objective-C, Rust, Swift, TypeScript, Haskell, OCaml, Scala, Kotlin, Perl, SQL, HTML, CSS, and Bash.
      9. TabNine is also available as cloud service (beta) as well so that we can make use TabNine’s cloud servers for GPU-accelerated autocompletion.

Additional Resources :

Like this post? Don’t forget to share it!

System Mechanic® Ultimate Defense™
Deep TabNine: Write code faster using deep learning
Article Name
Deep TabNine: Write code faster using deep learning
Check out how TabNine uses machine learning to provide responsive, reliable, and relevant suggestions.
Publisher Name
Publisher Logo
%d bloggers like this: