GitHub Copilot
Conecte GitHub Copilot Chat, agentes do VS Code e Copilot CLI ao Model Gate com BYOK e um endpoint personalizado compatível com OpenAI.
GitHub Copilot através do Model Gate
GitHub Copilot e suporte ao Visual Studio Code Traga sua própria chave (BYOK) modelos. O Model Gate pode ser usado como um endpoint personalizado compatível com OpenAI para chat do Copilot e fluxos de trabalho de agente.
Para VS Code, a configuração recomendada é a Ponto final personalizado provedor com o API de respostas. Use as conclusões de chat somente quando um modelo ou fluxo de trabalho selecionado exigir especificamente essa família de API.
Valores obrigatórios
API key: mg_live_...
Responses endpoint: https://api.model-gate.com/v1/responses
Chat Completions endpoint: https://api.model-gate.com/v1/chat/completions
Base URL for Copilot CLI: https://api.model-gate.com/v1
Crie uma chave de API dedicada no Painel de controle modelo Gate. Para uma integração de equipe ou estação de trabalho, prefira uma chave separada em vez de reutilizar uma chave de produção não relacionada para que os limites, o histórico de solicitações, a rotação e a revogação permaneçam fáceis de auditar.
Liste os modelos atualmente habilitados antes de configurar o Copilot:
curl https://api.model-gate.com/v1/models \
-H "Authorization: Bearer mg_live_..."
Use um ID de modelo canônico habilitado ou um alias gerenciado pelo administrador retornado por esse endpoint.
Código VS: configuração recomendada de endpoint personalizado
As versões atuais do VS Code expõem modelos BYOK no editor de modelos de linguagem.
1. Abra a paleta de comandos. 2. Corra Bate-papo: gerenciar modelos de linguagem. 3. Selecione Adicionar modelos. 4. Selecione Ponto final personalizado. 5. Use um nome de grupo como Model Gate. 6. Insira a chave da API Model Gate quando o VS Code solicitar a credencial do provedor. 7. Selecione Respostas como o tipo de API quando o modelo selecionado oferece suporte à API Responses. 8. Configure o modelo com o endpoint Model Gate explícito e salve o gerado chatLanguageModels.json. 9. Selecione o modelo Model Gate no seletor de modelos Chat.
Não use o obsoleto github.copilot.chat.customOAIModels configuração para uma nova configuração. O provedor de endpoint personalizado atual oferece suporte a endpoints de estilo de respostas, conclusões de bate-papo e mensagens e é o caminho de configuração preferido do VS Code.
Configuração de respostas recomendadas
O gerado chatLanguageModels.json pode usar uma configuração como esta:
[
{
"name": "Model Gate",
"vendor": "customendpoint",
"apiKey": "${input:modelGateApiKey}",
"apiType": "responses",
"models": [
{
"id": "gpt-5.4",
"name": "GPT-5.4 through Model Gate",
"url": "https://api.model-gate.com/v1/responses",
"toolCalling": true
}
]
}
]
Substituir gpt-5.4 com um modelo ou alias do Model Gate habilitado.
O VS Code normalmente envia a chave API como:
Authorization: Bearer mg_live_...
que é o formulário de autenticação correto para a API compatível com Model Gate OpenAI.
Substituição de conclusões de bate-papo
Se o fluxo de trabalho escolhido exigir conclusões de chat, configure o modelo como:
[
{
"name": "Model Gate",
"vendor": "customendpoint",
"apiKey": "${input:modelGateApiKey}",
"apiType": "chat-completions",
"models": [
{
"id": "MODEL_ID",
"name": "MODEL_ID through Model Gate",
"url": "https://api.model-gate.com/v1/chat/completions",
"toolCalling": true
}
]
}
]
Prefira um URL de endpoint completo e explícito. Isso evita ambiguidade se o VS Code alterar o comportamento de inferência do caminho da URL.
Recomendações de capacidade do modelo
Os fluxos de trabalho do agente copiloto exigem um modelo que possa usar ferramentas. Para uso de agente confiável através do Model Gate:
- escolha um modelo verificado chamada de ferramenta/função apoiar; - escolha um modelo com transmissão apoiar; - para anexos de imagens, utilize um modelo com verificação entrada de visão/imagem capacidade e conjunto "vision": true para esse modelo; - usar um modelo de contexto amplo para o trabalho do agente em escala de repositório; Atualmente, o GitHub recomenda pelo menos uma janela de contexto de token de 128 mil para modelos personalizados da CLI do Copilot; - não anuncie toolCalling, visionlimites de raciocínio, contexto ou saída acima da capacidade real do modelo Model Gate selecionado; - teste o modelo exato no Model Gate Playground antes de habilitá-lo para uma equipe grande.
Se você definir manualmente contextWindow, maxInputTokens, ou maxOutputTokens no VS Code, use os limites do modelo selecionado do autenticado /models página ou de GET /v1/models; não os adivinhe. Model Gate mapeia os campos da seguinte forma:
| Configuração do código VS | Campo Porta Modelo |
|---|---|
contextWindow | context_window (mesmo valor que context_length) |
maxInputTokens | max_input_tokens |
maxOutputTokens | max_output_tokens |
O autenticado /models página mostra isso como Contexto, Entrada máxima, e Saída máxima quando o valor correspondente é conhecido. Para inspecionar o objeto API diretamente:
curl -s https://api.model-gate.com/v1/models \
-H "Authorization: Bearer mg_live_..." \
| jq '.data[] | select(.id=="MODEL_ID") | {context_window,max_input_tokens,max_output_tokens}'
Um valor de 0 significa que o Model Gate não possui um valor configurado para esse limite. Nesse caso, deixe a configuração manual do Código VS correspondente não definida em vez de inserir 0 ou inventando um limite.
Modelos de utilidade no VS Code
O VS Code também usa modelos de plano de fundo menores para tarefas como títulos, resumos, mensagens de commit, sugestões de renomeação e detecção de intenções.
Se você usar o Model Gate BYOK sem um modelo Copilot hospedado no GitHub, configure:
chat.utilityModel
chat.utilitySmallModel
Escolha um modelo Model Gate rápido e barato para chat.utilitySmallModel. Geralmente não há benefício em pagar pelo maior modelo de raciocínio para geração de mensagens de commit ou outro trabalho utilitário leve.
O chat.byokUtilityModelDefault A configuração também pode controlar se o trabalho do utilitário segue o modelo de agente principal BYOK selecionado, usa GitHub Copilot modelos de utilidade ou não tem padrão.
CLI do copiloto
GitHub Copilot A CLI oferece suporte a provedores personalizados compatíveis com OpenAI por meio de variáveis de ambiente.
Linux ou macOS
export COPILOT_PROVIDER_TYPE="openai"
export COPILOT_PROVIDER_BASE_URL="https://api.model-gate.com/v1"
export COPILOT_PROVIDER_API_KEY="mg_live_..."
export COPILOT_MODEL="MODEL_ID"
copiloto ```
Windows PowerShell
$env:COPILOT_PROVIDER_TYPE = "openai"
$env:COPILOT_PROVIDER_BASE_URL = "https://api.model-gate.com/v1"
$env:COPILOT_PROVIDER_API_KEY = "mg_live_..."
$env:COPILOT_MODEL = "MODEL_ID"
copiloto ```
Para o Copilot CLI, o modelo selecionado deve oferecer suporte ferramenta de chamada e streaming. Use um modelo ou alias do Model Gate habilitado e teste-o antes de tornar a configuração permanente.
Não coloque a chave de API no histórico do shell, em um arquivo de repositório ou em um commit .env. Use o armazenamento de credenciais do sistema operacional, o ambiente shell protegido ou as ferramentas de gerenciamento de segredos da organização sempre que possível.
Copiloto Negócios e Empresas
GitHub também oferece suporte a modelos personalizados de organização/empresa por meio de BYOK. GitHub atualmente lista Provedores compatíveis com OpenAI como uma categoria de provedor de modelo personalizado compatível. Esse recurso em nível de organização é gerenciado pela política do GitHub e pode estar em versão prévia dependendo da superfície do Copilot.
Para uma organização gerenciada:
1. Habilite o GitHub modelos personalizados / BYOK política necessária para seu plano Copilot. 2. Adicione um provedor/modelo personalizado compatível com OpenAI nas configurações do modelo Copilot da organização ou empresa. 3. Use uma chave de API Model Gate dedicada com as permissões e limites mínimos necessários do Model Gate. 4. Use o endpoint Model Gate e um ID de modelo que sua conta possa acessar. 5. Valide o modelo nos fluxos de trabalho do Copilot Chat/agente antes de expô-lo amplamente no seletor de modelo da organização.
O GitHub pode alterar a IU do modelo personalizado da organização enquanto o recurso evolui. Siga a UI administrativa atual do GitHub para obter os rótulos exatos dos campos, em vez de depender de capturas de tela de uma versão mais antiga.
Recomendações de segurança e custos
- Crie uma chave Model Gate dedicada para o Copilot em vez de compartilhar uma chave de uso geral. - Aplique um limite de RPM, um limite de simultaneidade, um limite de gastos ou uma política de grupo de negócios apropriada para o tráfego do agente desenvolvedor. - Gire a chave imediatamente se ela for colada no controle de origem, bate-papo, registros ou em um problema. - Nunca se comprometa mg_live_... em chatLanguageModels.json; deixe o VS Code armazenar a credencial ou referenciar uma entrada/segredo. - Mantenha as aprovações de ferramentas destrutivas habilitadas, a menos que seu ambiente de desenvolvimento seja intencionalmente colocado em sandbox. - O modo agente pode gerar muitas voltas de modelo/ferramenta a partir de uma instrução do usuário. Defina limites de gastos do Model Gate antes de habilitar modelos de raciocínio caros para grandes repositórios. - Use um modelo de utilidade menor para tarefas em segundo plano e reserve modelos de raciocínio maiores para planejamento, depuração ou refatorações complexas. - Verifique o histórico de solicitações do Model Gate ao investigar custos inesperados, latência, limite de taxa ou erros do provedor.
O que o BYOK faz e não substitui
Um modelo Model Gate BYOK pode potencializar bate-papo do VS Code, fluxos de trabalho de agentes, ferramentas e tarefas utilitárias quando o modelo oferece suporte aos recursos necessários.
Isso acontece não substitui automaticamente cada recurso GitHub Copilot. Dependendo da versão atual do VS Code/GitHub, recursos como preenchimentos de código in-line padrão, pesquisa semântica, incorporações ou outros serviços hospedados no GitHub ainda podem exigir autenticação do GitHub, um plano Copilot ou infraestrutura do GitHub.
Portanto, use o Model Gate BYOK quando seu objetivo for controlar o caminho do modelo de chat/agente e seu faturamento, não como uma suposição de que todo o GitHub Copilot tráfego de rede seja roteado através do Model Gate.
Verifique o Model Gate antes de testar o Copilot
Respostas
curl https://api.model-gate.com/v1/responses \
-H "Authorization: Bearer mg_live_..." \
-H "Content-Type: application/json" \
-d '{
"model": "MODEL_ID",
"input": "Reply with exactly: Model Gate OK"
}'
Conclusões de bate-papo
curl https://api.model-gate.com/v1/chat/completions \
-H "Authorization: Bearer mg_live_..." \
-H "Content-Type: application/json" \
-d '{
"model": "MODEL_ID",
"messages": [{"role": "user", "content": "Reply with exactly: Model Gate OK"}]
}'
Se essas solicitações falharem, corrija a política de chave/modelo/Model Gate da API antes de depurar o Copilot.
Solução de problemas
| Problema | Resolução |
|---|---|
| O modelo não aparece no modo de agente | Verifique se o modelo está configurado com chamada de ferramenta e se o modelo real do Model Gate suporta chamadas de função/ferramenta. Reinicie o VS Code após alterar a configuração do provedor. |
401 invalid_api_key | Insira novamente ou gire a chave dedicada do Model Gate. Confirmar envios do Copilot Authorization: Bearer .... |
404 ou ponto final errado | Para respostas use o explícito https://api.model-gate.com/v1/responses; para uso de conclusões de bate-papo /v1/chat/completions. |
| O modelo não foi encontrado | Consulta /v1/models e use um ID canônico ou alias habilitado. |
| O agente não pode usar ferramentas | Selecione um modelo com chamada de ferramenta/função verificada. O Copilot CLI também requer streaming. |
| O anexo de imagem é ignorado/rejeitado | Use um modelo com capacidade de entrada/visão de imagem verificada e configure vision: true somente para esse modelo. |
| Os recursos do utilitário não funcionam com configuração somente BYOK | Configurar chat.utilityModel e chat.utilitySmallModel aos modelos BYOK disponíveis. |
| As conclusões in-line ainda usam GitHub ou exigem login | Esperado: o BYOK controla principalmente o tráfego de chat/agente/modelo de utilitário, e não todos os recursos do Copilot. |
| As solicitações são inesperadamente caras | Use um modelo menor para serviços públicos, reduza o raciocínio quando apropriado e configure limites de gastos/RPM/simultaneidade do Model Gate. |
Referências upstream atuais
GitHub e VS Code podem alterar a configuração BYOK entre lançamentos. Para o comportamento atual do upstream, verifique:
- https://code.visualstudio.com/docs/agent-customization/language-models - https://docs.github.com/en/copilot/concepts/models/bring-your-own-key - https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models - https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-organization/enable-custom-models