Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze quickstart maakt u een .NET-console-app die gebruikmaakt OpenAI.Images.ImageClient van het genereren van afbeeldingen met behulp van een OpenAI- of Azure OpenAI-DALL-E AI-model. Met deze modellen worden afbeeldingen gegenereerd op basis van tekstprompts.
Vereiste voorwaarden
- .NET 8.0 SDK (of hoger) - Installeer de .NET 8.0 SDK.
- Een API-sleutel van OpenAI, zodat u dit voorbeeld kunt uitvoeren.
Vereiste voorwaarden
- .NET 8.0 SDK of hoger: Installeer de .NET 8 SDK.
- Een Azure-abonnement: maak er gratis een.
- Azure Developer CLI (optioneel): de Azure Developer CLI-installeren of bijwerken.
Opmerking
U kunt ook Semantische kernel gebruiken om de taken in dit artikel uit te voeren. Semantische kernel is een lichtgewicht opensource-SDK waarmee u AI-agents kunt bouwen en de nieuwste AI-modellen kunt integreren in uw .NET-apps.
De app maken
Voer de volgende stappen uit om een .NET-console-app te maken om verbinding te maken met een AI-model.
Gebruik in een lege map op uw computer de opdracht
dotnet newom een nieuwe console-app te maken:dotnet new console -o ImagesAIWijzig de map in de app-map:
cd ImagesAIInstalleer de vereiste pakketten:
dotnet add package Azure.AI.OpenAI dotnet add package Azure.Identity dotnet add package Microsoft.Extensions.Configuration dotnet add package Microsoft.Extensions.Configuration.UserSecretsdotnet add package OpenAI dotnet add package Microsoft.Extensions.Configuration dotnet add package Microsoft.Extensions.Configuration.UserSecretsOpen de app in Visual Studio Code of uw gewenste editor.
code .
De AI-service maken
Als u een Azure OpenAI-service en -model wilt inrichten, voert u de stappen in het artikel Een Azure OpenAI-serviceresource maken en implementeren uit.
Navigeer vanuit een terminal of opdrachtprompt naar de hoofdmap van uw projectmap.
Voer de volgende opdrachten uit om uw Azure OpenAI-eindpunt en modelnaam voor de voorbeeld-app te configureren:
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>
De app configureren
Navigeer vanuit een terminal of opdrachtprompt naar de hoofdmap van uw .NET-project.
Voer de volgende opdrachten uit om uw OpenAI API-sleutel als geheim te configureren voor de voorbeeld-app:
dotnet user-secrets init dotnet user-secrets set OpenAIKey <your-OpenAI-key> dotnet user-secrets set ModelName <your-OpenAI-model-name>
De app-code toevoegen
Voeg in het
Program.csbestand de volgende code toe om verbinding te maken en te verifiëren met het AI-model.using Microsoft.Extensions.Configuration; using OpenAI.Images; using System.ClientModel; using Azure.AI.OpenAI; using Azure.Identity; // Retrieve the local secrets saved during the Azure deployment. If you skipped the deployment // because you already have an Azure OpenAI available, edit the following lines to use your information, // e.g. string openAIEndpoint = "https://cog-demo123.openai.azure.com/"; var config = new ConfigurationBuilder().AddUserSecrets<Program>().Build(); string endpoint = config["AZURE_OPENAI_ENDPOINT"]; string deployment = config["AZURE_OPENAI_DALLE_NAME"]; // Create the Azure OpenAI ImageClient ImageClient client = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()) .GetImageClient(deployment); // Generate the image GeneratedImage generatedImage = await client.GenerateImageAsync(""" A postal card with an happy hiker waving and a beautiful mountain in the background. There is a trail visible in the foreground. The postal card has text in red saying: 'You are invited for a hike!' """, new ImageGenerationOptions { Size = GeneratedImageSize.W1024xH1024 }); Console.WriteLine($"The generated image is ready at:\n{generatedImage.ImageUri}");Opmerking
DefaultAzureCredential zoekt naar verificatiereferenties vanuit uw lokale hulpprogramma's. Als u de
azdsjabloon niet gebruikt om de Azure OpenAI-resource in te richten, moet u deAzure AI Developerrol toewijzen aan het account dat u hebt gebruikt om u aan te melden bij Visual Studio of de Azure CLI. Zie Verifiëren bij Azure AI-services met .NETvoor meer informatie.// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Microsoft.Extensions.Configuration; using OpenAI.Images; // Retrieve the local secrets that were set from the command line, using: // dotnet user-secrets init // dotnet user-secrets set OpenAIKey <your-openai-key> var config = new ConfigurationBuilder().AddUserSecrets<Program>().Build(); string key = config["OpenAIKey"]; string modelName = config["ModelName"]; // Create the OpenAI ImageClient ImageClient client = new(modelName, key); // Generate the image GeneratedImage generatedImage = await client.GenerateImageAsync(""" A postal card with a happy hiker waving and a beautiful mountain in the background. There is a trail visible in the foreground. The postal card has text in red saying: 'You are invited for a hike!' """, new ImageGenerationOptions { Size = GeneratedImageSize.W1024xH1024 }); Console.WriteLine($"The generated image is ready at:\n{generatedImage.ImageUri}");De voorgaande code:
- Leest essentiële configuratiewaarden uit de gebruikersgeheimen van het project om verbinding te maken met het AI-model.
- Hiermee maakt u een
OpenAI.Images.ImageClientverbinding met het AI-model. - Hiermee wordt een prompt verzonden naar het model waarin de gewenste afbeelding wordt beschreven.
- Hiermee wordt de URL van de gegenereerde afbeelding naar de console-uitvoer afgedrukt.
Voer de app uit:
dotnet runNavigeer naar de afbeeldings-URL in de console-uitvoer om de gegenereerde afbeelding weer te geven. Pas de tekstinhoud van de prompt aan om nieuwe afbeeldingen te maken of het origineel te wijzigen.
De hulpbronnen opschonen
Als u deze niet meer nodig hebt, verwijdert u de Azure OpenAI-resource en GPT-4-modelimplementatie.
- Navigeer in de Azure Portalnaar de Azure OpenAI-resource.
- Selecteer de Azure OpenAI-resource en selecteer vervolgens verwijderen.