Architecture

Tabnine provides a secure, reliable, and resilient platform that's been designed from the ground up based on industry best practices.

Tabnine installs on a Kubernetes cluster on-premises or supported cloud providers.

High-level architecture

The following diagram displays Tabnine's architecture:

The Tabnine platform includes three main components:

Tabnine client (IDE plugin)

End users install Tabnine as an IDE plugin on their local device.

The Tabnine IDE plugin enables Tabnine’s code completion or chat features within the developer’s IDE.

The client queries a remote Tabnine cluster requesting assistance for the relevant Context Window.

Tabnine cluster

Tabnine's Kubernetes cluster runs the following services:

  • Inference service: Runs on a GPU-accelerated node, which serves responses based on the AI models

  • Data plane: Includes analytics and log services; no code is stored nor sent to the data plane, and user identifiers are always masked

  • Control plane: Includes identity and user management, an update service, and a configuration service

Tabnine’s AI models

Tabnine uses two types of proprietary AI models for code completions and chat:

  • Universal models, trained on public, permissive, state-of-the-art, open source code

  • Fine-tuned AI models with expanded training of Tabnine’s models with your codebase (Tabnine Enterprise only)

Basic and Pro users only have access to the universal models.

Enterprise customers can have fine-tuned AI models. Explore plans

In addition: Tabnine Chat users in Tabnine Pro and can switch to third-party models not hosted by Tabnine, by accepting their terms of use. Note, the third-party models may offer different code privacy and protection policies. In Tabnine Enterprise, the team admin controls which chat models are available to the organization. For private installation deployment, only the Tabnine Protected model is currently available. Learn more

Deployment types

Tabnine has two deployment types:

Tabnine SaaS: The Tabnine server is hosted in the Tabnine Secure Cloud. This is the default Tabnine option for users with all Tabnine plans (Starter, Pro, and Enterprise).

Tabnine private installation: The Tabnine server is hosted privately by the customer, either on the customer's VPC (AWS, GCP, or Azure) or on-premises. This is an option that's offered to some Tabnine Enterprise customers.

Follow the right docs

The client installation and management instructions are slightly different between Tabnine SaaS and Tabnine private installation.

Which setup is relevant for me?

Follow the Tabnine SaaS docs unless you were told by your team manager that you use a private installation and you know your company's private Tabnine Server URL.

Last updated