You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Browse filesBrowse the repository at this point in the historyBrowse files
authored
Differentiate Copilot BYOK features (#62095)
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Sophie <29382425+sophietheking@users.noreply.github.com>
intro: 'Use your existing LLM provider with {% data variables.product.prodname_copilot %} to save costs or consolidate billing.'
5
+
versions:
6
+
feature: copilot
7
+
contentType: concepts
8
+
---
9
+
10
+
{% data reusables.copilot.byok-two-mechanisms %}
11
+
12
+
## Local BYOK
13
+
14
+
Various {% data variables.product.prodname_copilot_short %} clients allow users to configure custom LLM keys locally.
15
+
16
+
These keys are only handled client-side: they are stored locally and the associated models aren't available to other users. This mechanism removes dependency on {% data variables.product.github %}'s {% data variables.product.prodname_copilot_short %} API, making it suitable for air-gapped environments or users without {% data variables.product.prodname_copilot_short %} subscriptions.
17
+
18
+
Local BYOK is available in the following clients.
19
+
20
+
| Client | More information |
21
+
| --- | --- |
22
+
| {% data variables.product.prodname_vscode_shortname %} |[Add a model from a built in provider](https://code.visualstudio.com/docs/agent-customization/language-models#_add-a-model-from-a-built-in-provider) in the {% data variables.product.prodname_vscode_shortname %} documentation |
23
+
| JetBrains |[Bring your own key (BYOK) support for JetBrains IDEs and Xcode](https://github.blog/changelog/2025-09-11-bring-your-own-key-byok-support-for-jetbrains-ides-and-xcode-in-public-preview/#try-it-out) on {% data variables.product.prodname_blog %} |
24
+
| Xcode |[Bring your own key (BYOK) support for JetBrains IDEs and Xcode](https://github.blog/changelog/2025-09-11-bring-your-own-key-byok-support-for-jetbrains-ides-and-xcode-in-public-preview/#try-it-out) on {% data variables.product.prodname_blog %} |
25
+
| {% data variables.copilot.copilot_cli_short %} |[AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models)|
26
+
| {% data variables.copilot.github_copilot_app %} |[AUTOTITLE](/copilot/how-tos/github-copilot-app/use-byok-models)|
27
+
| {% data variables.copilot.copilot_sdk_short %} |[AUTOTITLE](/copilot/how-tos/copilot-sdk/auth/byok)|
28
+
29
+
For users on a {% data variables.copilot.copilot_business_short %} or {% data variables.copilot.copilot_enterprise_short %} plan, the ability to use local BYOK in IDEs can be disabled by an enterprise or organization policy.
30
+
31
+
## Enterprise BYOK
32
+
33
+
>[!NOTE]
34
+
>{% data reusables.copilot.byok-preview-note %}
35
+
36
+
Enterprise owners can add keys for custom models in their enterprise settings. They can also allow organization owners to do the same in their organization settings, by enabling the **Enable custom models** policy.
37
+
38
+
Custom models are available in {% data variables.copilot.copilot_byok_supported_features %}, and apply to users on the enterprise's {% data variables.copilot.copilot_business_short %} or {% data variables.copilot.copilot_enterprise_short %} plan. Users can select them in the same way they would select a {% data variables.product.github %}-hosted model.
39
+
40
+
Enterprise BYOK is handled server-side and affects the models served to users by the {% data variables.product.prodname_copilot_short %} API. Users must have a {% data variables.product.prodname_copilot_short %} license and internet access to use the custom models.
41
+
42
+
For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/enable-custom-models).
Copy file name to clipboardExpand all lines: content/copilot/how-tos/administer-copilot/manage-for-enterprise/enable-custom-models.md
+6-9Lines changed: 6 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,21 +1,20 @@
1
1
---
2
-
title: Using your LLM provider API keys with Copilot
3
-
shortTitle: Use your own API keys
4
-
intro: 'Learn how to integrate your preferred custom models with {% data variables.product.prodname_copilot %} by using your own LLM API keys, and make them available for organizations in your enterprise account.'
2
+
title: Enabling custom models for GitHub Copilot in your enterprise
3
+
shortTitle: Enable custom models
4
+
intro: Integrate your preferred custom models with {% data variables.product.prodname_copilot %} by using your own LLM API keys, and make them available for organizations in your enterprise account.
> This article covers custom models configured by enterprise owners. {% data variables.copilot.copilot_cli_short %} and {% data variables.product.prodname_vscode_shortname %} users can also use their own LLM keys locally. See [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models) and [Add a model from a built in provider](https://code.visualstudio.com/docs/agent-customization/language-models#_add-a-model-from-a-built-in-provider) in the {% data variables.product.prodname_vscode_shortname %} documentation.
18
-
19
18
## Why bring your own API keys?
20
19
21
20
As an enterprise owner, you may have specific requirements for governance, data security, and compliance. Setting up your own API keys allows you to address:
@@ -28,8 +27,6 @@ As an enterprise owner, you may have specific requirements for governance, data
28
27
29
28
After you've added your key and selected one or more models, you and members of your organizations will be able to use them with {% data variables.copilot.copilot_byok_supported_features %}. Your models will appear at the bottom of the model picker, under the enterprise name.
30
29
31
-
> [!NOTE] For members of your organizations to use third-party models in {% data variables.product.prodname_vscode %}, the **Bring Your Own Language Model Key in {% data variables.product.prodname_vscode_shortname %}** policy must be enabled. For more information, see the [{% data variables.product.prodname_copilot_short %} settings page](https://github.com/settings/copilot/features) in {% data variables.product.prodname_dotcom_the_website %}.
32
-
33
30
{% data reusables.enterprise-accounts.access-enterprise %}
34
31
{% data reusables.enterprise-accounts.ai-controls-tab %}
35
32
1. In the sidebar, click **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} {% data variables.product.prodname_copilot_short %}**.
@@ -58,4 +55,4 @@ You can choose whether the models you have added are available to organizations
58
55
59
56
*[AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/use-your-own-api-keys) in our documentation for organizations.
Copy file name to clipboardExpand all lines: content/copilot/how-tos/administer-copilot/manage-for-organization/enable-custom-models.md
+10-7Lines changed: 10 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,27 +1,30 @@
1
1
---
2
-
title: Using your LLM provider API keys with Copilot
3
-
shortTitle: Use your own API keys
4
-
intro: 'Learn how to integrate your preferred custom models with {% data variables.product.prodname_copilot %} by using your own LLM API keys, and make them available to your organization members.'
2
+
title: Enabling custom models for GitHub Copilot in your organization
3
+
shortTitle: Enable custom models
4
+
intro: Integrate your preferred custom models with {% data variables.product.prodname_copilot %} by using your own LLM API keys, and make them available to your organization members.
> This article covers custom models configured by organization owners. {% data variables.copilot.copilot_cli_short %} and {% data variables.product.prodname_vscode_shortname %} users can also configure their own LLM provider locally, without any administrator setup. See [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models) and [Add a model from a built in provider](https://code.visualstudio.com/docs/agent-customization/language-models#_add-a-model-from-a-built-in-provider) in the {% data variables.product.prodname_vscode_shortname %} documentation.
18
-
19
18
## Why bring your own API keys?
20
19
21
20
As an organization owner, you may have specific requirements for governance, data security, and compliance. Setting up your own API keys allows you to address:
22
21
23
22
{% data reusables.copilot.byok-why %}
24
23
24
+
## Prerequisites
25
+
26
+
An enterprise owner must have enabled the **Enable custom models** policy.
27
+
25
28
## Adding your key to an organization account
26
29
27
30
> [!IMPORTANT] We highly recommend adhering to the principle of least privilege by assigning only the minimum necessary scopes to your API keys.
@@ -38,4 +41,4 @@ After you've added your key and selected one or more models, you and your organi
38
41
39
42
*[AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/use-your-own-api-keys) in our documentation for enterprise accounts.
Copy file name to clipboardExpand all lines: content/copilot/how-tos/administer-copilot/manage-for-organization/index.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
title: Managing GitHub Copilot in your organization
3
3
shortTitle: Manage for organization
4
-
intro: 'Organization owners can subscribe to {% data variables.product.prodname_copilot_short %}, manage {% data variables.product.prodname_copilot_short %} for their organization, and control {% data variables.product.prodname_copilot_short %} policies.'
4
+
intro: Organization owners can subscribe to {% data variables.product.prodname_copilot_short %}, manage {% data variables.product.prodname_copilot_short %} for their organization, and control {% data variables.product.prodname_copilot_short %} policies.
Copy file name to clipboardExpand all lines: content/copilot/how-tos/copilot-on-github/set-up-copilot/configure-access-to-ai-models.md
+5-9Lines changed: 5 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,23 +23,19 @@ Your access to {% data variables.product.prodname_copilot %} models depends on:
23
23
24
24
For a list of available AI models, see [AUTOTITLE](/copilot/reference/ai-models/supported-models). For information on how {% data variables.copilot.copilot_chat_short %} serves different AI models, see [AUTOTITLE](/copilot/reference/ai-models/model-hosting).
25
25
26
-
## Setup for individual use
26
+
## Setup for individual plans
27
27
28
28
For individual {% data variables.product.prodname_copilot_short %} plans, you can use AI models directly within {% data variables.product.prodname_copilot_short %} without configuring access or managing policies. {% data variables.copilot.copilot_free_short %} and {% data variables.copilot.copilot_student_short %} only have access to {% data variables.copilot.copilot_auto_model_selection_short %}.
29
29
30
30
> [!NOTE]
31
31
> Models available depend on your plan. See [AUTOTITLE](/copilot/reference/ai-models/supported-models#supported-ai-models-per-copilot-plan).
32
32
33
-
## Setup for organization and enterprise use
33
+
## Setup for organization and enterprise plans
34
34
35
35
As an enterprise or organization owner, you can enable or disable access to AI models for members with a {% data variables.copilot.copilot_enterprise_short %} or {% data variables.copilot.copilot_business_short %} seat. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies) and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-enterprise-policies).
36
36
37
-
> [!NOTE]
38
-
> * Models available in {% data variables.copilot.copilot_auto_model_selection %} will follow the policies set for an organization or enterprise. See [AUTOTITLE](/copilot/concepts/models/auto-model-selection).
39
-
> * {% data reusables.copilot.byok-no-subscription-required %}
40
-
41
-
{% ifversion copilot-byok %}
37
+
## Custom models
42
38
43
-
You can also integrate your preferred custom models from supported LLM providers by bringing your own API keys. Organization owners can make custom models available for members of their organization and enterprise owners can add custom models and choose which organizations can make use of them. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/use-your-own-api-keys) for organizations and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/use-your-own-api-keys) for enterprise accounts.
39
+
{% data reusables.copilot.byok-two-mechanisms %}
44
40
45
-
{% endif %}
41
+
For more information, see [AUTOTITLE](/copilot/concepts/models/bring-your-own-key).
Copy file name to clipboardExpand all lines: content/copilot/tutorials/roll-out-at-scale/govern-at-scale/resources-for-approval.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,7 +53,7 @@ These teams need to know how {% data variables.product.prodname_copilot_short %}
53
53
54
54
* The allowlist required for a firewall or proxy to ensure {% data variables.product.prodname_copilot_short %} works as expected. See [AUTOTITLE](/copilot/reference/copilot-allowlist-reference).
55
55
* The network protocol that {% data variables.product.prodname_copilot_short %} operates on by default, and your company's options for routing traffic through a proxy server and intercepting traffic. See [AUTOTITLE](/copilot/concepts/network-settings).
56
-
* The option to use {% data variables.product.prodname_copilot_short %} in air-gapped environments by bringing your own API keys in {% data variables.product.prodname_vscode_shortname %} or {% data variables.copilot.copilot_cli_short %}. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/use-your-own-api-keys).
56
+
* The option to use {% data variables.product.prodname_copilot_short %} in air-gapped environments by configuring API keys locally. See [AUTOTITLE](/copilot/concepts/models/bring-your-own-key#local-byok).
57
57
* The clients where users will be using {% data variables.product.prodname_copilot_short %}.
58
58
* Your enterprise can enable or disable {% data variables.product.prodname_copilot_short %} in IDEs, on {% data variables.product.prodname_mobile %}, in the CLI, and on the {% data variables.product.github %} website.
59
59
* If your company distributes approved software for users, IT teams may need to approve the supported versions of IDEs. See [AUTOTITLE](/copilot/reference/copilot-feature-matrix).
Copy file name to clipboardExpand all lines: data/reusables/copilot/byok-intro.md
+4-2Lines changed: 4 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
>[!NOTE]
2
2
>{% data reusables.copilot.byok-preview-note %}
3
3
4
-
You can bring your own API keys to {% data variables.product.prodname_copilot %}, and enable teams to use your preferred large language model (LLM) providers with {% data variables.copilot.copilot_byok_supported_features %}.
4
+
You can add custom models to your enterprise or organization by providing your own API keys. This enables teams to use your preferred large language model (LLM) providers with {% data variables.copilot.copilot_byok_supported_features %}.
5
5
6
6
API keys from the following providers are supported:
7
7
@@ -13,4 +13,6 @@ API keys from the following providers are supported:
13
13
* OpenAI-compatible providers
14
14
* xAI
15
15
16
-
Fine-tuned models are also supported, but functionality and quality of results can vary depending on the fine-tuning setup. You should test your model and review its outputs carefully before using it in production.
16
+
Fine-tuned models are also supported, but functionality and quality of results can vary depending on the fine-tuning setup. You should test your model and review its outputs carefully before using it in production.
17
+
18
+
>[!NOTE] A separate feature allows users to configure their own LLM keys locally in various clients. See [AUTOTITLE](/copilot/concepts/models/bring-your-own-key).
The ability to bring your own API keys to {% data variables.product.prodname_copilot %} is in {% data variables.release-phases.public_preview %} and subject to change.
1
+
This feature is in {% data variables.release-phases.public_preview %} and subject to change.
0 commit comments