Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 16 additions & 32 deletions docs/cody/capabilities/autocomplete.mdx
Original file line number Diff line number Diff line change
@@ -1,59 +1,43 @@
# Autocomplete

<p className="subtitle">Learn how Cody helps you get contextually-aware autocompletions for your codebase.</p>
<p className="subtitle">Learn how Cody helps you get contextually-aware autocompletion for your codebase.</p>

Cody provides intelligent **autocomplete** suggestions as you type using context from your code, such as your open files and file history. Cody autocompletes single lines or whole functions in any programming language, configuration file, or documentation. It’s powered by the latest instant LLM models for accuracy and performance.
Cody predicts what you're trying to write before you even type it. It offers single-line and multi-line suggestions based on the provided code context, ensuring accurate autocomplete suggestions. Cody autocomplete supports a [wide range of programming languages](/cody/faq#what-programming-languages-does-cody-support) because it uses LLMs trained on broad data.

Autocomplete supports any programming language because it uses LLMs trained on broad data. It works exceptionally well for Python, Go, JavaScript, and TypeScript.

<video width="1920" height="1080" loop playsInline controls style={{ width: '100%', height: 'auto' }}>
<source src="https://storage.googleapis.com/sourcegraph-assets/Docs/Media/cody-in-action.mp4" type="video/mp4" />
</video>
Code autocompletions are optimized for both server-side and client-side performance, ensuring seamless integration into your coding workflow. The **default** autocomplete model for Cody Free, Pro, and Enterprise users is **[DeepSeek V2](https://huggingface.co/deepseek-ai/DeepSeek-V2)**, which significantly helps boost both the responsiveness and accuracy of autocomplete.

## Cody's autocomplete capabilities

Cody's autocompletion model has been designed to enhance speed, accuracy, and the overall user experience. Both Cody Free and Pro users can expect the following with Cody's autocomplete:
The autocompletion model is designed to enhance speed, accuracy, and the overall user experience that offers:

- **Increased speed and reduced latency**: The P75 latency is reduced by 350 ms, making the autocomplete function faster
- **Improved accuracy for multi-line completions**: Completions across multiple lines are more relevant and accurately aligned with the surrounding code context
- **Higher completion acceptance rates**: The average completion acceptance rate (CAR) is improved by more than 4%, providing a more intuitive user interaction

On the technical side, Cody's autocomplete is optimized for both server-side and client-side performance, ensuring seamless integration into your coding workflow. The **default** autocomplete model for Cody Free, Pro and Enterprise users is **[DeepSeek V2](https://huggingface.co/deepseek-ai/DeepSeek-V2)**, which significantly helps boost both the responsiveness and accuracy of autocomplete. Cody Enterprise users get **StarCoder** as the default autocomplete model.

## Prerequisites
## How does autocomplete work?

To view how Cody provides code completions , you'll need to have the following:
First, you'll need the following setup:

- A Free or Pro account via Sourcegraph.com or a Sourcegraph Enterprise account
- A supported editor extension (VS Code, JetBrains) installed
- A Free or Pro account via Sourcegraph.com or a Sourcegraph Enterprise instance
- A supported editor extension (VS Code, JetBrains)

## Working with code autocomplete
The autocomplete feature is enabled by default on all IDE extensions, i.e., VS Code and JetBrains. Generally, there's a checkbox in the extension settings that confirms whether the autocomplete feature is enabled or not. In addition, some autocomplete settings are optionally and explicitly supported by some IDEs. For example, JetBrains IDEs have settings that allow you to customize colors and styles of the autocomplete suggestions.

The autocomplete feature is enabled by default on all IDE extensions, i.e., VS Code and JetBrains. Generally, there's a checkbox in the extension settings that confirms whether the autocomplete feature is enabled or not. In addition, some autocomplete settings are optionally and explicitly supported by some IDEs. For example, JetBrains IDEs have custom settings that allow you to customize colors and styles of the autocomplete suggestions.
When you start typing, Cody will automatically provide suggestions and context-aware completions based on your coding patterns and the code context. These autocomplete suggestions appear as grayed text. Press the `Enter` or `Tab` to accept the suggestion.

You can start typing and Cody will automatically provide suggestions and context-aware completions based on your coding patterns and the code context. These autocomplete suggestions appear as grayed text. To accept the suggestion, press the `Enter` or `Tab` key.
<video width="1920" height="1080" loop playsInline controls style={{ width: '100%', height: 'auto' }}>
<source src="https://storage.googleapis.com/sourcegraph-assets/Docs/Media/cody-in-action.mp4" type="video/mp4" />
</video>

## Configure autocomplete on an Enterprise Sourcegraph instance

<Callout type="note">Users with admin access can only configure autocomplete settings.</Callout>

By default, a fully configured Sourcegraph instance picks a default LLM to generate code autocomplete. Custom models can be used for Cody autocomplete based on your specific requirements. To do so:

- Go to the **Site admin** of your Sourcegraph instance
- Navigate to **Configuration > Site configuration**
- Here, edit the `completionModel` option inside the `completions`
- Click the **Save** button to save the changes

<Callout type="note">Cody autocomplete works only with Anthropic's Claude Instant model. Support for other models will be coming later.</Callout>

<Callout type="info">Self-hosted customers must update to version 5.0.4 or more to use autocomplete.</Callout>

Before configuring the autocomplete feature, it's recommended to read more about [Enabling Cody on Sourcegraph Enterprise](/cody/clients/enable-cody-enterprise) guide.

Cody Autocomplete goes beyond basic suggestions. It understands your code context, offering tailored recommendations based on your current project, language, and coding patterns. Let's view a quick demo using the VS Code extension.

<video width="1920" height="1080" loop playsInline controls style={{ width: '100%', height: 'auto' }}>
<source src="https://storage.googleapis.com/sourcegraph-assets/Docs/Media/contexual-autocpmplete.mp4" type="video/mp4" />
</video>

Here, Cody provides suggestions based on your current project, language, and coding patterns. Initially, the `code.js` file is empty. Start writing a function for `bubbleSort`. As you type, Cody suggests the function name and the function parameters.

Cody automatically suggests the next few code snippets for every new line based on your current context, i.e., functions for `insertionSort` and `selectionSort`.
Cody supports and uses a set of models for autocomplete. Learn more about these [here](/cody/capabilities/supported-models#autocomplete). It's also recommended to read the [Enabling Cody on Sourcegraph Enterprise](/cody/clients/enable-cody-enterprise) docs.
27 changes: 26 additions & 1 deletion docs/cody/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,32 @@ Yes, Cody relies on Sourcegraph for two essential functions:

### What programming languages does Cody support?

Cody supports a wide range of programming languages, including JavaScript, TypeScript, PHP, Python, Java, C/C++, C#, Ruby, Go, SQL, Swift, Objective-C, Perl, Rust, Kotlin, Scala, Groovy, R, MATLAB, Dart, Lua, Julia, COBOL, and shell scripting languages (like Bash, PowerShell).
Cody supports a wide range of programming languages, including:

- JavaScript
- TypeScript
- PHP
- Python
- Java
- C/C++
- C#
- Ruby
- Go
- SQL
- Swift
- Objective-C
- Perl
- Rust
- Kotlin
- Scala
- Groovy
- R
- MATLAB
- Dart
- Lua
- Julia
- COBOL
- Shell scripting languages (like Bash, PowerShell)

Cody's response quality on a programming language depends on many factors, including the underlying LLM being used. We monitor accuracy metrics across all languages and regularly make improvements. [Let us know](https://community.sourcegraph.com/) if you're seeing poor quality on a particular programming language.

Expand Down
2 changes: 1 addition & 1 deletion docs/index.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Sourcegraph is a Code Intelligence platform that deeply understands your code, no matter how large or where it’s hosted, to power modern developer experiences.

- **AI code assistant**: Use Cody to read, write, and understand your entire codebase faster
- **Cody**: Use Cody our AI code assistant to read, write, and understand your entire codebase faster
- **Code search:** Search through all of your repositories across all branches and all code hosts
- **Code intelligence:** Navigate code, find references, see code owners, trace history, and more
- **Fix & refactor:** Roll out and track large-scale changes and migrations across repos at once
Expand Down
Loading