Enterprise server architecture

Tabnine provides a secure, reliable, and resilient platform, which has been designed from the ground up based on industry best practices.
Tabnine installs on a Kubernetes cluster on-premise or supported cloud providers.
Before you start, you should review the system requirements for running Tabnine.

High-level architecture

There are 4 main components in Tabnine’s solution:
  1. 1.
    Tabnine client (IDE Plugin)
    The IDE plugin is responsible for providing Tabnine’s code completion in the developer’s IDE. Tabnine’s IDE plugins are open-source projects fully maintained by the Tabnine team.
Tabnine cluster - Kubernetes cluster that runs the following services:
  1. 2.
    Inference service The inference service runs on a GPU-accelerated node, which serves the AI models.
  2. 3.
    Data plane The data plane includes analytics and log services. No code is stored or sent and user identifiers are always masked.
  3. 4.
    Control plane The control plane includes Identity and User Management, an update service, and a configuration service.

Self-hosted deployment

In a self-hosted deployment, the Tabnine cluster is a Kubernetes cluster hosted on your VPC or a private network. The Tabnine cluster sends technical and statistical data to Tabnine’s own servers to ensure system health and quality of service. No code or PII data is ever sent to Tabnine’s servers, and Tabnine doesn't have access to the customer environment.

Air-gapped deployment

The Tabnine solution can be deployed in a completely air-gapped environment.
Last modified 15d ago