LogoLogo
Tabnine websiteContact Sales
  • 👋Welcome
    • Overview
      • Architecture
        • Deployment options
      • Security
      • Privacy
      • Protection
        • Provenance and Attribution
      • Personalization
        • Tabnine’s Personalization in Depth
        • Connection: Global Codebase Awareness
      • AI Models
        • Tabnine's private and protected Universal models
        • Tabnine's fine-tuned AI models
      • Integrations
        • Atlassian Jira
      • System Requirements
      • Supported Languages
      • Supported IDEs
      • Tabnine Subscription Plans
        • Dev Preview
        • Dev
        • Pro
        • Enterprise (SaaS)
        • Enterprise (private installation)
    • Support & Feedback
  • 🚀Getting started
    • Install
      • Client setup (SaaS)
        • VS Code
          • Install Tabnine in VS Code
          • Activate Tabnine in VS Code
        • JetBrains IDEs
          • Install Tabnine in a JetBrains IDE
          • Activate Tabnine in a JetBrains IDE
        • Visual Studio
          • Install Tabnine in Visual Studio 2022
          • Activate Tabnine in Visual Studio 2022
        • Eclipse
          • Install Tabnine in Eclipse
          • Activate Tabnine in Eclipse
        • Sign in
          • Using an email
          • Using an authentication token
      • Client setup (private installation)
        • Join your team (private installation)
        • VS Code (private installation)
        • JetBrains IDEs (private installation)
        • Visual Studio (private installation)
        • Eclipse (private installation)
    • Quickstart Guide
      • Menus and Icons
    • Getting the Most from Tabnine Code Completions
      • Pause (snooze)
    • Getting the Most from Inline Actions
    • Getting the Most from Tabnine Chat
      • Launching Tabnine Chat
      • Interacting with Tabnine Chat
      • Reviewing suggestions
      • Writing prompts
      • Chat Context
        • Understanding Context
        • Jira Connection
        • Context Scoping
      • Conversing with Tabnine Chat
      • Switching between chat AI models
      • Image Prompts
      • Tabnine's Prompting Guide
        • Getting Started
        • Basic Prompting
          • Be specific and clear
          • Define the context
          • Start a fresh conversation as appropriate
          • Include necessary details
          • Ask for examples
          • Be concise but complete
  • 💪Software Development with Tabnine
    • Overview
    • Plan
    • Create
    • Test
      • Intro to the Test Agent
      • Test Agent Workflow
      • Custom Commands
      • Generate Test Files with @Mentions
    • Review
    • Fix
    • Document
    • Explain
    • Maintain
  • 🏭Administering Tabnine
    • Start a team
    • Manage a team
    • SaaS
      • Tabnine Pro team admin
        • Purchase Tabnine Pro
        • Adding and inviting users to Tabnine Pro
        • Assigning an admin role to a team member
        • Removing a team member
        • Tabnine Pro: Manage subscription and billing
        • Tabnine Pro - Change your payment method
        • Tabnine Pro - Change plan from monthly to annual
        • Unsubscribe from Tabnine Pro plan
      • Joining a Tabnine Pro team
      • Enterprise (SaaS) team admin
        • Set up a Tabnine Enterprise (SaaS) account
        • Invite team members
        • Manage your team
        • AI models for Chat (Enterprise SaaS)
      • Enterprise (SaaS) team member
        • Join your Tabnine team by invitation email (team member)
        • Join Tabnine team by link (member)
    • Private installation
      • Server setup guide
        • Kubernetes (MicroK8s) Installation guide
        • Deployment guide
          • Tabnine update guide
        • Air-gapped deployment guide
      • Admin guide
        • Monitoring Tabnine
        • Prometheus Operator install
        • Audit logs
      • Managing your team
        • Tabnine teams
        • Roles in an enterprise
        • Inviting users to your team
        • Deactivating and reactivating users
        • Deleting PII data of a deactivated user
        • Reset user's password
        • Usage reports
          • Reports Glossary
          • CSV-based reports (V2)
            • Configuring scheduled CSV reports
            • CSV-based reports V1 (Depracted since version 5.7.0
          • Usage API
        • Settings
          • General
          • Single Sign-On (SSO)
          • Personalization (f.k.a. Workspace)
            • Connecting to Remote Repositories
          • Email
          • License
          • Models
          • Access Tokens
        • IdP Sync
      • Release Notes
  • 📣Product Updates
    • What's new?
      • What's new? (August 2024)
      • What's new? (July 2024)
      • What's new? (June 2024)
      • What's new? (May 2024)
      • What's new? (April 2024)
      • What's new? (March 2024)
      • What's new? (February 2024)
      • What's new? (January 2024)
Powered by GitBook
On this page
  • High-level architecture
  • Deployment types

Was this helpful?

  1. Welcome
  2. Overview

Architecture

Last updated 9 months ago

Was this helpful?

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.

Deployment types

Tabnine has two deployment types:

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.

Enterprise customers can have fine-tuned AI models.

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.

: 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).

: 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.

👋
Explore plans
Learn more
Tabnine SaaS
Tabnine private installation