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.
V tomto rychlém startu vytvoříte konzolovou aplikaci .NET, která používá OpenAI.Images.ImageClient ke generování imagí pomocí modelu OpenAI nebo Azure OpenAI DALL-E AI. Tyto modely generují obrázky z textových výzev.
Požadavky
- SDK .NET 8.0 nebo novější – Nainstalujte SDK .NET 8.0.
- Klíč API od OpenAI, abyste mohli tuto ukázku spustit.
Požadavky
- .NET 8.0 SDK nebo novější – Nainstalujte sadu .NET 8 SDK.
- Předplatné Azure – Vytvořte si ho zdarma.
- Azure Developer CLI (volitelné) – Nainstalujte nebo aktualizujte Azure Developer CLI.
Poznámka:
K provádění úloh v tomto článku můžete také použít sémantické jádro. Sémantické jádro je jednoduchá opensourcová sada SDK, která umožňuje vytvářet agenty AI a integrovat nejnovější modely AI do vašich aplikací .NET.
Vytvoření aplikace
Provedením následujících kroků vytvořte konzolovou aplikaci .NET pro připojení k modelu AI.
V prázdném adresáři v počítači pomocí příkazu
dotnet newvytvořte novou konzolovou aplikaci:dotnet new console -o ImagesAIZměňte adresář do složky aplikace:
cd ImagesAINainstalujte požadované balíčky:
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.UserSecretsOtevřete aplikaci v editoru Visual Studio Code nebo v libovolném editoru.
code .
Vytvoření služby AI
Pokud chcete zřídit službu a model Azure OpenAI, proveďte kroky v článku Vytvoření a nasazení prostředku služby Azure OpenAI .
Z terminálu nebo příkazového řádku přejděte do kořenového adresáře projektu.
Spuštěním následujících příkazů nakonfigurujte koncový bod Azure OpenAI a název modelu pro ukázkovou aplikaci:
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>
Konfigurace aplikace
V terminálu nebo příkazovém řádku přejděte do kořenového adresáře projektu .NET.
Spuštěním následujících příkazů nakonfigurujte klíč rozhraní API OpenAI jako tajný klíč pro ukázkovou aplikaci:
dotnet user-secrets init dotnet user-secrets set OpenAIKey <your-OpenAI-key> dotnet user-secrets set ModelName <your-OpenAI-model-name>
Přidání kódu aplikace
Program.csDo souboru přidejte následující kód pro připojení a ověření modelu AI.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}");Poznámka:
DefaultAzureCredential hledá přihlašovací údaje z vašich místních nástrojů. Pokud k zřízení prostředku Azure OpenAI nepoužíváte
azdšablonu, musíte přiřadit roliAzure AI Developerúčtu, který jste použili k přihlášení do sady Visual Studio nebo Azure CLI. Další informace najdete v tématu Ověřování ve službách Azure AI pomocí rozhraní .NET.// 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}");Předchozí kód:
- Čte základní konfigurační hodnoty z tajných kódů uživatele projektu pro připojení k modelu AI.
- Vytvoří
OpenAI.Images.ImageClientpro připojení k modelu AI. - Odešle výzvu modelu, která popisuje požadovaný obrázek.
- Vytiskne adresu URL vygenerovaného obrázku do výstupu konzoly.
Spuštění aplikace:
dotnet runPřejděte na adresu URL obrázku ve výstupu konzoly a zobrazte vygenerovaný obrázek. Upravte textový obsah výzvy tak, aby se vytvořily nové obrázky nebo upravily původní obrázky.
Upravte zdroje
Pokud už je nepotřebujete, odstraňte prostředek Azure OpenAI a odeberte nasazený model GPT-4.
- Na webu Azure Portalpřejděte k prostředku Azure OpenAI.
- Vyberte prostředek Azure OpenAI a pak vyberte Odstranit.