Table of contents
We’re excited to announce another leap forward in the performance and capability of the Tabnine AI coding assistant: highly personalized recommendations for every developer through local code awareness, and recommendations tailored to engineering teams through integrations with their global codebase.
Tabnine can now use the context of our users and enterprise customers to deliver more precise and more personalized recommendations for code generation, code explanations, and guidance, and for test and documentation generation. Starting today, you can increase Tabnine’s contextual awareness by enabling it to become aware of your environment — from a developer’s local IDE to the entire code base — and receive code completions, explanations and documentation that are specifically tailored to you and your engineering team.
Notably, Tabnine continues to stay true to our values and delivers these highly personalized recommendations without compromising our customers’ privacy. We continue to commit to advanced encryption and zero data retention for our SaaS users and offer company codebase awareness within our private, customer-deployed product. By significantly improving the quality of the output, these updates will help engineering teams further accelerate and simplify software development without sacrificing the security of legal compliance.
With code awareness, Tabnine takes into account the relevant parts of your project (e.g., existing APIs, frameworks, and patterns) and provides results that are more accurate and more specific to you.
For example, Tabnine will tell you how to connect to a database in a way that’s used for your project instead of connecting to any available database or connecting to a database in a different or generalized way.
For example, if you have an app to book flights, you can ask Tabnine to generate code that validates the flight data based on the logic within that specific app.
Generate code that aligns with the syntax and semantics of elements in your project, thus reducing potential hallucinations. Check code relative to project-specific logic. Be consistent with style and coding patterns when generating or completing code.
Generate a test for function X using the structure, style, and syntax used for the test of function Y.
In the past few years, AI coding assistants have gone from a “nice to have”’ for savvy developers to a “must have,” being implemented by engineering managers across their teams as they’ve proven to increase developers’ productivity, efficiency, and satisfaction. Early results from adopting AI software development tools have been promising, but there’s still significant room to improve, especially when it comes to continuing to improve the quality of the responses in the context of what the user is asking.
The LLMs that each of the AI coding assistants uses have some inherent limitations (even an engineered-for-purpose coding model like Tabnine’s). By design, these LLMs are universal; although they’ve been trained on vast amounts of data and contain billions of parameters, they’re not generally aware of the specific code and distinctive patterns of an individual organization. This lack of context and domain-specific knowledge likens their recommendations more to a skilled software engineer off the street rather than a deeply experienced engineer who is familiar with how an organization works. The result is that the recommendations from AI coding assistants, while accurate, often aren’t specifically tailored to an individual developer’s needs.
Just like you need context to intelligently answer questions in real life, coding assistants also need context to intelligently answer questions. Contextual awareness augments the LLMs by providing the subtle nuances that make a developer and organization unique. Tabnine achieves this context awareness in two ways:
In addition to the personalization of the AI assistant through the new capabilities, Tabnine continues to offer model customization to further enrich the capability and quality of the output. Enterprise engineering teams can benefit from a custom “Tabnine + You” model that fine-tunes our universal model with a customer’s own code.
The personalized recommendations from Tabnine don’t come at the expense of giving away access or control over your proprietary code and user data.
To achieve personalization, Tabnine uses retrieval-augmented generation (RAG) to provide the Tabnine AI coding assistant with knowledge of your organization’s specific characteristics and code. RAG is widely used to improve AI performance and not only reduces LLM hallucinations but also helps to overcome the inherent limitations of training data. Continuing to honor our commitment to your privacy, any information Tabnine uses to support RAG remains exclusively yours. Tabnine commits to zero retention or sharing of any customer data, ensuring your privacy at all times.
Here’s a brief description of how we handle data and maintain privacy.
Check out the Docs for more details on our data privacy standards.
There’s no additional cost to get these new personalized results from Tabnine. Every Tabnine Pro user is already benefiting from local code awareness. Tabnine Enterprise users can follow these instructions to activate local code awareness for their teams and can request access to the private preview of global code awareness by contacting their sales representative or our support team.
Sign up for our webinar to see this new level of personalization in action or check out the Docs to learn more. If you’re not yet a customer, you can sign up for Tabnine Pro today – it’s free for 90 days.