GitHub Copilot
Połącz czat GitHub Copilot, agenty VS Code i interfejs CLI Copilot z Model Gate za pomocą BYOK i niestandardowego punktu końcowego zgodnego z OpenAI.
GitHub Copilot przez Bramę Modelu
GitHub Copilot i obsługa kodu Visual Studio Przynieś własny klucz (BYOK) modele. Model Gate może być używany jako niestandardowy punkt końcowy zgodny z OpenAI na potrzeby czatów Copilot i przepływów pracy agentów.
W przypadku VS Code zalecaną konfiguracją jest Niestandardowy punkt końcowy dostawca z API odpowiedzi. Używaj uzupełnień czatu tylko wtedy, gdy wybrany model lub przepływ pracy wyraźnie wymaga tej rodziny interfejsów API.
Wymagane wartości
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
Utwórz dedykowany klucz API w pliku Panel sterowania Model Gate. W przypadku integracji zespołu lub stacji roboczej preferuj oddzielny klucz zamiast ponownego używania niepowiązanego klucza produkcyjnego, aby ograniczenia, historia żądań, rotacja i unieważnienia były łatwe do kontrolowania.
Lista aktualnie włączonych modeli przed skonfigurowaniem Copilota:
curl https://api.model-gate.com/v1/models \
-H "Authorization: Bearer mg_live_..."
Użyj włączonego identyfikatora modelu kanonicznego lub aliasu zarządzanego przez administratora zwróconego przez ten punkt końcowy.
Kod VS: zalecana konfiguracja niestandardowego punktu końcowego
Bieżące wersje VS Code udostępniają modele BYOK w edytorze modeli językowych.
- Otwórz paletę poleceń.
- Uruchomić Czat: Zarządzaj modelami językowymi.
- Wybierać Dodaj modele.
- Wybierać Niestandardowy punkt końcowy.
- Użyj nazwy grupy, np
Model Gate. - Wprowadź klucz API Model Gate, gdy VS Code zażąda poświadczenia dostawcy.
- Wybierać Odpowiedzi jako typ interfejsu API, jeśli wybrany model obsługuje interfejs API odpowiedzi.
- Skonfiguruj model z jawnym punktem końcowym Model Gate i zapisz wygenerowany plik
chatLanguageModels.json. - Wybierz model Model Gate z selektora modeli czatu.
Nie używaj przestarzałych github.copilot.chat.customOAIModels ustawienie nowej konfiguracji. Bieżący dostawca niestandardowego punktu końcowego obsługuje punkty końcowe w stylu odpowiedzi, zakończenia czatu i wiadomości i jest preferowaną ścieżką konfiguracji VS Code.
Konfiguracja zalecanych odpowiedzi
Wygenerowane chatLanguageModels.json można zastosować taką konfigurację:
[
{
"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
}
]
}
]
Zastępować gpt-5.4 z włączonym modelem Model Gate lub aliasem.
VS Code zwykle wysyła klucz API jako:
Authorization: Bearer mg_live_...
która jest poprawną formą uwierzytelnienia dla interfejsu API zgodnego z Model Gate OpenAI.
Rezerwowe zakończenie czatu
Jeśli wybrany przepływ pracy wymaga uzupełnień czatu, skonfiguruj model jako:
[
{
"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
}
]
}
]
Preferuj jawny pełny adres URL punktu końcowego. Pozwala to uniknąć dwuznaczności, jeśli VS Code zmieni zachowanie wnioskowania o ścieżce adresu URL.
Zalecenia dotyczące możliwości modelu
Przepływy pracy agenta drugiego pilota wymagają modelu, który może korzystać z narzędzi. Aby zapewnić niezawodne korzystanie z agenta poprzez Model Gate:
- wybierz model ze zweryfikowanym wywołanie narzędzia/funkcji wsparcie;
- wybierz model z przesyłanie strumieniowe wsparcie;
- w przypadku załączników graficznych użyj modelu ze zweryfikowanym wejście wizyjne/obrazowe możliwości i zestaw
"vision": truedla tego modelu; - używać modelu dużego kontekstu do pracy agenta na skalę repozytorium; GitHub obecnie zaleca okno kontekstowe o wielkości co najmniej 128 tys. tokenów dla niestandardowych modeli Copilot CLI;
- nie reklamuj się
toolCalling,vision, rozumowanie, kontekst lub ograniczenia wyjściowe powyżej rzeczywistych możliwości wybranego modelu Bramy Modelu; - przetestuj dokładny model na placu zabaw Model Gate, zanim udostępnisz go dużemu zespołowi.
Jeśli ustawisz ręcznie contextWindow, maxInputTokens, Lub maxOutputTokens w VS Code użyj limitów wybranego modelu z uwierzytelnionego /models stronę lub z GET /v1/models; nie zgaduj ich. Model Gate mapuje pola w następujący sposób:
| Ustawienie kodu VS | Pole bramki modelowej |
|---|---|
contextWindow | context_window (ta sama wartość co context_length) |
maxInputTokens | max_input_tokens |
maxOutputTokens | max_output_tokens |
Uwierzytelniony /models strona pokazuje je jako Kontekst, Maksymalne wejście, I Maksymalna moc wyjściowa gdy znana jest odpowiednia wartość. Aby bezpośrednio sprawdzić obiekt API:
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}'
Wartość 0 oznacza, że Model Gate nie ma skonfigurowanej wartości tego limitu. W takim przypadku pozostaw odpowiednie ręczne ustawienie VS Code nieskonfigurowane, zamiast je wprowadzać 0 lub wymyślenie limitu.
Wzory użytkowe w VS Code
VS Code używa również mniejszych modeli tła do zadań takich jak tytuły, podsumowania, komunikaty zatwierdzeń, sugestie zmiany nazwy i wykrywanie zamiarów.
Jeśli używasz Model Gate BYOK bez modelu Copilot hostowanego w GitHub, skonfiguruj:
chat.utilityModel
chat.utilitySmallModel
Wybierz szybki i niedrogi model Model Gate dla chat.utilitySmallModel. Zwykle nie ma korzyści z płacenia za największy model wnioskowania do generowania komunikatów zatwierdzeń lub innych lekkich prac narzędziowych.
The chat.byokUtilityModelDefault ustawienie może również kontrolować, czy praca narzędziowa jest zgodna z wybranym modelem głównego agenta BYOK, wykorzystuje modele użytkowe GitHub Copilot lub nie ma ustawień domyślnych.
Drugi pilot CLI
GitHub Copilot Interfejs CLI obsługuje niestandardowych dostawców zgodnych z OpenAI za pośrednictwem zmiennych środowiskowych.
Linux lub 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"
copilot
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"
copilot
W przypadku Copilot CLI wybrany model musi obsługiwać wywoływanie narzędzi i przesyłanie strumieniowe. Użyj włączonego modelu lub aliasu Model Gate i przetestuj go przed ustawieniem konfiguracji na stałe.
Nie umieszczaj klucza API w historii powłoki, pliku repozytorium ani w zatwierdzonym pliku .env. Jeśli to możliwe, korzystaj z magazynu danych uwierzytelniających systemu operacyjnego, chronionego środowiska powłoki lub narzędzi do zarządzania sekretami organizacji.
Biznes i przedsiębiorstwo drugiego pilota
GitHub obsługuje również niestandardowe modele organizacji/przedsiębiorstwa za pośrednictwem BYOK. Obecnie GitHub wyświetla listę Dostawcy kompatybilni z OpenAI jako obsługiwana kategoria dostawcy modelu niestandardowego. Ta funkcja na poziomie organizacji jest zarządzana przez zasady GitHub i może być dostępna w wersji zapoznawczej w zależności od powierzchni Copilot.
W przypadku zarządzanej organizacji:
- Włącz GitHuba modele niestandardowe / BYOK zasady wymagane dla Twojego planu Copilot.
- Dodaj niestandardowego dostawcę/model zgodny z OpenAI w ustawieniach modelu Copilot w organizacji lub przedsiębiorstwie.
- Użyj dedykowanego klucza API Model Gate z minimalnymi niezbędnymi uprawnieniami i ograniczeniami Model Gate.
- Użyj punktu końcowego Model Gate i identyfikatora modelu, do którego ma dostęp Twoje konto.
- Zweryfikuj model w przepływach pracy na czacie/agencie Copilot, zanim szeroko zaprezentujesz go w selektorze modelu organizacji.
GitHub może zmienić interfejs użytkownika niestandardowego modelu organizacji w miarę ewolucji tej funkcji. Postępuj zgodnie z bieżącym interfejsem administracyjnym GitHub, aby uzyskać dokładne etykiety pól, zamiast polegać na zrzutach ekranu ze starszej wersji.
Zalecenia dotyczące bezpieczeństwa i kosztów
- Utwórz dedykowany klucz Model Gate dla Copilot zamiast udostępniać klucz ogólnego przeznaczenia.
- Zastosuj limit RPM, limit współbieżności, limit wydatków lub zasady grupy biznesowej odpowiednie dla ruchu deweloper-agent.
- Obróć klucz natychmiast, jeśli zostanie wklejony do kontroli źródła, czatu, dzienników lub problemu.
- Nigdy nie popełniaj
mg_live_...WchatLanguageModels.json; pozwól VS Code przechowywać dane uwierzytelniające lub odwoływać się do danych wejściowych/tajnych. - Pozostaw włączone zatwierdzanie narzędzi destrukcyjnych, chyba że Twoje środowisko programistyczne jest celowo umieszczone w piaskownicy.
- Tryb agenta może generować wiele obrotów modelu/narzędzia z jednej instrukcji użytkownika. Ustaw limity wydatków Model Gate przed włączeniem kosztownych modeli wnioskowania dla dużych repozytoriów.
- Używaj mniejszego modelu narzędziowego do zadań w tle i rezerwuj większe modele wnioskowania na potrzeby planowania, debugowania lub złożonych refaktoryzatorów.
- Sprawdź historię żądań bramy modelu podczas sprawdzania nieoczekiwanych kosztów, opóźnień, limitów szybkości lub błędów dostawcy.
Co BYOK robi, a czego nie zastępuje
Model BYOK Model Gate może obsługiwać czat VS Code, przepływy pracy agentów, narzędzia i zadania użytkowe, jeśli model obsługuje wymagane możliwości.
To prawda nie automatycznie zastąpi każdą funkcję GitHub Copilot. W zależności od bieżącej wersji VS Code/GitHub funkcje takie jak standardowe uzupełnianie kodu inline, wyszukiwanie semantyczne, osadzanie lub inne usługi hostowane w GitHub mogą nadal wymagać uwierzytelniania GitHub, planu Copilot lub infrastruktury GitHub.
Dlatego używaj Model Gate BYOK, gdy Twoim celem jest kontrolowanie ścieżka modelu czatu/agenta i jego rozliczenia, a nie założenie, że cały ruch sieciowy GitHub Copilot jest kierowany przez Model Gate.
Przed przetestowaniem Copilota sprawdź Model Gate
Odpowiedzi
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"
}'
Zakończenia czatu
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"}]
}'
Jeśli te żądania nie powiodą się, napraw zasady klucza API/modelu/bramy modelu przed debugowaniem Copilot.
Rozwiązywanie problemów
| Problem | Rezolucja |
|---|---|
| Model nie pojawia się w trybie agenta | Sprawdź, czy model jest skonfigurowany z wywoływaniem narzędzi i czy rzeczywisty model Model Gate obsługuje wywołania funkcji/narzędzi. Uruchom ponownie VS Code po zmianie konfiguracji dostawcy. |
401 invalid_api_key | Wprowadź ponownie lub obróć dedykowany klucz Model Gate. Potwierdź wysłanie przez Copilot Authorization: Bearer .... |
404 lub nieprawidłowy punkt końcowy | W przypadku odpowiedzi użyj jawnego https://api.model-gate.com/v1/responses; do użytku w ramach uzupełniania czatu /v1/chat/completions. |
| Nie znaleziono modelu | Zapytanie /v1/models i użyj włączonego identyfikatora kanonicznego lub aliasu. |
| Agent nie może używać narzędzi | Wybierz model ze zweryfikowanym wywołaniem narzędzia/funkcji. Copilot CLI wymaga również przesyłania strumieniowego. |
| Załącznik obrazu jest ignorowany/odrzucany | Użyj modelu ze zweryfikowanymi możliwościami wprowadzania obrazu/widzenia i skonfiguruj go vision: true tylko dla tego modelu. |
| Funkcje narzędziowe nie działają w przypadku konfiguracji opartej wyłącznie na BYOK | Skonfiguruj chat.utilityModel I chat.utilitySmallModel do dostępnych modeli BYOK. |
| Uzupełnienia wbudowane nadal korzystają z usługi GitHub lub wymagają logowania | Oczekiwane: BYOK kontroluje przede wszystkim ruch na czacie/agencie/modelu narzędziowym, a nie każdą funkcję Copilot. |
| Żądania są nieoczekiwanie drogie | Użyj mniejszego modelu do prac użyteczności publicznej, w stosownych przypadkach zastosuj mniejsze rozumowanie i skonfiguruj limity wydatków/RPM/współbieżności Model Gate Gate. |
Aktualne referencje dotyczące wyższego szczebla
GitHub i VS Code mogą zmieniać konfigurację BYOK między wydaniami. Aby zapoznać się z bieżącym zachowaniem na górze strony, sprawdź:
https://code.visualstudio.com/docs/agent-customization/language-modelshttps://docs.github.com/en/copilot/concepts/models/bring-your-own-keyhttps://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/use-byok-modelshttps://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-organization/enable-custom-models
Rozszerzenia o stałym punkcie końcowym
Aby zapoznać się z autoryzowanym rozszerzeniem lokalnym, które nie może skonfigurować niestandardowego punktu końcowego, zobacz Zastąpienie punktu końcowego w systemach Windows i Linux. Ta opcjonalna rezerwa mitmproxy wymaga zgodnych żądań, klucza Model Gate i jawnego zaufania lokalnego urzędu certyfikacji; nie zastępuje uwierzytelniania Copilot ani pomijania przypinania certyfikatu. Preferuj powyższe natywne ustawienia BYOK.