Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Experimentální balíček Microsoft.Testing.Platform.AI definuje abstrakce AI nezávislé na poskytovateli pro testovací frameworky a rozšíření MTP. Balíček se integruje s Microsoft.Extensions.AI, takže rozšíření může požadovat IChatClient bez závislosti na konkrétním poskytovateli modelu.
Important
Rozhraní API pro AI používají diagnostický identifikátor TPEXP a v některé z budoucích verzí se mohou změnit. Balíčky poskytují rozšířením infrastrukturu; samy o sobě však do testovací sady nepřidávají funkce AI.
Použití nástrojů pro kódování AI pro testovací pracovní postupy
Balíčky v tomto článku umožňují rozšířením MTP volat modely AI během testovacího běhu. Pokud chcete pomocí pomocníka pro kódování AI vytvářet, analyzovat nebo migrovat testy ve vašem úložišti, použijte místo toho kurátorované .NET dovednosti agenta.
Zvolte pracovní postup na základě vašeho cíle:
| Goal | Dovednost nebo agent |
|---|---|
| Vytváření nebo rozšiřování testů | Použijte code-testing-agent funkci z dotnet-test pluginu. Dovednost zkoumá základ kódu, plánuje práci, implementuje testy a ověřuje změny. |
| Spustit nebo řešit potíže s testy | Využijte dovednost ke spouštění testů nebo diagnostice provádění testů beze změny testovacího run-tests kódu. |
| Auditovat kvalitu testu | Použijte test-quality-auditor agenta pro širší posouzení, nebo vyvolejte konkrétní dovednost z dotnet-test adresáře dovedností pro tvrzení, pokrytí, mezery v testech nebo zápachy v testech. |
| Zlepšení testovatelnosti | Pomocí agentatestability-migration můžete vyhledat statické závislosti a zavést testovatelné abstrakce. |
| Migrace testovací architektury nebo platformy | Použijte agentatest-migration z modulu plug-indotnet-test-migration. Agent zjistí aktuální nastavení a vybere příslušnou dovednost migrace. |
Postup instalace a podporované agenty kódování najdete v úložišti .NET Agent Skills. Nainstalujte dotnet-test spolu s dotnet-test-migration, protože migrační pracovní postupy opětovně využívají jeho detekci platformy a schopnosti ověřování testů.
Zvolte balíčky.
Balíček abstrakcí přidejte při vytváření rozšíření, které využívá chatovacího klienta. Přidejte balíček zprostředkovatele do testovací aplikace, která je hostitelem rozšíření:
dotnet add package Microsoft.Testing.Platform.AI
dotnet add package Microsoft.Testing.Extensions.AzureFoundry
Microsoft.Testing.Extensions.AzureFoundry je referenční poskytovatel od společnosti Microsoft. Vytvoří Azure chatovacího klienta OpenAI prostřednictvím Azure AI Foundry.
Nakonfigurujte Azure AI Foundry
Nastavte následující proměnné prostředí:
| Proměnné | Povinné | Description |
|---|---|---|
AZURE_OPENAI_ENDPOINT |
Ano | Koncový bod prostředku Azure OpenAI, například https://my-resource.openai.azure.com. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Ano | Název nasazení modelu. |
AZURE_OPENAI_API_KEY |
Podmíněný | Klíč API prostředku. Tuto hodnotu nastavte, pokud nezaregistrujete TokenCredential v kódu. |
Pokud chcete přihlašovací údaje zachovat mimo správu zdrojového kódu, zadejte tyto hodnoty prostřednictvím místního prostředí nebo chráněného úložiště tajných kódů CI.
Registrace poskytovatele
Zakažte vygenerovaný vstupní bod MTP a zaregistrujte poskytovatele ve vaší vlastní metodě Main. Pro ověřování pomocí klíče rozhraní API volejte:
#pragma warning disable TPEXP
builder.AddAzureOpenAIChatClientProvider();
#pragma warning restore TPEXP
Pro Microsoft Entra ID nebo spravovanou identitu odkažte na balíček Azure.Identity a předejte přihlašovací údaj:
using Azure.Identity;
#pragma warning disable TPEXP
builder.AddAzureOpenAIChatClientProvider(new DefaultAzureCredential());
#pragma warning restore TPEXP
Pokud AZURE_OPENAI_API_KEY je nastaveno, zprostředkovatel používá klíč rozhraní API před zadanými přihlašovacími údaji. Při prvním spuštění žádosti o chat dojde k překladu přihlašovacích údajů a ověřování, takže se během registrace poskytovatele nemusí objevit chyby konfigurace.
Využívání chatovacího klienta
Implementujte IChatClientProvider, abyste mohli integrovat jiného poskytovatele AI. Rozšíření MTP může načíst zaregistrovaného chatovacího klienta z jeho IServiceProvider:
IChatClient? client =
await serviceProvider.GetChatClientAsync(cancellationToken);
Volání vrátí null, pokud není zaregistrován žádný dostupný poskytovatel. Než rozšíření odešle testovací data do modelu, zdokumentujte, jaká data odesílá, a uplatněte na tato data požadavky na ochranu osobních údajů, zabezpečení a uchovávání.