Ferramentas de código
Visual Studio Code
Use modelos da TokenLab no chat do VS Code com o provedor Custom Endpoint
Visão geral
O chat do VS Code pode usar seu próprio provedor de modelos por meio do Custom Endpoint (bring your own key). Esta página conecta a TokenLab pela API Chat Completions.
- O chat não precisa de um plano do Copilot. Os modelos BYOK do VS Code funcionam sem login no GitHub.
- Alguns recursos ainda precisam do GitHub: sugestões inline (autocompletar código), busca semântica e outros recursos baseados em embeddings não são atendidos por modelos BYOK. Uma chave da TokenLab não os substitui.
- Usuários do Copilot Business ou Enterprise: o administrador precisa permitir a política Bring Your Own Language Model Key in VS Code.
Requisitos
- Uma versão estável recente do VS Code com a visualização Chat.
- Uma chave de API da TokenLab (obter uma).
- Um modelo que aceite
openai_chat_completionse suporte chamada de ferramentas (o modo agente só lista modelos com chamada de ferramentas). A página de um modelo mostra as duas coisas: Chat Completions API em Formato de API e Tool use em Recursos, por exemplo GPT-5.6 Luna.
Adicionar a TokenLab
- Abra o seletor de modelos na visualização Chat e escolha Manage Language Models (ícone de engrenagem), ou execute Chat: Manage Language Models na paleta de comandos.
- Selecione Add Models → Custom Endpoint.
- O VS Code pede um Group Name. O campo vem preenchido com
Custom Endpoint; troque porTokenLabe pressione Enter. - Em seguida abre uma caixa com o título TokenLab: API Key. Cole sua chave de API da TokenLab e pressione Enter. O VS Code guarda a chave no armazenamento de segredos (secret storage).
- Se o VS Code perguntar o tipo de API, selecione Chat Completions. Esta etapa pode não aparecer;
apiTypeno arquivo abaixo define isso de qualquer forma. - O VS Code abre
chatLanguageModels.json. Mantenha a linhaapiKeygerada pelo assistente (ela aponta para a chave no armazenamento de segredos), confira seapiTypeéchat-completionse edite a listamodelspara ficar igual à entrada abaixo; depois salve.
Informe a chave no assistente. Uma chave digitada diretamente em
chatLanguageModels.jsonnão é enviada, e as requisições falham por falta do cabeçalhoAuthorization.
[
{
"name": "TokenLab",
"vendor": "customendpoint",
"apiKey": "${input:tokenlabApiKey}",
"apiType": "chat-completions",
"models": [
{
"id": "gpt-5.6-luna",
"name": "GPT-5.6 Luna (TokenLab)",
"url": "https://api.tokenlab.sh/v1/chat/completions",
"toolCalling": true,
"vision": true,
"maxInputTokens": 200000,
"maxOutputTokens": 32000
},
{
"id": "claude-sonnet-5-5",
"name": "Claude Sonnet 5.5 (TokenLab)",
"url": "https://api.tokenlab.sh/v1/chat/completions",
"toolCalling": true,
"vision": true,
"maxInputTokens": 200000,
"maxOutputTokens": 32000
},
{
"id": "gpt-6.1-sol",
"name": "GPT-6.1 Sol (TokenLab)",
"url": "https://api.tokenlab.sh/v1/chat/completions",
"toolCalling": true,
"vision": false,
"maxInputTokens": 200000,
"maxOutputTokens": 32000
}
]
}
]Observações:
- Escreva a URL completa, incluindo
/chat/completions. O VS Code usa como está uma URL com caminho de API explícito. - Com o tipo Chat Completions, o VS Code envia
Authorization: Bearer <key>, que é o que a TokenLab espera. Não adicione um cabeçalho de autenticação personalizado. idé o ID do modelo da TokenLab enviado na requisição. Use qualquer modelo disponível cujoaccepted_request_formatsincluaopenai_chat_completions.- Limites de tokens: o VS Code trata
maxInputTokens + maxOutputTokenscomo a janela de contexto. Os valores acima são conservadores; você pode aumentá-los até os limites mostrados na página do modelo. Contextos maiores custam mais por requisição. - Se o modelo não aparecer no seletor, reinicie o VS Code.
Sem login no GitHub
Geração de títulos, mensagens de commit e outras tarefas "utility" em segundo plano usam modelos do GitHub Copilot por padrão. Sem login no Copilot, defina chat.utilityModel e chat.utilitySmallModel como um modelo da TokenLab (um rápido e barato para o modelo pequeno), ou defina chat.byokUtilityModelDefault como Main Agent Model. Essas chamadas em segundo plano são cobradas do seu saldo na TokenLab.
Verificar
- Selecione GPT-5.6 Luna (TokenLab) no seletor de modelos (um modelo de baixo custo, bom para o primeiro teste).
- Faça primeiro uma pergunta somente leitura, por exemplo:
Summarize the top-level structure of this workspace. Do not modify files. - Confira a resposta e o registro da requisição correspondente antes de executar tarefas de agente.
Salvar a configuração ou listar os modelos não prova que a chave funciona. Um prompt consome saldo da TokenLab.
Solução de problemas
- Cabeçalho Authorization ausente: a chave não está no armazenamento de segredos. Execute Add Models → Custom Endpoint novamente e informe a chave no assistente, não no arquivo JSON.
- 401 / falha de autenticação: informe a chave novamente em Manage Language Models → ícone de engrenagem ao lado do grupo TokenLab.
- Modelo não encontrado:
iddeve ser um ID de modelo da TokenLab exato; confira a página do modelo. - Modelo ausente no modo agente: defina
"toolCalling": truee use um modelo que suporte ferramentas. - Tipos de API Messages ou Responses: ainda não cobertos nesta página; use Chat Completions.
Não faça commit de chaves de API em chatLanguageModels.json nem em qualquer arquivo rastreado pelo Git; mantenha ${input:...} no arquivo.