Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Eksperymentalny pakiet Microsoft.Testing.Platform.AI definiuje abstrakcje sztucznej inteligencji neutralne dla dostawcy dla struktur testowych i rozszerzeń MTP. Pakiet integruje się z Microsoft.Extensions.AI, dzięki czemu rozszerzenie może zażądać IChatClient bez zależności od konkretnego dostawcy modelu.
Ważna
Interfejsy API AI korzystają z identyfikatora diagnostycznego TPEXP i mogą ulec zmianie w jednej z przyszłych wersji. Pakiety dostarczają infrastrukturę do rozszerzeń; nie dodawają zachowania sztucznej inteligencji do samego zestawu testów.
Wybieranie pakietów
Dodaj pakiet abstrakcji podczas tworzenia rozszerzenia korzystającego z klienta czatu. Dodaj pakiet dostawcy do aplikacji testowej, która hostuje rozszerzenie:
dotnet add package Microsoft.Testing.Platform.AI
dotnet add package Microsoft.Testing.Extensions.AzureFoundry
Microsoft.Testing.Extensions.AzureFoundryjest dostawcą referencyjnym udostępnianym przez Microsoft. Tworzy on klienta czatu Azure OpenAI za pośrednictwem Azure AI Foundry.
Konfigurowanie Azure AI Foundry
Ustaw następujące zmienne środowiskowe:
| Variable | Wymagane | Opis |
|---|---|---|
AZURE_OPENAI_ENDPOINT |
Yes | Punkt końcowy zasobu Azure OpenAI, taki jak https://my-resource.openai.azure.com. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Yes | Nazwa wdrożenia modelu. |
AZURE_OPENAI_API_KEY |
Warunkowy | Klucz API zasobu. Ustaw tę wartość, chyba że zarejestrujesz w kodzie element TokenCredential. |
Aby nie przechowywać poświadczeń w systemie kontroli wersji, przekaż te wartości przez lokalne zmienne środowiskowe lub chroniony magazyn sekretów CI.
Rejestrowanie dostawcy
Wyłącz wygenerowany punkt wejścia dla MTP i zarejestruj dostawcę w niestandardowej metodzie Main. W przypadku uwierzytelniania za pomocą klucza API wywołaj:
#pragma warning disable TPEXP
builder.AddAzureOpenAIChatClientProvider();
#pragma warning restore TPEXP
W przypadku Microsoft Entra ID lub tożsamości zarządzanej należy odwołać się do pakietu Azure.Identity i przekazać poświadczenie:
using Azure.Identity;
#pragma warning disable TPEXP
builder.AddAzureOpenAIChatClientProvider(new DefaultAzureCredential());
#pragma warning restore TPEXP
Gdy ustawiono AZURE_OPENAI_API_KEY, dostawca używa klucza API zamiast podanych poświadczeń. Rozpoznawanie i uwierzytelnianie poświadczeń występuje po uruchomieniu pierwszego żądania czatu, dlatego błędy konfiguracji mogą nie pojawiać się podczas rejestracji dostawcy.
Korzystanie z klienta czatu
Zaimplementuj IChatClientProvider , aby zintegrować innego dostawcę sztucznej inteligencji. Rozszerzenie MTP może pobrać zarejestrowanego klienta czatu z poziomu programu IServiceProvider:
IChatClient? client =
await serviceProvider.GetChatClientAsync(cancellationToken);
Wywołanie zwraca null, gdy nie zarejestrowano żadnego dostępnego dostawcy. Przed wysłaniem przez rozszerzenie danych testowych do modelu należy udokumentować, jakie dane wysyła, i zastosować wymagania dotyczące prywatności, zabezpieczeń i przechowywania tych danych.