Copilot Arena
Check out our Github Repository!
Copilot Arena is an open source code AI coding assistant that provides paired autocomplete completions from different LLMs, which include state-of-the-art models like GPT-4o, Codestral, Llama-3.1 and more. Copilot Arena is free to use.
The goal of this project is to evaluate which language models provide the best coding assistance.
![Demo](https://raw.githubusercontent.com/lm-sys/copilot-arena/36377762f69231241dcff00817cb8801859612e7/assets/img/demo.gif)
Maintainers
![Website](https://img.shields.io/badge/waynechi.com-4285F4?style=flat-square&logo=google-chrome&logoColor=white)
![Website](https://img.shields.io/badge/valeriechen.github.io-4285F4?style=flat-square&logo=google-chrome&logoColor=white)
Installation Instructions
Please restart Visual Studio Code after installation.
If you've installed Copilot Arena before, please delete the ~/.copilot-arena folder to prevent any issues with new updates.
If installed successfully you will see Arena showing up on the bottom right corner of your window.
When a completion is being generated, the check mark changes to a spinning circle.
If you are using any other completion provider (e.g. Github Copilot), you must disable them when using Copilot Arena.
How do I use Copilot Arena?
Understanding Your Completions
Copilot Arena adopts a slightly different user interface compared to a typical code completion.
- Copilot Arena displays two completions, one on top of the other.
- Copilot Arena repeats the same line prefix to keep the top and bottom outputs as similar as possible.
![Copilot Arena Example](https://raw.githubusercontent.com/lm-sys/copilot-arena/36377762f69231241dcff00817cb8801859612e7/assets/img/example.png)
Note: While we are still in the building process, you will also see two completion ids next to the ===== for debugging purposes. Please reference these ids when notifying us of any issues!
Accepting Completions
Press Tab
to accept the top completion and Shift-Tab
to accept the bottom completion. You can also choose to accept neither completion and continue typing.
Viewing your model preferences
![Preference Example](https://raw.githubusercontent.com/lm-sys/copilot-arena/36377762f69231241dcff00817cb8801859612e7/assets/img/model_pref_leaderboard.png)
- When you accept a completion, you can find out which model generated it by checking the status bar.
- After twenty votes, you will unlock your personal leaderboard, where you can find out which models you prefer and their corresponding elo scores. Based on our experience, everyone will have slightly different model preferences. Stay tuned for a global leaderboard.
- You can find the personal leaderboard by clicking on the
Copilot Arena
icon on the sidebar.
Privacy
Your privacy is important to us. The code in your current file is sent to our servers and sent to various API providers. By default, we collect your code for research purposes. You can opt-out of this.
- To opt-out of data collection, please change
arena.codePrivacySettings
to Debug
. We will only log your code for debugging.
- To disable logging entirely, please change
arena.codePrivacySettings
to Private
. Opting-out means any bugs you encounter will be non-reproducable on our end.
You can find these settings by searching for "arena" in your vscode settings or clicking the gear button of the Copilot Arena extension -> Extension Settings.
Code Arena Settings
Code Arena provides several settings. You can find all settings by searching for "arena" in your vscode settings.
Setting |
Description |
arena.enableTabAutocomplete |
Enable Arena's tab autocomplete feature. |
arena.enableAutomaticTabAutocomplete |
Enables automatic autocomplete suggestions while typing. Turn off to force manual invocations. |
arena.maxOutputLines |
Limit the number of lines of code that can be outputted. Default is 5 lines. |
arena.displayCompletionIds |
Display completion ids (next to the =====). This is used for debugging purposes. |
arena.codePrivacySettings |
Choose your privacy settings for Code Arena:\n- Private: No code is collected\n- Debug: Code is only collected as debug logs\n- Research: Code is uploaded to Code Arena's private servers for research purposes. Your votes are always stored. |
arena.modelTags |
Experimental (WIP) Select the model tags to pick which models you would like to use. Multiple tags can be selected. If no tag is selected, all models are used. |
Have a question or feedback?
Check out our Github Repository!