Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här snabbstarten får du lära dig hur du skapar en .NET-konsolchattapp för att ansluta till och fråga en OpenAI- eller Azure OpenAI-modell. Appen använder Microsoft.Extensions.AI-biblioteket så att du kan skriva kod med AI-abstraktioner i stället för ett specifikt SDK. MED AI-abstraktioner kan du ändra den underliggande AI-modellen med minimala kodändringar.
Förutsättningar
- .NET 8.0 SDK eller senare – Installera .NET 8.0 SDK -.
- En API-nyckel från OpenAI så att du kan köra det här exemplet.
Förutsättningar
- .NET 8.0 SDK eller senare – Installera .NET 8 SDK.
- En Azure-prenumeration – Skapa en kostnadsfritt.
- Azure Developer CLI (valfritt) – Installera eller uppdatera Azure Developer CLI-.
Anmärkning
Du kan också använda semantisk kernel för att utföra uppgifterna i den här artikeln. Semantisk kernel är en enkel SDK med öppen källkod som gör att du kan skapa AI-agenter och integrera de senaste AI-modellerna i dina .NET-appar.
Skapa appen
Slutför följande steg för att skapa en .NET-konsolapp för att ansluta till en AI-modell.
I en tom katalog på datorn använder du kommandot
dotnet newför att skapa en ny konsolapp:dotnet new console -o ExtensionsAIÄndra katalog till appmappen:
cd ExtensionsAIInstallera de paket som krävs:
dotnet add package Azure.AI.OpenAI dotnet add package Azure.Identity dotnet add package Microsoft.Extensions.AI.OpenAI --prerelease dotnet add package Microsoft.Extensions.Configuration dotnet add package Microsoft.Extensions.Configuration.UserSecretsdotnet add package OpenAI dotnet add package Microsoft.Extensions.AI.OpenAI --prerelease dotnet add package Microsoft.Extensions.Configuration dotnet add package Microsoft.Extensions.Configuration.UserSecretsÖppna appen i Visual Studio Code eller valfri redigerare.
Skapa AI-tjänsten
Om du vill etablera en Azure OpenAI-tjänst och modell slutför du stegen i artikeln Skapa och distribuera en Azure OpenAI-tjänstresurs .
Från en terminal eller kommandotolk navigerar du till roten av din projektkatalog.
Kör följande kommandon för att konfigurera Azure OpenAI-slutpunkten och modellnamnet för exempelappen:
dotnet user-secrets init dotnet user-secrets set AZURE_OPENAI_ENDPOINT <your-Azure-OpenAI-endpoint> dotnet user-secrets set AZURE_OPENAI_GPT_NAME <your-Azure-OpenAI-model-name> dotnet user-secrets set AZURE_OPENAI_API_KEY <your-Azure-OpenAI-key>
Konfigurera appen
Navigera till roten av ditt .NET-projekt från en terminal eller kommandotolk.
Kör följande kommandon för att konfigurera din OpenAI API-nyckel som en hemlighet för exempelappen:
dotnet user-secrets init dotnet user-secrets set OpenAIKey <your-OpenAI-key> dotnet user-secrets set ModelName <your-OpenAI-model-name>
Lägg till appkoden
Appen använder Microsoft.Extensions.AI-paketet för att skicka och ta emot begäranden till AI-modellen.
Kopiera filen benefits.md till projektkatalogen. Konfigurera projektet för att kopiera den här filen till utdatakatalogen. Om du använder Visual Studio högerklickar du på filen i Solution Explorer, väljer Egenskaper och ställer sedan in Kopiera till Utdatakatalog till Kopiera om det är nyare.
Program.csI filen lägger du till följande kod för att ansluta och autentisera till AI-modellen.using Microsoft.Extensions.Configuration; using Microsoft.Extensions.AI; using Azure.AI.OpenAI; using Azure.Identity; var config = new ConfigurationBuilder() .AddUserSecrets<Program>() .Build(); string endpoint = config["AZURE_OPENAI_ENDPOINT"]; string deployment = config["AZURE_OPENAI_GPT_NAME"]; IChatClient client = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) .GetChatClient(deployment) .AsIChatClient();Anmärkning
DefaultAzureCredential söker efter autentiseringsuppgifter från ditt lokala verktyg. Om du inte använder
azd-mallen för att etablera Azure OpenAI-resursen måste du tilldelaAzure AI Developerrollen till det konto som du använde för att logga in på Visual Studio eller Azure CLI. Mer information finns i Autentisera till Azure AI-tjänster med .NET.using Microsoft.Extensions.AI; using Microsoft.Extensions.Configuration; using OpenAI; IConfigurationRoot config = new ConfigurationBuilder() .AddUserSecrets<Program>() .Build(); string? model = config["ModelName"]; string? key = config["OpenAIKey"]; IChatClient client = new OpenAIClient(key).GetChatClient(model).AsIChatClient();Lägg till kod för att läsa filinnehållet
benefits.mdoch skapa sedan en uppmaning till modellen. Uppmaningen instruerar modellen att sammanfatta filens textinnehåll med högst 20 ord.string text = File.ReadAllText("benefits.md"); string prompt = $""" Summarize the the following text in 20 words or less: {text} """;GetResponseAsyncAnropa metoden för att skicka uppmaningen till modellen för att generera ett svar.// Submit the prompt and print out the response. ChatResponse response = await client.GetResponseAsync( prompt, new ChatOptions { MaxOutputTokens = 400 }); Console.WriteLine(response);Kör appen:
dotnet runAppen skriver ut svar om slutförande från AI-modellen. Anpassa textinnehållet i
benefits.mdfilen eller längden på sammanfattningen för att se skillnaderna i svaren.
Rensa resurser
Om du inte längre behöver dem tar du bort Azure OpenAI-resursen och GPT-4-modelldistributionen.
- I Azure-portalengår du till Azure OpenAI-resursen.
- Välj Azure OpenAI-resursen och välj sedan Ta bort.