Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
No início rápido, você vai aprender como criar um aplicativo de chat de console do .NET para se conectar e interagir com um modelo OpenAI ou Azure OpenAI. O aplicativo usa a biblioteca de Microsoft.Extensions.AI para que você possa escrever código usando abstrações de IA em vez de um SDK específico. As abstrações de IA permitem que você altere o modelo de IA subjacente com alterações mínimas de código.
Pré-requisitos
- SDK do .NET 8.0 ou superior – Instalar o SDK do .NET 8.0.
- Uma chave de API do OpenAI para que você possa executar este exemplo.
Pré-requisitos
- SDK do .NET 8.0 ou superior – Instalar o SDK do .NET 8.
- Uma assinatura do Azure – Crie uma gratuitamente.
- CLI do Desenvolvedor do Azure (opcional) – Instalar ou atualizar a CLI do Desenvolvedor do Azure.
Observação
Você também pode usar o Kernel Semântico para realizar as tarefas neste artigo. O Semantic Kernel é um SDK leve e de código aberto que permite criar agentes de IA e integrar os modelos de IA mais recentes em seus aplicativos .NET.
Criar o aplicativo
Para criar um aplicativo de console do .NET para se conectar a um modelo de IA, execute as etapas a seguir.
Em um diretório vazio no computador, use o comando
dotnet newpara criar um novo aplicativo de console:dotnet new console -o ExtensionsAIAltere o diretório para a pasta do aplicativo:
cd ExtensionsAIInstale os pacotes necessários:
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.UserSecretsAbra o aplicativo no Visual Studio Code ou no editor de sua preferência.
Criar o serviço de IA
Para provisionar um serviço e um modelo do Azure OpenAI, conclua as etapas no artigo Criar e implantar um recurso do Serviço OpenAI do Azure .
Em um terminal ou prompt de comando, navegue até a raiz do diretório do projeto.
Execute os seguintes comandos para configurar o endpoint do Azure OpenAI e o nome do modelo para o aplicativo de exemplo:
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>
Configurar o aplicativo
Navegue até a raiz do projeto .NET de um terminal ou prompt de comando.
Execute os seguintes comandos para configurar sua chave de API OpenAI como um segredo para o aplicativo de exemplo:
dotnet user-secrets init dotnet user-secrets set OpenAIKey <your-OpenAI-key> dotnet user-secrets set ModelName <your-OpenAI-model-name>
Adicionar o código do aplicativo
O aplicativo usa o Microsoft.Extensions.AI pacote para enviar e receber solicitações para o modelo de IA.
Copie o arquivo benefits.md para o diretório do projeto. Configure o projeto para copiar esse arquivo para o diretório de saída. Se você estiver usando o Visual Studio, clique com o botão direito do mouse no arquivo no Gerenciador de Soluções, selecione Propriedades e defina Copiar para Diretório de Saída para Copiar se for mais recente.
Program.csNo arquivo, adicione o código a seguir para se conectar e autenticar ao modelo de IA.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();Observação
DefaultAzureCredential pesquisa credenciais de autenticação de suas ferramentas locais. Se você não estiver usando o modelo de
azdpara provisionar o recurso do Azure OpenAI, precisará atribuir a funçãoAzure AI Developerà conta usada para entrar no Visual Studio ou na CLI do Azure. Para obter mais informações, consulte Autenticar-se nos serviços de IA do Azure com .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();Adicione código para ler o conteúdo do
benefits.mdarquivo e, em seguida, crie um prompt para o modelo. O prompt instrui o modelo a resumir o conteúdo do texto do arquivo em 20 palavras ou menos.string text = File.ReadAllText("benefits.md"); string prompt = $""" Summarize the the following text in 20 words or less: {text} """;Chame o
GetResponseAsyncmétodo para enviar o prompt para o modelo para gerar uma resposta.// Submit the prompt and print out the response. ChatResponse response = await client.GetResponseAsync( prompt, new ChatOptions { MaxOutputTokens = 400 }); Console.WriteLine(response);Execute o aplicativo:
dotnet runO aplicativo imprime a resposta de conclusão do modelo de IA. Personalize o conteúdo de texto do
benefits.mdarquivo ou o comprimento do resumo para ver as diferenças nas respostas.
Limpar os recursos
Se você não precisar mais deles, exclua o recurso do Azure OpenAI e a implantação do modelo GPT-4.
- No Portal do Azure, navegue até o recurso OpenAI do Azure.
- Selecione o recurso do Azure OpenAI e selecione Excluir.