Připojte Visual Studio Code k lokálním a vzdáleným modelovým endpointům

Visual Studio Code dokáže propojit pohled Chat s inferenčním endpointem kompatibilním s OpenAI pro lokálně hostovaný model. Endpoint může běžet na stejném zařízení Windows 11 jako Visual Studio Code nebo na Windows Server pro přístup z jednoho nebo více vzdálených klientů Windows 11. Tyto topologie vám umožní udržovat inferenci na vývojářském zařízení nebo centralizovat modelové výpočty bez nutnosti spouštět Visual Studio Code na Windows Server.

V tomto článku přidáte existující endpoint jako vlastní endpoint ve Visual Studio Code, vyberete jeho model a ověříte, že model reaguje. Postup předpokládá, že inferenční endpoint již běží a je dosažitelný z Visual Studio Code.

Předpoklady pro lokální a vzdálené modelové koncové body

  • Stáhněte si aktuální stabilní verzi Visual Studio Code a ujistěte se, že máte přístup k zobrazení Chat.
  • Existující endpoint kompatibilní s OpenAI, který podporuje Chat Completions API a je dostupný z počítače s Visual Studio Code.
  • U vzdáleného endpointu hostovaného na Windows Server je síťové připojení z klienta Windows 11 na server a koncový port. Nakonfigurujte Windows firewall a jakýkoli intervenující firewall nebo proxy pro povolení připojení. Nakonfigurujte endpoint tak, aby poslouchal na síťovém rozhraní, ke kterému mají vzdálení klienti přístup, nejen na loopback adrese.
  • Pro vzdálený endpoint, který používá hostitelské jméno, je to záznam DNS systému, který klient Windows 11 dokáže přenést na hostitele Windows Server.
  • Pro vzdálený koncový bod HTTPS je vyžadován platný certifikát TLS, kterému klient s Windows 11 důvěřuje a jehož název subjektu nebo alternativní název subjektu odpovídá názvu hostitele v adrese URL koncového bodu.
  • Řízení přístupu ke koncovým bodům, které klientovi se systémem Windows 11 umožňuje volat cestu Chat Completions. Získejte jakýkoli požadovaný API klíč nebo token od správce koncového zařízení.
  • Pro inferenci na stejném zařízení jde o loopback URL, kterou koncový bod zpřístupňuje, například http://localhost:<port>/v1/chat/completions.
  • Pro vzdálenou inferenci je použita důvěryhodná HTTPS URL, například https://<server-name>:<port>/v1/chat/completions.
  • Přesné ID modelu; zobrazovací název modelu, který Visual Studio Code zobrazuje ve výběru jazykového modelu; omezení kontextu; a podporované schopnosti od vlastníka koncového bodu nebo dokumentace modelu.
  • Požadavky na autentizační hlavičku pro koncový bod.
  • Pokud vaše organizace spravuje GitHub Copilot, musí povolit klíč Bring Your Own Language Model Key v politice VS Code. Pro více informací viz Použití vlastního klíče jazykového modelu ve VS Code.

K používání modelu "přineste si vlastní klíč" v chatu nepotřebujete účet na GitHub ani plán GitHub Copilot. Vlastní endpoint neposkytuje funkce závislé na službě GitHub Copilot, včetně inline návrhů, sémantického vyhledávání a embeddingů.

Přidejte vlastní lokální nebo vzdálený modelový koncový bod

Stejný postup podporuje koncový bod na stejném zařízení Windows 11 nebo vzdálený endpoint kompatibilní s OpenAI na Windows Server. Visual Studio Code se připojuje k jedné URL koncové adresy a služba koncového bodu spravuje distribuci inference na backendu.

  1. Ve Visual Studio Code otevřete zobrazení Chat.

  2. Otevřete výběr jazykových modelů a vyberte Spravovat jazykové modely (ikona ozubeného kola).

    Můžete také otevřít Command Palette a spustit Chat: Manage Language Models.

  3. V editoru jazykových modelů vyberte Přidat modely a poté zvolit Vlastní koncový bod.

  4. Zadejte název skupiny. Tento název identifikuje modely endpointu v language model selecteru a editoru jazykových modelů .

  5. Zadejte zobrazovací název modelu a API klíč pro koncový bod.

  6. Pro typ API vyberte Chat Completions.

  7. V souboruchatLanguageModels.json, který Visual Studio Code otevře, nakonfigurujte vlastnosti modelu a pak soubor uložte.

    Použijte dokumentaci k endpointu a modelu k nastavení vlastností. Minimálně si ověřte následující hodnoty:

    Vlastnictví Value
    id Přesné ID modelu, které endpoint očekává.
    name Zobrazovací název modelu, který Visual Studio Code zobrazuje ve výběru jazykového modelu.
    url Celá trasa, například https://<server-name>:<port>/v1/chat/completions.
    apiType chat-completions
    toolCalling true pouze pokud endpoint a model podporují volání nástrojů.
    vision true pouze pokud koncový bod a model podporují vstup obrázku.
    maxInputTokens Model podporoval maximální počet vstupních tokenů.
    maxOutputTokens Model podporoval maximální počet výstupních tokenů.

    Nechte generovanou apiKey vstupní referenci místo umístění API klíče přímo do chatLanguageModels.json. Visual Studio Code ve výchozím nastavení odesílá klíč v hlavičce Authorization: Bearer <api-key> pro vlastní endpointy Chat Completions.

    Pokud koncový bod vyžaduje jinou autentizační hlavičku, nakonfigurujte vlastnost modelu requestHeaders a jako hodnotu hlavičky použijte token ${apiKey}. Nevkládejte surové tajemství do konfiguračního souboru. Pro podporované vlastnosti a autentizační chování viz Custom Endpoint configuration reference.

Vyberte a ověřte lokální nebo vzdálený model koncového bodu

  1. Vraťte se do zobrazení Chat a otevřete výběr jazykového modelu.

  2. Vyberte model pod názvem skupiny, který jste nastavili.

  3. Zadejte krátký testovací prompt, například:

    Reply with one sentence that confirms you received this request.
    
  4. Ověřte, že zobrazení Chat zobrazuje odpověď od vybraného modelu.

  5. Pokud máte přístup k logům inference endpointu, potvrďte, že endpoint obdržel požadavek na konfigurované ID modelu.

Konfigurace funguje, když vybraný model vrátí odpověď a koncový bod požadavek zaznamená.

Note

Model musí podporovat volání nástrojů, aby byl v chatu dostupný pro agenty. Nenastavujte toolCalling na true, pokud tuto funkci nepodporuje koncový bod a model.

Řešení problémů s lokálními a vzdálenými modelovými endpointy ve Visual Studio Code

Problém Co zkontrolovat
Custom Endpoint není dostupný Aktualizace na aktuální stabilní verzi Visual Studio Code. Pokud vaše organizace spravuje GitHub Copilot, ověřte si, že vaše organizace umožňuje politiku přinést vlastní klíč.
Model se v modelovém pickeru nezobrazuje Uložit chatLanguageModels.json, a pak restartovat Visual Studio Code. V pracovním prostoru v omezeném režimu důvěřujte pracovnímu prostoru, že obnoví celý seznam modelů. Pro použití agenta také ověřte, že model podporuje volání nástrojů a že toolCalling je true.
Koncový bod vrací chybu autentizace Ověřte, že API klíč je aktuální a že jeho autentizační hlavička odpovídá požadavkům koncového zařízení. Pokud koncový bod vyžaduje další hlavičku, nakonfigurujte requestHeaders s tokenem ${apiKey} .
Koncový bod vrací chybu trasy nebo API Potvrďte, že apiType je chat-completions a že url obsahuje úplnou trasu Chat Completions, včetně /v1/chat/completions, pokud endpoint tuto trasu zpřístupňuje.
Vzdálený klient se nemůže připojit k endpointu Potvrďte, že klient Windows 11 dokáže vyřešit hostitelské jméno serveru a dostat se na port koncového zařízení. Zkontrolujte adresu posluchače koncového zařízení, Windows Firewall a jakýkoli mezilehlý firewall nebo proxy.
Vzdálený koncový bod vrací chybu TLS nebo certifikátu Ověřte, že je certifikát platný, že mu klient Windows 11 důvěřuje a že pokrývá hostitelské jméno v URL endpointu.
Koncový bod odepře přístup vzdálenému klientovi Ověřte, že kontrola přístupu na koncové body umožňuje klientovi volat trasu Chat Completions a že nakonfigurované přihlašovací údaje mají přístup k požadovanému modelu.
Požadavek dorazí do koncového bodu, ale odvozování selže Ověřte, že ID modelu přesně odpovídá ID modelu koncového bodu a že koncový bod podporuje požadované schopnosti modelu. Prohlédněte si logy koncových zařízení kvůli selhání požadavku.