Sdílet prostřednictvím


Připojení k modelu AI a zobrazení výzvy k jeho zobrazení

V tomto rychlém startu se dozvíte, jak vytvořit konzolovou chatovací aplikaci .NET pro připojení a zobrazení výzvy k modelu OpenAI nebo Azure OpenAI. Aplikace používá knihovnu Microsoft.Extensions.AI, abyste mohli psát kód pomocí abstrakcí AI místo konkrétní sady SDK. Abstrakce AI umožňují změnit základní model AI s minimálními změnami kódu.

Požadavky

Požadavky

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.

  1. V prázdném adresáři v počítači pomocí příkazu dotnet new vytvořte novou konzolovou aplikaci:

    dotnet new console -o ExtensionsAI
    
  2. Změňte adresář do složky aplikace:

    cd ExtensionsAI
    
  3. Nainstalujte požadované balíčky:

    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.UserSecrets
    
    dotnet add package OpenAI
    dotnet add package Microsoft.Extensions.AI.OpenAI --prerelease
    dotnet add package Microsoft.Extensions.Configuration
    dotnet add package Microsoft.Extensions.Configuration.UserSecrets
    
  4. Otevřete aplikaci v editoru Visual Studio Code nebo v libovolném editoru.

Vytvoření služby AI

  1. 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 .

  2. Z terminálu nebo příkazového řádku přejděte do kořenového adresáře projektu.

  3. 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

  1. V terminálu nebo příkazovém řádku přejděte do kořenového adresáře projektu .NET.

  2. 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

Aplikace používá balíček Microsoft.Extensions.AI k odesílání a přijímání požadavků na model AI.

  1. Zkopírujte soubor benefits.md do adresáře projektu. Nakonfigurujte projekt tak, aby tento soubor zkopíroval do výstupního adresáře. Pokud používáte Visual Studio, klikněte pravým tlačítkem myši na soubor v Průzkumníku řešení, vyberte Vlastnosti, a poté nastavte Kopírování do výstupního adresáře na Kopírovat, pokud je novější.

  2. Program.cs Do souboru přidejte následující kód pro připojení a ověření modelu AI.

    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();
    

    Poznámka:

    DefaultAzureCredential hledá přihlašovací údaje z vašich místních nástrojů. Pokud ke zřízení prostředku Azure OpenAI nepoužíváte šablonu azd, budete muset přiřadit Azure AI Developer roli k účtu, který jste použili k přihlášení k sadě Visual Studio nebo Azure CLI. Další informace najdete v tématu Ověřování ve službách Azure AI pomocí rozhraní .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();
    
  3. Přidejte kód pro čtení benefits.md obsahu souboru a pak vytvořte výzvu k vytvoření modelu. Výzva dává modelu pokyn, aby shrnul textový obsah souboru ve 20 slovech nebo méně.

    string text = File.ReadAllText("benefits.md");
    string prompt = $"""
        Summarize the the following text in 20 words or less:
        {text}
        """;
    
  4. GetResponseAsync Voláním metody odešlete do modelu výzvu k vygenerování odpovědi.

    // Submit the prompt and print out the response.
    ChatResponse response = await client.GetResponseAsync(
        prompt,
        new ChatOptions { MaxOutputTokens = 400 });
    Console.WriteLine(response);
    
  5. Spuštění aplikace:

    dotnet run
    

    Aplikace vytiskne odpověď na dokončení z modelu AI. Přizpůsobte si textový obsah benefits.md souboru nebo délku souhrnu, abyste viděli rozdíly v odpovědích.

Čištění zdrojů

Pokud už je nepotřebujete, odstraňte prostředek Azure OpenAI a odeberte nasazený model GPT-4.

  1. Na webu Azure Portalpřejděte k prostředku Azure OpenAI.
  2. Vyberte prostředek Azure OpenAI a pak vyberte Odstranit.

Další kroky